---
title: "Api 2Fa Start"
method: POST
path: "/api/me/2fa/start"
---

# Api 2Fa Start

`POST /api/me/2fa/start`

## Request

- Base URL: `https://sleipnir.tv` (the document declares no server; this is the origin it was published from)
- URL: `https://sleipnir.tv/api/me/2fa/start`
- Auth: none declared

Begin 2FA enrollment. Requires current password.

Returns:
    {
      "qr_code_data_url": "data:image/png;base64,...",
      "secret": "BASE32SECRET"   # for manual entry if QR fails
    }

Idempotent: calling repeatedly with a non-stale pending returns the
same QR (so refresh during enrollment doesn't break the flow).

## Cookies

- `relay_session` string, nullable

## Request body

- TotpStartBody
  - `password` string, required

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/sleipnir/apis/relay-control-plane.md) · [All operations](https://skmtc.dev/sleipnir/apis/relay-control-plane/llms.txt) · [OpenAPI document](https://skmtc.dev/sleipnir/apis/relay-control-plane/revisions/79829f6945a4?raw)
