We’re planning to retire custom GPTs and help creators move their workflows to plugins. Plugins bring reusable instructions, reference files, and connected apps together.
For affected Enterprise workspaces, new GPT creation ended on October 26, 2026. FedRAMP workspaces are excluded from this creation cutoff and can still create GPTs. Existing unmigrated GPTs remain usable and editable until their applicable retirement date. After migration, the original GPT becomes read-only. Standard retirement is scheduled for December 11, 2026. FedRAMP workspaces and workspaces with a qualifying, approved deferral have a retirement date of February 11, 2027.
The transition includes all ChatGPT plans, but creation restrictions and migration access depend on the account or workspace. Follow the notice for yours. For dates, migration steps, and what to expect on other plans, see: Custom GPT retirement and migration FAQ.
Overview
This article explains how to configure actions in a GPT, including how to connect to external APIs, define what the GPT can do, and manage authentication, schemas, and workspace restrictions.
To configure an action, you’ll need the API details for the service you want to connect, including authentication information and an OpenAPI schema. A GPT can use either apps or actions, but not both at the same time.
Each action is defined by two main components: how the GPT authenticates with the API, and a schema that defines what the API can do.
Limitations
If your workspace allows zero action domains, GPT custom actions cannot execute because no action domain can pass allowlist checks. This does not necessarily mean all GPT visibility or access is blocked.
Actions are not available for Pro mode. When you create or edit a GPT with custom actions, the model selector shows only non-Pro models that support actions.
Migration to plugins
Custom actions do not transfer automatically when a GPT is migrated to a plugin. Set up and test a replacement integration before relying on the plugin. The instructions below continue to apply to existing unmigrated GPTs that you have permission to edit. For migration guidance, see: Custom GPT retirement and migration FAQ.
Create an action
In the GPT editor, navigate to the Actions section and select Create new action.
You’ll then configure how your GPT connects to and uses an external API.
After configuring an action, test it in Preview to confirm it behaves as expected.
Authentication
Authentication controls how your GPT connects to an external API.
Available options:
None: No authentication required
API key: Uses a secret key to authorize requests
OAuth: Uses user sign-in for account-based access
API key
Use API key authentication for server-to-server access. It can be configured as:
Basic
Bearer
Custom header
OAuth
Use OAuth when actions require user accounts. OAuth requires:
Client ID and Client Secret
Authorization URL and Token URL
Scope and token exchange method
The editor provides a callback URL for completing the OAuth flow.
Schema
The schema defines what your API can do. It tells ChatGPT:
Which server to call
What endpoints are available
What parameters they accept
How each action is identified (operation IDs)
The schema must be provided as an OpenAPI specification in JSON or YAML.
Add a schema
You can add a schema in three ways:
Paste it directly into the editor
Import it from a URL
Start from a built-in example:
Weather (JSON)
Pet Store (YAML)
Blank template
If the schema is valid, the editor shows detected actions. If it is invalid, validation errors are displayed.
Workspace restrictions (Enterprise and Edu)
If you see the message:
“No domains are allowed by your workspace’s settings.”
This means actions are restricted by your workspace settings.
Admins can allow all domains or restrict actions to approved domains.
If no domains are allowed, you cannot use actions.
For workspace-level controls on actions and domain restrictions, see: Managing GPT access in Enterprise and Edu workspaces.
Privacy and user controls
Each action can include a Privacy Policy URL.
Public GPTs (link or GPT Store) with actions must include a valid privacy policy URL.
Users may be asked to approve actions before they run.
For OAuth actions, users can review and manage connected accounts.
Additional help
For help writing or debugging actions, use the official ActionsGPT.
