---
title: "Totp Setup"
method: POST
path: "/api/v1/auth/totp/setup"
tags: ["auth"]
---

# Totp Setup

`POST /api/v1/auth/totp/setup`

## Request

- Base URL: `https://api.nudgelink.co` (the document declares no server; this is the origin it was published from)
- URL: `https://api.nudgelink.co/api/v1/auth/totp/setup`
- Auth: HTTP bearer

Generate a new TOTP secret. Returns provisioning URI for QR code.
The secret is stored as *pending* until confirmed with /totp/confirm.

## Response `200`

Successful Response

- TotpSetupResponse
  - `secret` string, required
  - `provisioning_uri` string, required

---

[API](https://skmtc.dev/nudgelink/apis/nudgelink-api.md) · [All operations](https://skmtc.dev/nudgelink/apis/nudgelink-api/llms.txt) · [OpenAPI document](https://skmtc.dev/nudgelink/apis/nudgelink-api/revisions/baa46e6db986?raw)
