---
title: "/2026-01/marketing-solutions/ad-sets"
method: POST
path: "/2026-01/marketing-solutions/ad-sets"
tags: ["Campaign"]
---

# /2026-01/marketing-solutions/ad-sets

`POST /2026-01/marketing-solutions/ad-sets`

Create the specified ad set

## Request body

- CreateAdSetV24Q3Request — Data model for an input resources
  - `data` CreateAdSetV24Q3Resource — Data model for a Resource
    - `attributes` CreateAdSetV24Q3 — ad set create model
      - `attributionConfiguration` CreateAdSetAttributionConfigurationV24Q3 — Create model for an ad set's attribution configuration.
        - `attributionMethod` 'unknown' | 'criteoAttribution' | 'googleAnalyticsLastClick' | 'googleAnalyticsDataDriven' | 'lastClick' | 'postClick' — The attribution method.
        - `lookbackWindow` 'unknown' | '30M' | '24H' | '7D' | '30D', nullable — The lookback window. Optional, should be specified only for attribution methods PostClick and LastClick.
      - `bidding` CreateAdSetBiddingV24Q3, required — ad set bidding create model
        - `bidAmount` number, double, nullable — Decimal value target relating to the `bidStrategy` specified. May be `null` for strategies that do not require a target value. At most 4 decimals are supported. Additional decimals are rounded.
        - `costController` 'COS' | 'maxCPC' | 'CPI' | 'CPM' | 'CPO' | 'CPSV' | 'CPV' | 'dailyBudget' | 'targetCPM', required — How spend is controlled
      - `budget` CreateAdSetBudgetV24Q3 — ad set budget create model
        - `budgetAmount` number, double, nullable
        - `budgetDeliverySmoothing` 'accelerated' | 'standard'
        - `budgetDeliveryWeek` 'undefined' | 'mondayToSunday' | 'tuesdayToMonday' | 'wednesdayToTuesday' | 'thursdayToWednesday' | 'fridayToThursday' | 'saturdayToFriday' | 'sundayToSaturday'
        - `budgetRenewal` 'undefined' | 'daily' | 'monthly' | 'lifetime' | 'weekly'
        - `budgetStrategy` 'capped' | 'uncapped', required
      - `campaignId` string, nullable, required — Campaign id this ad set belongs to
      - `datasetId` string, required — Dataset id of this ad set
      - `mediaType` 'display' | 'video', required — Media type for the ad set
      - `name` string, nullable, required — Name of the ad set
      - `objective` 'customAction' | 'clicks' | 'conversions' | 'displays' | 'appPromotion' | 'revenue' | 'storeConversions' | 'value' | 'reach' | 'visits' | 'videoViews', required — Objective of the ad set
      - `schedule` CreateAdSetScheduleV24Q3, required — ad set schedule create model
        - `endDate` string, date-time, nullable
        - `startDate` string, date-time, required
      - `targeting` CreateAdSetTargetingV24Q3, required — Targeting configuration of the ad set
        - `deliveryLimitations` AdSetDeliveryLimitationsV24Q3, nullable — ad set delivery limitations model
          - `devices` string[], nullable
          - `environments` string[], nullable
          - `operatingSystems` string[], nullable
        - `frequencyCapping` AdSetFrequencyCappingV24Q3, nullable, required — ad set frequency capping model
          - `frequency` 'hourly' | 'daily' | 'lifetime' | 'advanced', nullable
          - `maximumImpressions` integer, nullable
        - `geoLocation` CreateAdSetGeoLocationV24Q3 — Geolocation configuration of the ad set
          - `countries` AdSetTargetingRuleV24Q3 — ad set targeting rule model
            - `operand` 'undefined' | 'in' | 'notIn'
            - `values` string[], nullable
          - `subdivisions` AdSetTargetingRuleV24Q3 — ad set targeting rule model
            - `operand` 'undefined' | 'in' | 'notIn'
            - `values` string[], nullable
          - `zipCodes` AdSetTargetingRuleV24Q3 — ad set targeting rule model
            - `operand` 'undefined' | 'in' | 'notIn'
            - `values` string[], nullable
      - `trackingCode` string, nullable, required — The click tracking code associated to this Ad Set.
    - `type` string — Canonical type name of the entity

## Response `201`

The ad set that has been created and errors / warnings

