Skip to content

Lookup Invitation

POST
/api/auth/invitations/lookup
curl --request POST \
--url https://example.com/api/auth/invitations/lookup \
--header 'Content-Type: application/json' \
--data '{ "token": "example" }'

Describe a live invitation to its token holder (the accept page uses account_exists to choose between “sign in to accept” and “create your account”). The token arrives in the body, never the URL, so it stays out of access logs.

Media type application/json
InvitationTokenRequest

BUG-377: token-only body (lookup, and accept for a signed-in user).

object
token
required
Token
string
>= 1 characters <= 256 characters
Example generated
{
"token": "example"
}

Successful Response

Media type application/json
InvitationLookupResponse

What the token holder (= the invited mailbox) may see before accepting.

object
account_exists
required
Account Exists
boolean
email
required
Email
string
expires_at
required
Expires At
string format: date-time
invited_by_name
Any of:
string
organization_name
required
Organization Name
string
role
required
Role
string
Example generated
{
"account_exists": true,
"email": "example",
"expires_at": "2026-04-15T12:00:00Z",
"invited_by_name": "example",
"organization_name": "example",
"role": "example"
}

Validation Error

Media type application/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationError
object
ctx
Context
object
input
Input
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
Example generated
{
"detail": [
{
"ctx": {},
"input": "example",
"loc": [
"example"
],
"msg": "example",
"type": "example"
}
]
}