Skip to main content
GET
/
api
/
v1
/
users
/
me
Get Me
curl --request GET \
  --url https://roughy-api-staging.fly.dev/api/v1/users/me \
  --header 'Authorization: Bearer <token>'
{
  "created_at": "2026-04-15T08:23:11.452000Z",
  "email": "alex@example.com",
  "first_name": "Alex",
  "id": "019de7dd-d3cd-7d42-886e-ac55f552b3fb",
  "last_name": "Schmidt",
  "two_factor_enabled": false
}

Documentation Index

Fetch the complete documentation index at: https://docs.roughy.ai/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

Either your Supabase session JWT (UI flows) or an API key minted via POST /api-keys (programmatic flows). Pass it as Authorization: Bearer <token>. The server inspects the token format and routes to JWT or API-key verification automatically.

Response

Successful Response

Public projection of the caller's own users row.

No auth_user_id (Supabase identity, not part of our public API), no stripe_customer_id (billing-internal), no is_admin (role flag, not a profile field). email and deleted_at stay so the UI can render the account state honestly.

id
string<uuid>
required
email
string
required
first_name
string | null
required
last_name
string | null
required
two_factor_enabled
boolean
required
deleted_at
string<date-time> | null
required
created_at
string<date-time>
required