> ## Documentation Index
> Fetch the complete documentation index at: https://docs.markifact.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create Ad Set

> Creates a Spotify Ads ad set inside a campaign with its budget, schedule, bidding, delivery settings and targeting

Creates a Spotify Ads ad set inside a campaign with its budget, schedule, bidding, delivery settings and targeting. Use spotify\_ads\_search\_targeting to resolve targeting ids first.

|                       |                             |
| --------------------- | --------------------------- |
| **App**               | Spotify Ads                 |
| **Operation ID**      | `spotify_ads_create_ad_set` |
| **Type**              | Action                      |
| **Connection**        | `spotify_ads` (required)    |
| **Credits per run**   | 1                           |
| **Agent / MCP tool**  | Yes                         |
| **Requires approval** | Yes (write operation)       |

## Inputs

| Field                    | Type                                                                                                          | Required | Default | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ------------------------ | ------------------------------------------------------------------------------------------------------------- | -------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `account`                | DynamicAccount                                                                                                | Yes      | -       | Select the Spotify Ads account to create the ad set in.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `campaign_id`            | string or SelectItem                                                                                          | Yes      | -       | Campaign the ad set belongs to.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `name`                   | string                                                                                                        | Yes      | -       | Ad set name, 2 to 200 characters.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `start_time`             | string                                                                                                        | No       | -       | When the ad set starts, ISO 8601 UTC, for example 2026-09-01T00:00:00Z. Spotify requires it to be at least 15 minutes in the future. Defaults to 20 minutes from now when omitted.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `end_time`               | string                                                                                                        | No       | -       | When the ad set ends, ISO 8601 UTC. Runs until paused when omitted.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `budget_value`           | number                                                                                                        | Yes      | -       | Budget in the ad account's currency (for example 500 for \$500), converted to Spotify micro-currency automatically.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `budget_type`            | enum (`DAILY`, `LIFETIME`)                                                                                    | Yes      | -       | Whether budget\_value is a DAILY or LIFETIME budget.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `asset_format`           | enum (`AUDIO`, `VIDEO`, `IMAGE`, `CATALOG`)                                                                   | Yes      | -       | Creative format this ad set delivers: AUDIO, VIDEO, IMAGE, or CATALOG. CATALOG is the carousel format, where listeners swipe through 2 to 6 images; its items are set on the ad's catalog field.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `bid_strategy`           | enum (`COST_PER_RESULT`, `MAX_BID`, `AUTOBID`, `UNSET`)                                                       | Yes      | -       | How Spotify bids: AUTOBID, MAX\_BID (needs bid\_value), COST\_PER\_RESULT (needs bid\_value), or UNSET.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `bid_value`              | number                                                                                                        | No       | -       | Bid per 1,000 impressions in the account's currency, converted to micro-currency automatically. Required by MAX\_BID and COST\_PER\_RESULT.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `base_rate_value`        | number                                                                                                        | No       | -       | Base rate in the account's currency, converted to micro-currency automatically.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `delivery_goal`          | enum (`UNSET`, `IMPRESSIONS`, `REACH`, `VIDEO_VIEWS`, `CLICKS`, `PAGE_VIEWS`, `APP_INSTALLS`, `STREAMS`, ...) | No       | -       | What delivery optimizes for: IMPRESSIONS, REACH, VIDEO\_VIEWS, CLICKS, PAGE\_VIEWS, APP\_INSTALLS, STREAMS, LEADS, or UNSET.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `delivery`               | enum (`ON`, `OFF`)                                                                                            | No       | -       | Whether the ad set starts delivering (ON) or paused (OFF).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `pacing`                 | enum (`PACING_EVEN`, `PACING_ASAP`)                                                                           | No       | -       | Spend pacing: PACING\_EVEN spreads the budget, PACING\_ASAP spends it as fast as possible.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `slot_positions`         | array of string or SelectableOption                                                                           | No       | -       | Podcast slot positions to deliver in: PRE\_ROLL, MID\_ROLL, POST\_ROLL.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `video_delivery_formats` | array of string or SelectableOption                                                                           | No       | -       | Video delivery formats: IN\_STREAM, OPT\_IN.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `category`               | string                                                                                                        | No       | -       | Advertising category code for the ad set, for example ADV\_1\_1.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `mobile_app_id`          | string                                                                                                        | No       | -       | Mobile app ID for app promotion ad sets.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `dataset_id`             | string                                                                                                        | No       | -       | Measurement dataset ID used for conversion tracking.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `targets`                | object or string                                                                                              | Yes      | -       | The Spotify targeting object for this ad set, sent to the API as-is. placements is required: a list of MUSIC and/or PODCAST. Other keys: age\_ranges (list of \{min, max} between 13 and 99), genders (MALE, FEMALE, NON\_BINARY), geo\_targets (object with country\_code, city\_ids, region\_ids, postal\_code\_ids), language (2-letter code), platforms (ANDROID, DESKTOP, IOS; all when omitted), artist\_ids, genre\_ids, playlist\_ids, interest\_ids, podcast\_episode\_topic\_ids, audience\_ids, audience\_ids\_exclusions, sensitive\_topic\_exclusions, and user\_day\_parts. Use spotify\_ads\_search\_targeting to look up artist, genre, geo, interest, language, playlist, episode topic and sensitive topic ids. Example: \{"placements": \["MUSIC"], "geo\_targets": \{"country\_code": "US"}, "age\_ranges": \[\{"min": 18, "max": 34}]} |
| `frequency_caps`         | array of any or string                                                                                        | No       | -       | Up to 6 frequency caps, sent as-is. Each item is \{frequency\_unit: DAY\|WEEK\|MONTH, frequency\_period: integer, max\_impressions: integer}. Example: \[\{"frequency\_unit": "DAY", "frequency\_period": 1, "max\_impressions": 3}]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `promotion`              | object or string                                                                                              | No       | -       | Artist or podcast promotion object, sent as-is: \{promotion\_goal: ARTIST\_PROMO\|PODCAST\_PROMO, promotion\_target\_id, conversion\_events: \[\{tracking\_event\_type: IMPRESSION\|CLICKED\|COMPLETE, window\_duration\_ms}]}.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `cost_modifiers`         | array of any or string                                                                                        | No       | -       | Cost modifier objects, sent as-is: \[\{id, name, rate}].                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |

### SelectItem

| Field   | Type   | Required | Default | Description                                                                                          |
| ------- | ------ | -------- | ------- | ---------------------------------------------------------------------------------------------------- |
| `value` | string | Yes      | -       | The value of the selectable item.                                                                    |
| `label` | string | Yes      | -       | The label of the selectable item, used for display purposes. If not provided, defaults to the value. |

### SelectableOption

| Field   | Type   | Required | Default | Description |
| ------- | ------ | -------- | ------- | ----------- |
| `value` | string | Yes      | -       |             |
| `label` | string | Yes      | -       |             |

## Output

**Type**: `Dict`

Returns the created ad set including id, campaign\_id, name, status, budget, bid\_strategy, asset\_format and targets.

**Fields**: dynamic (depend on the inputs)
