Claim a team invite as a new local account
const url = 'http://localhost:8000/api/auth/invite-claim/';const options = { method: 'POST', headers: {'Content-Type': 'application/json'}, body: '{"token":"example","password":"example"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url http://localhost:8000/api/auth/invite-claim/ \ --header 'Content-Type: application/json' \ --data '{ "token": "example", "password": "example" }'Local-auth deployments only (#818): possession of the invite token proves mailbox control, so the invitee sets a password for the invite’s email here, signs in via POST /api/auth/login/, and then accepts the invite through the normal accept endpoint.
404 when the deployment uses Firebase sign-in or the token is unknown; 410 expired/used invite; 409 the email already has a local account (sign in instead). Throttled (10/min).
Authorizations
Section titled “Authorizations”- None
Request Bodyrequired
Section titled “Request Bodyrequired”Request body for POST /api/auth/invite-claim/ (#818).
object
Invite token from the email link.
Password the invitee chooses (min 8 chars, not a common password, not all digits).
Examplegenerated
{ "token": "example", "password": "example"}Request body for POST /api/auth/invite-claim/ (#818).
object
Invite token from the email link.
Password the invitee chooses (min 8 chars, not a common password, not all digits).
Examplegenerated
token=example&password=exampleRequest body for POST /api/auth/invite-claim/ (#818).
object
Invite token from the email link.
Password the invitee chooses (min 8 chars, not a common password, not all digits).
Responses
Section titled “Responses”object
Examplegenerated
{ "ok": true, "email": "example"}object
Human-readable message, or a stable machine code for the cases a client branches on. The standard envelope for 400 (validation — a field-keyed object may appear instead), 401 (missing / invalid credentials), 403 (authenticated but not permitted), and 404 (absent — cross-team records are collapsed to 404 so the API never leaks the existence of another team’s data).
Examplegenerated
{ "detail": "example"}object
Human-readable message, or a stable machine code for the cases a client branches on. The standard envelope for 400 (validation — a field-keyed object may appear instead), 401 (missing / invalid credentials), 403 (authenticated but not permitted), and 404 (absent — cross-team records are collapsed to 404 so the API never leaks the existence of another team’s data).
Examplegenerated
{ "detail": "example"}object
Human-readable message, or a stable machine code for the cases a client branches on. The standard envelope for 400 (validation — a field-keyed object may appear instead), 401 (missing / invalid credentials), 403 (authenticated but not permitted), and 404 (absent — cross-team records are collapsed to 404 so the API never leaks the existence of another team’s data).
Examplegenerated
{ "detail": "example"}object
Human-readable message, or a stable machine code for the cases a client branches on. The standard envelope for 400 (validation — a field-keyed object may appear instead), 401 (missing / invalid credentials), 403 (authenticated but not permitted), and 404 (absent — cross-team records are collapsed to 404 so the API never leaks the existence of another team’s data).
Examplegenerated
{ "detail": "example"}