This article will cover the following:
Overview
The Advertisers API lets you create and manage advertiser accounts programmatically, keeping CAKE in sync with your CRM or onboarding workflows. All endpoints require your api_key.
Tip:
See Managing Advertisers in CAKE for a full guide to advertiser statuses, billing cycles, and offer associations via the UI.
See Managing Advertisers in CAKE for a full guide to advertiser statuses, billing cycles, and offer associations via the UI.
List Advertisers
GET /api/2/advertisers.json
| Parameter | Type | Required | Description |
|---|---|---|---|
| advertiser_id | integer | No | Filter to a single advertiser by ID. |
| advertiser_name | string | No | Filter by partial or full name. |
| advertiser_status | string | No | Filter by status: active, inactive, or pending. |
| account_manager_id | integer | No | Filter by assigned account manager. |
| start_at_row | integer | No | Row offset. Default: 0. |
| row_limit | integer | No | Max records. Default: 25; max: 5000. |
Sample request
GET https://yournetwork.cake.com/api/2/advertisers.json
?api_key=YOUR_API_KEY
&advertiser_status=active
&start_at_row=0
&row_limit=25Sample response
{
"request_status": "Success",
"advertisers": [{
"advertiser_id": 101,
"advertiser_name": "Acme Media Group",
"advertiser_status": "active",
"account_manager_id": 5,
"website": "https://acmemedia.com",
"created": "2024-01-15T09:00:00Z"
}],
"total_records": 1
}Create Advertiser
POST /api/2/advertiser.json
| Parameter | Type | Required | Description |
|---|---|---|---|
| advertiser_name | string | Yes | Display name for the new advertiser account. |
| account_manager_id | integer | Yes | User ID of the account manager to assign. |
| advertiser_status | string | No | Initial status. Default: active. |
| website | string | No | Advertiser's website URL. |
| billing_cycle_id | integer | No | ID corresponding to the advertiser's billing frequency. |
| country_id | integer | No | CAKE country ID for the advertiser's primary country. |
| phone | string | No | Advertiser contact phone number. |
Sample request
POST https://yournetwork.cake.com/api/2/advertiser.json
{
"api_key": "YOUR_API_KEY",
"advertiser_name": "Pinnacle Health LLC",
"account_manager_id": 5,
"advertiser_status": "active",
"website": "https://pinnaclehealth.com",
"billing_cycle_id": 2
}Sample response
{
"request_status": "Success",
"advertiser": {
"advertiser_id": 143,
"advertiser_name": "Pinnacle Health LLC",
"advertiser_status": "active"
}
}Update Advertiser
POST /api/2/update_advertiser.json
| Parameter | Type | Required | Description |
|---|---|---|---|
| advertiser_id | integer | Yes | ID of the advertiser to update. |
| advertiser_name | string | No | New display name. |
| advertiser_status | string | No | Updated status: active, inactive, pending, or suspended. |
| account_manager_id | integer | No | Reassign to a different account manager. |
| billing_cycle_id | integer | No | Updated billing cycle ID. |
Sample request
POST https://yournetwork.cake.com/api/2/update_advertiser.json
{
"api_key": "YOUR_API_KEY",
"advertiser_id": 143,
"advertiser_status": "suspended"
}Sample response
{
"request_status": "Success",
"advertiser": {
"advertiser_id": 143,
"advertiser_status": "suspended"
}
}Get Advertiser Offers
Returns all offers associated with a given advertiser. Useful for auditing which campaigns belong to which client.
GET /api/2/advertiser_offers.json
| Parameter | Type | Required | Description |
|---|---|---|---|
| advertiser_id | integer | Yes | ID of the advertiser whose offers you want to retrieve. |
| offer_status | string | No | Filter by offer status: active, paused, or inactive. |
Sample request
GET https://yournetwork.cake.com/api/2/advertiser_offers.json
?api_key=YOUR_API_KEY
&advertiser_id=143
&offer_status=activeSample response
{
"request_status": "Success",
"offers": [
{"offer_id": 12345, "offer_name": "Premium Card Signup", "offer_status": "active"},
{"offer_id": 12346, "offer_name": "Health Insurance Lead", "offer_status": "active"}
]
}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.