AuralisDocs
OperationsInvitations

Claim an invitation by creating an account

Create the realm account, the helpdesk user and the membership, in that order.

/v1/invitations/{token}/claimNo credential
Operation id
claim_invitation
Access
Public by design. No credential is required or consulted.
POST/v1/invitations/{token}/claim

Create the realm account, the helpdesk user and the membership, in that order.

This is the route for an invitee who has no account anywhere. Use it when the preview returned password_required: true. Everyone else accepts instead.

There is no address field and there never will be. The address comes from the invitation, so a claim cannot be pointed at anyone else. display_name is optional and defaults to the local part of the invited address.

The password must be at least 12 characters. Beyond that the rule belongs to the identity provider, so a password this route accepts can still be refused for being weak or reused, and the refusal explains itself.

The response does not sign anyone in. sign_in_required is always true: the account now exists, and the next step is an ordinary sign in.

An address that already has an account is refused rather than joined, even if the preview suggested otherwise, because the preview reads a value recorded when the invitation was sent and this checks live. Send them to sign in and accept.

Claiming is rate limited per calling address, and a successful claim is refunded, so a team joining from one office does not throttle itself.

Access: no credential.

Path Parameters

token*Token

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Everything the invitee supplies, which is a password and nothing else.

There is no address field and there must never be one. The address is fixed by the invitation (FR-99, FR-100); a body field naming one would make the link's binding a suggestion. The display name is optional because a person's name is theirs to state, and it defaults to the local part of the invited address rather than being demanded on a surface someone is trying to get through.

Response Body

application/json

application/json

curl -X POST "https://example.com/v1/invitations/string/claim" \  -H "Content-Type: application/json" \  -d '{    "password": "correct-horse-battery-staple",    "display_name": "Sam Okafor"  }'
{  "workspace_id": "9e2b6c14-3d08-4a7f-b512-8c0d4e6a1f93",  "role": "editor",  "email": "sam.okafor@northwind.example",  "sign_in_required": true}