Skip to Content
Tool referenceCreate campaign

Create campaign (adsap_create_campaign)

Platform: Meta · Read or write: Write · Plan: All plans · Consumes a task: Yes · Preview supported: Yes

What it does

Creates a Meta campaign in the ad account you name. You set the objective, the budget model and any special ad category. The campaign starts paused unless you ask for it to go live. Ask for a preview first: the copilot validates the setup and shows a launch review card where you confirm, create and activate.

Parameters

Descriptions are shortened from the tool schema. Your assistant sees the full text.

NameTypeRequiredDescription
ad_account_idstringYes
namestringYes
objectiveone of OUTCOME_AWARENESS, OUTCOME_TRAFFIC, OUTCOME_ENGAGEMENT, OUTCOME_LEADS, OUTCOME_APP_PROMOTION, OUTCOME_SALESYes
buying_typeone of AUCTION, RESERVEDNo
daily_budgetnumberNoIn cents. Mutually exclusive with lifetime_budget.
lifetime_budgetnumberNoIn cents. Mutually exclusive with daily_budget.
spend_capnumberNoIn cents.
start_timestringNoRequired with lifetime_budget.
stop_timestringNoRequired with lifetime_budget.
special_ad_categoriesarray of one of NONE, HOUSING, EMPLOYMENT, CREDIT, FINANCIAL_PRODUCTS_SERVICES, ISSUES_ELECTIONS_POLITICS, ONLINE_GAMBLING_AND_GAMINGNoMeta Special Ad Category. Required for ads about financial products and services (FINANCIAL_PRODUCTS_SERVICES; CREDIT is the retired name), employment, housing, social issues/elections/politics, or online gambling and gaming. Housing, employment and financial categories lock ad set targeting to 18-65+, all genders and a 15 mi / 25 km radius floor…
special_ad_category_countryarray of stringNoISO country codes, one or several. Required when special_ad_categories is set; ad sets under the campaign must target inside this list.
campaign_budget_optimizationbooleanNoEnable CBO.
share_budget_with_ad_setsbooleanNoCampaign-level toggle for Meta’s “Share some of your budget with other ad sets” (is_adset_budget_sharing_enabled). Only valid on ABO campaigns (no campaign-level budget) whose ad sets use DAILY budgets; rejected on CBO campaigns (Meta error 4834002). Worth considering for ABO campaigns with multiple ad sets.
bid_strategyone of LOWEST_COST_WITHOUT_CAP, COST_CAP, BID_CAP, LOWEST_COST_WITH_MIN_ROASNoCampaign-level bid strategy. Only applied under CBO (campaign_budget_optimization: true) or when share_budget_with_ad_sets is true (budget sharing requires a campaign bid strategy: Meta error 4834005); ignored for plain ad-set-budget campaigns. Cap and ROAS values are set per ad set via adsap_create_ad_sets (bid_amount / roas_target), not at the campaign level.
statusone of PAUSED, ACTIVENo
promoted_objectobjectNoOUTCOME_APP_PROMOTION + iOS apps ONLY: campaign-level app binding for iOS/SKAdNetwork campaigns (is_skadnetwork_attribution is set automatically). Meta treats any campaign with a campaign-level promoted_object as an iOS-14 SKAN campaign: Android apps are rejected there (2446632)… The app must be in Live mode and advertisable by the ad account.
promoted_object.application_idstringYes
promoted_object.object_store_urlstringYes
advantage_catalog_adsbooleanNoEnable Advantage+ Catalog Ads (catalog-based advertising). OUTCOME_SALES only, and requires catalog_id. REQUIRED for any campaign that will host Catalog or Collection ads: Meta binds the catalog at the CAMPAIGN level, so a plain sales campaign cannot host them.
catalog_idstringNoMeta product catalog id to bind to the campaign. Required when advantage_catalog_ads is true, ignored otherwise. Get ids from adsap_list_catalogs.
dry_runbooleanNoPreview only: the request is validated and the resolved payload returned, nothing is created or changed.
idempotency_keystringNo

Example prompts

  • “Create a sales campaign called Summer Sale with a $50 daily budget and campaign budget optimization on.”
  • “Set up a leads campaign for the French account, paused, with a lifetime budget of 2,000 EUR ending June 30.”
  • “Preview a catalog sales campaign using my main product catalog before you create anything.”

Notes

Catalog and Collection ads need the catalog bound at the campaign level. Say so when you create the campaign, or those ads fail later.

  • adsap_list_apps: List the apps an ad account can promote: use to pick application_id + object_store_url for App promotion (OUTCOME_APP_PROMOTION)…
  • adsap_list_campaigns: List Meta campaigns in an ad account.

Guide

Read Creating a campaign for the workflow around this tool, and the Tool reference for every tool.

Last updated on