ServerOps.ggbeta
API ReferenceMembers

Invite a member

Send an invitation email to add a new member to the organisation.

The invitation expires after 14 days. Disposable email addresses and duplicate pending invites are rejected. The seat limit for the org's current plan is enforced (members + outstanding invites).

Requires members:write scope.

POST
/orgs/{orgId}/members

Authorization

bearerAuth members:write
AuthorizationBearer <token>

API token from your dashboard.

Format: so_live_... (production) or so_test_... (test mode).

Tokens carry one or more scopes. Request only the scopes your integration needs:

ScopeGrants
media:readList and retrieve files
media:writeUpload and delete files
logs:readRead log entries
logs:writeIngest log entries
cases:readRead cases
cases:writeCreate and update cases
apps:readRead apps
apps:writeSubmit apps
usage:readRead quota usage
members:readList organisation members
members:writeInvite and remove members
billing:readRead billing and subscription info
tokens:writeCreate and revoke API tokens

In: header

Scope: members:write

Path Parameters

orgId*string

Organisation ID (ULID)

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/orgs/01HZXXXXXXXXXXXXXXXXXXXXX/members" \  -H "Content-Type: application/json" \  -d '{    "email": "[email protected]",    "roleId": "rol_01HXYZ"  }'
{
  "id": "string",
  "email": "[email protected]",
  "expiresAt": "2019-08-24T14:15:22Z"
}
{
  "error": {
    "code": "bad_request",
    "message": "missing required field"
  }
}
{
  "error": {
    "code": "unauthorized",
    "message": "missing or invalid authorization token"
  }
}

{
  "error": {
    "code": "forbidden",
    "message": "token does not have the required scope"
  }
}

{
  "error": {
    "code": "conflict",
    "message": "member already exists in this organisation"
  }
}
{
  "error": {
    "code": "internal",
    "message": "an unexpected error occurred"
  }
}