Messages

Appeal a cold-firewall refusal

Requires scope: send. Requests a second, independent review of content refused with cold_email_prohibited. Submit the SAME subject and body the refused send used. An independent reviewer re-judges it under the identical policy: overturned clears exactly that content for 24 hours (the identical send then goes through); upheld means the refusal stands; not_appealable means the block is deterministic policy (prohibited content, bulk list language, multi-signal cold pitches) and no review exists; not_blocked means the content is not refused at all. Identical content replays its stored outcome — an appeal is never a re-roll. Limit: 10 appeals per workspace per 24 hours.

post/v1/messages/appeal

Request

  • Base URL: https://api.mails.ai
  • URL: https://api.mails.ai/v1/messages/appeal
  • Auth: HTTP bearer

Request body

agentstring

Agent name or id the refused send used. Optional — omitted, the workspace's single agent is assumed (the refused send itself created one if none existed).

subjectstring

The refused message's subject, verbatim.

body_textstring

The refused message's body_text, verbatim.

body_htmlstring

The refused message's body_html, verbatim.

Response

The review outcome.

outcome'overturned' | 'upheld' | 'not_appealable' | 'not_blocked' required

Result of the review: overturned (the same subject and body go through for the next 24 hours), upheld (the refusal stands), not_appealable (a policy block no review can lift) or not_blocked (the content is not refused; send it as it is).

messagestring required

Human-readable explanation of the outcome and what to do next.

review_scorenumber

The second reviewer's cold score (0 = clearly transactional, 1 = clearly cold). Absent for not_appealable/not_blocked.

reasonstring

The reviewer's one-line reason, when a review ran.

replayedboolean

True when this outcome was served from a prior appeal of identical content.

Changes

No recorded changes to this operation across all 1 revision of this API.