Docs / API and agents

Profile and account API

Read and edit your profile, business details and saved signature, and download your personal data.

All routes need a session and are under /v1. They act on the caller only.

Routes#

Method and pathWhat
GET /profilethe caller's profile
GET /profile/editorprofile plus what the editor needs (no-store)
PATCH /profilechange profile fields and, for an organization administrator, organization details, including defaultTermsDays (30, 60, 90 or null; other numbers are a 400)
GET /profile/exportJSON download of the caller's personal data (Content-Disposition: attachment)
PUT /users/me/signaturesave the default signature, body { signatureImage } as a base64 PNG or JPEG data URL
DELETE /users/me/signatureremove it

Rules and errors#

StatusWhen
400invalid input; phone not 10 US digits or without a country code; signature not a PNG or JPEG data URL
401the user is not active
403the account or organization is inactive, denied or suspended; a non-administrator edits organization details
404user not found
409that phone number is already linked to another account
413body too large
429more than 30 profile changes per minute, or more than 5 exports per hour

A change records user.profile_updated (which groups changed, not the values) and an export records user.data_exported in the audit log. The deactivation routes (POST /auth/delete-account/code, POST /auth/delete-account) and workspace routes live in the account controller; see Personal data.