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}/dispositionPath parameters
Request body JSON required
Returns
200
Disposition saved
