Duplicate and vary
Duplicate a campaign/ad set/ad N times, varying ONE specific settings path across the copies.
Tool name: duplicate-and-vary.
Duplicate a campaign/ad set/ad N times, varying ONE specific settings path across the copies. vary.path is a dotted path into the settings schema, call getSettingsSchema first to confirm the path is valid. Common paths: 'targeting.ageRange', 'targeting.locations', 'targeting.interests', 'optimization.bidAmount', 'optimization.bidStrategy', 'budget.dailyAmount', 'budget.lifetimeAmount'. vary.values must be the list of variant values (one per copy, length must equal count).
When to use
Duplicate a node N times and vary ONE settings-schema path across the copies (e.g. different ageRanges or budgets per copy). For plain duplication without variation use duplicateNode.
Access
| Property | Value |
|---|---|
| Required scope | write |
| Publishes | No |
| Read-only | No |
| Destructive | No |
| Idempotent | No |
| Open world | No |
Input
| Field | Type | Required | Description |
|---|---|---|---|
campaignLaunchId | string | Yes | Campaign launch ID (a.k.a. batch ID). Read it from the Current Context block when one is in scope, or resolve it from a mention via listAccountCampaigns / the campaign tree when the user @-mentioned a different launch. |
nodeId | string | Yes | ID of the node to duplicate |
count | number | Yes | Minimum 1, maximum 20. |
vary | object | Yes | |
vary.path | string | Yes | Dotted settings-schema path to vary across copies (e.g. 'targeting.ageRange', 'optimization.bidAmount', 'budget.dailyAmount'). MUST resolve against getSettingsSchema, invalid paths are rejected by the backend. |
vary.values | any[] | Yes | One variant value per copy. Length must equal count. Values are shape-checked against the settings schema at the given path on the backend, mismatched types will error. At least 1 item. |
nameTemplate | string | No | Optional name template, e.g., "{original} - Variant {i}" |
Output
The tool catalog does not declare an output schema for this tool.
REST equivalent
POST /v1/brands/{brandId}/launches/{launchId}/nodes/{nodeId}/variations, Duplicate and vary. CLI: koast duplicate-and-vary.