Skip to main content

/me — Who Am I

A single endpoint that returns the authenticated principal's profile, regardless of whether the caller is a human user or an AI agent. Use it from frontends, mobile apps, and AI tools that just need "tell me about the holder of this token."

GET /orgs/{orgId}/api/v1/me

Authentication​

Either an OAuth access token or an organization-scoped API key:

MethodHeader
Bearer tokenAuthorization: Bearer eyJ...
API keyAuthorization: ApiKey lmk_... or X-API-Key: lmk_...

Response shape​

The subject_type field tells you whether to use the user or agent shape.

subject_type = "user"​

{
"subject_type": "user",
"id": "01JF3KABCDE...",
"email": "jane@acme.com",
"email_verified": true,
"name": "Jane Doe",
"given_name": "Jane",
"family_name": "Doe",
"middle_name": null,
"nickname": null,
"preferred_username": "jane.doe",
"picture": "https://example.com/avatar.png",
"locale": "en",
"zoneinfo": "America/New_York",
"phone_number": null,
"mfa_enabled": true,
"roles": ["admin"],
"groups": [
{"id": "01JG...", "name": "engineering"}
],
"tenant": {
"id": "01JE...",
"slug": "acme-corp",
"name": "Acme Corp"
},
"last_login_at": "2026-04-10T09:15:00+00:00",
"created_at": "2026-01-15T10:30:00+00:00",
"updated_at": "2026-03-01T08:00:00+00:00"
}

subject_type = "agent"​

{
"subject_type": "agent",
"id": "42",
"agent_id": "agt_01HF...",
"name": "Invoice Analyzer",
"identity_type": "workload",
"capabilities": ["invoices.read"],
"scopes": ["read"],
"status": "active",
"tenant": {
"id": "01JE...",
"slug": "acme-corp",
"name": "Acme Corp"
}
}

For richer agent details (workload identity claims, JWKS URI, budget) use GET /orgs/{orgId}/api/v1/agents/me instead.

Examples​

curl "https://app.lumoauth.dev/orgs/acme-corp/api/v1/me" \
-H "Authorization: Bearer $ACCESS_TOKEN"

Errors​

StatusReason
401No token / invalid token
404Organization orgId does not exist