Skip to content
First requestVisit website ↗
Navigation

Save a wrap-up disposition for a call that produced no CallSid

Outbound calls that are never answered (no-answer, busy, carrier reject) never fire the Twilio SDK's accept event, so the browser never learns their CallSid and cannot use PUT /api/calls/{callSid}/disposition. The call_logs row still exists — the voice webhook writes it at dial time — so this route addresses it by (workspace, contact, agent, recency) instead. Only fills a row whose disposition is still empty; never overwrites.

PUT
https://api.channelautomation.com/api/calls/contact/{contactId}/disposition

Path parameters

  • contactId
    string
    required

Request body JSON required

  • workspace_id
    string
    required
  • disposition
    string
    required
  • user_id
    optional
    string
  • cadence_request
    optional
    object

    Optional manager-approved retry timing; validated atomically for managed calls. Does not change the call result.

    • wait_minutes
      optional
      integer
      minimum: 1
    • retry_at
      optional
      string
      format: date-time
    • reason
      optional
      string
      maxLength: 500
  • callback_at
    optional
    string

    Future promised callback time when disposition is CALLBACK_SCHEDULED.

    format: date-time
  • sub_disposition
    optional
    string

Returns

200

Disposition saved

400

Missing/invalid contactId

404

No recent un-dispositioned outbound call for that contact

500

Server error

Type to search…

↑↓ navigate↵ selectEsc close