Docs
Esc

Suggested

QuickstartGet started
Webhooks and signaturesMessaging
Create a messagemessages.create · POST /v1/accounts/{AC}/messages
RATE_LIMITED429 · Rate limit exceeded.
message.deliveredMessage resource
Contents

API reference

Inboxes

API reference descriptions are provided in English to preserve the exact published contract.

List authorized inboxes

GET/v1/accounts/{AC}/inboxes

inboxes.listSDK operation getV1AccountsByAcInboxes

Inbox and dashboard sessions

Alternatively, a normal tenant USER session may use inboxes:read through actual readable inbox membership in this workspace. Collection results include only accessible inboxes or their conversations; this grants no account-wide scopes, API-key permission, staff-delegation authority or platform access.

Parameters

  • limitinteger (1–100)query
  • cursorstring (max 2048 chars)query
  • includeSupervisionbooleanquery

Create a shared inbox

POST/v1/accounts/{AC}/inboxes

inboxes.createSDK operation postV1AccountsByAcInboxes

Request body

  • namestring (max 128 chars)Required
  • senderSidsstring (WA… SID)[]Required
  • assignmentStrategyenum

    ROUND_ROBINLEAST_LOADEDBALANCED

  • autoAssignboolean

    Hand new and queued conversations to available members by the assignment strategy when no routing rule decides. On by default.

  • bindingsobject[]
  • businessHoursobject
    Show 3 child attributes
    • timezonestring (max 64 chars)Required
    • weeklyobject[]Required
    • holidaysstring (date)[]
  • defaultAgentCapacityinteger (1–1000)
  • isDefaultboolean
  • leadPrincipalRefstring (max 128 chars) | null

    The team lead told about every missed target in this inbox.

  • reopenAfterSecondsinteger (0–31536000)

    A customer writing to a closed conversation after this quiet period starts a fresh conversation with fresh deadlines. Default 86400 (24 hours).

  • slaPoliciesobject[]
  • slaPolicyobject
    Show 3 child attributes
    • firstResponseSecondsinteger (1–2592000)Required
    • nextResponseSecondsinteger (1–2592000)Required
    • resolutionSecondsinteger (1–2592000)Required
  • slaWarningPercentinteger (10–99)

    Warn the assignee when this share of a response target has elapsed. Default 80.

Get an inbox

GET/v1/accounts/{AC}/inboxes/{IB}

inboxes.retrieveSDK operation getV1AccountsByAcInboxesByIb

Parameters

  • IBstring (IB… SID)Required

Update an inbox

PATCH/v1/accounts/{AC}/inboxes/{IB}

inboxes.updateSDK operation patchV1AccountsByAcInboxesByIb

Parameters

  • IBstring (IB… SID)Required

Request body

  • assignmentStrategyenum

    ROUND_ROBINLEAST_LOADEDBALANCED

  • autoAssignboolean

    Hand new and queued conversations to available members by the assignment strategy when no routing rule decides. On by default.

  • bindingsobject[]
  • businessHoursobject
    Show 3 child attributes
    • timezonestring (max 64 chars)Required
    • weeklyobject[]Required
    • holidaysstring (date)[]
  • defaultAgentCapacityinteger (1–1000)
  • isDefaultboolean
  • leadPrincipalRefstring (max 128 chars) | null

    The team lead told about every missed target in this inbox.

  • namestring (max 128 chars)
  • reopenAfterSecondsinteger (0–31536000)

    A customer writing to a closed conversation after this quiet period starts a fresh conversation with fresh deadlines. Default 86400 (24 hours).

  • senderSidsstring (WA… SID)[]
  • slaPoliciesobject[]
  • slaPolicyobject
    Show 3 child attributes
    • firstResponseSecondsinteger (1–2592000)Required
    • nextResponseSecondsinteger (1–2592000)Required
    • resolutionSecondsinteger (1–2592000)Required
  • slaWarningPercentinteger (10–99)

    Warn the assignee when this share of a response target has elapsed. Default 80.

Delete an empty non-default inbox

DELETE/v1/accounts/{AC}/inboxes/{IB}

inboxes.deleteSDK operation deleteV1AccountsByAcInboxesByIb

Parameters

  • IBstring (IB… SID)Required

List the people who can be assigned this inbox's conversations

GET/v1/accounts/{AC}/inboxes/{IB}/members

inboxes.members.listSDK operation getV1AccountsByAcInboxesByIbMembers

Inbox members and the business's owners and admins, with their name, whether they are available now, and how many open conversations they hold. Manual assignment accepts any of them; automatic assignment uses only those available with free capacity.

Inbox and dashboard sessions

Alternatively, a normal tenant USER session may use inboxes:read on the exact inbox resolved from this resource. Actual inbox membership, tenant/subaccount visibility and per-operation checks still apply. This does not grant account-wide scopes, API-key permission, staff-delegation authority or platform access.

