Skip to content

Update Profile

PATCH
/api/v1/auth/me
curl --request PATCH \
--url https://example.com/api/v1/auth/me \
--header 'Content-Type: application/json' \
--data '{ "name": "example", "locale": "example", "base_currency": "example", "theme": "example", "theme_mode": "example", "date_format": "example", "number_format": "example", "font_size": "example", "density": "example", "report_frequency": "example", "offer_rule_on_categorize": true, "tour_seen": true, "setup_checklist_hidden": true, "suggest_category_from_payee": true, "custom_css": "example", "missing_rates_dismissed": "example" }'

Update the current user’s profile.

Any of name, locale, base_currency, theme, theme_mode, report_frequency and custom_css can be sent. A custom_css the allow-list rejects answers 422 custom_css_invalid and changes nothing.

Media typeapplication/json
UpdateProfileRequest
object
name
Any of:
string
<= 255 characters
locale
Any of:
string
/^(fr|en|es|de|it)$/
base_currency
Any of:
string
/^[A-Z]{3}$/
theme
Any of:
string
/^(noir|swiss|aurora|fintech|azur|ledger)$/
theme_mode
Any of:
string
/^(light|dark|system)$/
date_format
Any of:
string
/^(auto|DD/MM/YYYY|MM/DD/YYYY|YYYY-MM-DD|MM\.DD\.YYYY|DD\.MM\.YYYY|DD-MM-YYYY)$/
number_format
Any of:
string
/^(auto|fr|en|de)$/
font_size
Any of:
string
/^(87\.5|100|112\.5|125|150)$/
density
Any of:
string
/^(compact|comfortable|roomy)$/
report_frequency
Any of:
string
/^(weekly|monthly|off)$/
offer_rule_on_categorize
Any of:
boolean
tour_seen
Any of:
boolean
setup_checklist_hidden
Any of:
boolean
suggest_category_from_payee
Any of:
boolean
custom_css
Any of:
string
missing_rates_dismissed
Any of:
string
<= 1024 characters /^([A-Z]{3}(,[A-Z]{3})*)?$/

Example generated

{
"name": "example",
"locale": "example",
"base_currency": "example",
"theme": "example",
"theme_mode": "example",
"date_format": "example",
"number_format": "example",
"font_size": "example",
"density": "example",
"report_frequency": "example",
"offer_rule_on_categorize": true,
"tour_seen": true,
"setup_checklist_hidden": true,
"suggest_category_from_payee": true,
"custom_css": "example",
"missing_rates_dismissed": "example"
}

Successful Response

Media typeapplication/json
UserOut

Schema for user profile response — ORM serialization via from_attributes.

object
id
required
Id
integer
sub
required
Sub
string
email
required
Any of:
string
name
required
Any of:
string
locale
Locale
string
default: fr
base_currency
Base Currency
string
default: EUR
theme
Theme
string
default: ledger
theme_mode
Theme Mode
string
default: light
date_format
Any of:
string
number_format
Any of:
string
font_size
Any of:
string
density
Any of:
string
report_frequency
Any of:
string
offer_rule_on_categorize
Offer Rule On Categorize
boolean
tour_seen
Tour Seen
boolean
setup_checklist_hidden
Setup Checklist Hidden
boolean
suggest_category_from_payee
Suggest Category From Payee
boolean
default: true
custom_css
Any of:
string
missing_rates_dismissed
Any of:
string
totp_enabled
Totp Enabled
boolean
is_admin
Is Admin
boolean
is_active
Is Active
boolean
default: true

Example

{
"locale": "fr",
"base_currency": "EUR",
"theme": "ledger",
"theme_mode": "light",
"offer_rule_on_categorize": false,
"tour_seen": false,
"setup_checklist_hidden": false,
"suggest_category_from_payee": true,
"totp_enabled": false,
"is_admin": false,
"is_active": true
}

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
input
Input
ctx
Context
object

Example generated

{
"detail": [
{
"loc": [
"example"
],
"msg": "example",
"type": "example",
"input": "example",
"ctx": {}
}
]
}