v20

latestOpenAPI 3.1.0raw.githubusercontent.com2026-08-01970424.3 KB
Users

Update current user

Updates the currently authenticated user. Only the values provided will be updated.

patch/users/me

Request body

display_name'null' nullable

Human-readable user display name. This is not a unique identifier.

profile_image_url'null' nullable

URL of the profile image for user. Can be a Base64 encoded image. Must be smaller than 100KB. Please compress and crop to a square before passing in.

client_metadataobject nullable

Client metadata. Used as a data store, accessible from the client side. Do not store information that should not be exposed to the client.

client_read_only_metadataobject nullable

Client read-only, server-writable metadata. Used as a data store, accessible from the client side. Do not store information that should not be exposed to the client. The client can read this data, but cannot modify it. This is useful for things like subscription status.

server_metadataobject nullable

Server metadata. Used as a data store, only accessible from the server side. You can store secret information related to the user here.

primary_email'null' nullable

Primary email

primary_email_verifiedboolean

Whether the primary email has been verified to belong to this user

primary_email_auth_enabledboolean

Whether the primary email is used for authentication. If this is set to false, the user will not be able to sign in with the primary email with password or OTP

password'null' nullable

Sets the user's password. Doing so revokes all current sessions.

password_hashstring

If password is not given, sets the user's password hash to the given string in Modular Crypt Format (ex.: $2a$10$VIhIOofSMqGdGlL4wzE//e.77dAQGqNtF/1dT7bqCrVtQuInWy2qi). Doing so revokes all current sessions.

totp_secret_base64'null' nullable

Enables 2FA and sets a TOTP secret for the user. Set to null to disable 2FA.

selected_team_id'null' nullable

ID of the team currently selected by the user

is_anonymousboolean
restricted_by_adminboolean

Whether the user is restricted by an administrator. Can be set manually or by sign-up rules.

restricted_by_admin_reason'null' nullable

Public reason shown to the user explaining why they are restricted. Optional.

restricted_by_admin_private_details'null' nullable

Private details about the restriction (e.g., which sign-up rule triggered). Only visible to server access and above.

country_code'null' nullable

Best-effort ISO country code captured at sign-up time from request geo headers.

Example request

{
  "display_name": "John Doe",
  "profile_image_url": "https://example.com/image.jpg",
  "client_metadata": {
    "key": "value"
  },
  "client_read_only_metadata": {
    "key": "value"
  },
  "server_metadata": {
    "key": "value"
  },
  "primary_email": "johndoe@example.com",
  "primary_email_verified": true,
  "primary_email_auth_enabled": true,
  "password": "my-new-password",
  "totp_secret_base64": "dG90cC1zZWNyZXQ=",
  "selected_team_id": "team-id",
  "restricted_by_admin": false,
  "restricted_by_admin_reason": null,
  "restricted_by_admin_private_details": null,
  "country_code": "US"
}

Response

Successful response

idstring required

The unique identifier of the user

primary_email'null' nullable

Primary email

primary_email_verifiedboolean required

Whether the primary email has been verified to belong to this user

primary_email_auth_enabledboolean required

Whether the primary email is used for authentication. If this is set to false, the user will not be able to sign in with the primary email with password or OTP

display_name'null' nullable

Human-readable user display name. This is not a unique identifier.

selected_team_id'null' nullable

ID of the team currently selected by the user

profile_image_url'null' nullable

URL of the profile image for user. Can be a Base64 encoded image. Must be smaller than 100KB. Please compress and crop to a square before passing in.

signed_up_at_millisnumber required

The time the user signed up (identify) => (the number of milliseconds since epoch, January 1, 1970, UTC)

client_metadataobject nullable

Client metadata. Used as a data store, accessible from the client side. Do not store information that should not be exposed to the client.

client_read_only_metadataobject nullable

Client read-only, server-writable metadata. Used as a data store, accessible from the client side. Do not store information that should not be exposed to the client. The client can read this data, but cannot modify it. This is useful for things like subscription status.

server_metadataobject nullable

Server metadata. Used as a data store, only accessible from the server side. You can store secret information related to the user here.

last_active_at_millisnumber required

The time the user was last active (identify) => (the number of milliseconds since epoch, January 1, 1970, UTC)

is_anonymousboolean required
is_restrictedboolean required

Whether the user is in restricted state (has signed up but not completed onboarding requirements)

restricted_by_adminboolean required

Whether the user is restricted by an administrator. Can be set manually or by sign-up rules.

restricted_by_admin_reason'null' nullable

Public reason shown to the user explaining why they are restricted. Optional.

restricted_by_admin_private_details'null' nullable

Private details about the restriction (e.g., which sign-up rule triggered). Only visible to server access and above.

country_code'null' nullable

Best-effort ISO country code captured at sign-up time from request geo headers.

Example response

{
  "id": "3241a285-8329-4d69-8f3d-316e08cf140c",
  "primary_email": "johndoe@example.com",
  "primary_email_verified": true,
  "primary_email_auth_enabled": true,
  "display_name": "John Doe",
  "selected_team": {
    "created_at_millis": 1630000000000,
    "server_metadata": {
      "key": "value"
    },
    "id": "ad962777-8244-496a-b6a2-e0c6a449c79e",
    "display_name": "My Team",
    "profile_image_url": "https://example.com/image.jpg",
    "client_metadata": {
      "key": "value"
    },
    "client_read_only_metadata": {
      "key": "value"
    }
  },
  "selected_team_id": "team-id",
  "profile_image_url": "https://example.com/image.jpg",
  "signed_up_at_millis": 1630000000000,
  "client_metadata": {
    "key": "value"
  },
  "client_read_only_metadata": {
    "key": "value"
  },
  "server_metadata": {
    "key": "value"
  },
  "last_active_at_millis": 1630000000000,
  "country_code": "US",
  "risk_scores": {
    "sign_up": {
      "bot": 0,
      "free_trial_abuse": 0
    }
  }
}