All integrations

CustomGPT.ai

AI · AI

Agents, sources, conversations and chat completions under their own key.

Acts as the person, not as itself

Each user connects their own account. Every call carries both identities — the agent and the person it is acting for — so the agent can never reach past what that individual can already do.

Credentials never touch the agent

Tokens live in the vault and attach server-side at call time. The agent holds a session, not a secret, and revoking access does not mean rotating a key.

Every call on the record

Who asked, which agent acted, which action ran, and the verdict that let it through — one audit trail across every integration, not one per vendor.

What an agent can do

Each action is granted on its own. An agent allowed to read is not thereby allowed to write, and the scope beside each row is what the acting user must have connected for it to run at all.

customgpt_delete_api_v1_projects_by_projectidWRITE

Permanently deletes an agent and all associated data, including its knowledge base, conversations, settings, and analytics. This action cannot be undone. Warning: This operation is irreversible. All conversations, sources, and settings will be permanently deleted. via DELETE /api/v1/projects/{projectId}

api
customgpt_delete_api_v1_projects_by_projectid_actions_custom_by_actionkeyWRITE

Delete a custom action via DELETE /api/v1/projects/{projectId}/actions/custom/{actionKey}

api
customgpt_delete_api_v1_projects_by_projectid_childrenWRITE

Removes multiple child agents from this Multi-Agent in a single request. Returns 422 if the operation would leave no children, or if any specified agent is not currently assigned. via DELETE /api/v1/projects/{projectId}/children

api
customgpt_delete_api_v1_projects_by_projectid_children_by_childprojectidWRITE

Removes a single child agent from this Multi-Agent. Returns 422 if this is the last remaining child, or 404 if the agent is not currently assigned. via DELETE /api/v1/projects/{projectId}/children/{childProjectId}

api
customgpt_delete_api_v1_projects_by_projectid_contextual_rag_pagesWRITE

Deletes webpage context entries for an agent. Pass `page_ids` to delete specific pages, or omit the body to delete all pages for the agent. Requires the **Webpage Awareness** tool to be enabled on the agent. via DELETE /api/v1/projects/{projectId}/contextual-rag/pages

api
customgpt_delete_api_v1_projects_by_projectid_conversations_by_sessionidWRITE

Permanently deletes a conversation and all its messages. Use this to remove sensitive conversations or clean up test data. Warning: This action cannot be undone. All messages in the conversation will be permanently deleted. via DELETE /api/v1/projects/{projectId}/conversations/{sessionId}

api
customgpt_delete_api_v1_projects_by_projectid_labels_by_labelidWRITE

Permanently deletes a label and removes all associated assignments (both user-to-label and document-to-label mappings). Documents that lose their only label will become accessible to everyone. via DELETE /api/v1/projects/{projectId}/labels/{labelId}

api
customgpt_delete_api_v1_projects_by_projectid_labels_usersWRITE

Removes specific users from one or more labels without affecting other users' assignments. Use this when offboarding users or revoking access to specific content. via DELETE /api/v1/projects/{projectId}/labels/users

api
customgpt_delete_api_v1_projects_by_projectid_licenses_by_licenseidWRITE

Revokes and permanently removes an access license. Any users or systems using this license will immediately lose access to the agent. Warning: This immediately revokes access for anyone using this license. via DELETE /api/v1/projects/{projectId}/licenses/{licenseId}

api
customgpt_delete_api_v1_projects_by_projectid_pages_by_pageidWRITE

Permanently removes a document from an agent's knowledge base. The agent will no longer reference this content when answering questions. Use this to remove outdated or incorrect information. Warning: This action cannot be undone. The document must be re-uploaded or re-indexed to restore it. via DELETE /api/v1/projects/{projectId}/pages/{pageId}

api
customgpt_delete_api_v1_projects_by_projectid_settings_persona_by_version_sub_personas_by_slugWRITE

Deletes the project-level override for one sub-persona slug. Generated persona-version rows are not modified. via DELETE /api/v1/projects/{projectId}/settings/persona/{version}/sub-personas/{slug}

api
customgpt_delete_api_v1_projects_by_projectid_sources_by_sourceidWRITE

