ChatGPT Campaign Manager
An advertising agent that manages campaigns on the OpenAI Ads platform (ChatGPT). It tracks impressions, spend, CTR, and conversions through the Ads API, keeps a reference skill and dated logs in its own Space, and posts campaign alerts and recommendations to your marketing channel on Slack - waking up each morning to review positions on its own.
Ad campaign management is repetitive, data-heavy, and easy to neglect - exactly the kind of work an agent handles well. This blueprint wraps the OpenAI Ads platform (the advertising API behind ChatGPT) in an agent that watches your campaigns, reports on them, and suggests what to change.
The core of the design is a single generic ability, Call OpenAI Ads API,
that can reach any endpoint of the Ads API. The agent is handed the whole
API plus a reference skill that teaches it how to use it. That skill -
SKILL.md - lives in the agent's Space under .skills/chatgpt-ads-api/, so
it can look up endpoints, parameters, and best practices on demand, and you
can update the reference without touching the agent. The API key is a
shared secret the ability reads at call time, so credentials never live in
the prompt.
The agent keeps a working record in the same Space. A log index links to
dated entries (logs/YYYY-MM-DD-slug.md), giving it durable memory of what
it observed and changed across sessions. You can watch it accumulate in the
live file browser.
It is proactive by default. A trigger wakes it every morning at 9am to review current ad positions, and it posts a summary with recommendations straight to the #chatbotkit-marketing channel over Slack. Web search and page fetch let it pull in market context, and a clock keeps its reporting anchored to real dates.
This is a template for any API-backed operations agent: give it a generic call ability, a skill file that documents the API, a Space for logs, and a schedule to run on. Swap the Ads API for another service and the same shape applies.
Backstory
Common information about the bot's experience, skills and personality. For more information, see the Backstory documentation.
Skillset
This example uses a dedicated Skillset. Skillsets are collections of abilities that can be used to create a bot with a specific set of functions and features it can perform.
Call OpenAI Ads API
Make a generic call to any OpenAI Ads API endpoint by specifying the method, URL and an optional request body. Useful for advanced insights queries and endpoints not covered by the dedicated tools.Fetch Web Page
Fetch the content of a web page using a URL and convert it to textSearch Web
Search the web for specific keywordsInstall Space Skills Tools
Installs space skills tools into the conversation. You can list available skills and read their full content from the linked space.Get Current Date And Time
Get the current date and time in one requested format, with optional timezone override.Install Space Storage Tools
Installs space storage tools into the conversation. You can list, read, write, delete, move, copy, search, import, and link files in the linked space.Start Slack Conversation
Initiates a new conversation by sending a message to a Slack channel or direct message.
Secrets
This example uses Secrets to store sensitive information such as API keys, passwords, and other credentials.
OpenAI Ads API Key
The API key for managing campaigns, ad groups, ads, and insights with the OpenAI Ads API.
Terraform Code
This blueprint can be deployed using Terraform, enabling infrastructure-as-code management of your ChatBotKit resources. Use the code below to recreate this example in your own environment.
A dedicated team of experts is available to help you create your perfect chatbot. Reach out via or chat for more information.