This article will cover the following:
Use the API & System endpoints to retrieve reference data that underpins all other CAKE API operations — including countries, currencies, verticals, offer types, tracking domains, and API key management.
api_key parameter. Find yours under Setup → System Access → API Keys.Overview
CAKE exposes a set of reference and system endpoints that return the lookup data required for nearly every other API operation. Before you can create an offer, you need a valid vertical_id. Before you can set payout currencies, you need a valid currency_id. Before you can build a tracking link, you need a valid tracking_domain. These system endpoints give you access to all of that reference data.
The API & System section also covers authentication and key management. Every CAKE API request requires an api_key parameter, which is tied to a specific user account and inherits that user's permission scope. API keys can be retrieved and managed from the CAKE Admin UI under Setup → System Access → API Keys.
These endpoints are typically called once at integration setup time to populate local lookup tables, and periodically thereafter to detect any reference data changes (new verticals added, new countries enabled, etc.).
Key Concepts
- API Key — A unique authentication token tied to a CAKE user account. Required on every API request as the
api_keyparameter. Inherits the permission scope of the associated user. - Vertical — A classification category for offers by industry or market (e.g., Finance, Health, Insurance). Used when creating offers and filtering API results.
- Offer Type — Defines the conversion model for an offer: Host and Post, Lead Distribution, or standard CPA/CPS/CPL. Returned by the Offer Types endpoint.
- Currency — The monetary denomination used for payouts and revenue. CAKE supports multi-currency networks. Valid currency IDs are required when creating offers.
- Country — A geographic entity in CAKE's reference table, identified by an integer
country_idand ISO 3166-1 alpha-2 code. Used for geo targeting and affiliate/advertiser records. - Tracking Domain — A branded or white-labeled domain used in affiliate tracking links (e.g.,
track.yournetwork.com). Networks may have multiple tracking domains. - Tag — A user-defined label that can be applied to offers, affiliates, or advertisers for custom segmentation. Retrieved via the Tags endpoints and referenced by
tag_id.
Available Actions
Get Verticals
/api/2/verticals.json| Parameter | Type | Required | Description |
|---|---|---|---|
| api_key | string | Yes | Your CAKE API key. |
| vertical_id | integer | No | Filter to a single vertical by ID. |
| vertical_status | string | No | Filter by status: active, inactive. |
Sample request
GET https://yourdomain.cakemarketing.com/api/2/verticals.json?api_key=YOUR_API_KEYSample response
{
"request_status": "Success",
"response": {
"verticals": [
{ "vertical_id": 1, "vertical_name": "Health", "vertical_status": "active" },
{ "vertical_id": 2, "vertical_name": "Education", "vertical_status": "active" },
{ "vertical_id": 3, "vertical_name": "Finance", "vertical_status": "active" },
{ "vertical_id": 4, "vertical_name": "Insurance", "vertical_status": "active" }
],
"total_rows": 4
}
}Get Countries
/api/2/countries.json| Parameter | Type | Required | Description |
|---|---|---|---|
| api_key | string | Yes | Your CAKE API key. |
| country_id | integer | No | Filter to a single country by its CAKE ID. |
| country_code | string | No | Filter by ISO 3166-1 alpha-2 code (e.g. US, CA). |
Sample request
GET https://yourdomain.cakemarketing.com/api/2/countries.json?api_key=YOUR_API_KEYSample response
{
"request_status": "Success",
"response": {
"countries": [
{ "country_id": 1, "country_name": "United States", "country_code": "US" },
{ "country_id": 2, "country_name": "Canada", "country_code": "CA" },
{ "country_id": 3, "country_name": "United Kingdom", "country_code": "GB" }
],
"total_rows": 3
}
}Get Tracking Domains
/api/2/tracking_domains.json| Parameter | Type | Required | Description |
|---|---|---|---|
| api_key | string | Yes | Your CAKE API key. |
| tracking_domain_id | integer | No | Filter to a single domain by ID. |
| domain_status | string | No | Filter by status: active, inactive, provisioning. |
Sample request
GET https://yourdomain.cakemarketing.com/api/2/tracking_domains.json?api_key=YOUR_API_KEY&domain_status=activeSample response
{
"request_status": "Success",
"response": {
"tracking_domains": [
{
"tracking_domain_id": 1,
"domain": "track.yournetwork.com",
"domain_status": "active",
"is_default": true,
"ssl_enabled": true
}
],
"total_rows": 1
}
}Get Tags
/api/2/tags.json| Parameter | Type | Required | Description |
|---|---|---|---|
| api_key | string | Yes | Your CAKE API key. |
| tag_id | integer | No | Filter to a single tag by ID. |
| tag_type | string | No | Filter by what the tag applies to: offer, affiliate, advertiser. |
Sample request
GET https://yourdomain.cakemarketing.com/api/2/tags.json?api_key=YOUR_API_KEY&tag_type=offerSample response
{
"request_status": "Success",
"response": {
"tags": [
{ "tag_id": 8, "tag_name": "auto", "tag_type": "offer" },
{ "tag_id": 14, "tag_name": "high-intent", "tag_type": "offer" },
{ "tag_id": 22, "tag_name": "email-only", "tag_type": "offer" }
],
"total_rows": 3
}
}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.