---
title: "Bind passkey for sign-in"
method: POST
path: "/api/experience/profile/mfa/passkey"
tags: ["Experience"]
---

# Bind passkey for sign-in

`POST /api/experience/profile/mfa/passkey`

Bind a WebAuthn credential as a passkey for sign-in purposes. Unlike `POST /api/experience/profile/mfa` with `type: WebAuthn`, this endpoint is exclusively for adding a passkey as a sign-in method and does NOT mark the user's optional MFA as enabled.

## Request body

- object
  - `verificationId` string, required — The ID of the WebAuthn verification record to bind as a passkey.

## Response `204`

The passkey has been successfully bound to the user profile.

## Other responses

- `400` — Invalid request. <br/>- `session.verification_failed:` The WebAuthn verification record is invalid or not verified. <br/>- `session.mfa.pending_info_not_found:` The verification record does not have the required registration data.
- `404` — Entity not found. <br/>- `session.identifier_not_found:` The user has not been identified yet. <br/>- `session.verification_session_not_found:` The WebAuthn verification record is not found.

---

[API](https://skmtc.net/logto/apis/logto-api-references.md) · [All operations](https://skmtc.net/logto/apis/logto-api-references/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/logto/logto-api-references/revisions/0287c6a59eba/schema)
