Skip to main content
View as Markdown

Invite a new member to the organization

POST /api/v1/members/invitations

Creates a pending invitation for an email with the given role. Admin only. Fails if the email already belongs to a member or already has a pending invitation.

Request body (application/json)

FieldTypeRequiredDescription
emailstringyes
rolestringyesOrganization role. admin: manage members and billing, plus everything readwrite can do. readwrite: start sessions, create API keys, delete sessions. readonly: view sessions, API keys, and test results only.

Example request

curl https://api.mobilenexthq.com/api/v1/members/invitations \
-X POST \
-H 'Authorization: Bearer mob_...' \
-H 'Content-Type: application/json' \
-d '{"email":"string","role":"admin"}'

Responses

201 — Invitation created

{
"id": "string",
"email": "string",
"role": "admin",
"status": "pending",
"invitedByUserId": "string",
"createdAt": "2026-01-01T00:00:00Z",
"expiresAt": "2026-01-01T00:00:00Z"
}

400 — Invalid request body

{
"error": {
"code": "string",
"message": "string"
}
}

401 — Missing or invalid Bearer token

{
"error": {
"code": "string",
"message": "string"
}
}

403 — Caller lacks permission for this action (e.g. not an admin)

{
"error": {
"code": "string",
"message": "string"
}
}

409 — Request conflicts with current state (e.g. already a member or already invited)

{
"error": {
"code": "string",
"message": "string"
}
}