POST endpoint with a JSON body matching the MCP tool schema.
OpenAPI schema: GET https://backend.postsiva.com/openapi/chatgpt-actions.json
Requirements
- Pro plan with
gpt_app_enabled - Connected social accounts in the target workspace
- Either ChatGPT OAuth (Connect to Postsiva) or a workspace API key
GPT Actions omit
web_search_duckduckgo and clear_workspace_chat_history. Everything else matches the MCP tool catalog.Authentication
Two supported methods:
OAuth flow:
- User clicks Connect to Postsiva in ChatGPT
- Signs in at
https://backend.postsiva.com/auth/oauth/login - Selects a workspace
- ChatGPT receives a Bearer JWT scoped to that workspace
GET /.well-known/oauth-protected-resource
Call a tool
POST /unified/gpt-actions/{tool_name}
Replace {tool_name} with the exact MCP tool name (snake_case).
Base URL
Example — list accounts
Example — idea to content
Example — publish
Available tools
Tool bodies match MCP arguments exactly. Import the OpenAPI schema for full JSON Schema per operation.
OpenAPI schema
GET /openapi/chatgpt-actions.json
Public, no auth required. Import this URL when creating a Custom GPT:
- OpenAPI 3.1.0
- One
POSTpath per tool under/unified/gpt-actions/{operationId} - Request body schemas from Pydantic tool inputs
BearerAuthsecurity scheme (OAuth JWT orpsk_live_key)x-openai-action-timeout: 120(seconds)
Disconnect ChatGPT connector
POST /unified/gpt-actions/disconnect_gpt_connector
Revokes the ChatGPT OAuth Bearer token so the next Action call returns 401 until the user reconnects.
- Does not unlink social platforms (use
manage_platform_connectionwithaction=disconnectfor that) - No-op success when authenticated with an API key (nothing to revoke)
{} (empty JSON object)
REST vs MCP vs GPT Actions
Errors
Setup guide
See ChatGPT Custom GPT setup for step-by-step Custom GPT configuration, OAuth URLs, and privacy instructions.Next
ChatGPT setup
Custom GPT walkthrough
MCP tools
Full tool reference
Plans
Pro plan requirements