Removes a data source and all its documents from an agent's knowledge base. Use this to disconnect content that's no longer relevant or to clean up after testing. Notes: To delete individual documents without removing the entire source, use the Delete Document endpoint instead. Warning: This deletes ALL documents from this source. The action cannot be undone. via DELETE /api/v1/projects/{projectId}/sources/{sourceId}

api
customgpt_delete_api_v1_projects_by_projectid_tasks_by_taskidWRITE

Permanently deletes a task and all its messages. Use this to remove sensitive tasks or clean up test data. Warning: This action cannot be undone. All messages in the task will be permanently deleted from the user-facing API. via DELETE /api/v1/projects/{projectId}/tasks/{taskId}

api
customgpt_delete_api_v1_projects_by_projectid_tasks_by_taskid_messages_by_prompthistoryid_files_by_fileidWRITE

Deletes an agent-generated artifact from a task message. via DELETE /api/v1/projects/{projectId}/tasks/{taskId}/messages/{promptHistoryId}/files/{fileId}

api
customgpt_delete_api_v1_teams_invitations_by_invitationidWRITE

Cancels a pending team invitation. The invited person will no longer be able to join via this invitation link. via DELETE /api/v1/teams/invitations/{invitationId}

api
customgpt_delete_api_v1_teams_members_by_useridWRITE

Removes a member from the team. Only the team owner or a member with the appropriate permission can perform this action. via DELETE /api/v1/teams/members/{userId}

api
customgpt_delete_api_v1_teams_roles_by_roleidWRITE

Deletes a custom role belonging to this team. Reserved system roles cannot be deleted, and a role cannot be deleted while it still has members assigned, has pending invitations, or is set as an organization's default SSO role. via DELETE /api/v1/teams/roles/{roleId}

api
customgpt_get_api_v1_billing_invoicesREAD

Returns paginated invoices for your account. Invoice records are stored locally and do not require a Stripe API call. Use the `page` and `limit` query parameters to paginate. via GET /api/v1/billing/invoices

api
customgpt_get_api_v1_billing_invoices_by_invoiceid_downloadREAD

Returns the Stripe-hosted PDF for the specified invoice. The invoice ID must belong to your account. via GET /api/v1/billing/invoices/{invoiceId}/download

api
customgpt_get_api_v1_billing_payment_methodsREAD

Returns all payment methods attached to your account, including type, display name, card details, and which is the default. via GET /api/v1/billing/payment-methods

api
customgpt_get_api_v1_billing_planREAD

Returns the active subscription plan for your account, including billing cycle dates, trial status, plan options, and active addons. Returns null data when no active subscription exists. via GET /api/v1/billing/plan

api
customgpt_get_api_v1_limits_usageREAD

Returns your current usage and plan limits for agents, storage (words), and monthly queries. Use this to monitor consumption, plan for scaling, or display usage dashboards to your users. via GET /api/v1/limits/usage

api
customgpt_get_api_v1_preview_by_idREAD

Returns a preview of the source document referenced by a citation. Use this to show users the original content that the agent used to generate a response. via GET /api/v1/preview/{id}

api
customgpt_get_api_v1_projectsREAD

Returns all agents in your account, sorted by creation date with the most recent first. Use this endpoint to get an overview of your agents or to retrieve agent IDs for other API calls. Results are paginated with a default page size of 10. Notes: Use the page query parameter to fetch additional results. via GET /api/v1/projects

api
customgpt_get_api_v1_projects_by_projectidREAD

Returns the full configuration and current status for a specific agent. Use this to check processing status, view settings, or retrieve metadata about the agent. via GET /api/v1/projects/{projectId}

api
customgpt_get_api_v1_projects_by_projectid_actionsREAD

List agent actions via GET /api/v1/projects/{projectId}/actions

api
customgpt_get_api_v1_projects_by_projectid_childrenREAD

Returns all agents currently assigned to this Multi-Agent, including their name and generation flag. via GET /api/v1/projects/{projectId}/children

api
customgpt_get_api_v1_projects_by_projectid_citations_by_citationidREAD

Returns metadata for a specific citation, including the source document's title, description, URL, and preview information. Use this to display source attribution or allow users to verify the agent's sources. via GET /api/v1/projects/{projectId}/citations/{citationId}

api
customgpt_get_api_v1_projects_by_projectid_contextual_rag_pagesREAD

Returns all webpage context entries for an agent, with optional URL filtering and pagination. Requires the **Webpage Awareness** tool to be enabled on the agent. via GET /api/v1/projects/{projectId}/contextual-rag/pages

