EmailmoversMyDataHub docs
Browse the docs

Reference / MCP tool reference

Reference

Get a compliance receipt

get_compliance_receipt: Returns an order's signed compliance receipt: an ES256 JWS with its decoded claims and a PDF link, covering records delivered, suppression removals, subscriber classes, TPS screening, Article 14 status, the licence and the file hash.

Generated from the contractsView as Markdown

Returns an order's signed compliance receipt: an ES256 JWS with its decoded claims and a PDF link, covering records delivered, suppression removals, subscriber classes, TPS screening, Article 14 status, the licence and the file hash. Use it to prove to the user, a colleague or another agent that a list is licensed and screened; anyone can verify it with POST /v1/compliance/receipts/verify. Free; it needs orders:read. 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 nameget_compliance_receipt
Position in tools/list22 of 22
CostFree
Scopeorders:read
AnnotationsreadOnlyHint true, destructiveHint false, idempotentHint true, openWorldHint false
KindRead only; idempotent, not destructive, closed world
REST equivalentGET /v1/orders/{id}/receipt

Input

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

MemberTypeRequiredDescription
order_idstringyesThe order the receipt covers.

Example call

The params of a tools/call request:

{
  "name": "get_compliance_receipt",
  "arguments": {
    "order_id": "ord_01JB4N9S3W2X6Y7Z8A1B2C3D4E"
  }
}

Output

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

MemberTypeAlways presentDescription
idstringyesFormat: a compliance receipt id: rcpt_ followed by a 26 character ULID in upper case Crockford base32, such as rcpt_01JB4NA2Q5W8ZAK8Q2V7XN3M9R.
order_idstringyesFormat: an order id: ord_ followed by a 26 character ULID in upper case Crockford base32, such as ord_01JB4N9S3W2X6Y7Z8A1B2C3D4E.
jwsstringyesThe receipt as a compact JWS signed with ES256.
algES256yes
kidstringyesThe signing key id in jwks_url.
jwks_urlstring (uri)yes
pdf_urlstring (uri)yesThe PDF twin at mydatahub.emailmovers.com/receipts/{id}.
claimsReceiptClaimsyesThe decoded payload of a compliance receipt.
claims.receipt_idstringyesFormat: a compliance receipt id: rcpt_ followed by a 26 character ULID in upper case Crockford base32, such as rcpt_01JB4NA2Q5W8ZAK8Q2V7XN3M9R.
claims.order_idstringyesFormat: an order id: ord_ followed by a 26 character ULID in upper case Crockford base32, such as ord_01JB4N9S3W2X6Y7Z8A1B2C3D4E.
claims.issued_atstring (date-time)yes
claims.dataset_versionstringyesThe immutable weekly build a count is bound to, such as 2026-W39. The last 52 stay queryable.
claims.records_deliveredinteger (0 or more)yes
claims.removed_by_suppressioninteger (0 or more)yes
claims.countsobjectyes
claims.lawful_basisenum: legitimate_interests_art6_1_fyes
claims.lia_refstringyes
claims.licenceLicenceyesLicence terms as data, on every quote, order, records page and receipt. Records stay usable, pushable and re-downloadable free until reuse_until.
claims.residency_statement_versionstringyes
claims.sub_processor_list_versionstringyes
claims.verified_within_daysobjectyesShare of delivered emails verified within 30, 60 and 90 days.
claims.content_sha256stringyesSHA-256 of the delivered file, lower case hex.

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.