Current user
The signed-in user views or edits their own profile, real-name verification and UI preferences.
meUser accountsAuthentication: User6 endpointsGet current user
GET
/api/v2/meAuthentication: User
Update profile
PUT
/api/v2/meAuthentication: User
Request body application/json
| Field | Type | Required | Description |
|---|---|---|---|
| string | — | ||
| email_code | string | — | Code sent to the new email (POST /verify-codes, purpose=bind); required when changing the email |
| login_ip_allow | string[] | — | Login IP allowlist (IPs or CIDRs); empty means no restriction |
| login_verify | LoginVerify | — | Second-factor login: none means not required; email / sms also require an email/SMS code at login (the platform must allow it and the address must be bound) |
| phone | string | — | Phone number |
| phone_code | string | — | Code sent to the new phone number (POST /verify-codes, purpose=bind); required when changing the phone number |
Get real-name verification status
GET
/api/v2/me/certificationAuthentication: User
Submit real-name verification
POST
/api/v2/me/certificationAuthentication: User
Request body application/json
| Field | Type | Required | Description |
|---|---|---|---|
| id_number | string | Required | Masked ID number |
| real_name | string | Required | Masked real name |
Get preferences
GET
/api/v2/me/preferencesAuthentication: User
Update preferences
PUT
/api/v2/me/preferencesAuthentication: User
Current user object
| Field | Type | Required | Description |
|---|---|---|---|
| balance_cents | integer | — | Account balance in cents, same as balance_cents of GET /users/{user_id}/account (0 when there is no account). Only present in the GET /users list, not in single-user responses |
| certified | boolean | — | Whether real-name verification has passed |
| client_ip | string | — | Source IP of this request, derived the same way as the login IP allowlist check (what the allowlist compares is what is shown). Only present in GET /me and PUT /me |
| created_at | string | — | Created at |
| delegated_session | boolean | — | Whether the current session was issued by superadmin sign-in or switch-to-user (if so, password, email, phone, login allowlist, login verification and real-name are read-only). Only present in GET /me and PUT /me |
| string | — | ||
| email_code | string | — | Code sent to the new email (POST /verify-codes, purpose=bind); required when changing the email |
| enabled | boolean | — | Whether enabled |
| id | integer | — | Record ID |
| id_number | string | — | Masked ID number |
| login_ip_allow | string[] | — | Login IP allowlist (IPs or CIDRs); empty means no restriction |
| login_verify | LoginVerify | — | Second-factor login: none means not required; email / sms also require an email/SMS code at login (the platform must allow it and the address must be bound) |
| phone | string | — | Phone number |
| phone_code | string | — | Code sent to the new phone number (POST /verify-codes, purpose=bind); required when changing the phone number |
| provider | string | — | Real-name verification provider |
| real_name | string | — | Masked real name |
| reason | string | — | Reason for failure |
| role | string | — | Account role: admin or tenant |
| status | string | — | Verification status: none, pending, verified or failed |
| totp_enabled | boolean | — | Whether TOTP is enabled |
| totp_recovery_left | integer | — | Number of unused TOTP recovery codes. Only present in GET /me and PUT /me when TOTP is enabled |
| updated_at | string | — | Updated at |
| url | string | — | Verification URL the user must visit while pending (returned only on submission) |
| username | string | — | Username |