api
customgpt_get_api_v1_projects_by_projectid_conversationsREAD

Returns all conversations for an agent. Each conversation represents a chat session with a user and contains the full message history. Results are paginated and sorted by most recent activity. via GET /api/v1/projects/{projectId}/conversations

api
customgpt_get_api_v1_projects_by_projectid_conversations_by_sessionid_messagesREAD

Returns all messages in a conversation, including user prompts, agent responses, timestamps, and citations. Use this to display conversation history or analyze past interactions. via GET /api/v1/projects/{projectId}/conversations/{sessionId}/messages

api
customgpt_get_api_v1_projects_by_projectid_conversations_by_sessionid_messages_by_promptidREAD

Returns the complete details for a single message, including the user's prompt, the agent's response, timestamps, citations, and any attached metadata. Use this to retrieve specific messages for display or analysis. via GET /api/v1/projects/{projectId}/conversations/{sessionId}/messages/{promptId}

api
customgpt_get_api_v1_projects_by_projectid_conversations_by_sessionid_messages_by_promptid_claimsREAD

Returns the factual claims extracted from an agent's response. Each claim is a discrete statement that can be independently verified against the source documents. Use this for fact-checking or building trust indicators. via GET /api/v1/projects/{projectId}/conversations/{sessionId}/messages/{promptId}/claims

api
customgpt_get_api_v1_projects_by_projectid_conversations_by_sessionid_messages_by_promptid_trust_scoreREAD

Returns a verification trust score for a message, calculated by checking how well the agent's claims are supported by the source documents. Higher scores indicate better-grounded responses. via GET /api/v1/projects/{projectId}/conversations/{sessionId}/messages/{promptId}/trust-score

api
customgpt_get_api_v1_projects_by_projectid_deploymentREAD

Returns all deployment section configurations (embed, live_chat, ai_assistant, instant_viewer, sge) for an agent. Missing settings are returned with their default values. via GET /api/v1/projects/{projectId}/deployment

api
customgpt_get_api_v1_projects_by_projectid_labelsREAD

Returns all labels configured for an agent, along with the users assigned to each label. Use this to review your access control configuration or build a label management interface. Notes: Requires Custom plan. via GET /api/v1/projects/{projectId}/labels

api
customgpt_get_api_v1_projects_by_projectid_labels_by_labelidREAD

Retrieves a specific label, including its name and the list of users assigned to it. via GET /api/v1/projects/{projectId}/labels/{labelId}

api
customgpt_get_api_v1_projects_by_projectid_licensesREAD

Returns all access licenses configured for an agent. Licenses control who can interact with the agent and what permissions they have. Use this to manage access distribution. via GET /api/v1/projects/{projectId}/licenses

api
customgpt_get_api_v1_projects_by_projectid_licenses_by_licenseidREAD

Returns the full details for a specific license, including permissions, usage statistics, status, and expiration date. Use this to audit or troubleshoot access issues. via GET /api/v1/projects/{projectId}/licenses/{licenseId}

api
customgpt_get_api_v1_projects_by_projectid_pagesREAD

Returns all indexed documents in an agent's knowledge base. Each document represents a piece of content (webpage, PDF, uploaded file) that the agent can reference when answering questions. Results are paginated. You can use the optional `search` parameter to filter results by document URL or filename. Notes: In the API, documents are called "pages" for backward compatibility. via GET /api/v1/projects/{projectId}/pages

api
customgpt_get_api_v1_projects_by_projectid_pages_by_pageid_labelsREAD

Returns all labels assigned to a document. Labels control which users can access answers derived from this document - users only see answers from documents matching their assigned labels. Notes: Requires Custom plan. Documents without labels are accessible to all users. via GET /api/v1/projects/{projectId}/pages/{pageId}/labels

api
customgpt_get_api_v1_projects_by_projectid_pages_by_pageid_metadataREAD

Returns metadata for a document, including its title, source URL, word count, and any custom metadata fields. Use this to display document information or manage your knowledge base. via GET /api/v1/projects/{projectId}/pages/{pageId}/metadata

api
customgpt_get_api_v1_projects_by_projectid_reports_analysisREAD

Returns time-series data formatted for charts, with daily, weekly, or monthly breakdowns of key metrics. via GET /api/v1/projects/{projectId}/reports/analysis

