EmailmoversMyDataHub docs
Browse the docs

Reference / MCP tool reference

Reference

Check suppression

check_suppression: Checks the suppression status of up to 1,000 delivered records by record id, as of now, and names the lists that suppress each.

Generated from the contractsView as Markdown

Checks the suppression status of up to 1,000 delivered records by record id, as of now, and names the lists that suppress each. Use it before every send, because objections reach records after delivery. Free; it needs suppressions:read. Leave suppressed records out of the send, and call report_objection when someone objects. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

PropertyValue
Tool namecheck_suppression
Position in tools/list20 of 22
CostFree
Scopesuppressions:read
AnnotationsreadOnlyHint true, destructiveHint false, idempotentHint true, openWorldHint false
KindRead only; idempotent, not destructive, closed world
REST equivalentPOST /v1/suppressions/check

Input

The schema sets additionalProperties to false, so a member that is not listed is refused.

MemberTypeRequiredDescription
record_idsarray of stringyes

Example call

The params of a tools/call request:

{
  "name": "check_suppression",
  "arguments": {
    "record_ids": ["contact_01JA9X2V7XN3M9R6T1Y5W8ZAK8"]
  }
}

Output

The result carries structuredContent that matches this schema, and one line of text that leads with the number.

MemberTypeAlways presentDescription
checked_atstring (date-time)yes
resultsarray of objectyes
results[].record_idstringyesFormat: a contact id: contact_ followed by a 26 character ULID in upper case Crockford base32, such as contact_01JA9X2V7XN3M9R6T1Y5W8ZAK8.
results[].suppressedbooleanyes
results[].suppression_statusenum: none, objected_to_emailmovers, objected_to_licensee, deceased, left_companyyes
results[].list_idsarray of stringyes

Errors

A failed call returns isError true. The text content leads with the sentence a person acts on, then the whole problem as JSON, with code, detail, next_step and did_you_mean. A 401 and a step-up 403 are answered at HTTP level so the client can start authorisation. See Errors.