Send Reply DraftBeta
Send the stored draft to the lead as a real email.
POST
https://api.foxreach.io/ api/ v1/ inbox/ threads/{reply_id}/ draft/ sendThe send goes through the same checks as Send Reply plus the dashboard's: the account must be active and connected, the lead must not have unsubscribed, and the workspace must be under its monthly send limit. Edit the text first with Update Reply Draft.
Calling this again for a draft that was already sent sends nothing and returns the first message ID with alreadySent: true. Two simultaneous calls send once; the other gets a 409 with detail.code of draft_send_in_progress. If the SMTP send fails the draft is released and can be sent again.
Path Parameters#
reply_idstringpathrequiredThe thread (reply) ID.
Response#
dataobjectShow Send result
successbooleanWhether the draft was sent.
messageIdstringSMTP message ID.
alreadySentbooleantrue when this call sent nothing because an earlier call already sent the draft.Errors#
| Status | Description |
|---|---|
400 | Account inactive or disconnected, or the lead unsubscribed |
403 | Key does not have write scope |
404 | Thread not found |
409 | No ready draft, draft dismissed, thread answered by hand, or a send is in progress |
429 | Workspace monthly send limit reached |
500 | SMTP send failed. The draft stays sendable |
Rate Limit#
- 100 requests per minute, shared by every
expensivecall in your workspace. Fixed 60-second window. - Every response includes
X-RateLimit-Limit,X-RateLimit-Remaining,X-RateLimit-Reset(unix epoch seconds) andX-RateLimit-Bucket(expensive). - A
429response includes aRetry-Afterheader (seconds until the bucket resets).
For client-side patterns (Retry-After, exponential backoff, monitoring X-RateLimit-Remaining), see Rate Limiting.
Was this page helpful?
View as MarkdownLast updated November 4, 2026