api
customgpt_get_api_v1_projects_by_projectid_reports_conversationsREAD

Returns conversation metrics, including total conversations, average duration, messages per conversation, and completion rates. Use this to understand how users engage with your agent. via GET /api/v1/projects/{projectId}/reports/conversations

api
customgpt_get_api_v1_projects_by_projectid_reports_intelligenceREAD

Returns AI-analyzed insights about your users, including common intents, emotional sentiment, frequently discussed topics, and emerging trends. Use this to understand what users are asking about and how they're feeling. via GET /api/v1/projects/{projectId}/reports/intelligence

api
customgpt_get_api_v1_projects_by_projectid_reports_leadsREAD

Exports lead information captured from conversations, including email addresses, names, and any custom fields collected. Use this to sync leads with your CRM or marketing tools. via GET /api/v1/projects/{projectId}/reports/leads

api
customgpt_get_api_v1_projects_by_projectid_reports_leads_by_sessionid_collatedREAD

Returns one merged lead built from all lead rows in the conversation. via GET /api/v1/projects/{projectId}/reports/leads/{sessionId}/collated

api
customgpt_get_api_v1_projects_by_projectid_reports_queriesREAD

Returns aggregate query metrics, including total query volume, success rates, average response times, and failure reasons. Use this to monitor agent performance and identify issues. via GET /api/v1/projects/{projectId}/reports/queries

api
customgpt_get_api_v1_projects_by_projectid_reports_trafficREAD

Returns a breakdown of conversation volume by deployment channel (e.g. web widget, API, Slack, WhatsApp) over the requested time window. Use the `filters` query parameter to scope the report. via GET /api/v1/projects/{projectId}/reports/traffic

api
customgpt_get_api_v1_projects_by_projectid_settingsREAD

Returns the complete configuration for an agent, including persona instructions, response behavior, deployment options, and feature flags. Use this to review or back up an agent's configuration. via GET /api/v1/projects/{projectId}/settings

api
customgpt_get_api_v1_projects_by_projectid_settings_persona_by_versionREAD

Returns the full text and metadata for a specific persona version. Use this to compare versions or review what instructions were active at a particular time. via GET /api/v1/projects/{projectId}/settings/persona/{version}

api
customgpt_get_api_v1_projects_by_projectid_settings_persona_by_version_sub_personasREAD

Returns generated sub-personas for one persona version and project-level overrides separately. via GET /api/v1/projects/{projectId}/settings/persona/{version}/sub-personas

api
customgpt_get_api_v1_projects_by_projectid_settings_personasREAD

Returns the version history of an agent's persona. Every time the persona is updated, a snapshot is automatically saved, allowing you to view changes over time or restore a previous version. Results are paginated. via GET /api/v1/projects/{projectId}/settings/personas

api
customgpt_get_api_v1_projects_by_projectid_sourcesREAD

Returns all data sources connected to an agent. Each source represents an origin for documents - such as a sitemap, Google Drive folder, SharePoint site, or uploaded files. Use this to manage what content feeds into an agent's knowledge base. via GET /api/v1/projects/{projectId}/sources

api
customgpt_get_api_v1_projects_by_projectid_statsREAD

Returns usage metrics and performance statistics for an agent, including total conversations, query counts, document statistics, and processing information. Use this for monitoring and reporting. via GET /api/v1/projects/{projectId}/stats

api
customgpt_get_api_v1_projects_by_projectid_tasksREAD

Returns all Plan & Act mode tasks for an agent, paginated. Tasks are ordered by most recent activity. via GET /api/v1/projects/{projectId}/tasks

api
customgpt_get_api_v1_projects_by_projectid_tasks_by_taskidREAD

Returns the current processing state of a task. While the task is running, returns `status: processing` with any stream events flushed since the last poll. When the agent needs one of the functions supplied via `tools`, returns `status: awaiting_tool_results` with `result.tool_calls` (OpenAI format). Execute the functions and submit their results via `POST /tasks/{taskId}/tool-outputs`; the session then resumes. This status persists across polls (for up to 2 hours) until outputs are submitted. Once the session completes, returns `status: completed` with `result.message_id` pointing to the final message. The completed result is consumed on first read and is held for at most 2 hours after completion — subsequent polls return 404, so persist the result on first successful read. If you miss the result window or have already consumed it, fetch the persisted history via `GET /tasks/{taskId}/messages` instead. via GET /api/v1/projects/{projectId}/tasks/{taskId}

