API referencePlatformAuth
Update the signed-in SaaS user (staff/operator) profile
Resolves the bearer to the GLOBAL User (D-027) the same way whoami does, applies the provided profile fields, persists them, and returns the refreshed identity.
Authorization
bearer_auth AuthorizationBearer <token>
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Partial-update (merge-patch, RFC 7396) payload for the authenticated
staff/operator profile (R10, GAP-37). Email is NOT mutable here (it flows
through the OIDC link). Each profile field uses Option<Option<String>>:
an ABSENT field is left unchanged, an explicit null CLEARS the field, and
a string value SETS it.
Response Body
application/json
application/json
application/json
curl -X PATCH "https://example.com/v1/auth/whoami" \ -H "Content-Type: application/json" \ -d '{}'{ "email": "string", "first_name": "string", "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "is_superadmin": true, "last_name": "string", "profile_picture": "string"}{ "detail": "Pool slug must be unique.", "instance": "urn:forestvpn:trace:a1b2c3d4", "title": "Validation Error", "type": "https://fvpn.net/errors/validation"}{ "detail": "Pool slug must be unique.", "instance": "urn:forestvpn:trace:a1b2c3d4", "title": "Validation Error", "type": "https://fvpn.net/errors/validation"}