---
title: "MFA sign in"
method: POST
path: "/auth/mfa/sign-in"
tags: ["OTP"]
---

# MFA sign in

`POST /auth/mfa/sign-in`

Complete multi-factor authorization to sign in, with a TOTP and an MFA attempt code

## Request body

- object
  - `type` 'totp', required
  - `totp` string, required
  - `code` string, required — A 45 character code

## Response `200`

Successful response

- object
  - `refresh_token` string, required — Long-lived refresh token that can be used to obtain a new access token
  - `access_token` string, required — Short-lived access token that can be used to authenticate the user
  - `is_new_user` boolean, required — Whether the user is a new user
  - `user_id` string, required — The unique identifier of the user

## Changes

> 25 revisions in range; 2 could not be searched.

- **2026-05-15** `f6aec844c9f2` — 1 breaking, 1 info
  - request property `type` was restricted to a list of enum values
  - added the new `totp` enum value to the request property `type`

[Change history](https://skmtc.dev/hexclave/apis/hexclave-rest-api-3/changes/auth/mfa/sign-in/post.md)

---

[API](https://skmtc.dev/hexclave/apis/hexclave-rest-api-3.md) · [All operations](https://skmtc.dev/hexclave/apis/hexclave-rest-api-3/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/hexclave/hexclave-rest-api-3/revisions/3ced76bb7fd8/schema)
