Get all campaigns across the network

A convenience method for fetching all campaigns across your network.
Returns basic campaign details only. (See the code samples on this page.)

GET backstage/api/1.0/demo-advertiser-network/campaigns/base
{
    "results": [
        {
            "id": 10645,
            "advertiser_id": 11,
            "advertiser_name": "demo-advertiser-01",
            "advertiser_description": "Demo Advertiser 01",
            "name": "Smart Phones (Mobile)",
            "branding_text": "demo-brand-01.com",
            "policy_state": "ENABLED",
            "status": "RUNNING",
            "create_time": 1528890919000,
            "total_spent": 14162.89
        },
        {
            "id": 10447,
            "advertiser_id": 12,
            "advertiser_name": "demo-advertiser-02",
            "advertiser_description": "Demo Advertiser 02",
            "name": "Training Promotion",
            "branding_text": "demo-brand-02.com",
            "policy_state": "ENABLED",
            "status": "RUNNING",
            "create_time": 1539079796000,
            "total_spent": 1389.4
        },
        // Additional results omitted...

    ],
    "metadata": {
        "total": 1015,
        "count": 1015,
        //...
    }
}

🚧

Guidelines

  1. Invoke the campaigns/base endpoint with your network account:
    • GET backstage/api/1.0/{network-account}/campaigns/base
  2. The endpoint returns all campaigns across your network.
  3. It returns basic campaign details only. (See the code samples on this page.)
  4. You can apply optional filters, including paging. (Paging allows you to fetch the response in smaller chunks.)

📘

Which endpoint and account?

  1. To fetch basic campaign details for all campaigns across the network, invoke campaigns/base with the network account:
    • GET backstage/api/1.0/{network-account}/campaigns/base
  2. To fetch full campaign details for campaigns owned by a sub-account, invoke campaigns with the sub-account:
    • GET backstage/api/1.0/{sub-account}/campaigns/

🚧

This endpoint supports the network account

For more information about the network account see: Network Accounts.

Examples with filters

Status

Fetch all campaigns across the network that are awaiting approval by Taboola:

GET backstage/api/1.0/demo-advertiser-network/campaigns/base?status=PENDING_APPROVAL

Fetch all campaigns across the network that are running:

GET backstage/api/1.0/demo-advertiser-network/campaigns/base?status=RUNNING

Fetch all campaigns that are running or "paused":

GET backstage/api/1.0/demo-advertiser-network/campaigns/base?status=RUNNING,PAUSED

📘

Guidelines

  1. To filter on multiple statuses, pass a comma-delimited list (see example above).
  2. If you do not pass a status filter, the base endpoint will return all campaigns - regardless of status.

For a list of possible values for status, see the status field.

Text Search

Return all campaigns with an ID (or Name) that contains '10645':

GET backstage/api/1.0/demo-advertiser-network/campaigns/base?search_text=10645
{
    "results": [
        {
            "id": 10645,
            "advertiser_id": 11,
            "advertiser_name": "demo-advertiser-01",
            "advertiser_description": "Demo Advertiser 01",
            "name": "Smart Phones (Mobile)",
            "branding_text": "demo-brand-01.com",
            "policy_state": "ENABLED",
            "status": "RUNNING",
            "create_time": 1528890919000,
            "total_spent": 14162.89
        }
    ],
    "metadata": {
        "total": 1,
        "count": 1,
        //...
    }
}

Return all campaigns that contain 'Demo' in their name:

GET backstage/api/1.0/demo-advertiser-network/campaigns/base?search_text=Demo
{
    "results": [
        {
            "id": 10645,
            "advertiser_id": 11,
            "advertiser_name": "demo-advertiser-01",
            "advertiser_description": "Demo Advertiser 01",
            "name": "Smart Phones (Mobile)",
            "branding_text": "demo-brand-01.com",
            "policy_state": "ENABLED",
            "status": "RUNNING",
            "create_time": 1528890919000,
            "total_spent": 14162.89
        },
        {
            "id": 10447,
            "advertiser_id": 12,
            "advertiser_name": "demo-advertiser-02",
            "advertiser_description": "Demo Advertiser 02",
            "name": "Training Promotion",
            "branding_text": "demo-brand-02.com",
            "policy_state": "ENABLED",
            "status": "RUNNING",
            "create_time": 1539079796000,
            "total_spent": 1389.4
        }
    ],
    "metadata": {
        "total": 2,
        "count": 2,
        //...
    }
}

📘

The search_text filter looks for matches on Campaign ID or Name.

Filtering on a specific Campaign ID will typically return that campaign only.

Combining filters

Return all campaigns that are running and contain 'Demo' in their name:

GET backstage/api/1.0/demo-advertiser-network/campaigns/base?status=RUNNING&search_text=Demo

🚧

Combining filters

  • You can combine different filters - e.g. status=RUNNING&search_text=Demo.
  • You cannot repeat the same filter twice. For example, there is no way to request campaigns with a status of RUNNING or PAUSED.

No matching campaigns

If there are no campaigns that match the requested filter, a 404 status is returned:

{
    "http_status": 404,
    "message": "No matching campaigns found",
    "message_code": "api.action.resource_not_found"
}

Paging

Use a page size of 100 - and fetch page 1:

GET backstage/api/1.0/demo-advertiser-network/campaigns/base?page_size=100&page=1
{
    "results": [
        {
            "id": 106,
            "advertiser_id": 11,
            "advertiser_name": "demo-advertiser-01",
            "advertiser_description": "Demo Advertiser 01",
            "name": "Smart Phones (Mobile)",
            "branding_text": "demo-brand-01.com",
            "policy_state": "ENABLED",
            "status": "RUNNING",
            "create_time": 1528890919000,
            "total_spent": 14162.89
        },
        {
            "id": 447,
            "advertiser_id": 12,
            "advertiser_name": "demo-advertiser-02",
            "advertiser_description": "Demo Advertiser 02",
            "name": "Training Promotion",
            "branding_text": "demo-brand-02.com",
            "policy_state": "ENABLED",
            "status": "RUNNING",
            "create_time": 1539079796000,
            "total_spent": 1389.4
        },
        //...

    ],
    "metadata": {
        "total": 1015,
        "count": 100,
        //...
    }
}

🚧

The page_size and page query params are always passed together.

Language
Authentication
OAuth2
Click Try It! to start a request and see the response here!