Skip to content

Accept an invitation

POST
/invitations/{token}/accept
curl --request POST \
--url https://api.sloose.com/invitations/k3f%E2%80%A6/accept \
--header 'Authorization: Bearer <token>'

Joins the organisation at the invited role, as the signed-in person — whose email must be the invited address. The session moves to that organisation. Somebody who joined the organisation another way in the meantime takes the invited role — an invitation to somebody already in the organisation is refused when it is made (ALREADY_MEMBER), so this is the only way one can meet a member.

Session only: an API token is an organisation’s and cannot accept an invitation to one.

token
required

The token from the invitation link.

string
Example
k3f…

The token from the invitation link.

Joined.

Media typeapplication/json
object
orgId
required
string
orgName
required
string
role
required
string
Allowed values: owner admin builder operator
Example
{
"role": "owner"
}

No bearer, or one that no longer resolves: a session that is unknown or expired (code: AUTH_REQUIRED), or an API token that was revoked or expired (TOKEN_REVOKED, TOKEN_EXPIRED), whose organisation is gone (ORG_NOT_FOUND) or whose member or user row is (MEMBERSHIP_GONE).

Media typeapplication/json

The error envelope every non-2xx answer uses.

object
error
required

Human-readable explanation.

string
code

Machine-readable reason. Absent on a few legacy 400s.

string
key
additional properties
Examplegenerated
{
"error": "example",
"code": "example"
}

The signed-in address is not the one invited (code: WRONG_EMAIL), an API token was used, or the session is a staff member’s view of an organisation, which does not act as the person outside it (code: STAFF_VIEW).

Media typeapplication/json

The error envelope every non-2xx answer uses.

object
error
required

Human-readable explanation.

string
code

Machine-readable reason. Absent on a few legacy 400s.

string
key
additional properties
Examplegenerated
{
"error": "example",
"code": "example"
}

No such invitation, or it is not visible to this session.

Media typeapplication/json

The error envelope every non-2xx answer uses.

object
error
required

Human-readable explanation.

string
code

Machine-readable reason. Absent on a few legacy 400s.

string
key
additional properties
Examplegenerated
{
"error": "example",
"code": "example"
}

The invitation is withdrawn, used or expired; or its organisation has been closed (ORG_CLOSED); or the membership kept changing while it was being accepted (MEMBERSHIP_CHANGING); or the person is the organisation’s only owner and the invitation is for a lower role (LAST_OWNER). In the last three the invitation is still pending.

Media typeapplication/json

The error envelope every non-2xx answer uses.

object
error
required

Human-readable explanation.

string
code

Machine-readable reason. Absent on a few legacy 400s.

string
key
additional properties
Examplegenerated
{
"error": "example",
"code": "example"
}

The restore switch is on (code: MAINTENANCE): every route but /health and /robots.txt is refused before anything is read, except the operator’s own POST /staff/people/{id}/delete with the ADMIN_TOKEN. Sloose is down for maintenance. Please try again in a few minutes.

Media typeapplication/json
object
error
required
string
code
required
string
Allowed value: MAINTENANCE
Example
{
"code": "MAINTENANCE"
}
Retry-After
integer

Seconds until asking again is worth it (300 while the switch is on).

Report a problem with this page

sloose.com