POST
https://app.evoriqa.com/api/v1/members/inviteInvite a member
Invites an email to the workspace. Seat-checked against the plan (402 over seats), and limited to 20 invites per hour per workspace. Accepting an invite is not in v1 — it is the invited human's browser session.
Requires scope team:write
Warning:
Access is gated — enable it before your first call
The API is off by default. A request succeeds only when all three switches are on: the platform master switch (off by default), your organisation’s API toggle, and your plan or client entitlement. Any one off returns 403 API access is not enabled for this workspace.
Request body
Content type: application/json
| Field | Type | Required | Description |
|---|---|---|---|
| string up to 200 chars, email | Required | The invitee's email. | |
| role | string one of admin · member · viewer | Optional | Granted role. |
Request
curl
curl -X POST "https://app.evoriqa.com/api/v1/members/invite" \
-H "x-api-key: $EVORIQA_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "email": "new.agent@acme.com", "role": "member" }'Node.js
const res = await fetch("https://app.evoriqa.com/api/v1/members/invite", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.EVORIQA_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
"email": "new.agent@acme.com",
"role": "member"
}),
});
const responseBody = await res.json();Python
import os
import requests
res = requests.post(
"https://app.evoriqa.com/api/v1/members/invite",
headers={"Authorization": f"Bearer {os.environ['EVORIQA_API_KEY']}"},
json={
"email": "new.agent@acme.com",
"role": "member"
},
)
body = res.json()Response
200 OK
{
"success": true,
"data": {
"id": "1a2b3c4d-5e6f-4a7b-8c9d-0e1f2a3b4c5d",
"email": "new.agent@acme.com",
"role": "member"
}
}