v2

latestOpenAPI 3.0.3Apache-2.02026-08-07119359591.9 KB
Users

Create a user

Create a new account user with explicit invite control.

Invite modes

  • NONE — add the user directly with no invitation (for SSO-only accounts). The user is immediately active and can log in via the configured identity provider.
  • EMAIL_LINK — create an INVITED invitation and send the user an email with a verification link to complete registration.
  • TEMPORARY_PASSWORD — create an INVITED invitation with a temporary password (returned once in the response). The user must reset it on first login.

Idempotency on email (applies when invite_mode != "NONE")

Existing stateBehaviorResponse
No prior invitationCreate a new INVITED invitation201 Created
INVITED (not yet accepted)Return the existing invitation as-is; do not resend200 OK
ACTIVEEmail belongs to an existing member409 Conflict
EXPIREDCreate a new INVITED invitation201 Created
inactiveUser has been deactivated and cannot be re-invited409 Conflict

When invite_mode is NONE and the email already belongs to an active account member, the request returns 409 Conflict.

Payload requirements

  • name — required, 1–255 characters
  • email — required, must be a valid email address; used as the idempotency key
  • role — required, one of ADMIN, MEMBER, ANNOTATOR; sets the account-level role
  • invite_mode — required, one of NONE, EMAIL_LINK, TEMPORARY_PASSWORD

Requires account admin role or USER_CREATE permission.

<Note>This endpoint is in beta, read more here.</Note>

post/v2/users

Request body

namestring required

Full name of the new user

emailstring email required

An email address

invite_mode'NONE' | 'EMAIL_LINK' | 'TEMPORARY_PASSWORD' required

Controls how the user is invited to the account.

  • NONE — add the user directly with no invitation email (for SSO-only accounts).
  • EMAIL_LINK — send the user an email with a verification link to complete registration.
  • TEMPORARY_PASSWORD — issue a temporary password returned in the POST /v2/users response body; the user must reset it on first login. Treat this value as a secret — see CreateUserResponse.temporary_password for security guidance.
is_developerboolean

Whether the user should have developer permissions (can use the Arize API). Defaults to true for ADMIN and MEMBER roles, and false for ANNOTATOR.

Example request

{
  "email": "user@example.com",
  "role": {
    "id": "RW50aXR5OjEyMzQ1"
  }
}

Response

An account user object

idstring required

A universally unique identifier (base64-encoded opaque string).

namestring required

Display name of the user

emailstring email required

An email address

created_atstring date-time required

Timestamp for when the user was created

status'ACTIVE' | 'INVITED' | 'EXPIRED' required

Current status of the user in the account.

  • ACTIVE: User has verified their email and can access the platform.
  • INVITED: User has been invited and their verification token is still valid.
  • EXPIRED: User was invited but their verification token has expired or is missing. A new invite is required.
is_developerboolean required

Whether the user has developer permissions (can use the Arize API)

Example response

{
  "id": "RW50aXR5OjEyMzQ1",
  "email": "user@example.com",
  "role": {
    "id": "RW50aXR5OjEyMzQ1"
  }
}