Claude Platform Docs

Create Invite

$ ant beta:organization:invites create
POST/v1/organizations/invites

Invite a user to join the organization by email.

On plans that draw members from a finite pool of purchased seats, the invite automatically consumes a seat from the lowest tier with availability; there is no seat-tier parameter. When no seat is free the request fails with a 400 error rather than purchasing a seat.

Parameters
--email: string

Email of the User.

formatemail
--role: "billing" or "claude_code_user" or "developer" or 2 more

Role for the invited User.

The accepted values depend on the organization type. Console and API organizations accept user, developer, billing, and claude_code_user; admin cannot be assigned through the API. Claude Enterprise organizations accept user and managed.

--rbac-group-id: optional array of string

RBAC group IDs to assign to the User when the Invite is accepted. A non-empty array is accepted only for a Claude Enterprise organization with RBAC groups, and requires the key to carry the write:rbac_groups scope.

maxItems100
Returns
beta_organization_invite: object{ id, accepted_at, email, 6 more }
id: string

ID of the Invite.

accepted_at: string

RFC 3339 datetime string indicating when the Invite was accepted, or null.

formatdate-time
email: string

Email of the User being invited.

expires_at: string

RFC 3339 datetime string indicating when the Invite expires.

formatdate-time
invited_at: string

RFC 3339 datetime string indicating when the Invite was created.

formatdate-time
rbac_group_ids: array of string

RBAC group IDs recorded on the Invite (Claude Enterprise organizations), to be assigned to the User when the Invite is accepted. [] when none.

role: "admin" or "billing" or "claude_code_user" or 6 more

Organization role of the User.

One of the following:
"admin"
"billing"
"claude_code_user"
"developer"
"managed"
"membership_admin"
"owner"
"primary_owner"
"user"
status: "accepted" or "deleted" or "expired" or "pending"

Status of the Invite.

One of the following:
"accepted"
"deleted"
"expired"
"pending"
type: "invite"

Object type.

For Invites, this is always "invite".

Create Invite

ant beta:organization:invites create \
  --api-key my-anthropic-api-key \
  --email user@emaildomain.com \
  --role user
{
  "id": "invite_015gWxCN9Hfg2QhZwTK7Mdeu",
  "accepted_at": "2019-12-27T18:11:19.117Z",
  "email": "user@emaildomain.com",
  "expires_at": "2024-11-20T23:58:27.427722Z",
  "invited_at": "2024-10-30T23:58:27.427722Z",
  "rbac_group_ids": [
    "string"
  ],
  "role": "admin",
  "status": "pending",
  "type": "invite"
}
Returns Examples
{
  "id": "invite_015gWxCN9Hfg2QhZwTK7Mdeu",
  "accepted_at": "2019-12-27T18:11:19.117Z",
  "email": "user@emaildomain.com",
  "expires_at": "2024-11-20T23:58:27.427722Z",
  "invited_at": "2024-10-30T23:58:27.427722Z",
  "rbac_group_ids": [
    "string"
  ],
  "role": "admin",
  "status": "pending",
  "type": "invite"
}