create_ad_set | Create an ad set in a Meta campaign (created PAUSED by default); daily_budget in the account currency (omit if the campaign uses CBO); bid_amount in the account currency, required when the campaign bids with LOWEST_COST_WITH_BID_CAP or TARGET_COST; bid_strategy e.g. LOWEST_COST_… | name (string, required), account_id (string, required), campaign_id (string, required), status (string), age_max (integer), age_min (integer), page_id (string), countries (array), bid_amount (number), bid_strategy (string), daily_budget (number), billing_event (string), destination_type (string), optimization_goal (string), advantage_audience (boolean) |
create_campaign | Create a campaign in a Meta ad account (created PAUSED by default). objective: OUTCOME_TRAFFIC, OUTCOME_LEADS, OUTCOME_SALES, OUTCOME_ENGAGEMENT, OUTCOME_AWARENESS or OUTCOME_APP_PROMOTION; daily_budget in the account currency (only for Campaign Budget Optimization — omit to set… | name (string, required), account_id (string, required), status (string), objective (string), daily_budget (number), special_ad_categories (array) |
create_image_ad | Create a single-image ad in a Meta ad set, PAUSED by default. image_hash comes from upload_image. Pass link to send people to a URL, or lead_gen_form_id to open a native lead form in place — not both. | name (string, required), message (string, required), page_id (string, required), ad_set_id (string, required), account_id (string, required), image_hash (string, required), link (string), status (string), headline (string), description (string), call_to_action (string), lead_gen_form_id (string) |
create_link_ad | Create a link ad (creative + ad) in a Meta ad set, created PAUSED by default: page post style ad pointing to a URL, with primary text (message), headline and call to action (e.g. LEARN_MORE, SHOP_NOW, SIGN_UP, CONTACT_US). Pass lead_gen_form_id to make the button open a native l… | link (string, required), name (string, required), message (string, required), page_id (string, required), ad_set_id (string, required), account_id (string, required), status (string), headline (string), description (string), call_to_action (string), lead_gen_form_id (string) |
create_video_ad | Create a video ad in a Meta ad set, PAUSED by default. video_id comes from upload_video. Pass link for an ad that sends people to a URL, or lead_gen_form_id for one that opens a native lead form in place — not both. thumbnail_url is the still frame shown before the video… | name (string, required), message (string, required), page_id (string, required), video_id (string, required), ad_set_id (string, required), account_id (string, required), thumbnail_url (string, required), link (string), status (string), headline (string), call_to_action (string), lead_gen_form_id (string) |
delete_ads_object | Permanently delete a Meta ads object by id: campaign, ad set or ad. Deleting a campaign also deletes its ad sets and ads. This cannot be undone — to just stop delivery, use update_campaign/update_ad_set/update_ad_status with status PAUSED. | object_id (string, required) |
update_ad_set | Update a Meta ad set: status (ACTIVE/PAUSED), name, daily budget and/or bid amount in the account currency. | ad_set_id (string, required), name (string), status (string), bid_amount (number), daily_budget (number) |
update_ad_status | Change a Meta ad’s status: ACTIVE to activate or PAUSED to pause it. | ad_id (string, required), status (string, required) |
update_campaign | Update a Meta campaign: status (ACTIVE to activate, PAUSED to pause), name and/or daily budget in the account currency (CBO campaigns only). | campaign_id (string, required), name (string), status (string), daily_budget (number) |
upload_image | Upload an image to a Meta ad account’s media library from a public URL, returning the image_hash that create_image_ad needs. Unlike video, Meta does not fetch image URLs — the bytes are downloaded here and forwarded. | image_url (string, required), account_id (string, required), filename (string) |
upload_video | Upload a video to a Meta ad account’s media library from a public URL, returning the video_id that create_video_ad needs. Meta fetches the URL itself, so the file has to be reachable without authentication. Transcoding continues after this returns — a video used immediately may… | name (string, required), video_url (string, required), account_id (string, required) |