CampaignsUpdate Campaign

Update Campaign

Update a campaign's settings, budget, pacing, or pod rules. The full CampaignInput body is required - each manage tab (Settings, Budget, Pod Rules) merges its changes into the existing campaign client-side before saving.

curl -X POST "https://api.5centscdn.com/v2/ad-manager/101/campaigns/cmp_4c19/update" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_API_KEY" \
  -d '{
  "name": "Summer Promo 2026",
  "advertiser_id": "adv_8f2a",
  "campaign_type": "guaranteed_impressions",
  "budget": {
    "pricing_model": "cpm",
    "cpm_micros": 5000000,
    "total_budget_micros": 500000000,
    "daily_budget_cap_micros": 50000000,
    "impression_goal": 1000000,
    "daily_impression_cap": 100000,
    "lifetime_impression_cap": 1000000
  },
  "timezone": "America/New_York",
  "start_at": "2026-06-01T00:00:00-04:00",
  "end_at": "2026-08-31T23:59:59-04:00",
  "priority": 50,
  "pacing": {
    "pacing_mode": "even"
  },
  "pod_rules": {
    "allow_in_pods": true,
    "max_ads_per_pod": 1,
    "max_seconds_per_pod": 30,
    "allow_multiple_creatives_per_pod": false,
    "allow_same_creative_repeat": false,
    "preferred_pod_position": "any",
    "competitive_category": [
      10,
      25
    ]
  },
  "targeting": {
    "include_tags": [
      "sports",
      "live"
    ],
    "exclude_tags": [
      "kids"
    ],
    "categories": [
      3,
      7
    ],
    "content_ids": [
      "1024",
      "1025"
    ],
    "placements": [
      "preroll"
    ],
    "devices": [
      1,
      3
    ],
    "languages": [
      "en",
      "es"
    ],
    "oses": [
      "iOS",
      "Android"
    ],
    "browsers": [
      "Chrome",
      "Safari"
    ],
    "continent_geoname_ids": [
      6255149
    ],
    "country_geoname_ids": [
      6252001
    ],
    "subdivision_1_geoname_ids": [
      5332921
    ],
    "subdivision_2_geoname_ids": [
      5391959
    ],
    "city_geoname_ids": [
      5391811
    ]
  },
  "creative_ids": [
    "crv_9a71",
    "crv_9a72"
  ],
  "creative_weights": {
    "crv_9a71": 60,
    "crv_9a72": 40
  },
  "fallback_allowed": false,
  "is_house": false,
  "share_of_voice_percent": 25,
  "category": "3",
  "competitive_category": [
    10,
    25
  ]
}'
{
  "result": "success",
  "campaign": {
    "id": "cmp_4c19",
    "admanager_id": 4019,
    "advertiser_id": "adv_8f2a",
    "advertiser_name": "Acme Corp",
    "name": "Summer Promo 2026",
    "category": "3",
    "campaign_type": "guaranteed_impressions",
    "status": "draft",
    "priority": 50,
    "timezone": "America/New_York",
    "start_at": "2026-06-01T00:00:00-04:00",
    "end_at": "2026-08-31T23:59:59-04:00",
    "budget": {
      "pricing_model": "cpm",
      "cpm_micros": 5000000,
      "total_budget_micros": 500000000,
      "daily_budget_cap_micros": 50000000,
      "impression_goal": 1000000,
      "daily_impression_cap": 100000,
      "lifetime_impression_cap": 1000000
    },
    "pacing": {
      "pacing_mode": "even"
    },
    "pacing_mode": "even",
    "pod_rules": {
      "allow_in_pods": true,
      "max_ads_per_pod": 1,
      "max_seconds_per_pod": 30,
      "allow_multiple_creatives_per_pod": false,
      "allow_same_creative_repeat": false,
      "preferred_pod_position": "any",
      "competitive_category": [
        10,
        25
      ]
    },
    "share_of_voice_percent": 25,
    "fallback_allowed": false,
    "is_house": false,
    "pricing_model": "example_string",
    "cpm_micros": 5000000,
    "total_budget_micros": 500000000,
    "daily_budget_cap_micros": 50000000,
    "impression_goal": 1000000,
    "daily_impression_cap": 100000,
    "lifetime_impression_cap": 1000000,
    "delivery_status": {
      "status": "ended",
      "expected_delivery_percent": 100,
      "actual_delivery_percent": 0,
      "impression_goal": 50000,
      "delivered_impressions": 0,
      "remaining_impressions": 50000,
      "today_impressions": 0,
      "daily_impression_cap": 500,
      "budget_spent_micros": 0,
      "budget_remaining_micros": 0,
      "pacing_mode": "asap"
    }
  }
}
POST
/ad-manager/{pid}/campaigns/{cid}/update
POST
Base URLstring

Target server for requests. Edit to use your own host.

API Key (header: X-API-Key)
X-API-Keystring
Required

API key (sent in header)

path
pidinteger
Required

ID of the Ad Manager project.

path
cidstring
Required

ID of the campaign.

Content-Typestring
Required

The media type of the request body

Options: application/json
namestring
Required
Max length: 120
campaign_typestring
Required
Options: guaranteed_impressions, budget_based, share_of_voice, house
start_atstring

Flight start, RFC3339 with UTC offset (e.g. 2026-06-01T00:00:00-04:00). Space-separated wall-clock timestamps are rejected.

Format: date-time
end_atstring
Format: date-time
creative_weightsobject

Rotation weight per creative ID.

Request Preview
Response

Response will appear here after sending the request

Authentication

header
X-API-Keystring
Required

API Key for authentication. Provide your API key in the header.

Path Parameters

pidinteger
Required

ID of the Ad Manager project.

Example:
101
cidstring
Required

ID of the campaign.

Example:
cmp_4c19

Body

application/json
namestring
Required
Example:
Summer Promo 2026
campaign_typestring
Required
Allowed values:guaranteed_impressionsbudget_basedshare_of_voicehouse
budgetobject
Required
timezonestring
Example:
America/New_York
start_atstring

Flight start, RFC3339 with UTC offset (e.g. 2026-06-01T00:00:00-04:00). Space-separated wall-clock timestamps are rejected.

Example:
2026-06-01T00:00:00-04:00
end_atstring
Example:
2026-08-31T23:59:59-04:00
priorityinteger
Example:
50
pacingobject
pod_rulesobject
targetingobject
creative_idsarray
Example:
["crv_9a71","crv_9a72"]
creative_weightsobject

Rotation weight per creative ID.

Example:
{"crv_9a71":60,"crv_9a72":40}
is_houseboolean
Example:
false

Responses

resultstring

Operation outcome.

Allowed values:successerror
campaignstring