Team
Invite operators, assign them to sites and set per-site permissions. The number of operators is plan-limited. Most endpoints require authentication; invite validation/acceptance is public.
GET
/api/v1/team AuthList all your operators across sites.
Response
{ "success": true, "operators": [ … ] }POST
/api/v1/team AuthInvite/create an operator. Assign one or more site_ids and permissions.
Request body
{
"email": "[email protected]",
"name": "Operator",
"password": "min 8 chars",
"site_ids": [1, 2],
"permissions": { "can_chat": true, "can_view_conversations": true },
"send_invite": true
}Response
{ "success": true }GET
/api/v1/sites/{id}/team AuthList operators on a site.
Response
{ "success": true, "operators": [ … ], "owner_online": true }GET
/api/v1/sites/{id}/my-access AuthYour own permissions on a site.
Response
{ "success": true, "permissions": { … } }PUT
/api/v1/team/{id} AuthUpdate an operator (permissions, status, name, site_ids).
Request body
{ "permissions": { "can_chat": true }, "status": "active" }Response
{ "success": true }DELETE
/api/v1/team/{id} AuthRemove an operator.
Response
{ "success": true, "deleted": 1 }POST
/api/v1/team/{id}/resend-invite AuthResend the invitation email.
Response
{ "success": true }GET
/api/v1/team/validate-invite PublicValidate an invite token.
| Param | Type | In | Description |
|---|---|---|---|
token | string | query |
Response
{ "success": true, "valid": true }POST
/api/v1/team/accept-invite PublicAccept an invite and set a password.
Request body
{ "token": "…", "password": "min 8 chars", "name": "Operator" }Response
{ "success": true }