Reply to a support thread
POST/api/v1/support/threads/:uid/messages
Sends the reply through the channel the thread arrived on AND records it. Returns 409 when the reply cannot be sent right now — a lapsed WhatsApp 24-hour window, a channel with no reply adapter, or a thread with no route back (an unconnected Slack workspace, a missing channel id, no SMS sender) — which is a refusal we make deliberately rather than a provider error surfaced after the fact. Nothing is stored on a 409: no send was attempted, so there is no attempt to record. Returns 202 when a send WAS attempted and the provider rejected it: that row is recorded with delivery.status = failed, so an operator is never left unsure whether the attempt happened, and it can be retried through the resend endpoint. Super-admin only.
Request
Responses
- 201
- 202
- 400
- 401
- 403
- 404
- 409
Reply sent and recorded
Reply recorded but the provider send failed
Validation error
Authentication required
Permission denied
Resource not found
Resource conflict