get/api/v2/team/invitations

List pending team invitations.

Returns local pending invitations and their project assignments without exposing invite tokens or email delivery internals. Requires an organization-scoped API key. Project-scoped keys cannot read organization-wide team state.

Requires bearer API key

Parameters

projectId

query

Filter pending invitations to those assigned to one organization project.

Schema: string

Responses

200

Pending team invitation list.

application/json
{
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "organizationRole": {
            "type": "string",
            "enum": [
              "Owner",
              "Member"
            ]
          },
          "projectAccess": {
            "type": "string"
          },
          "projectAssignments": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "projectId": {
                  "type": "string"
                },
                "access": {
                  "type": "string",
                  "enum": [
                    "full",
                    "view_only"
                  ]
                }
              },
              "required": [
                "projectId",
                "access"
              ],
              "additionalProperties": true
            }
          },
          "status": {
            "type": "string"
          },
          "expiresAt": {
            "type": "string",
            "format": "date-time"
          },
          "inviterId": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "email",
          "organizationRole",
          "projectAccess",
          "projectAssignments",
          "status",
          "expiresAt",
          "inviterId"
        ],
        "additionalProperties": true
      }
    },
    "organization": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "slug": {
          "type": [
            "string",
            "null"
          ]
        },
        "currentUserRole": {
          "type": "string"
        },
        "currentMemberId": {
          "type": "string"
        },
        "activeProjectId": {
          "type": [
            "string",
            "null"
          ]
        }
      },
      "required": [
        "id",
        "name",
        "slug",
        "currentUserRole",
        "currentMemberId",
        "activeProjectId"
      ],
      "additionalProperties": true
    },
    "filters": {
      "type": "object",
      "properties": {
        "projectId": {
          "type": [
            "string",
            "null"
          ]
        }
      },
      "required": [
        "projectId"
      ],
      "additionalProperties": true
    }
  },
  "required": [
    "items",
    "organization",
    "filters"
  ],
  "additionalProperties": true
}
403

An organization-scoped API key is required.

application/json
{
  "type": "object",
  "additionalProperties": true
}

Try it

Send this request to the local WatchLLM REST handler. Use a key from `/workspace/api`; organization keys can include `X-Project-Id` only when the endpoint documents that header.