Suppressions
Open as markdownFor AI agents: the docs index is at /llms.txt, and every page is also served as markdown at its URL plus .md.
The do not contact list. Bounces, complaints and opt out replies land here by themselves. You can add an address too.
Base URL: YOUR_API_BASE_URL. Every request and response is JSON. Errors use one envelope.
| Operation | What it does |
|---|---|
GET /v1/suppressions | The do-not-contact list. |
POST /v1/suppressions | Add an address to the do-not-contact list. |
GET/v1/suppressions#
The do-not-contact list.
Authentication: send your API key as a bearer token. See Authentication.
Query parameters#
| Name | Type | Notes |
|---|---|---|
limit | integer | Rows per page, 1 to 100. More than 100 is held to 100. |
cursor | string | The next_cursor of the previous page, sent back unchanged to the same route. Leave it out for the first page. A cursor that was edited or came from another route is refused. |
Response#
Status 200 OK.
{
"suppressions": [
{
"email": "jordan@northwind.example",
"reason": "spam complaint",
"created_at": "2026-10-17T12:00:00.000Z"
}
],
"next_cursor": null
}reasonishard bounce,spam complaint,opted out by reply, or the reason you gave.- Oldest first, 20 a page. Send
limit(1 to 100) for more, and sendnext_cursorback ascursorfor the next page;next_cursorisnullon the last page.
Errors#
unauthorized, HTTP 401: The API key is missing, malformed, revoked or unknown.rate_limited, HTTP 429: Too many requests for this key. Wait the number of seconds inRetry-After.
Example request#
curl YOUR_API_BASE_URL/v1/suppressions \
-H "Authorization: Bearer $COLDMEETINGS_API_KEY"POST/v1/suppressions#
Add an address to the do-not-contact list.
Suppressed addresses are skipped by every later import and cannot be booked.
Authentication: send your API key as a bearer token. See Authentication.
Request body#
Send a JSON object.
| Field | Type | Required | Notes |
|---|---|---|---|
email | string | Yes | An email address. It is trimmed and lowercased. |
reason | string | No | Default "added by customer". Up to 200 characters. |
Example body:
{
"email": "taylor@contoso.example",
"reason": "asked by phone"
}Response#
Status 201 Created.
{
"email": "taylor@contoso.example",
"added": true
}addedisfalsewhen the address was already on the list.
Errors#
unauthorized, HTTP 401: The API key is missing, malformed, revoked or unknown.invalid_input, HTTP 400: A body that is empty, is not JSON or fails validation also answers this, and the message names the field.payload_too_large, HTTP 413: The body is over 256 KiB.rate_limited, HTTP 429: Too many requests for this key. Wait the number of seconds inRetry-After.
Example request#
curl -X POST YOUR_API_BASE_URL/v1/suppressions \
-H "Authorization: Bearer $COLDMEETINGS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"email":"taylor@contoso.example","reason":"asked by phone"}'