> ## 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 Squad

> Creates a Snapchat Ads ad squad under a campaign with optimization goal, bid, budget, schedule, targeting, and placement

Creates a Snapchat Ads ad squad under a campaign with optimization goal, bid, budget, schedule, targeting, and placement. Bid and budget amounts are entered in the ad account currency and converted to micro-currency automatically.

|                       |                                |
| --------------------- | ------------------------------ |
| **App**               | Snapchat Ads                   |
| **Operation ID**      | `snapchat_ads_create_ad_squad` |
| **Type**              | Action                         |
| **Connection**        | `snapchat_ads` (required)      |
| **Credits per run**   | 2                              |
| **Agent / MCP tool**  | Yes                            |
| **Requires approval** | Yes (write operation)          |

## Inputs

| Field                                     | Type                       | Required | Default                                      | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ----------------------------------------- | -------------------------- | -------- | -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `account`                                 | DynamicAccount             | Yes      | -                                            | Select the Snapchat Ads account that owns the campaign.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `campaign_id`                             | string or SelectItem       | Yes      | -                                            | ID of the Snapchat campaign to create the ad squad in.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `ad_squad_name`                           | string                     | Yes      | -                                            | Name of the ad squad (sent to Snapchat as 'name'). Max 375 characters.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `type`                                    | string or SelectableOption | No       | `{'value': 'SNAP_ADS', 'label': 'Snap Ads'}` | Ad squad type: SNAP\_ADS (default), LENS, or FILTER.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `status`                                  | string or SelectableOption | No       | `{'value': 'PAUSED', 'label': 'Paused'}`     | Status when the ad squad is created: ACTIVE or PAUSED. Default: PAUSED.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `optimization_goal`                       | string or SelectableOption | Yes      | -                                            | Optimization goal for delivery. The available goals depend on the parent campaign's objective\_v2\_type and where the conversion happens (web, app, or lead form). PIXEL\_\* goals require pixel\_id. APP\_\* goals should set event\_sources to the Snap App ID.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `bid_strategy`                            | string or SelectableOption | No       | `{'value': 'AUTO_BID', 'label': 'Auto Bid'}` | Bidding strategy: AUTO\_BID (default), LOWEST\_COST\_WITH\_MAX\_BID, or TARGET\_COST. LOWEST\_COST\_WITH\_MAX\_BID and TARGET\_COST require bid\_amount.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `bid_amount`                              | number                     | No       | -                                            | Bid in the ad account's currency (for example 2 for \$2.00), sent to Snapchat as bid\_micro. Required for LOWEST\_COST\_WITH\_MAX\_BID and TARGET\_COST strategies; not used with AUTO\_BID. Minimum 0.01; maximum varies by currency.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `daily_budget`                            | number                     | No       | -                                            | Daily budget in the ad account's currency, sent as daily\_budget\_micro. Minimum 5. Provide either daily\_budget or lifetime\_budget, unless the parent campaign uses Smart Budgets (pacing\_level CAMPAIGN), where budgets are managed at the campaign level.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `lifetime_budget`                         | number                     | No       | -                                            | Lifetime budget in the ad account's currency, sent as lifetime\_budget\_micro. Requires start\_time and end\_time. Provide either daily\_budget or lifetime\_budget.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `start_time`                              | integer or string          | No       | -                                            | Optional start as a Unix timestamp or ISO datetime string. Required when using lifetime\_budget.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `end_time`                                | integer or string          | No       | -                                            | Optional end as a Unix timestamp or ISO datetime string. Must be after start\_time. Required when using lifetime\_budget.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `targeting`                               | object or string           | Yes      | -                                            | The Snapchat targeting spec for this ad squad, as a JSON object sent to Snapchat as-is. geos is required; every other key is optional and Snapchat applies its own defaults when omitted. Use snapchat\_ads\_search\_targeting to look up valid IDs for any dimension (region\_id, metro\_id, postal\_code, interest category\_id, languages, carriers, device makes, and more). Common keys: - geos (required): list of geo objects, e.g. \[\{"country\_code": "us"}]. Supports region\_id, metro\_id, postal\_code, and operation (INCLUDE/EXCLUDE). - demographics: list, e.g. \[\{"min\_age": "18", "max\_age": "34", "gender": "MALE"}]. Also supports languages and advanced\_demographics. - devices: list, e.g. \[\{"os\_type": "iOS", "os\_version\_min": "11.3"}]. Also supports connection\_type, carrier\_id, marketing\_name. - interests: list, e.g. \[\{"category\_id": \["SLC\_36"]}] for Snap Lifestyle Categories. - segments: list for custom audiences, e.g. \[\{"segment\_id": \["\<id>"], "operation": "INCLUDE"}]. - locations: list for location categories with circles. - regulated\_content: boolean, set true for age-regulated ads. - enable\_targeting\_expansion: boolean. - auto\_expansion\_options: object with interest\_expansion\_option and custom\_audience\_expansion\_option. Example: \{"regulated\_content": false, "geos": \[\{"country\_code": "us"}], "demographics": \[\{"min\_age": "18"}]} |
| `placement_v2`                            | object or string           | No       | -                                            | Placement spec as a JSON object, sent to Snapchat as-is. Defaults to \{"config": "AUTOMATIC"} when omitted. Keys: config (AUTOMATIC or CUSTOM), platforms (e.g. \["snapchat"]), snapchat\_positions (for CUSTOM config: INTERSTITIAL\_USER, INTERSTITIAL\_CONTENT, INSTREAM, FEED, CAMERA, INTERSTITIAL\_SPOTLIGHT, PUBLIC\_STORIES\_INSTREAM). LIMITED\_INVENTORY brand safety is only compatible with PUBLIC\_STORIES\_INSTREAM, INTERSTITIAL\_CONTENT, INTERSTITIAL\_SPOTLIGHT, or AUTOMATIC placement. Example: \{"config": "CUSTOM", "platforms": \["snapchat"], "snapchat\_positions": \["INTERSTITIAL\_USER"]}                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `conversion_window`                       | string or SelectableOption | No       | -                                            | Delivery optimization window: SWIPE\_28DAY\_VIEW\_1DAY (Snapchat default) or SWIPE\_7DAY.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `pixel_id`                                | string                     | No       | -                                            | Snap Pixel ID associated with the ad squad. Required for PIXEL\_\* optimization goals.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `pacing_type`                             | string or SelectableOption | No       | -                                            | Pacing: STANDARD (Snapchat default) or ACCELERATED.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `child_ad_type`                           | string or SelectableOption | No       | -                                            | Ad type the ad squad will contain. If omitted, Snapchat sets it automatically from the first ad added, after which it becomes immutable.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `forced_view_setting`                     | string or SelectableOption | No       | -                                            | Whether the ad squad contains creatives that can serve as a Commercial: FULL\_DURATION, SIX\_SECONDS, or NONE.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `story_ad_creative_type`                  | string or SelectableOption | No       | -                                            | Creative type for Dynamic Story Ads: APP\_INSTALL, WEB\_VIEW, or DEEP\_LINK. Required when using Dynamic Story Ads.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `inventory_option`                        | string or SelectableOption | No       | -                                            | Brand safety inventory filter, sent as brand\_safety\_config: \{inventory\_option: ...}. FULL\_INVENTORY (Snapchat default) maximizes reach; LIMITED\_INVENTORY shows ads only near content that passed additional moderation, which may decrease reach and increase costs.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `measurement_provider_names`              | string or SelectableOption | No       | -                                            | Approved third-party measurement provider, sent as a one-item list: DOUBLEVERIFY.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `event_sources`                           | object or string           | No       | -                                            | Snap App ID associated with the ad squad, as a JSON object sent as-is. Shape: \{"MOBILE\_APP": \["\<snap\_app\_id>"]}. Recommended for APP\_INSTALLS and DEEP\_LINK goals, and a prerequisite for SKAdNetwork enrollment and App Install state targeting.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `skadnetwork_properties`                  | object or string           | No       | -                                            | SKAdNetwork enrollment at creation time, as a JSON object. Keys: enroll\_action (OPT\_IN), enable\_skoverlay (boolean). Enrollment requires event\_sources set to the Snap App ID, iOS-only device targeting, and an available Apple Campaign ID. Enrolled ad squads cannot use APP\_REENGAGE\_OPEN or APP\_REENGAGE\_PURCHASE goals, or the TARGET\_COST bid strategy. Example: \{"enroll\_action": "OPT\_IN", "enable\_skoverlay": true}                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `cap_and_exclusion_config`                | object or string           | No       | -                                            | Frequency cap and exclusion spec, as a JSON object sent to Snapchat as-is, following the Snapchat frequency cap specification, e.g. \{"frequency\_cap\_config": \[\{"frequency\_cap\_count": 2, "time\_interval": 24, "frequency\_cap\_interval": "HOURS", "frequency\_cap\_type": "IMPRESSIONS"}]}. When set inside an Auction campaign, all ads in the ad squad must be of the same ad type (no Multi-format Delivery).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `ad_scheduling_config`                    | object or string           | No       | -                                            | Schedule for running ads, as a JSON object sent to Snapchat as-is, following the Snapchat ad scheduling specification (days and hours of the week when ads are eligible to serve).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `campaign_budget_optimization_properties` | object or string           | No       | -                                            | Per-ad-squad spend constraints, only when the parent campaign uses Smart Budgets (pacing\_level CAMPAIGN), as a JSON object with micro-currency integers passed as-is. Keys: daily\_min\_spend\_micro, daily\_max\_spend\_micro (daily budget campaigns) or lifetime\_min\_spend\_micro, lifetime\_max\_spend\_micro (lifetime cap campaigns); daily and lifetime constraints cannot be mixed. Minimum spend must not exceed 90% of the campaign budget. Example: \{"daily\_min\_spend\_micro": 5000000, "daily\_max\_spend\_micro": 20000000}                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `reach_goal`                              | integer                    | No       | -                                            | Reach & Frequency bookings only: reach goal matching the forecasting request. Requires impression\_goal and a RESERVED campaign. Markifact sets reach\_and\_frequency\_status to PENDING and delivery\_constraint to REACH\_AND\_FREQUENCY automatically.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `impression_goal`                         | integer                    | No       | -                                            | Reach & Frequency bookings only: impression goal matching the forecasting request. Requires reach\_goal.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |

### 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 created Snapchat ad squad details.

**Fields**: `ad_squad_id`, `ad_squad_name`, `campaign_id`, `type`, `status`, `optimization_goal`
