Create a Campaign

Submit a JSON object representing the new campaign in the request body. (See examples below.)

Returns the newly created Campaign in the response body.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…

Examples

🚧

Guidelines

  1. Pass a JSON object that represents the new campaign.
  2. The minimal set of fields depends on the chosen bidding strategy (and whether or not a spending limit is being set).
  3. You can (optionally) pass additional fields.

Example 1 - Bidding strategy is "MAXIMIZE_CONVERSIONS"

POST /backstage/api/1.0/USER.EXAMPLE_ADVERTISER_ID/campaigns/ HTTP/1.1
Host: backstage.taboola.com 
Content-Type: application/json
Authorization: Bearer {access_token}
{
    "name": "Max Conversions Campaign",
    "branding_text": "branding",
    "spending_limit": 100,
    "spending_limit_model": "MONTHLY",
    "bid_strategy": "MAX_CONVERSIONS",
    "marketing_objective": "LEADS_GENERATION"
}
{
    "id": 1234,
    "advertiser_id": "USER.EXAMPLE_ADVERTISER_ID",
    "name": "Max Conversions Campaign",
    "branding_text": "branding",
    "cpc": null,
    "spending_limit": 100.0,
    "spending_limit_model": "MONTHLY",  
    "bid_strategy": "MAX_CONVERSIONS",
    "marketing_objective": "LEADS_GENERATION",
    ...
}

Example 2 - Bidding strategy is "FIXED"

POST /backstage/api/1.0/USER.EXAMPLE_ADVERTISER_ID/campaigns/ HTTP/1.1
Host: backstage.taboola.com 
Content-Type: application/json
Authorization: Bearer {access_token}
{
   "name": "Fixed CPC Campaign",
   "branding_text": "branding",
   "cpc": 0.25,
   "spending_limit": 1000,
   "spending_limit_model": "MONTHLY",
   "bid_strategy": "FIXED",  
   "marketing_objective": "DRIVE_WEBSITE_TRAFFIC"
}
{
    "id": 1234,
    "advertiser_id": "USER.EXAMPLE_ADVERTISER_ID",
    "name": "Fixed CPC Campaign",
    "branding_text": "branding",
    "cpc": 0.25,
    "spending_limit": 1000.0,
    "spending_limit_model": "MONTHLY",  
    "bid_strategy": "FIXED",  
    "marketing_objective": "DRIVE_WEBSITE_TRAFFIC"
    ...
}

Example 3 - Bidding strategy is "FIXED" (no spending limit)

POST /backstage/api/1.0/USER.EXAMPLE_ADVERTISER_ID/campaigns/ HTTP/1.1
Host: backstage.taboola.com 
Content-Type: application/json
Authorization: Bearer {access_token}
{
   "name": "Fixed CPC Campaign",
   "branding_text": "branding",
   "cpc": 0.25,
   "daily_cap": 100,
   "spending_limit_model": "NONE",
   "bid_strategy": "FIXED",  
   "marketing_objective": "DRIVE_WEBSITE_TRAFFIC"
}
{
    "id": 1234,
    "advertiser_id": "USER.EXAMPLE_ADVERTISER_ID",
    "name": "Fixed CPC Campaign",
    "branding_text": "branding",
    "cpc": 0.25,
    "spending_limit": null,
    "spending_limit_model": "NONE",  
    "bid_strategy": "FIXED",  
    "marketing_objective": "DRIVE_WEBSITE_TRAFFIC"
    ...
}
🚧

No spending limit

Campaigns with no spending limit are available for eligible accounts only.

See: spending_limit_model

📘

start_date

You can optionally pass a start_date for the new campaign.

If omitted, the default start date is 'now' (in the majority of cases).

Campaign type (native, display, or performance video)

The campaign_item_type field selects the campaign's creative surface. Omit it for a native campaign (the default), or send one of the empty-campaign values to create a display or performance video campaign:

Typecampaign_item_type
NativeHAS_NO_ITEMS (or omit)
DisplayHAS_NO_ITEMS_DISPLAY
Performance videoHAS_NO_ITEMS_PERFORMANCE_DISPLAY_VIDEO

Send the HAS_NO_ITEMS_* value at creation; the platform updates the field to the matching items state (for example, HAS_DISPLAY_ITEMS) once items are added. Display and performance video require your account to be enabled for them. For the full flow and constraints, see Creating native, display, and performance video campaigns.

Example 4 - Display campaign

POST /backstage/api/1.0/USER.EXAMPLE_ADVERTISER_ID/campaigns/ HTTP/1.1
Host: backstage.taboola.com 
Content-Type: application/json
Authorization: Bearer {access_token}
{
   "name": "Display Campaign",
   "cpc": 0.25,
   "bid_strategy": "FIXED",
   "marketing_objective": "DRIVE_WEBSITE_TRAFFIC",
   "campaign_item_type": "HAS_NO_ITEMS_DISPLAY"
}
{
    "id": 1234,
    "advertiser_id": "USER.EXAMPLE_ADVERTISER_ID",
    "name": "Display Campaign",
    "campaign_item_type": "HAS_NO_ITEMS_DISPLAY",
    "bid_strategy": "FIXED",
    "marketing_objective": "DRIVE_WEBSITE_TRAFFIC"
    ...
}

For a performance video campaign, send "campaign_item_type": "HAS_NO_ITEMS_PERFORMANCE_DISPLAY_VIDEO" instead.

Path Params
string
required

An alphabetic ID. See Get Account Details.

Body Params
json
required
Defaults to { "name": "DemoCampaign", "branding_text": "Pizza", "cpc": 0.25, "spending_limit": 1000, "spending_limit_model": "MONTHLY", "marketing_objective": "DRIVE_WEBSITE_TRAFFIC" }

A JSON object representing the campaign. (See below for additional examples.)

Responses

Language
Credentials
OAuth2
LoadingLoading…
Response
Choose an example:
application/json