Invite workspace members in bulk

<Info>This API is in beta. Endpoints, fields, and behavior may still change, so avoid depending on it in production.</Info>

Invites up to 50 people to a workspace at once, the same way as Invite workspace member.

The whole request is refused when a role or group_id isn't allowed. Otherwise each invitation succeeds or fails on its own, so a 200 doesn't mean every invitation went out. Check failed, which lists existing members, people with a pending invitation, and invitations that couldn't be saved or emailed.

Retrying is safe: invitations that went out the first time come back in failed as already pending.

Inviting is limited to 6 requests per minute, shared by Invite workspace member, Invite workspace members in bulk, Resend workspace invitation, and Resend workspace invitations in bulk. A signed-in session has its own limit, and every personal access token for the workspace shares one. Some workspaces have a different limit.

<Note>Call this as an owner or admin of the workspace, with a personal access token for that workspace sent as a Bearer token, or from a signed-in session. A read-only token is refused, and workspace API keys aren't accepted.</Note>

post/api/workspace/invitations/bulk-invite

Query parameters

workspaceIdstring required

ID of the workspace. With a personal access token, use the token's workspace. Get it from organization_id in Get app.

ID of the workspace. With a personal access token, use the token's workspace. Get it from organization_id in Get app.

Request body

Example request

{
  "invitations": [
    {
      "email": "dana@acme.com",
      "role": "editor"
    },
    {
      "email": "sam@acme.com"
    }
  ]
}

Response

Which invitations went out.

total_sentinteger required

Number of invitations sent, the length of successful.

successfulstring[] required

Emails an invitation was sent to.

Example response

{
  "total_sent": 1,
  "successful": [
    "dana@acme.com"
  ],
  "failed": [
    {
      "email": "sam@acme.com",
      "error": "User already has a pending invitation"
    }
  ]
}

Changes

Changed in 1 of the 39 revisions of this API.1