Skip to main content
GET
/
campaigns
/
{campaignId}
Get campaign
curl --request GET \
  --url https://api.interchange.io/api/v2/buyer/campaigns/{campaignId} \
  --header 'Authorization: Bearer <token>'
{
  "campaign": {
    "campaignId": "cmp_987654321",
    "advertiserId": "12345",
    "name": "Summer 2025 Campaign",
    "status": "DRAFT",
    "optimizationApplyMode": "AUTO",
    "createdAt": "2025-01-15T10:30:00Z",
    "updatedAt": "2025-01-20T14:45:00Z",
    "mediaBuyRefs": [
      {
        "mediaBuyId": "mb_ETBn4gJ9Wu",
        "status": "ACTIVE"
      }
    ],
    "campaignType": "DECISIONED",
    "brief": "<string>",
    "flightDates": {
      "startDate": "2025-01-15T00:00:00Z",
      "endDate": "2025-03-31T23:59:59Z"
    },
    "budget": {
      "total": 1,
      "currency": "USD",
      "dailyCap": 1,
      "pacing": "EVEN"
    },
    "mediaBudget": {
      "total": 1,
      "currency": "<string>"
    },
    "fees": [
      {
        "label": "<string>",
        "amount": 1,
        "currency": "<string>",
        "pricingType": "MARGIN",
        "marginPercent": 1,
        "unit": "CPM",
        "unitPrice": 1
      }
    ],
    "allocatedBudget": 7500,
    "unallocatedBudget": 2500,
    "pacingPeriods": {
      "mode": "weight",
      "periods": [
        {
          "label": "<string>",
          "start": "<string>",
          "end": "<string>",
          "weight": 5,
          "budget": 1
        }
      ]
    },
    "constraints": {
      "channels": [
        "<string>"
      ],
      "countries": [
        "<string>"
      ]
    },
    "storefronts": [
      {
        "id": 42,
        "platformId": "acme-media",
        "name": "Acme Media"
      }
    ],
    "performanceConfig": {
      "optimizationGoals": [
        {
          "kind": "event",
          "eventSources": [
            {
              "eventSourceId": "website_pixel",
              "eventType": "page_view",
              "customEventName": "<string>",
              "valueField": "value",
              "valueFactor": 1
            }
          ],
          "target": {
            "kind": "cost_per",
            "value": 25
          },
          "attributionWindow": {
            "postClick": {
              "interval": 7,
              "unit": "days"
            },
            "postView": {
              "interval": 1,
              "unit": "days"
            }
          },
          "priority": 1
        }
      ]
    },
    "catalogId": 42,
    "discoveryId": "session_abc123",
    "productCount": 15,
    "products": [
      {
        "productId": "prod_123"
      }
    ],
    "audiences": [
      {
        "audienceId": "aud_123",
        "name": "Tech Enthusiasts 25-34",
        "status": "READY",
        "type": "TARGET",
        "enabledAt": "2025-03-01T12:00:00Z"
      }
    ],
    "creativeFormats": {
      "required": [
        {
          "agent_url": "<string>",
          "id": "<string>"
        }
      ],
      "covered": [
        {
          "agent_url": "<string>",
          "id": "<string>"
        }
      ],
      "missing": [
        {
          "agent_url": "<string>",
          "id": "<string>"
        }
      ]
    },
    "mediaBuys": [
      {
        "mediaBuyId": "<string>",
        "name": "<string>",
        "status": "<string>",
        "createdAt": "2023-11-07T05:31:56Z",
        "updatedAt": "2023-11-07T05:31:56Z",
        "startTime": "2025-04-14T00:00:00Z",
        "endTime": "2025-04-30T23:59:59Z",
        "products": [
          {
            "productId": "<string>",
            "salesAgentName": "<string>",
            "budget": 123,
            "budgetCurrency": "<string>"
          }
        ],
        "packages": [
          {
            "packageId": "<string>",
            "status": "<string>",
            "productIds": [
              "<string>"
            ],
            "budget": 123,
            "budgetCurrency": "<string>",
            "pacing": "<string>",
            "bidPrice": 123,
            "delivery": {
              "impressions": 123,
              "spend": 123,
              "clicks": 123
            }
          }
        ],
        "optimizationGoals": [
          {
            "kind": "metric",
            "metric": "clicks",
            "reach_unit": "individuals",
            "target_frequency": {},
            "view_duration_seconds": 123,
            "target": {
              "kind": "cost_per",
              "value": 123
            },
            "priority": 123
          }
        ]
      }
    ],
    "dataDelivery": {
      "outputs": [
        {
          "outputConfigId": "<string>",
          "dataDeliveryType": "MB_DELIVERY",
          "cadence": "HOURLY",
          "enabled": true,
          "deliveryConfig": {
            "type": "GCS",
            "bucket": "<string>",
            "pathPrefix": "",
            "format": "JSONL"
          },
          "source": "advertiser",
          "createdAt": "<string>",
          "updatedAt": "<string>",
          "syncWeeklyDay": 3
        }
      ]
    },
    "frequencyCaps": [
      {
        "max_impressions": 3,
        "window": {
          "interval": 123,
          "unit": "seconds"
        },
        "id": "12345",
        "targetLevel": "ADVERTISER",
        "targetId": "camp_abc123",
        "createdAt": "<string>",
        "updatedAt": "<string>",
        "archivedAt": "<string>"
      }
    ]
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.interchange.io/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

API key or access token

Path Parameters

id
string
required

Unique identifier for the campaign

Minimum string length: 1
Example:

"cmp_987654321"

Query Parameters

mediaBuyId

Filter the embedded mediaBuys[] array to only the media buys with these IDs. Accepts a single ID (?mediaBuyId=mb_X) or repeated values (?mediaBuyId=mb_X&mediaBuyId=mb_Y). The campaign object itself is unchanged; only the nested media buys are narrowed. Use to drill into specific buys without loading every buy on the campaign (helps when the full tree exceeds an LLM context window). mediaBuyRefs still lists every buy on the campaign so callers can discover IDs.

Example:

"mb_ETBn4gJ9Wu"

Response

Get campaign

Response containing a single campaign

campaign
object
required

Campaign resource representation