DealSleek API · Comms
PreviewCancel Message
Cancel a drafted or scheduled message before delivery.
/api/v1/comms/dispatchHeaders
AuthorizationstringRequiredAccess token of the signed-in user, as a Bearer token. It identifies the user, their role and the workspace.
X-CQRS-ActionstringRequiredNames the command to run. Must be
CANCEL_MESSAGEfor this endpoint.Content-TypestringRequiredAlways
application/json.X-Idempotency-KeystringOptionalA key you choose that is unique to this attempt. A command repeated with the same key is not applied a second time.
X-Correlation-IdstringOptionalYour own identifier for the request. Returned in the
x-correlation-idresponse header; generated when you leave it out.
Request body
message_iduuidRequiredNo description yet.
current_statusenum or nullOptionalNo description yet.
- Allowed values
- DRAFT
- PENDING_APPROVAL
- APPROVED
- SENT
- FAILED
- QUEUED
- SCHEDULED
- SENDING
- BOUNCED
- SUPPRESSED
- CANCELLED
- QUEUED
- Approved + accepted by the outbox; waiting for the dispatcher.
- SCHEDULED
- Has a
scheduled_fortimestamp; dispatcher will pick it up at that time. - SENDING
- In flight to the provider (Sendgrid/Twilio/…).
- BOUNCED
- Provider returned a hard bounce or unrecoverable error.
- SUPPRESSED
- Suppressed at send time (consent gate, suppression list, or preferences).
- CANCELLED
- Operator cancelled before send.
expected_versioninteger or nullOptionalCORE invariant: mutations carry the version they read. Absent preserves legacy callers.
Response
Status 202. The command was applied. The body is the record as it stands after the command: a JSON object whose fields depend on the record.
Errors
Every error carries an HTTP status. Where it also carries a code, branch on the code, not on the message.
- 400
X-CQRS-Actionis missing or names a command this route does not accept. SendCANCEL_MESSAGE. - 400
DOMAIN_ROUTINGThe body is not a valid command. Check the required fields and their types. - 401The access token is missing, expired or not valid.
- 401
L1_AUTHThe caller's role is belowrepor the caller has no access to this record. - 403
L1_POLICYA business rule refused the command. The message names the rule. - 409
L1_VERSIONexpected_versionis not the record's current version. Read the record again, then retry. - 409
L1_IDEMPOTENCYA command with this idempotency key was already applied. - 409
CONFLICTThe command would duplicate a record that must be unique. - 500
L3_COMMITThe command was valid but could not be saved.