Connect your ChatGPT Ads account
What you need to connect your own OpenAI ad account to NIA, the six setup steps, the pixel snippet, sending conversions from your own systems, and what NIA never does without approval.
Browse documentation
Connect your own OpenAI ad account, then follow the checklist
NIA can run paid ads in ChatGPT for your workspace. You connect your own OpenAI ad account, so the spend, the brand and the results are yours. A workspace admin does this on the ChatGPT Ads page, under Advertising, Connect & manage.
What you need
- An OpenAI ad account with API access.
- An Ads API key for that ad account, created in Ads Manager settings.
- A public https link to a logo (at least 128 x 128 pixels) for OpenAI to review.
- Access to your website's code or tag manager, to add the pixel.
Paste the key on the ChatGPT Ads page. Never paste it in chat.
The six steps
The page shows a checklist. NIA reads the same list and tells you the next step that is not done. The steps, in order:
- Ads API key connected. The key reads your ad account. A key over 90 days old shows a warning: make a new one and paste it again.
- Brand approved by OpenAI. Give the brand card a public https link to your logo, at least 128 x 128 pixels. OpenAI reviews it. If it is rejected the step is blocked: read the review note, fix the image and send a new link.
- Spend ceiling set. A daily or lifetime limit. No plan can be approved without one, and no plan can spend above it.
- Approver named. At least one admin who can approve a launch.
- Conversion events set up. Choose the events to track, such as sign-ups or orders. Setup creates the pixel and the event settings at OpenAI and makes a Conversions API key for your workspace.
- Pixel events received. Add the pixel to your site, then press Check events. The step is done when OpenAI has received events.
The pixel snippet and your security policy
After conversions setup, the page shows a pixel snippet to copy. Paste it into the head of every page on your site, or add it in your tag manager.
If your site sends a Content-Security-Policy header, the page also lists the lines to add to it. Copy them as shown. Without them the browser blocks the pixel and OpenAI sees no events.
Send conversions from your own systems
A shop checkout, a kiosk or a back office can send events straight to
NIA, which passes them to OpenAI. Create an API key with the
conversions:write scope, then call the API. Emails, phone numbers and external ids
are hashed before they leave Nagent, and raw values are not stored.
curl -X POST https://nagent.ai/api/v1/conversions \
-H "Authorization: Bearer $NAGENT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"events": [{
"id": "order-1001",
"type": "order_created",
"actionSource": "web",
"sourceUrl": "https://retail-1.example/checkout/done",
"email": "buyer@retail-1.example",
"amount": 249900,
"currency": "INR"
}]
}'
The first errors a client meets are no-conversions-setup (409, run
conversions setup first), invalid-events (400), connection-required
(400, pass connectionId) and conversions-key-refused (502, run setup
again).
amount is in minor units, so 249900 is 2,499.00 INR. Each event needs
a unique id, so a retry never counts twice. Add "validateOnly": true
to test a batch without recording it.
You can also switch on Send this workspace's inbound leads and won deals to OpenAI. A forwarder then sends them every hour.
What OpenAI must switch on
Some features are enabled by OpenAI per ad account: the pixel, the Conversions API key, and conversion bidding. If setup says a feature is not available, ask your OpenAI ads contact to enable it for your ad account, then run setup again. NIA cannot switch these on for you.
What NIA never does without approval
- She never creates or starts a campaign without a card that a named approver approves.
- She never spends above the ceiling.
- She never changes the goal or the conversion event of a live campaign.
- She never asks for your key in chat.
See NIA for how plans, approvals and self-optimising work.