Create Meta ad draft
create_meta_ad_draftCreate a complete Meta (Facebook/Instagram) ad draft — campaign + ad set + creative + ad — ALL in PAUSED state, spending nothing. Draft primary_text via draft_ad_variants first (paid-ad genre, operator picks a variant) unless the operator supplied their own copy. Use when the user wants to set up or draft an ad. Activation is a separate human-approved step (set_meta_ad_status).
Routing: Meta ad setup → if ad copy is not already picked, run draft_ad_variants (channel meta) first; then create here with the picked primary_text + cta and its hook tag in campaign_name
[sensitive-tier — first use may require a manager's approval; a from-now-on approval makes future calls seamless, a just-once approval re-asks next time. Call it on the first clear ask; the card is the yes — do not re-ask in chat.]
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| cta | No | Optional call-to-action: LEARN_MORE, SIGN_UP, GET_STARTED, CONTACT_US, DOWNLOAD, SUBSCRIBE | |
| link_url | Yes | https destination URL (landing page, with UTMs) | |
| companyId | Yes | FreedomOS company id to act within (you must be a member). Required for company-scoped tools. | |
| objective | No | OUTCOME_TRAFFIC (default) | OUTCOME_AWARENESS | OUTCOME_ENGAGEMENT | OUTCOME_LEADS (needs firing pixel) | OUTCOME_SALES (needs firing pixel) | |
| targeting | No | Audience: {countries: ["US"], age_min, age_max, interests: [{id, name}]} | |
| daily_budget | Yes | Daily budget in the account currency, major units (e.g. 25 = 25 USD/day) | |
| primary_text | Yes | The ad copy (primary text) | |
| ad_account_id | No | Ad account (act_<digits>). Optional when the connection has exactly one. | |
| campaign_name | Yes | Campaign name, e.g. "PCAI cold traffic — Compliance Crusader v1" | |
| conversion_event | No | Website event to optimize: OUTCOME_LEADS supports LEAD (default) or COMPLETE_REGISTRATION (completed signup); OUTCOME_SALES supports PURCHASE (default). Omit for other objectives. Use COMPLETE_REGISTRATION when browser/CAPI sends CompleteRegistration. | |
| image_artifact_id | No | Optional agent_artifacts image id for the creative |