Reject Reply Draft
API key access
replies:write scope with an API key (ro_pat_...). A signed-in session uses the caller's role./api/v1/reply-drafts/{draft_id}/rejectAccess token from /api/v1/auth/login, or an API key (ro_pat_..., RO-176) from /api/v1/workspaces/current/api-keys: the key implies its workspace and needs the route's scope. MCP connectors (/api/v1/mcp only) may use an OAuth access token (ro_oat_..., RO-284).
In: header
Path Parameters
uuidHeader Parameters
Id of the workspace to act on (must be a member).
Response Body
curl -X POST "http://localhost:8000/api/v1/reply-drafts/497f6eca-6276-4993-bfeb-53cbbbba6f08/reject" \ -H "X-Workspace-Id: string" \ -H "Content-Type: application/json" \ -d '{}'{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"lead_id": "9bddab70-98e6-43a9-8f32-c9788b9de0c0",
"classification_id": "47ac1861-59ea-4c4a-93ac-eecdeb4d654d",
"mailbox_id": "4d23d1af-2eef-4598-a5e0-1f19ae0b0c14",
"kind": "reply",
"call_id": "0d0a16ab-a508-4d58-bf24-5dc3cb248f3e",
"category": "interested",
"status": "pending",
"subject": "string",
"body": "string",
"edited_body": "string",
"final_body": "string",
"sources": [
{
"id": "string",
"chunk_id": "string",
"document_id": "string",
"title": "string",
"source_url": "string",
"score": 0,
"used": false
}
],
"prompt_id": "string",
"model": "string",
"reviewed_by_id": "855af0f3-1bf5-496a-8d36-7729a807a554",
"reviewed_at": "2019-08-24T14:15:22Z",
"reject_reason": "string",
"sent_at": "2019-08-24T14:15:22Z",
"sent_message_id": "10e758d6-1ff1-42da-b026-45795a3d5469",
"created_at": "2019-08-24T14:15:22Z",
"updated_at": "2019-08-24T14:15:22Z",
"lead": {
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"name": "string",
"email": "string",
"company_name": "string"
},
"inbound": {
"classification_id": "47ac1861-59ea-4c4a-93ac-eecdeb4d654d",
"category": "interested",
"summary": "string",
"received_at": "2019-08-24T14:15:22Z",
"subject": "string",
"snippet": "string"
}
}{
"detail": [
{
"loc": [
"string"
],
"msg": "string",
"type": "string",
"input": null,
"ctx": {}
}
]
}List Reply Drafts
Reply drafts in the workspace, newest first (e.g. `?status=pending` for the review queue). Includes post-call recap emails (`kind=call_recap`, RO-206) and new emails drafted by an assistant (`kind=compose`, RO-300): sent the same way once approved.
Send Reply Draft
Send an approved draft to the lead, threaded under their reply. 409 if the draft isn't approved, the lead may not be contacted (suppressed, opted out, no consent basis), the mailbox isn't connected or hit its daily cap; 502 on a provider error. A resource rate limit (RO-228: the core's per-mailbox/domain/workspace/provider token buckets) answers 409 `contact_deferred` with the `reasons` and `next_allowed_at`. Unsubscribe (RO-104): every send carries one-click `List-Unsubscribe` headers. A reply in the lead's own thread has no footer; a call recap (or a reply sent from another mailbox, i.e. a new thread) gets the CAN-SPAM footer with the postal address (409 `missing_postal_address` without one).