---
title: "/2026-01/marketing-solutions/campaigns"
method: PATCH
path: "/2026-01/marketing-solutions/campaigns"
tags: ["Campaign"]
---

# /2026-01/marketing-solutions/campaigns

`PATCH /2026-01/marketing-solutions/campaigns`

Patch a list of Campaigns.
            
A campaign, or in other words a marketing campaign, is an entity that defines advertising objectives and success criteria.

## Request body

- PatchCampaignListRequest — List of input resources
  - `data` PatchCampaignWriteResource[], nullable
    - `attributes` PatchCampaign — Campaign patch model. The campaign identifier is provided in the resource {id} field (string-encoded integer) and is required.
      - `budgetAutomation` PatchMarketingCampaignBudgetAutomation — Budget automation, lets users configure budgets once at the campaign level while Criteo dynamically routes spend toward the best-performing ad sets. Only provided fields are updated; omitted fields are left unchanged. If "enabled" is omitted and only "budgetConfiguration" is provided, "enabled" defaults to false — budget automation will not be activated. To activate budget automation, "enabled" must be explicitly set to true along with a valid "budgetConfiguration". To deactivate, set "enabled" to false; "budgetConfiguration" can be omitted.
        - `budgetConfiguration` BudgetAutomationConfiguration, nullable — Configuration for budget automation. Only meaningful when "enabled" is true. When "enabled" is false or omitted, this field is ignored.
          - `adSetObjectives` 'conversions' | 'revenue' | 'visits' | 'videoViews' — The ad set optimization objective for budget automation. Determines how the automated budget allocates spend across ad sets in the campaign. - "conversions": optimize for conversion events. - "revenue": optimize for revenue. - "visits": optimize for site visits. - "videoViews": optimize for completed video views.
        - `enabled` boolean — Whether budget automation is enabled for this campaign. This field is always present in the response.
      - `spendLimit` PatchCampaignSpendLimit — Spend limit configuration for a marketing campaign (patch). Only provided fields are updated; omitted fields are left unchanged. When spendLimitType is "capped": spendLimitAmount and spendLimitRenewal are required. When spendLimitType is "uncapped": spendLimitAmount is null and spendLimitRenewal is "undefined".
        - `spendLimitAmount` NillableDecimal, nullable — Placeholder object for value for which "null" is a valid business value
          - `value` number, double, nullable — The value. If missing or null the value is set to "null"
        - `spendLimitRenewal` 'undefined' | 'daily' | 'monthly' | 'lifetime', nullable — The period over which the campaign spend limit is applied. When spendLimitType is "capped", this is "daily", "monthly", or "lifetime". When spendLimitType is "uncapped", this is "undefined".
        - `spendLimitType` 'capped' | 'uncapped', nullable — Controls whether the campaign has a spend limit. "capped" returns a non-null spendLimitAmount.value and a spendLimitRenewal of "daily", "monthly", or "lifetime". "uncapped" returns spendLimitAmount.value as null and spendLimitRenewal as "undefined".
    - `id` string, nullable — Id of the entity
    - `type` string, nullable — Canonical type name of the entity

## Response `200`

List of patched campaigns.

- PatchResultCampaignListResponse — List of output resources
  - `data` PatchResultCampaignReadResource[], nullable
    - `id` string, nullable — Id of the entity
    - `type` string, nullable
  - `errors` CommonProblem[], nullable
    - `code` string, nullable — A machine-readable error code, expressed as a string value.
    - `detail` string, nullable — A human-readable explanation specific to this occurrence of the problem
    - `instance` string, nullable — A URI that identifies the specific occurrence of the problem.
    - `source` object, nullable — A machine-readable structure to reference to the exact location(s) causing the error(s)
    - `stackTrace` string, nullable
    - `title` string, nullable — A short human-readable description of the problem type
    - `traceId` string, nullable — The request correlation ID this problem comes from.
    - `traceIdentifier` string, nullable — The request correlation ID this problem comes from. (deprecated, use traceId instead)
    - `type` 'unknown' | 'access-control' | 'authentication' | 'authorization' | 'availability' | 'deprecation' | 'quota' | 'validation', nullable — The problem's category.
  - `warnings` CommonProblem[], nullable
    - `code` string, nullable — A machine-readable error code, expressed as a string value.
    - `detail` string, nullable — A human-readable explanation specific to this occurrence of the problem
    - `instance` string, nullable — A URI that identifies the specific occurrence of the problem.
    - `source` object, nullable — A machine-readable structure to reference to the exact location(s) causing the error(s)
    - `stackTrace` string, nullable
    - `title` string, nullable — A short human-readable description of the problem type
    - `traceId` string, nullable — The request correlation ID this problem comes from.
    - `traceIdentifier` string, nullable — The request correlation ID this problem comes from. (deprecated, use traceId instead)
    - `type` 'unknown' | 'access-control' | 'authentication' | 'authorization' | 'availability' | 'deprecation' | 'quota' | 'validation', nullable — The problem's category.

---

[API](https://skmtc.net/criteo/apis/criteo-api.md) · [All operations](https://skmtc.net/criteo/apis/criteo-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/criteo/criteo-api/revisions/c1721589426a/schema)