api
customgpt_get_api_v1_projects_by_projectid_tasks_by_taskid_messagesREAD

Returns all messages in a task, including user prompts, agent responses, timestamps, and citations. Use this to display task history or analyze past interactions. Results are paginated and ordered by most recent first. via GET /api/v1/projects/{projectId}/tasks/{taskId}/messages

api
customgpt_get_api_v1_projects_by_projectid_tasks_by_taskid_messages_by_prompthistoryidREAD

Returns the complete details for a single message, including the user's prompt, the agent's response, timestamps, citations, and any attached metadata. Use this to retrieve specific messages for display or analysis. via GET /api/v1/projects/{projectId}/tasks/{taskId}/messages/{promptHistoryId}

api
customgpt_get_api_v1_projects_by_projectid_tasks_by_taskid_messages_by_prompthistoryid_filesREAD

Returns all files associated with a specific task message - both user-uploaded sources and AI-generated artifacts. Use the `type` field to distinguish between `upload` and `artifact`. Generated artifacts expire after a configurable TTL (default 24 h). via GET /api/v1/projects/{projectId}/tasks/{taskId}/messages/{promptHistoryId}/files

api
customgpt_get_api_v1_projects_by_projectid_tasks_by_taskid_messages_by_prompthistoryid_files_by_fileid_downloadREAD

Generates a pre-signed URL for an agent-generated artifact and redirects to it. The redirect target is valid for 1 hour. via GET /api/v1/projects/{projectId}/tasks/{taskId}/messages/{promptHistoryId}/files/{fileId}/download

api
customgpt_get_api_v1_teamsREAD

Returns a paginated list of all teams the authenticated user is a member of. via GET /api/v1/teams

api
customgpt_get_api_v1_teams_invitationsREAD

Returns a paginated list of all pending invitations for the specified team. via GET /api/v1/teams/invitations

api
customgpt_get_api_v1_teams_membersREAD

Returns a paginated list of all members belonging to the specified team, including their assigned roles. via GET /api/v1/teams/members

api
customgpt_get_api_v1_teams_rolesREAD

Returns all roles that can be assigned to members within this team. Includes both global assignable system roles (Administrator, Member, Chat-only) and the team's own custom roles. Super Admin and Owner are excluded as they are not assignable. via GET /api/v1/teams/roles

api
customgpt_get_api_v1_userREAD

Returns profile information for the currently authenticated user, including account details and settings. via GET /api/v1/user

api
customgpt_get_api_v1_user_search_team_memberREAD

Searches for team members by email address or user ID. Use this to find users when assigning permissions or managing team access. Notes: Requires Owner or Admin role. via GET /api/v1/user/search-team-member

api
customgpt_patch_api_v1_projects_by_projectid_contextual_rag_messagesWRITE

Updates `auto_message` and/or `display_message` for one or more webpage context entries. Requires the **Webpage Awareness** tool to be enabled on the agent. via PATCH /api/v1/projects/{projectId}/contextual-rag/messages

api
customgpt_patch_api_v1_projects_by_projectid_deployment_by_sectionWRITE

Updates a single deployment section for an agent. The `section` path parameter identifies which section to update (embed, live_chat, ai_assistant, instant_viewer, or sge). Only include the fields you want to change — omitted fields retain their current values. Settings restricted by your plan are silently ignored. via PATCH /api/v1/projects/{projectId}/deployment/{section}

api
customgpt_patch_api_v1_projects_by_projectid_settings_persona_by_version_sub_personas_by_slugWRITE

Creates or updates the project-level override for one sub-persona slug. Generated persona-version rows are not modified. via PATCH /api/v1/projects/{projectId}/settings/persona/{version}/sub-personas/{slug}

api
customgpt_post_api_v1_projects_by_projectid_actions_customWRITE

Create a custom action (MCP) via POST /api/v1/projects/{projectId}/actions/custom

api
customgpt_post_api_v1_projects_by_projectid_chat_completionsWRITE

