This article will cover the following:
Overview
The Suppression & Compliance API gives you programmatic control over suppression lists — use it to sync opt-out data in real time, honor deletion requests automatically, or integrate CAKE suppression with your CRM or marketing platform.
List Suppression Lists
| Parameter | Type | Required | Description |
|---|---|---|---|
| suppression_list_id | integer | No | Filter by a specific suppression list ID. |
| offer_id | integer | No | Filter lists associated with a specific offer. |
| suppression_type_id | integer | No | Filter by type (1=email, 2=phone, 3=IP). |
Sample request
GET https://yourplatform.cakemarketing.com/api/2/suppression_lists.json
?api_key=YOUR_API_KEY
&offer_id=12345Sample response
{
"request_status": "Success",
"suppression_lists": [
{"suppression_list_id": 3, "suppression_list_name": "TCPA Do Not Call", "suppression_type_name": "Phone", "entry_count": 1482},
{"suppression_list_id": 7, "suppression_list_name": "Global Email Optouts", "suppression_type_name": "Email", "entry_count": 8754}
]
}Add Suppression Entry
Adds a single value to a suppression list. Use this to honor real-time opt-out requests or sync suppression data from an external source.
| Parameter | Type | Required | Description |
|---|---|---|---|
| suppression_list_id | integer | Yes | ID of the suppression list to add the entry to. |
| entry_value | string | Yes | The value to suppress (email address, phone number, or IP). |
Sample request
POST https://yourplatform.cakemarketing.com/api/2/suppression_entry.json
{
"api_key": "YOUR_API_KEY",
"suppression_list_id": 3,
"entry_value": "5551234567"
}Sample response
{
"request_status": "Success",
"suppression_entry": {
"suppression_entry_id": 90421,
"suppression_list_id": 3,
"entry_value": "5551234567",
"date_added": "2024-06-20"
}
}Check Suppression Status
Performs a real-time lookup to determine whether a specific value is on a suppression list. Ideal for pre-flight checks before sending traffic.
| Parameter | Type | Required | Description |
|---|---|---|---|
| offer_id | integer | Yes | The offer to check suppression against. |
| value | string | Yes | The value to look up. |
| suppression_type_id | integer | Yes | The suppression type: 1=email, 2=phone, 3=IP. |
Sample request
GET https://yourplatform.cakemarketing.com/api/2/suppression_check.json
?api_key=YOUR_API_KEY
&offer_id=12345
&value=user%40example.com
&suppression_type_id=1Sample response
{
"request_status": "Success",
"suppression_check": {
"is_suppressed": true,
"suppression_list_id": 7,
"suppression_list_name": "Global Email Optouts",
"value": "user@example.com"
}
}Get and Update Scrub Rates
Returns the current scrub rate configuration for a given offer and optionally a specific affiliate.
| Parameter | Type | Required | Description |
|---|---|---|---|
| offer_id | integer | Yes | The offer whose scrub rate configuration should be returned. |
| affiliate_id | integer | No | Limit to a specific affiliate. Omit to return all affiliates on the offer. |
Sample request
GET https://yourplatform.cakemarketing.com/api/2/scrub_rates.json
?api_key=YOUR_API_KEY
&offer_id=12345
&affiliate_id=67890Sample response
{
"request_status": "Success",
"scrub_rates": [{
"offer_id": 12345,
"affiliate_id": 67890,
"scrub_rate": 10,
"scrub_type": "percent"
}]
}| Parameter | Type | Required | Description |
|---|---|---|---|
| offer_id | integer | Yes | ID of the offer to update the scrub rate for. |
| affiliate_id | integer | Yes | ID of the affiliate to apply the scrub rate to. |
| scrub_rate | integer | Yes | Percentage of conversions to withhold from payout (0–100). |
| scrub_type | string | Yes | Type of scrub: percent. |
Sample request
POST https://yourplatform.cakemarketing.com/api/2/update_scrub_rate.json
{
"api_key": "YOUR_API_KEY",
"offer_id": 12345,
"affiliate_id": 67890,
"scrub_rate": 15,
"scrub_type": "percent"
}Sample response
{
"request_status": "Success",
"scrub_rate": {"offer_id": 12345, "affiliate_id": 67890, "scrub_rate": 15}
}If you have any questions, please reach out to your dedicated CAKE Client Success Manager/Account Manager or contact the CAKE Support Team at support@getCAKE.com.