Skip to content

Update User

PATCH
/users/{user_id}
curl --request PATCH \
--url https://example.com/users/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0 \
--header 'Content-Type: application/json' \
--data '{ "biological_sex": "male", "chronotype": "morning", "date_of_birth": "2026-04-15", "display_name": "example", "gender": "example", "height_cm": 1, "occupation_activity": "sedentary", "timezone": "example", "weight_kg": 1 }'

Update self-service profile fields (display name, timezone, date of birth, height, weight, and the static demographic/context attributes: biological sex, gender, chronotype, occupation activity).

Does not allow changing email, password, or any auth-related fields.

user_id
required
User Id
string format: uuid
Media typeapplication/json
UserUpdate

Self-service profile updates. Deliberately excludes email, password, and any auth-related fields — those have their own dedicated flows.

object
biological_sex
Any of:
string
Allowed values: male female intersex unspecified
chronotype
Any of:
string
Allowed values: morning intermediate evening
date_of_birth
Any of:
string format: date
display_name
Any of:
string
<= 255 characters
gender
Any of:
string
<= 64 characters
height_cm
Any of:
number
> 0 <= 300
occupation_activity
Any of:
string
Allowed values: sedentary light active heavy
timezone
Any of:
string
>= 1 characters <= 64 characters
weight_kg
Any of:
number
> 0 <= 1000

Successful Response

Media typeapplication/json
UserRead
object
avatar_url
Any of:
string
biological_sex
Any of:
string
Allowed values: male female intersex unspecified
chronotype
Any of:
string
Allowed values: morning intermediate evening
created_at
required
Created At
string format: date-time
date_of_birth
Any of:
string format: date
display_name
required
Any of:
string
email
required
Email
string
first_name
Any of:
string
gender
Any of:
string
height_cm
Any of:
number
id
required
Id
string format: uuid
is_active
Is Active
boolean
default: true
is_admin
required
Is Admin
boolean
last_name
Any of:
string
occupation_activity
Any of:
string
Allowed values: sedentary light active heavy
preferences
Preferences
object
key
additional properties
any
timezone
required
Timezone
string
updated_at
required
Updated At
string format: date-time
weight_kg
Any of:
number
Example
{
"biological_sex": "male",
"chronotype": "morning",
"is_active": true,
"occupation_activity": "sedentary"
}

Validation Error

Media typeapplication/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationError
object
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
Examplegenerated
{
"detail": [
{
"loc": [
"example"
],
"msg": "example",
"type": "example"
}
]
}