CAKE API — Advertisers

This article will cover the following:

Why use this API?
Use the Advertisers API to automate advertiser onboarding, sync advertiser data with external CRM systems, and build custom reporting workflows.
Authentication: All CAKE API requests require your 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 Statusactive or inactive. 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.

When to use: Sync advertiser data into a CRM, audit active accounts, or retrieve advertiser IDs before creating offers.
GET /api/2/advertisers.json
ParameterTypeRequiredDescription
api_keystringYesYour CAKE API key.
advertiser_idintegerNoFilter to a specific advertiser.
advertiser_namestringNoPartial name filter.
advertiser_statusstringNoactive | inactive
account_manager_idintegerNoFilter by account manager.
tag_idintegerNoFilter by tag ID.
start_at_rowintegerNoPagination offset. Defaults to 1.
row_limitintegerNoMax 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=50

Sample 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.

When to use: Programmatically create advertiser accounts as part of an automated intake workflow — the created advertiser_id is required when creating offers.
POST /api/2/advertiser.json
ParameterTypeRequiredDescription
api_keystringYesYour CAKE API key.
advertiser_namestringYesDisplay name. Must be unique within your network.
account_manager_idintegerNoAccount manager user ID.
advertiser_statusstringNoactive | inactive. Default: active.
websitestringNoAdvertiser's website URL.
billing_cycle_idintegerNoBilling cycle ID.
address_1stringNoStreet address.
citystringNoCity.
statestringNoState/province.
zip_codestringNoPostal code.
country_idintegerNoCountry ID.
phonestringNoPhone 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.

When to use: Sync status changes from an external CRM, reassign account managers, or deactivate advertisers at end of contract.
POST /api/2/update_advertiser.json
ParameterTypeRequiredDescription
api_keystringYesYour CAKE API key.
advertiser_idintegerYesID of the advertiser to update.
advertiser_namestringNoUpdated display name.
advertiser_statusstringNoactive | inactive
account_manager_idintegerNoNew 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" } }


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.

Did you find it helpful? Yes No

Send feedback
Sorry we couldn't be helpful. Help us improve this article with your feedback.