Skip to main content
Use the POST /v1/campaigns endpoint to create campaigns on any connected ad platform. AdRelay translates your request into the platform-specific format and creates the campaign on your behalf.

Required Fields

FieldTypeDescription
namestringCampaign name (max 255 characters)
goalstringCampaign objective: CONVERSIONS, AWARENESS, TRAFFIC, LEADS, SALES
budget_amountnumberBudget amount in your account’s currency
budget_periodstringDAILY or LIFETIME
platformstringTarget platform: google_ads, meta_ads, or tiktok_ads

Basic Example

curl -X POST "https://api.adrelay.dev/v1/campaigns" \
  -H "X-API-Key: $ADRELAY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Summer Sale 2026",
    "goal": "CONVERSIONS",
    "budget_amount": 50.00,
    "budget_period": "DAILY",
    "platform": "google_ads"
  }'

Response

{
  "id": "camp_new789",
  "platform": "google_ads",
  "remote_id": "555666777",
  "name": "Summer Sale 2026",
  "status": "PAUSED",
  "goal": "CONVERSIONS",
  "budget_amount": 50.00,
  "budget_period": "DAILY",
  "currency": "USD",
  "created_at": "2026-03-21T10:00:00Z",
  "updated_at": "2026-03-21T10:00:00Z"
}

Default Status

All campaigns are created with a status of PAUSED by default. This gives you the opportunity to review the campaign before it goes live. To activate a campaign, update its status:
curl -X PATCH "https://api.adrelay.dev/v1/campaigns/camp_new789" \
  -H "X-API-Key: $ADRELAY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"status": "ACTIVE"}'

Budget Handling

Daily Budgets

The budget_amount with budget_period: "DAILY" sets the maximum spend per day. Each platform handles daily budgets slightly differently:
  • Google Ads — May spend up to 2x the daily budget on high-traffic days, but averages out over the month.
  • Meta Ads — May spend up to 25% more on high-opportunity days.
  • TikTok Ads — Strictly enforces the daily budget cap.

Lifetime Budgets

Set budget_period: "LIFETIME" to specify a total budget for the campaign’s duration. Note that lifetime budgets may require additional fields on some platforms.

Platform Differences

While AdRelay normalizes the campaign creation interface, there are platform-specific behaviors to be aware of:
BehaviorGoogle AdsMeta AdsTikTok Ads
Minimum daily budget$1.00$1.00$20.00
Budget currencyAccount currencyAccount currencyAccount currency
Campaign goal mappingDirectMapped to objectivesMapped to objectives
Creation latency~1-2s~2-3s~1-2s
AdRelay validates your request against platform-specific requirements before submitting. If a platform has a higher minimum budget, you will receive a validation error before the campaign is created.

Error Handling

Common creation errors:
CodeDescription
VALIDATION_ERRORMissing or invalid fields. Check the details object for specifics.
FORBIDDENNo active connection for the specified platform.
RATE_LIMITEDToo many requests. Retry after the Retry-After period.