Skip to content

Behavior Notes ​

  • Endpoint path: PUT /auth/user/me
  • Core profile fields + optional is_business / biz_* (requires ext-business; otherwise 400 module_not_installed).
  • Does not accept acquisition or privacy fields — use onboarding complete or privacy routes.
  • Session auth; surgical cache update after success.
  • A new email does not write users.email. Flowless emails a confirmation link to the current address and another to the new address. Both links must be used, in either order. Response may include email_change_pending: { to, expires_at, awaiting: ["current", "new"] }. Confirm with email change. The current-inbox page can cancel.
  • Sending two_factor returns 400 use_two_factor_toggle. Use POST /auth/two_factor/toggle.

Update User Profile​

PUT
/auth/user/me

Update authenticated user profile. Core profile fields apply immediately. A new email value does not write users.email: it emails a confirmation link to the current address and another to the new address. Both must be used, in either order, at GET/POST /auth/email-change/verify. two_factor is rejected (use_two_factor_toggle); use POST /auth/two_factor/toggle. Does not accept acquisition or privacy fields — use POST /auth/user/me/onboarding/complete or /auth/user/me/privacy*.

Authorizations​

SessionAuth

Session ID for authenticated requests

Type
API Key (header: X-Session-ID)

Request Body​

application/json
JSON
{
  
"name": "John",
  
"last_name": "Doe",
  
"email": "string",
  
"user_name": "johndoe",
  
"phone": "+1234567890",
  
"dob": "1990-01-01",
  
"gender": "string",
  
"title": "string",
  
"reference_id": "string",
  
"recovery_email": "string",
  
"tmz": "America/New_York",
  
"metadata": {
  
  
"additionalProperties": "string"
  
},
  
"is_business": true,
  
"biz_name": "string",
  
"biz_country": "string",
  
"biz_state": "string",
  
"biz_position": "string",
  
"biz_postal_code": "string"
}

Responses​

Profile updated successfully. A new email is not applied until both confirmation links are used.

application/json
JSON
{
  
"success": true,
  
"data": {
  
},
  
"email_change_pending": {
  
  
"to": "string",
  
  
"expires_at": "string",
  
  
"awaiting": [
  
  
  
"string"
  
  
]
  
}
}

Playground​

Server
Authorization
Body

Samples​

Powered by VitePress OpenAPI