Sends a message using the OpenAI-compatible request and response format. Use this if you are migrating from OpenAI or want to use existing OpenAI client libraries. Supports streaming for real-time responses. Notes: This is a convenience endpoint for OpenAI compatibility. For full CustomGPT features, use the native message endpoint. Through this integration the reply is always the complete JSON document (streaming is disabled; `stream` cannot be set), and this is the only send-message operation offered: the native multipart message endpoint is not available here. via POST /api/v1/projects/{projectId}/chat/completions

api
customgpt_post_api_v1_projects_by_projectid_childrenWRITE

Assigns one or more agents as children of this Multi-Agent. Enforces plan limits, team ownership, and prevents assigning Multi-Agent projects as children. via POST /api/v1/projects/{projectId}/children

api
customgpt_post_api_v1_projects_by_projectid_conversationsWRITE

Creates a new conversation session for an agent. Returns a session ID that you'll use to send messages. You can optionally provide a name to help identify the conversation later. Notes: You can also create conversations implicitly by sending a message with a new session ID. via POST /api/v1/projects/{projectId}/conversations

api
customgpt_post_api_v1_projects_by_projectid_conversations_by_sessionid_messages_by_promptid_verifyWRITE

Triggers a fact-checking verification process for a message's claims. The system compares each claim against the source documents and reports which claims are supported, partially supported, or unsupported. via POST /api/v1/projects/{projectId}/conversations/{sessionId}/messages/{promptId}/verify

api
customgpt_post_api_v1_projects_by_projectid_labelsWRITE

Creates one or more new labels for document access control. Accepts an array of label names, allowing bulk creation. After creating labels, assign them to documents and users to control access. Notes: Requires Custom plan. via POST /api/v1/projects/{projectId}/labels

api
customgpt_post_api_v1_projects_by_projectid_licensesWRITE

Creates a new access license for an agent with specified permissions and optional expiration. Use this to grant controlled access to external users or systems. via POST /api/v1/projects/{projectId}/licenses

api
customgpt_post_api_v1_projects_by_projectid_pages_by_pageid_reindexWRITE

Re-crawls and re-indexes a document to update its content in the knowledge base. Use this when the source content has changed and you want the agent to use the updated version. Notes: Only works for URL-based documents. For uploaded files, delete and re-upload instead. via POST /api/v1/projects/{projectId}/pages/{pageId}/reindex

api
customgpt_post_api_v1_projects_by_projectid_replicateWRITE

Creates a complete copy of an existing agent, including its knowledge base, persona, and settings. Use this to create variations of an agent for testing, or to use an existing agent as a template for a new one. Notes: The cloned agent will have a new ID and can be modified independently of the original. via POST /api/v1/projects/{projectId}/replicate

api
customgpt_post_api_v1_projects_by_projectid_tasks_by_taskid_tool_outputsWRITE

Resumes a task paused on `awaiting_tool_results` by submitting the results of the function calls requested by the agent. All pending `tool_call_id`s must be answered in one request. Returns 202 Accepted; poll the task for progress — the agent may request further function calls or complete with a final answer. via POST /api/v1/projects/{projectId}/tasks/{taskId}/tool-outputs

api
customgpt_post_api_v1_teams_by_teamid_switchWRITE

Switches the authenticated user's active team context. Subsequent requests will operate in the context of the new team. via POST /api/v1/teams/{teamId}/switch

api
customgpt_post_api_v1_teams_invitationsWRITE

Sends an invitation email to the specified address. The recipient must accept the invitation before they become a team member. via POST /api/v1/teams/invitations

api
customgpt_post_api_v1_teams_invitations_by_invitationid_resendWRITE

Cancels the existing invitation and sends a new one to the same email address with the same role. via POST /api/v1/teams/invitations/{invitationId}/resend

api
customgpt_post_api_v1_teams_rolesWRITE

Creates a new custom role for the team with the specified permissions. Role names cannot match reserved role names (Owner, Administrator, Member). via POST /api/v1/teams/roles

api
customgpt_put_api_v1_projects_by_projectid_actions_builtin_by_actionkey_settingsWRITE

Update built-in action settings via PUT /api/v1/projects/{projectId}/actions/builtin/{actionKey}/settings

api
customgpt_put_api_v1_projects_by_projectid_actions_custom_by_actionkeyWRITE

Update a custom action configuration via PUT /api/v1/projects/{projectId}/actions/custom/{actionKey}

