Xeonr Developer Docs

Accept Team Invitation

POST
/xeonr.auth.api.v1.TeamsService/AcceptTeamInvitation

Accepts a team invitation by emailed token or by invitation id. The calling subject's verified email must match the invited address; membership materialises on acceptance.

Required scopes: auth:teams:manage or auth:teams:manage:app

AuthorizationBearer <token>

JWT access token obtained via OAuth2 flow or service account

In: header

Header Parameters

Connect-Protocol-Version*number

Define the version of the Connect protocol

Value in1
Connect-Timeout-Ms?number

Define the timeout, in ms

Request Body

application/json

token?string

The opaque token from the invitation email. Supply this OR invitation_id.

Lengthlength <= 128
invitationId?string

The invitation's id, as returned by ListMyInvitations — for in-product accept surfaces where an email link cannot be followed (a TV, a kiosk). Identity proof is unchanged: the caller's VERIFIED email must match the invited address, which is what the token path checks too, so this grants nothing the token path would not.

Lengthlength <= 64
[key: string]?never

Response Body

application/json

application/json

curl -X POST "https://auth.xeonr.io/xeonr.auth.api.v1.TeamsService/AcceptTeamInvitation" \  -H "Connect-Protocol-Version: 1" \  -H "Content-Type: application/json" \  -d '{}'
{
  "team": {
    "teamId": "urn:xeonr:auth:team:0f3c9a2e-8f1b-4c2d-9e6a-1b2c3d4e5f60",
    "slug": "platform-core",
    "name": "Platform Core",
    "description": "string",
    "avatarUrl": "string",
    "createdAt": "2023-01-15T01:30:15.01Z"
  }
}
{
  "code": "not_found",
  "message": "string",
  "details": [
    {
      "type": "string",
      "value": "string",
      "debug": {}
    }
  ]
}