Account & Profile
Manage user accounts and profiles
Account & Profile API
Manage authenticated user accounts and profile information.
Get Account {#get-account}
Retrieve the authenticated user's complete account information.
Endpoint
GET /api/v1/account
Authentication
Required - Must include valid session token
Response
{
"id": "account-id-123",
"created": "2024-01-01T00:00:00Z",
"modified": "2024-01-01T00:00:00Z",
"display_name": "DragonSlayer42",
"email": "user@example.com",
"status": "active",
"metadata": {
"season": "PRIMORDIAL",
"age": "30",
"credMetadata": {
"credential-id": {
"credId": "credential-id",
"deviceName": "My iPhone 15",
"userAgent": "Mozilla/5.0...",
"platform": "iOS",
"createdAt": "2024-01-01T00:00:00Z"
}
}
},
"credentials": []
}Response Fields
| Field | Type | Description |
|---|---|---|
id | string | Unique account identifier |
created | timestamp | Account creation date |
modified | timestamp | Last modification date |
display_name | string | User's display name |
email | string | User's email address |
status | string | Account status |
metadata | object | Account metadata including season, age, and WebAuthn credentials |
credentials | array | Array of WebAuthn credentials |
Update Profile {#update-profile}
Update the authenticated user's profile information.
Endpoint
PUT /api/v1/profile
Authentication
Required - Must include valid session token
Request Body
{
"display_name": "NewDisplayName"
}Request Fields
| Field | Type | Required | Description |
|---|---|---|---|
display_name | string | Yes | New display name (must be unique, case-insensitive) |
Success Response
{
"id": "account-id-123",
"created": 1704067200,
"modified": 1704153600,
"display_name": "NewDisplayName",
"email": "user@example.com",
"status": "active"
}Validation Failure Response
If the display name is already taken:
{
"validDisplayName": false
}Notes
- Display name uniqueness check is case-insensitive
- Display name is trimmed of whitespace before validation
- Updates the
modifiedtimestamp when successful