api
customgpt_put_api_v1_projects_by_projectid_conversations_by_sessionidWRITE

Updates conversation metadata, such as the display name. Use this to rename conversations for easier organization and identification. via PUT /api/v1/projects/{projectId}/conversations/{sessionId}

api
customgpt_put_api_v1_projects_by_projectid_conversations_by_sessionid_messages_by_promptid_feedbackWRITE

Records user feedback (thumbs up/down) for a message. Use this to collect quality signals that help identify which responses are helpful and which need improvement. via PUT /api/v1/projects/{projectId}/conversations/{sessionId}/messages/{promptId}/feedback

api
customgpt_put_api_v1_projects_by_projectid_labelsWRITE

Sets which users are assigned to each label. The provided user list becomes the source of truth - users not included in the list are removed from that label, and new users are added. Notes: Requires Custom plan. Warning: This is a replacement operation, not an append. Users not included in the request will be removed from the label. via PUT /api/v1/projects/{projectId}/labels

api
customgpt_put_api_v1_projects_by_projectid_labels_by_labelidWRITE

Updates the name of an existing label. User and document assignments are preserved. via PUT /api/v1/projects/{projectId}/labels/{labelId}

api
customgpt_put_api_v1_projects_by_projectid_licenses_by_licenseidWRITE

Updates a license's settings, such as permissions, expiration date, or active status. Use this to modify access without creating a new license. via PUT /api/v1/projects/{projectId}/licenses/{licenseId}

api
customgpt_put_api_v1_projects_by_projectid_pages_by_pageid_labelsWRITE

Assigns labels to a document for access control. The provided label IDs replace any existing labels on the document. To remove all labels (making the document accessible to everyone), send an empty array. Notes: Maximum 50 labels per document. Warning: This replaces all existing labels. Labels not included in the request will be removed from the document. via PUT /api/v1/projects/{projectId}/pages/{pageId}/labels

api
customgpt_put_api_v1_projects_by_projectid_pages_by_pageid_metadataWRITE

Updates custom metadata fields for a document. Use this to add tags, categories, or other organizational information that helps manage your knowledge base. via PUT /api/v1/projects/{projectId}/pages/{pageId}/metadata

api
customgpt_put_api_v1_projects_by_projectid_settings_persona_activate_by_versionWRITE

Activates a previous persona version, making it the current active persona. This creates a new version entry in the history (it doesn't overwrite), preserving the full audit trail. Use this to roll back to a known-good configuration. Warning: This doesn't delete newer versions - it creates a new entry based on the restored version. via PUT /api/v1/projects/{projectId}/settings/persona-activate/{version}

api
customgpt_put_api_v1_projects_by_projectid_sources_by_sourceidWRITE

Updates configuration for a data source, such as auto-sync frequency, crawl depth, or file filters. Use this to fine-tune how the source is indexed and kept up to date. via PUT /api/v1/projects/{projectId}/sources/{sourceId}

api
customgpt_put_api_v1_projects_by_projectid_sources_by_sourceid_instant_syncWRITE

Triggers an immediate re-sync of a data source, refreshing all its documents with the latest content. Use this when you know the source has been updated and don't want to wait for the scheduled sync. Notes: Only available for sources that support syncing (sitemaps, integrations). Not available for file uploads. via PUT /api/v1/projects/{projectId}/sources/{sourceId}/instant-sync

api
customgpt_put_api_v1_projects_by_projectid_tasks_by_taskidWRITE

Updates task metadata, such as the display name. Use this to rename tasks for easier organization and identification. The display name is the only mutable field exposed via the API. via PUT /api/v1/projects/{projectId}/tasks/{taskId}

api
customgpt_put_api_v1_teamsWRITE

Updates the name of a team. Only the team owner or a member with the update permission can perform this action. via PUT /api/v1/teams

api
customgpt_put_api_v1_teams_members_by_useridWRITE

Changes the role assigned to a team member. Only the team owner or a member with the appropriate permission can perform this action. via PUT /api/v1/teams/members/{userId}

api
customgpt_put_api_v1_teams_roles_by_roleidWRITE

Updates an existing custom role's name, description, and permissions. Only roles belonging to this team can be updated. via PUT /api/v1/teams/roles/{roleId}

api

Put CustomGPT.ai behind one governed endpoint.

Same permissions, same audit trail, whatever else you connect next.