This article will cover the following:
Use the Advertisers API to automate advertiser onboarding, sync advertiser data with external CRM systems, and build custom reporting workflows.
api_key parameter. Find yours under Setup → System Access → API Keys.
Overview
In CAKE, an Advertiser is a company or individual whose offers are promoted through your affiliate network. Every offer must be associated with an advertiser record. Advertiser accounts hold profile information — website, phone, address, billing cycle — that governs how CAKE tracks financial obligations. Manage advertisers through the CAKE UI at Advertisers → Manage Advertisers, or programmatically via the API.
Key Concepts
- Advertiser ID — A unique system-assigned integer identifying each advertiser in CAKE. Primary key for all API references.
- Advertiser Status —
activeorinactive. Controls visibility within the platform. - Account Manager — Internal employee assigned to the advertiser relationship, identified by
account_manager_id. - Billing Cycle — The cadence at which an advertiser is invoiced. Set via
billing_cycle_id. - Advertiser Tag — A freeform label for grouping advertisers by vertical, region, tier, or custom taxonomy.
- Country ID — Integer representing the advertiser's country of operation in CAKE's reference table.
Available Actions
Get Advertisers
Retrieves a list of advertiser records. Use to sync advertiser data to external systems, build dashboards, or validate records before associating with offers.
GET /api/2/advertisers.json
| Parameter | Type | Required | Description |
|---|---|---|---|
| api_key | string | Yes | Your CAKE API key. |
| advertiser_id | integer | No | Filter to a specific advertiser. |
| advertiser_name | string | No | Partial name filter. |
| advertiser_status | string | No | active | inactive |
| account_manager_id | integer | No | Filter by account manager. |
| tag_id | integer | No | Filter by tag ID. |
| start_at_row | integer | No | Pagination offset. Defaults to 1. |
| row_limit | integer | No | Max records. Default 100, max 5000. |
Sample request
GET https://yourdomain.cakemarketing.com/api/2/advertisers.json?api_key=YOUR_API_KEY&advertiser_status=active&account_manager_id=42&start_at_row=1&row_limit=50Sample response
{
"request_status": "Success",
"response": {
"advertisers": [
{
"advertiser": {
"advertiser_id": 1021,
"advertiser_name": "Acme Financial Services",
"advertiser_status": "active",
"website": "https://www.acmefinancial.com",
"account_manager": { "account_manager_id": 42, "first_name": "Jordan", "last_name": "Rivera" },
"billing_cycle": { "billing_cycle_id": 3, "billing_cycle_name": "Monthly" },
"city": "San Francisco",
"state": "CA",
"country": { "country_id": 1, "country_name": "United States" },
"phone": "415-555-0192"
}
}
],
"total_records": 1
}
}Create Advertiser
Creates a new advertiser account. Use for automated onboarding workflows or when migrating from another platform.
POST /api/2/advertiser.json
| Parameter | Type | Required | Description |
|---|---|---|---|
| api_key | string | Yes | Your CAKE API key. |
| advertiser_name | string | Yes | Display name. Must be unique within your network. |
| account_manager_id | integer | No | Account manager user ID. |
| advertiser_status | string | No | active | inactive. Default: active. |
| website | string | No | Advertiser's website URL. |
| billing_cycle_id | integer | No | Billing cycle ID. |
| address_1 | string | No | Street address. |
| city | string | No | City. |
| state | string | No | State/province. |
| zip_code | string | No | Postal code. |
| country_id | integer | No | Country ID. |
| phone | string | No | Phone number. |
Sample request
POST https://yourdomain.cakemarketing.com/api/2/advertiser.json
{
"api_key": "YOUR_API_KEY",
"advertiser_name": "Acme Financial Services",
"account_manager_id": 42,
"advertiser_status": "active",
"website": "https://www.acmefinancial.com",
"billing_cycle_id": 3,
"city": "San Francisco",
"state": "CA",
"country_id": 1,
"phone": "415-555-0192"
}Sample response
{
"request_status": "Success",
"advertiser": {
"advertiser_id": 1022,
"advertiser_name": "Acme Financial Services",
"advertiser_status": "active",
"date_created": "2026-06-19 09:00:00"
}
}Update Advertiser
Updates an existing advertiser account's name, status, or account manager.
POST /api/2/update_advertiser.json
| Parameter | Type | Required | Description |
|---|---|---|---|
| api_key | string | Yes | Your CAKE API key. |
| advertiser_id | integer | Yes | ID of the advertiser to update. |
| advertiser_name | string | No | Updated display name. |
| advertiser_status | string | No | active | inactive |
| account_manager_id | integer | No | New account manager ID. |
Sample request
POST https://yourdomain.cakemarketing.com/api/2/update_advertiser.json
{
"api_key": "YOUR_API_KEY",
"advertiser_id": 1021,
"advertiser_status": "inactive",
"account_manager_id": 7
}Sample response
{
"request_status": "Success",
"advertiser": {
"advertiser_id": 1021,
"advertiser_name": "Acme Financial Services",
"advertiser_status": "inactive"
}
}You may also be interested in:
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.