Skip to content
AdCrunch
Esc
↑↓navigate↵open⌘Jpreview
On this page

meta_copy_adset

Copy a Meta ad set into its own campaign or into another campaign of the ad account, with no ad. The copy always arrives paused.

Ask to copy an ad set that works, into its own campaign or into another campaign. Meta makes one new ad set with the settings of the source and adds “ - Copy” to its name. meta_rename gives the copy a full name. The copy has no ad, and it arrives paused, so it delivers nothing until you activate it. You can give the copy a new start time and a new end time.

Copy the FR BE 25-54 ad set into the Summer Scale campaign, from June 1 to June 30.

The agent calls meta_copy_adset, then get_mutation_status, and you see the id of the copy and the budget that it carries. Under a campaign budget, the copy spends the budget of its campaign. Change what runs on Meta shows how to put the ads of the source into the copy.

Reference

Available on: Meta

Copy a Meta ad set on a live ad account, into its own campaign or into another campaign of the same ad account. Meta makes one new ad set with the settings of the source and adds “ - Copy” to its name. To give the copy a full name, call meta_rename on it. The copy is shallow: it has no ad. To copy an ad into it, call meta_create_ad with the new ad set and the creativeId of the source ad. The copy is always created PAUSED and cannot be created active. Rejected if the source is not in this ad account. Runs asynchronously: returns a workflowId — call get_mutation_status with it to get the id of the copy and its budget: { "dailyBudget": 50 } or { "lifetimeBudget": 500 } in whole units of the ad account currency, or "campaign" when the copy spends the budget of its campaign. Under ad set budgets, the copy adds a second budget of the same size. That budget is what the copy can spend after you activate it with meta_set_status. To change it, call meta_update_budget on the paused copy. A copy starts its own learning phase. Meta refuses some copies: an Advantage+ shopping campaign and an Advantage+ app campaign cannot be copied, and a copy that targets the EU needs the default payor and the default beneficiary of the ad account.

Input

Argument Type Required Description
advertiserId string yes Advertiser account ID (acc_<id>). Must belong to the active organization.
campaignId string no The Meta ID of the campaign that receives the copy, digits only — including one you created or copied moments ago. Omit it to keep the copy in the campaign of the source. The copy takes the settings of that campaign: under a campaign budget, it spends the campaign budget. Meta decides whether the campaign accepts the copy.
endTime string no When delivery of the copy stops, as an ISO 8601 timestamp. Omit it to keep the end time of the source.
id string yes The Meta ID of the ad set to copy, digits only. It must be in this ad account. Find one with meta_list_adsets.
startTime string no When delivery of the copy starts, as an ISO 8601 timestamp. Omit it to keep the start time of the source. A copy of an ad set that has ended starts when Meta makes it, with the duration of the source.

Output

A successful call returns this object in structuredContent.

Field Type Always present Description
workflowId string yes The id of the change. The change has not reached Meta yet. Give this id to get_mutation_status to find out how the change ended.

Failure codes

A failed call has isError set, and structuredContent.error holds one of these codes. Errors describes the shape of a failed call.

  • not_found
  • provider_not_connected
  • missing_write_access
  • forbidden
  • invalid_request
  • internal_error

Scope

The token must hold mutation:write. Auth & scopes lists each scope.

Annotations

A client reads these hints. A hint that the tool does not declare has the default value of the MCP specification.

  • Writes. The tool can change data.
  • Destructive. The tool can make a change that you cannot undo. A client can ask you to confirm before it calls the tool.
  • Not idempotent. A second call with the same arguments can change more.
  • Open world. The tool reaches a system outside AdCrunch, such as an ad platform.

Example

The arguments:

{
  "advertiserId": "acc_1485443900032333",
  "campaignId": "120215678901234567",
  "id": "120215678901234890"
}

The result, in structuredContent:

{
  "workflowId": "3f9c2b7e-8a41-4d6e-9b05-c1e7a2d4f860"
}

Was this page helpful?