Skip to main content

Account

Read your own user profile, list your past submissions, and manage the API keys that authenticate programmatic clients on your behalf.

All endpoints on this page require authentication (Clerk JWT or personal API key). They scope to the caller’s own account.

Current user

GET/api/v1/users/me

Returns the authenticated user’s profile, including identity verification status. Useful as a sanity check that an API key is valid before you start a longer-running flow.

200 OK
{
  "id": "user-uuid",
  "email": "alex@example.com",
  "role": "patient",
  "identityVerification": {
    "status": "verified",
    "verifiedAt": "2026-01-10T18:05:00Z"
  },
  "createdAt": "2026-01-10T18:00:00Z"
}

List submissions

GET/api/v1/users/me/submissions

Returns a flattened list of every submission the user has made, across all encounters and patients. Each entry pairs the submission metadata with a short query preview — handy for displaying a history view without fetching every encounter individually.

Create API key

POST/api/v1/users/me/api-keys

Mints a new personal API key. The raw key is returned onlyin this response — subsequent reads only show a prefix and metadata. Store the key in a secret manager.

Request
{
  "label": "Claude Code on laptop",
  "expiresAt": "2027-02-26T00:00:00Z"
}
201 Created
{
  "key": "ak_4f9c2e7b1a3d8c5f6e4b7a2d9c1e3f5b8a7c2e4d6f1b3a5c7e9d2b4f6a8c1e3d",
  "keyId": "key-uuid",
  "prefix": "ak_4f9c2e7b",
  "label": "Claude Code on laptop",
  "expiresAt": "2027-02-26T00:00:00Z",
  "createdAt": "2026-02-26T12:00:00Z"
}

You can also create keys interactively from the account dashboard.

List API keys

GET/api/v1/users/me/api-keys

Returns metadata for every key on the account. The raw key value is never returned after creation — you see the prefix, label, expiry, and last-used timestamp.

200 OK
[
  {
    "keyId": "key-uuid",
    "prefix": "ak_4f9c2e7b",
    "label": "Claude Code on laptop",
    "expiresAt": "2027-02-26T00:00:00Z",
    "createdAt": "2026-02-26T12:00:00Z",
    "lastUsedAt": "2026-02-27T09:14:31Z"
  }
]

Revoke API key

DELETE/api/v1/users/me/api-keys/{keyId}

Marks the key revoked. Subsequent requests using the key get 401. The metadata stays on the account for audit; it just won’t authenticate.

curl
curl -X DELETE https://api.appendix.com/api/v1/users/me/api-keys/{keyId} \
  -H "Authorization: Bearer ak_..."