Xeonr Developer Docs

List My Teams

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

Lists the teams the calling subject belongs to, filtered to teams entitled to the calling application. Includes the subject's team role and their per-application role names for the calling application.

Set include_unentitled to additionally return teams the calling user OWNS that are not yet entitled to this application (entitled=false, no application roles) — the picker for entitling an existing team via EnableTeamApplication. That form additionally requires auth:teams:manage or auth:teams:manage:app, and a user subject.

Required scopes: auth:teams:read

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

includeUnentitled?boolean

Also return teams the calling USER owns that are not yet entitled to the calling application, so a product can offer "use one of your existing teams" without asking for a slug. Those entries carry entitled=false. Requires auth:teams:manage or auth:teams:manage:app in addition to auth:teams:read, and a user subject — a service account cannot entitle a team, so the listing would be dead weight for one.

[key: string]?never

Response Body

application/json

application/json

curl -X POST "https://auth.xeonr.io/xeonr.auth.api.v1.TeamsService/ListMyTeams" \  -H "Connect-Protocol-Version: 1" \  -H "Content-Type: application/json" \  -d '{}'
{
  "teams": [
    {
      "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"
      },
      "role": "TEAM_ROLE_UNSPECIFIED",
      "applicationRoles": [
        "writer"
      ],
      "entitled": true
    }
  ]
}
{
  "code": "not_found",
  "message": "string",
  "details": [
    {
      "type": "string",
      "value": "string",
      "debug": {}
    }
  ]
}