Skip to main content
POST
Bulk Invite to Websites or Groups

Authorizations

x-api-key
string
header
required

API key for authentication. You can create one here.

Body

application/json

Request body for inviting a user to multiple websites or multiple groups. Provide exactly one of website_ids or group_ids — the two are mutually exclusive. A single consolidated invitation email is sent in 'email' mode.

invite_method
enum<string>
required

How to invite the user. 'direct' adds the user to each target immediately without sending any email — if no account exists for the email, a new user account is created automatically (with emailVerified=false). 'email' creates pending invite records and sends a single consolidated invitation email.

Available options:
direct,
email
Example:

"direct"

email
string<email>
required

Email address of the user to invite

Example:

"user@example.com"

role
enum<string>

The role to assign to the invited user on each target. Mutually exclusive with role_id.

Available options:
admin,
viewer
Example:

"viewer"

role_id
string

Assign any role by ID — a system role or one of your organization's custom roles (see GET /api/v1/roles). Mutually exclusive with role. Returns 404 if the role does not exist or belongs to another organization. Defaults to Viewer when neither role nor role_id is given. System role IDs are GUID-shaped sentinels (e.g. 00000000-0000-0000-0000-000000000001), not RFC 4122 UUIDs.

Pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$
Example:

"789e0123-e89b-12d3-a456-426614174000"

website_ids
string<uuid>[]

Array of website IDs to invite the user to (1-50). Mutually exclusive with group_ids.

Required array length: 1 - 50 elements
Example:
group_ids
string<uuid>[]

Array of group IDs to invite the user to (1-50). Mutually exclusive with website_ids. Requires a global API key.

Required array length: 1 - 50 elements
Example:
first_name
string

Optional first name of the invited user. Used when creating a new user account for 'direct' invites or populating invite records for 'email' invites.

Example:

"John"

last_name
string

Optional last name of the invited user. Used when creating a new user account for 'direct' invites or populating invite records for 'email' invites.

Example:

"Doe"

Response

Bulk invite processed. Check individual results for per-target outcomes.

Response from a bulk invite request. Each target (website or group) is processed independently.

success
boolean
required

Whether the bulk operation was processed (always true if request was valid)

Example:

true

results
object[]
required

Per-target results (one entry per website or group in the request)