Skip to content

Tenants ​

MethodPathBodyResponse
GET/v1/tenants—{ tenants } (by name)
PUT/v1/tenants/{tenantRef}{ name, status?: ACTIVE|SUSPENDED, settings? }{ tenant }
GET/v1/tenants/{tenantRef}—{ tenant }
DELETE/v1/tenants/{tenantRef}—204 — see Deleting

tenant: { id, ref, name, status, settings, recording } — recording: what applies to its lines that don't choose (Recording policy). status defaults to ACTIVE. A SUSPENDED tenant's agents can't connect. settings replaces the stored object as a whole when given, and is kept when omitted:

json
{
  "auto_offline": { "enabled": true, "missed_threshold": 3 },
  "recording": { "enabled": true, "enforced": false, "storage_limit_bytes": 5368709120, "retention_days": 90, "cold_after_days": 30 },
  "team_view": true,
  "monitoring": { "modes": ["listen", "whisper", "barge"] }
}

The keys below are checked (a wrong type or range is a 400 naming the key, e.g. details.field: "settings.recording.retention_days"); any other key is stored as given: auto_offline.enabled, team_view, recording.enabled and recording.enforced true/false, auto_offline.missed_threshold 1–100, recording.retention_days and cold_after_days 0–36500, recording.storage_limit_bytes a positive integer, monitoring.modes a list of listen, whisper, barge.

team_view (default true): whether agents see the tenant's board — other agents' calls and statuses and the queues (Board). Supervisors always do. Set it to false when the agents are a product's end users, who must only ever see their own calls.

monitoring.modes (default all three): the supervisor modes allowed on the tenant's calls. ["listen"] lets supervisors listen but never be heard; without listen nobody may monitor. A refused mode is a call:errorMONITOR_MODE_NOT_ALLOWED (agent-protocol.md).

recording.enabled: whether the tenant's calls are recorded; omitted or null follows your account's default. recording.enforced: true: its lines can't choose their own — see Recording policy.

recording.retention_days deletes this tenant's recordings that many days after they were made (0 keeps them; default: the platform's, set by the operator — kept unless set). recording.cold_after_days moves them to cheaper storage that many days after they were made (still playable; default: the platform's).

auto_offline (off unless enabled: true) takes an agent OFFLINE after missed_threshold (default 3) consecutive missed offers. Counted as missed, for a call in a ROUND_ROBIN/PRIORITY queue: the queue's ring timeout passing it on, the customer hanging up while it rang that agent, or a live transfer the agent didn't accept in time. Also counted, whatever the queue: an IVR transfer to the agent not answered within the flow's agent_ring_timeout. Accepting a call resets the count.

Calloop — the call engine behind your product.