Users MFA

Complete TOTP MFA enrollment

Changed on

Enrolls the authenticator from init using a code it generated.

post/v1/users/{user_id}/mfa/totp/enrollment/verify

Request

  • Base URL
    https://api.privy.io
  • URL
    https://api.privy.io/v1/users/{user_id}/mfa/totp/enrollment/verify
  • Auth
    HTTP basic

Path parameters

user_idstring required

Headers

privy-app-idstring required

ID of your Privy app.

privy-user-tokenstring required

Access token or custom authentication JWT for the user the request acts on.

Request body

codestring required

Response

TOTP MFA enrolled.

tokenstring required

JWT proving the user completed MFA.

expires_atinteger required

Unix timestamp in seconds when the MFA token expires.

Example response

{
  "user": {
    "id": "did:privy:cm3np4u9j001rc8b73seqmqqk",
    "created_at": 1731974895,
    "linked_accounts": [
      {
        "address": "tom.bombadill@privy.io",
        "type": "email",
        "first_verified_at": 1674788927,
        "latest_verified_at": 1674788927,
        "verified_at": 1674788927
      },
      {
        "type": "farcaster",
        "fid": 4423,
        "owner_address": "0xE6bFb4137F3A8C069F98cc775f324A84FE45FdFF",
        "username": "payton",
        "display_name": "payton ↑",
        "bio": "engineering at /privy. building pixelpool.xyz, the first Farcaster video client. nyc. 👨‍💻🍎🏳️‍🌈  nf.td/payton",
        "profile_picture": "https://supercast.mypinata.cloud/ipfs/QmNexfCxdnFzWdJqKVgrjd27UGLMexNaw5FXu1XKR3cQF7?filename=IMG_2799.png",
        "profile_picture_url": "https://supercast.mypinata.cloud/ipfs/QmNexfCxdnFzWdJqKVgrjd27UGLMexNaw5FXu1XKR3cQF7?filename=IMG_2799.png",
        "verified_at": 1740678402,
        "first_verified_at": 1740678402,
        "latest_verified_at": 1741194370
      },
      {
        "type": "passkey",
        "credential_id": "Il5vP-3Tm3hNmDVBmDlREgXzIOJnZEaiVnT-XMliXe-BufP9GL1-d3qhozk9IkZwQ_",
        "authenticator_name": "1Password",
        "public_key": "pQECAyYgASFYIKdGwx5XxZ/7CJJzT8d5L6jyLNQdTH7X+rSZdPJ9Ux/QIlggRm4OcJ8F3aB5zYz3T9LxLdDfGpWvYkHgS4A8tPz9CqE=",
        "created_with_browser": "Chrome",
        "created_with_os": "Mac OS",
        "created_with_device": "Macintosh",
        "enrolled_in_mfa": true,
        "verified_at": 1741194420,
        "first_verified_at": 1741194420,
        "latest_verified_at": 1741194420
      }
    ],
    "mfa_methods": [
      {
        "type": "passkey",
        "verified_at": 1741194420
      }
    ],
    "has_accepted_terms": true,
    "is_guest": false
  }
}

Changes