Parameters

  • IBstring (IB… SID)Required

List live agent presence

GET/v1/accounts/{AC}/inboxes/{IB}/presence

inboxes.presence.listSDK operation getV1AccountsByAcInboxesByIbPresence

Inbox and dashboard sessions

Alternatively, a normal tenant USER session may use inboxes:read on the exact inbox resolved from this resource. Actual inbox membership, tenant/subaccount visibility and per-operation checks still apply. This does not grant account-wide scopes, API-key permission, staff-delegation authority or platform access.

Parameters

  • IBstring (IB… SID)Required
  • limitinteger (1–100)query
  • cursorstring (max 2048 chars)query

Heartbeat agent presence

POST/v1/accounts/{AC}/inboxes/{IB}/presence

inboxes.presence.createSDK operation postV1AccountsByAcInboxesByIbPresence

Inbox and dashboard sessions

Alternatively, a normal tenant USER session may use conversations:write on the exact inbox resolved from this resource. Actual inbox membership, tenant/subaccount visibility and per-operation checks still apply. This does not grant account-wide scopes, API-key permission, staff-delegation authority or platform access.

Parameters

  • IBstring (IB… SID)Required

Request body

  • leaseIdstring (uuid)Required
  • stateenumRequired

    AVAILABLEBUSYAWAYOFFLINE

  • capacityinteger (1–1000)

Get supervisor queue state

GET/v1/accounts/{AC}/inboxes/{IB}/queue

inboxes.queue.listSDK operation getV1AccountsByAcInboxesByIbQueue

Inbox and dashboard sessions

Alternatively, a normal tenant USER session may use inboxes:read on the exact inbox resolved from this resource. Actual inbox membership, tenant/subaccount visibility and per-operation checks still apply. This does not grant account-wide scopes, API-key permission, staff-delegation authority or platform access.

Parameters

  • IBstring (IB… SID)Required

List ordered routing rules

GET/v1/accounts/{AC}/inboxes/{IB}/routing-rules

inboxes.routingRules.listSDK operation getV1AccountsByAcInboxesByIbRoutingRules

Parameters

  • IBstring (IB… SID)Required
  • limitinteger (1–100)query
  • cursorstring (max 2048 chars)query

Create a routing rule

POST/v1/accounts/{AC}/inboxes/{IB}/routing-rules

inboxes.routingRules.createSDK operation postV1AccountsByAcInboxesByIbRoutingRules

Parameters

  • IBstring (IB… SID)Required

Request body

  • actionenumRequired

    ASSIGN_ROUND_ROBINASSIGN_LEAST_LOADEDASSIGN_BALANCEDASSIGN_PRINCIPALQUEUEBOT_HANDOFF

  • matchobjectRequired
  • priorityinteger (1–10000)Required

    Evaluation order. Enabled rules are tried from the highest number down and the first match wins; rules sharing a number are tried in creation order. Give specific rules a higher number than generic catch-all rules.

  • actionTargetstring (max 128 chars)
  • enabledboolean

Evaluate routing rules without mutation

POST/v1/accounts/{AC}/inboxes/{IB}/routing-rules/dry-run

inboxes.routingRules.dryRunSDK operation postV1AccountsByAcInboxesByIbRoutingRulesDryRun

Parameters

  • IBstring (IB… SID)Required

Request body

  • contactSidstring (CT… SID)Required
  • senderSidstring (WA… SID)Required
  • triggerenumRequired

    INBOUNDOUTBOUND

  • keywordTextstring (max 4096 chars)
  • occurredAtstring (date-time)

Update a routing rule

PATCH/v1/accounts/{AC}/inboxes/{IB}/routing-rules/{ruleId}

inboxes.routingRules.updateSDK operation patchV1AccountsByAcInboxesByIbRoutingRulesByRuleid

Parameters

  • IBstring (IB… SID)Required
  • ruleIdstring (uuid)Required

Request body

  • actionenum

    ASSIGN_ROUND_ROBINASSIGN_LEAST_LOADEDASSIGN_BALANCEDASSIGN_PRINCIPALQUEUEBOT_HANDOFF

  • actionTargetstring (max 128 chars)
  • enabledboolean
  • matchobject
  • priorityinteger (1–10000)

    Evaluation order. Enabled rules are tried from the highest number down and the first match wins; rules sharing a number are tried in creation order. Give specific rules a higher number than generic catch-all rules.

Delete a routing rule

DELETE/v1/accounts/{AC}/inboxes/{IB}/routing-rules/{ruleId}

inboxes.routingRules.deleteSDK operation deleteV1AccountsByAcInboxesByIbRoutingRulesByRuleid

Parameters

  • IBstring (IB… SID)Required
  • ruleIdstring (uuid)Required