ChatGPT Ads tools
ChatGPT ad accounts connected with the OpenAI Ads API: campaign list, performance report, budget and status changes.
Tool names and descriptions are generated straight from the server code; the descriptions are the original English text the assistant sees.
Read tools10 tools
list_openai_ads_accounts
קריאה1 creditsConnected ChatGPT Ads (OpenAI Ads) accounts: ad_account_id, name, currency, time zone, account and review status. Each account is connected in the panel with its own Ads API key. Read only; connected=false when none.
This tool takes no parameters.
list_openai_ads_campaigns
קריאה1 creditsChatGPT Ads campaigns from the OpenAI Ads API: id (cmpn_…), name, status, daily or lifetime budget (account currency), bidding type, schedule. Read only; returns connected=false when no account is linked.
| Parameter | Type | Description |
|---|---|---|
ad_account_idOptional | string | adacct_… — required only when several ChatGPT Ads accounts are connected |
statusOptional | active | paused | archived | — |
nameOptional | string | filter by campaign name (min 3 chars) |
openai_ads_performance_report
קריאה2 creditsChatGPT Ads delivery report (OpenAI Ads insights): impressions, clicks, spend, CTR, CPC, CPM per account, campaign, ad group or ad for a date range in the account time zone, optionally per day. Read only; never invents numbers.
| Parameter | Type | Description |
|---|---|---|
ad_account_idOptional | string | adacct_… — required only when several ChatGPT Ads accounts are connected |
levelOptional | ad_account | campaign | ad_group | ad | — |
daysOptional | integer (1–365) | — |
start_dateOptional | string | YYYY-MM-DD |
end_dateOptional | string | YYYY-MM-DD |
dailyOptional | boolean | — |
campaign_idsOptional | array<string> | — |
chatgpt_ads_details
קריאה1 creditsFull details of one ChatGPT Ads campaign (with its ad groups), ad group (bidding, context hints, ads) or ad (creative, review), including the serving issues OpenAI reports. Read only.
| Parameter | Type | Description |
|---|---|---|
ad_account_idOptional | string | adacct_… — required only when several ChatGPT Ads accounts are connected |
idRequired | string | cmpn_…, adgrp_… or ad_… |
hints_limitOptional | integer (1–2000) | — |
hints_offsetOptional | integer (0–…) | — |
chatgpt_ads_geo_lookup
קריאה1 creditsFind ChatGPT Ads location ids (countries, regions, markets, postal codes) by name for campaign location targeting. Read only.
| Parameter | Type | Description |
|---|---|---|
ad_account_idOptional | string | adacct_… — required only when several ChatGPT Ads accounts are connected |
queryRequired | string | — |
limitOptional | integer (1–100) | — |
chatgpt_ads_insights
קריאה2 creditsChatGPT Ads delivery report with OpenAI's options: hourly/daily/monthly buckets, country/device/platform/product breakdowns, zero-impression rows and conversion metrics, scoped to the account or one campaign, ad group or ad. Read only.
| Parameter | Type | Description |
|---|---|---|
ad_account_idOptional | string | adacct_… — required only when several ChatGPT Ads accounts are connected |
scope_idOptional | string | optional cmpn_/adgrp_/ad_ id to scope the report |
levelOptional | ad_account | campaign | ad_group | ad | — |
daysOptional | integer (1–365) | — |
start_dateOptional | string | YYYY-MM-DD |
end_dateOptional | string | YYYY-MM-DD |
granularityOptional | none | hourly | daily | monthly | — |
segmentOptional | none | country | device | platform | product | — |
include_zeroOptional | boolean | add zero-impression rows (no segment) |
conversionsOptional | boolean | add conversions, CPA, CVR, attributed sales and ROAS |
limitOptional | integer (1–2000) | — |
offsetOptional | integer (0–…) | — |
chatgpt_ads_spend_limits
קריאה1 creditsChatGPT Ads account spending limits: date-range windows and recurring daily limits with spend so far and what can be edited. Read only.
| Parameter | Type | Description |
|---|---|---|
ad_account_idOptional | string | adacct_… — required only when several ChatGPT Ads accounts are connected |
chatgpt_ads_conversion_setup
קריאה1 creditsChatGPT Ads conversion tracking: pixels (sources), conversion event settings and the campaigns using them, plus events received in roughly the last 15 minutes. Read only.
| Parameter | Type | Description |
|---|---|---|
ad_account_idOptional | string | adacct_… — required only when several ChatGPT Ads accounts are connected |
check_recent_eventsOptional | boolean | — |
chatgpt_ads_ad_preview
קריאה1 creditsRender how an existing ChatGPT Ads ad looks (temporary 24-hour preview) together with its review status and the delivery blockers OpenAI reports. Read only.
| Parameter | Type | Description |
|---|---|---|
ad_account_idOptional | string | adacct_… — required only when several ChatGPT Ads accounts are connected |
ad_idRequired | string | — |
diagnose_chatgpt_ads_delivery
קריאה2 creditsExplain why ChatGPT Ads aren't getting impressions: checks account status and reviews, spend limits, and every campaign, ad group and ad for OpenAI serving issues (optionally landing-page crawls), returning ranked findings with evidence, the fix and the tool that applies it. Read only.
| Parameter | Type | Description |
|---|---|---|
ad_account_idOptional | string | adacct_… — required only when several ChatGPT Ads accounts are connected |
campaign_idOptional | string | — |
check_landing_pagesOptional | boolean | — |
Write tools13 tools
update_openai_ads_campaign_status
כתיבה2 creditsPause or activate a ChatGPT Ads campaign. Applied on OpenAI directly when the user asks (the result shows the preview), and undoable. Activation starts delivery only when OpenAI's other requirements (reviews, budget) are met.
| Parameter | Type | Description |
|---|---|---|
ad_account_idOptional | string | adacct_… — required only when several ChatGPT Ads accounts are connected |
campaign_idRequired | string | cmpn_… |
statusRequired | pause | activate | — |
Write tool: the call first produces a preview; the change reaches the platform only after you approve it.
update_openai_ads_campaign_budget
כתיבה2 creditsSet a ChatGPT Ads campaign's daily budget. Applied directly when the user asks; increases above 50% per change or 2× within 24 hours are blocked; undo restores the previous budget. Lifetime-budget campaigns are not changed.
| Parameter | Type | Description |
|---|---|---|
ad_account_idOptional | string | adacct_… — required only when several ChatGPT Ads accounts are connected |
campaign_idRequired | string | cmpn_… |
daily_budgetRequired | number | new daily budget in the account currency (not micros) |
Write tool: the call first produces a preview; the change reaches the platform only after you approve it.
connect_chatgpt_ads
כתיבה0 creditsConnect a ChatGPT Ads (OpenAI Ads) ad account: without a key it explains the panel route; with api_key and confirm=true the key is verified against OpenAI and stored encrypted (owner/admin only). The key is never echoed.
| Parameter | Type | Description |
|---|---|---|
api_keyOptional | string | OpenAI Ads API key of one ad account |
confirmOptional | boolean | — |
Write tool: the call first produces a preview; the change reaches the platform only after you approve it.
manage_chatgpt_ads_accounts
כתיבה0 creditsList the connected ChatGPT Ads accounts, re-check one against OpenAI (status, review, currency), disconnect it or make it the default used when ad_account_id is omitted. Disconnect and default need confirm=true.
| Parameter | Type | Description |
|---|---|---|
actionOptional | list | recheck | disconnect | set_default | — |
ad_account_idOptional | string | adacct_… — required only when several ChatGPT Ads accounts are connected |
confirmOptional | boolean | — |
Write tool: the call first produces a preview; the change reaches the platform only after you approve it.
create_chatgpt_ads_campaign
כתיבה8 creditsCreate a ChatGPT Ads campaign (always paused) with a daily or lifetime budget in account currency, objective, locations, platforms, audiences, schedule and conversion goal. Applied directly when the user asks.
| Parameter | Type | Description |
|---|---|---|
ad_account_idOptional | string | adacct_… — required only when several ChatGPT Ads accounts are connected |
nameRequired | string | — |
daily_budgetOptional | number | — |
lifetime_budgetOptional | number | — |
objectiveOptional | impressions | clicks | conversions | — |
descriptionOptional | string | — |
include_locationsOptional | array<string> | location ids from chatgpt_ads_geo_lookup |
exclude_locationsOptional | array<string> | location ids from chatgpt_ads_geo_lookup |
platformsOptional | array<ios_app | android_app | web | desktop_web | ios_web | android_web> | — |
custom_audience_idsOptional | array<string> | — |
excluded_custom_audience_idsOptional | array<string> | — |
startOptional | string | ISO 8601 date-time (UTC if no offset) |
endOptional | string | ISO 8601 date-time (UTC if no offset) |
conversion_event_setting_idsOptional | array<string> | — |
Write tool: the call first produces a preview; the change reaches the platform only after you approve it.
update_chatgpt_ads_campaign
כתיבה5 creditsChange a ChatGPT Ads campaign: name, budget, locations (replace / add / remove), platforms, schedule, conversion events or status. Budget increases above 50% are blocked. Applied directly when the user asks.
| Parameter | Type | Description |
|---|---|---|
ad_account_idOptional | string | adacct_… — required only when several ChatGPT Ads accounts are connected |
campaign_idRequired | string | — |
nameOptional | string | — |
daily_budgetOptional | number | — |
lifetime_budgetOptional | number | — |
statusOptional | active | paused | — |
include_locationsOptional | array<string> | location ids from chatgpt_ads_geo_lookup |
exclude_locationsOptional | array<string> | location ids from chatgpt_ads_geo_lookup |
locations_modeOptional | replace | add | remove | — |
platformsOptional | array<ios_app | android_app | web | desktop_web | ios_web | android_web> | — |
startOptional | string | ISO 8601 date-time (UTC if no offset) |
endOptional | string | ISO 8601 date-time (UTC if no offset) |
conversion_event_setting_idsOptional | array<string> | — |
Write tool: the call first produces a preview; the change reaches the platform only after you approve it.
create_chatgpt_ads_ad_group
כתיבה5 creditsCreate a paused ad group under a ChatGPT Ads campaign with its bid strategy, maximum bid and context hints (when the ad would be useful). Unusually high bids need allow_high_bid. Applied directly when the user asks.
| Parameter | Type | Description |
|---|---|---|
ad_account_idOptional | string | adacct_… — required only when several ChatGPT Ads accounts are connected |
campaign_idRequired | string | — |
nameRequired | string | — |
max_bidOptional | number | account currency: CPM for impression billing, CPC for clicks, CPA for conversion campaigns |
billing_eventOptional | impression | click | — |
strategyOptional | fixed_bid | maximize_clicks | maximize_conversions | — |
allow_high_bidOptional | boolean | — |
context_hintsOptional | array<string> | — |
descriptionOptional | string | — |
Write tool: the call first produces a preview; the change reaches the platform only after you approve it.
update_chatgpt_ads_ad_group
כתיבה5 creditsChange a ChatGPT Ads ad group's name, maximum bid, bid strategy or context hints (replace / add / remove). Bid jumps above 50% need allow_high_bid. Applied directly when the user asks.
| Parameter | Type | Description |
|---|---|---|
ad_account_idOptional | string | adacct_… — required only when several ChatGPT Ads accounts are connected |
ad_group_idRequired | string | — |
nameOptional | string | — |
max_bidOptional | number | — |
strategyOptional | fixed_bid | maximize_clicks | maximize_conversions | — |
allow_high_bidOptional | boolean | — |
context_hintsOptional | array<string> | — |
hints_modeOptional | replace | add | remove | — |
Write tool: the call first produces a preview; the change reaches the platform only after you approve it.
create_chatgpt_ads_ad
כתיבה8 creditsCreate a paused ChatGPT Ads chat-card ad (title, body, destination, image) in an ad group; OpenAI reviews it. Applied directly when the user asks.
| Parameter | Type | Description |
|---|---|---|
ad_account_idOptional | string | adacct_… — required only when several ChatGPT Ads accounts are connected |
ad_group_idRequired | string | — |
nameRequired | string | — |
titleRequired | string | 3-50 chars |
bodyRequired | string | max 100 chars |
target_urlRequired | string | — |
image_urlOptional | string | public https image; OpenAI fetches it |
file_idOptional | string | — |
Write tool: the call first produces a preview; the change reaches the platform only after you approve it.
update_chatgpt_ads_ad
כתיבה5 creditsChange the copy, destination or image of a ChatGPT Ads ad (the rest of the creative is kept); a changed creative is reviewed again. Applied directly when the user asks.
| Parameter | Type | Description |
|---|---|---|
ad_account_idOptional | string | adacct_… — required only when several ChatGPT Ads accounts are connected |
ad_idRequired | string | — |
nameOptional | string | — |
titleOptional | string | — |
bodyOptional | string | — |
target_urlOptional | string | — |
image_urlOptional | string | — |
Write tool: the call first produces a preview; the change reaches the platform only after you approve it.
chatgpt_ads_status
כתיבהIrreversible5 creditsPause, activate or archive a ChatGPT Ads campaign, ad group or ad. Archiving is irreversible and is applied only when the user explicitly asked for it. Applied directly when the user asks.
| Parameter | Type | Description |
|---|---|---|
ad_account_idOptional | string | adacct_… — required only when several ChatGPT Ads accounts are connected |
kindOptional | campaign | ad_group | ad | — |
idRequired | string | — |
actionRequired | pause | activate | archive | — |
Write tool: the call first produces a preview; the change reaches the platform only after you approve it.
create_chatgpt_ads_event_setting
כתיבה5 creditsCreate a ChatGPT Ads conversion event setting (which tracked event counts as a conversion) on one pixel source, usable as a campaign goal. Applied directly when the user asks.
| Parameter | Type | Description |
|---|---|---|
ad_account_idOptional | string | adacct_… — required only when several ChatGPT Ads accounts are connected |
nameRequired | string | — |
event_typeRequired | page_viewed | contents_viewed | items_added | checkout_started | order_created | lead_created | registration_completed | subscription_created | trial_started | appointment_scheduled | plan_enrollment | app_installed | app_opened | custom | — |
source_idRequired | string | pixel source id (clidsrc_…) |
custom_event_nameOptional | string | — |
Write tool: the call first produces a preview; the change reaches the platform only after you approve it.
manage_chatgpt_ads_spend_limit
כתיבהIrreversible5 creditsCreate, change or remove a ChatGPT Ads account spending limit (date-range window or recurring daily limit). Increases above 50% are blocked; removals only when the user explicitly asked. Applied directly when the user asks.
| Parameter | Type | Description |
|---|---|---|
ad_account_idOptional | string | adacct_… — required only when several ChatGPT Ads accounts are connected |
actionRequired | create | update | delete | set_daily | delete_daily | — |
window_idOptional | string | — |
start_dateOptional | string | YYYY-MM-DD, inclusive |
end_dateOptional | string | YYYY-MM-DD, exclusive |
amountOptional | number | account currency |
nameOptional | string | — |
io_idOptional | string | — |
no_end_dateOptional | boolean | daily limit without end |
Write tool: the call first produces a preview; the change reaches the platform only after you approve it.