- ResponseReadAdSetV24Q3 — output resource
  - `data` ReadModelReadAdSetV24Q3, nullable — read model data for resources
    - `attributes` ReadAdSetV24Q3, nullable — ad set read model
      - `advertiserId` string, nullable
      - `attributionConfiguration` ReadAdSetAttributionConfigurationV24Q3, nullable — Read model for an ad set's attribution configuration.
        - `attributionMethod` 'unknown' | 'criteoAttribution' | 'googleAnalyticsLastClick' | 'googleAnalyticsDataDriven' | 'lastClick' | 'postClick', nullable — The attribution method.
        - `lookbackWindow` 'unknown' | '30M' | '24H' | '7D' | '30D', nullable — The lookback window. Optional, should be specified only for attribution methods PostClick and LastClick.
      - `bidding` ReadAdSetBiddingV24Q3, nullable — ad set bidding read model
        - `bidAmount` number, double, nullable — Decimal value target relating to the `adSetObjective` specified. May be `null` for objectives that do not require a target value. At most 4 decimals are supported. Additional decimals are rounded.
        - `costController` 'COS' | 'maxCPC' | 'CPI' | 'CPM' | 'CPO' | 'CPSV' | 'CPV' | 'dailyBudget' | 'targetCPM', nullable — How spend is controlled
      - `budget` ReadAdSetBudgetV24Q3, nullable — ad set budget read model
        - `budgetAmount` number, double, nullable
        - `budgetDeliverySmoothing` 'accelerated' | 'standard', nullable
        - `budgetDeliveryWeek` 'undefined' | 'mondayToSunday' | 'tuesdayToMonday' | 'wednesdayToTuesday' | 'thursdayToWednesday' | 'fridayToThursday' | 'saturdayToFriday' | 'sundayToSaturday', nullable
        - `budgetRenewal` 'undefined' | 'daily' | 'monthly' | 'lifetime' | 'weekly', nullable
        - `budgetStrategy` 'capped' | 'uncapped', nullable
      - `campaignId` string, nullable
      - `datasetId` string, nullable
      - `destinationEnvironment` 'undefined' | 'web' | 'app', nullable
      - `mediaType` 'display' | 'video', nullable
      - `name` string, nullable
      - `objective` 'customAction' | 'clicks' | 'conversions' | 'displays' | 'appPromotion' | 'revenue' | 'storeConversions' | 'value' | 'reach' | 'visits' | 'videoViews', nullable
      - `schedule` ReadAdSetScheduleV24Q3, nullable — ad set schedule read model
        - `activationStatus` 'on' | 'off', nullable
        - `deliveryStatus` 'draft' | 'inactive' | 'live' | 'notLive' | 'pausing' | 'paused' | 'scheduled' | 'ended' | 'notDelivering' | 'archived', nullable
        - `endDate` NillableDateTime, nullable — structure that encapsulates an object that have valid business null values. If the structure is provided (i.e. not null), then the value in it, even null, is provided.
          - `value` string, date-time, nullable
        - `startDate` NillableDateTime, nullable — structure that encapsulates an object that have valid business null values. If the structure is provided (i.e. not null), then the value in it, even null, is provided.
          - `value` string, date-time, nullable
      - `targeting` AdSetTargetingV24Q3, nullable — ad set targeting model
        - `deliveryLimitations` AdSetDeliveryLimitationsV24Q3, nullable — ad set delivery limitations model
          - `devices` string[], nullable
          - `environments` string[], nullable
          - `operatingSystems` string[], nullable
        - `frequencyCapping` object, nullable
          - `value` AdSetFrequencyCappingV24Q3, nullable — ad set frequency capping model
            - `frequency` 'hourly' | 'daily' | 'lifetime' | 'advanced', nullable
            - `maximumImpressions` integer, nullable
        - `geoLocation` AdSetGeoLocationV24Q3, nullable — ad set geolocation model
          - `countries` NillableAdSetTargetingRuleV24Q3, nullable — structure that encapsulates an object that have valid business null values. If the structure is provided (i.e. not null), then the value in it, even null, is provided.
            - `value` AdSetTargetingRuleV24Q3 — ad set targeting rule model
              - …
          - `subdivisions` NillableAdSetTargetingRuleV24Q3, nullable — structure that encapsulates an object that have valid business null values. If the structure is provided (i.e. not null), then the value in it, even null, is provided.
            - `value` AdSetTargetingRuleV24Q3 — ad set targeting rule model
              - …
          - `zipCodes` NillableAdSetTargetingRuleV24Q3, nullable — structure that encapsulates an object that have valid business null values. If the structure is provided (i.e. not null), then the value in it, even null, is provided.
            - `value` AdSetTargetingRuleV24Q3 — ad set targeting rule model
              - …
      - `videoChannel` 'olv' | 'ctv', 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/versions/c1721589426a/schema)
