mirror of
https://github.com/ComposioHQ/composio.git
synced 2026-09-22 11:46:35 +08:00
6882 lines
247 KiB
JSON
6882 lines
247 KiB
JSON
{
|
||
"schemaVersion": 2,
|
||
"source": {
|
||
"repository": "ComposioHQ/support-knowledge",
|
||
"commit": "5eac683455ff252a7a3b62f33ab6566445009b52",
|
||
"capturedAt": "2026-08-25",
|
||
"contentHash": "sha256:491f469688b25190d96a01f233067b10c5027db25d1a4da5b754dfcb666ddcb4"
|
||
},
|
||
"topics": [
|
||
{
|
||
"slug": "account-and-billing",
|
||
"title": "Account And Billing",
|
||
"description": "Support guidance for account and billing.",
|
||
"featuredRank": 1
|
||
},
|
||
{
|
||
"slug": "auth-config",
|
||
"title": "Auth Config",
|
||
"description": "Support guidance for auth config.",
|
||
"featuredRank": 2
|
||
},
|
||
{
|
||
"slug": "authentication",
|
||
"title": "Authentication",
|
||
"description": "OAuth, auth configs, scopes, and connection setup.",
|
||
"featuredRank": 2
|
||
},
|
||
{
|
||
"slug": "errors-and-troubleshooting",
|
||
"title": "Errors And Troubleshooting",
|
||
"description": "Support guidance for errors and troubleshooting.",
|
||
"featuredRank": 4
|
||
},
|
||
{
|
||
"slug": "getting-started",
|
||
"title": "Getting Started",
|
||
"description": "Support guidance for getting started.",
|
||
"featuredRank": 5
|
||
},
|
||
{
|
||
"slug": "security-and-trust",
|
||
"title": "Security And Trust",
|
||
"description": "Support guidance for security and trust.",
|
||
"featuredRank": 6
|
||
},
|
||
{
|
||
"slug": "sessions-and-execution",
|
||
"title": "Sessions And Execution",
|
||
"description": "Support guidance for sessions and execution.",
|
||
"featuredRank": 7
|
||
},
|
||
{
|
||
"slug": "toolkits-and-providers",
|
||
"title": "Toolkits And Providers",
|
||
"description": "Support guidance for toolkits and providers.",
|
||
"featuredRank": 8
|
||
},
|
||
{
|
||
"slug": "workflows",
|
||
"title": "Workflows",
|
||
"description": "Support guidance for workflows.",
|
||
"featuredRank": 9
|
||
}
|
||
],
|
||
"guides": [
|
||
{
|
||
"slug": "consumer-project-boundaries-and-auth-selection",
|
||
"title": "Consumer and Developer Project Boundaries",
|
||
"description": "Public support knowledge for Consumer and Developer Project Boundaries.",
|
||
"articlePath": "consumer-project-boundaries-and-auth-selection.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "consumer/project-boundaries-and-auth-selection/public.md",
|
||
"sourceHeading": "Rotate the Connect MCP consumer key"
|
||
},
|
||
{
|
||
"sourcePath": "consumer/project-boundaries-and-auth-selection/public.md",
|
||
"sourceHeading": "Workspace members do not automatically share For You connections"
|
||
},
|
||
{
|
||
"sourcePath": "consumer/project-boundaries-and-auth-selection/public.md",
|
||
"sourceHeading": "Shared connections must be explicitly allowed and pinned"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"getting-started",
|
||
"sessions-and-execution"
|
||
],
|
||
"tags": [
|
||
"consumer",
|
||
"for-you",
|
||
"project-boundaries-and-auth-selection"
|
||
],
|
||
"aliases": [
|
||
"/kb/composio-for-you/workspace-members-do-not-automatically-share-for-you-connections",
|
||
"workspace-members-do-not-automatically-share-for-you-connections"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-16",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "dashboard-account-deletion",
|
||
"title": "Delete a Composio organization",
|
||
"description": "Current self-service path and safety checks for organization deletion.",
|
||
"articlePath": "dashboard-account-deletion.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "dashboard/account-deletion/public.md",
|
||
"sourceHeading": "Organization admins can use Delete this organization"
|
||
}
|
||
],
|
||
"topics": [
|
||
"account-and-billing"
|
||
],
|
||
"tags": [
|
||
"account-deletion",
|
||
"dashboard",
|
||
"for-you",
|
||
"platform"
|
||
],
|
||
"aliases": [],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-08-17",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "dashboard-auth-configs-navigation",
|
||
"title": "Manage Platform auth configs",
|
||
"description": "Current dashboard steps for creating and managing Platform auth configs.",
|
||
"articlePath": "dashboard-auth-configs-navigation.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "dashboard/auth-configs-navigation/public.md",
|
||
"sourceHeading": "Create an auth config from the selected Platform project"
|
||
},
|
||
{
|
||
"sourcePath": "dashboard/auth-configs-navigation/public.md",
|
||
"sourceHeading": "Connect Account on an auth config is a Playground test connection"
|
||
},
|
||
{
|
||
"sourcePath": "dashboard/auth-configs-navigation/public.md",
|
||
"sourceHeading": "Manage Config changes future authentication behavior"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"getting-started"
|
||
],
|
||
"tags": [
|
||
"auth-configs",
|
||
"dashboard",
|
||
"platform"
|
||
],
|
||
"aliases": [],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-08-17",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "dashboard-for-you-navigation",
|
||
"title": "Composio For You navigation",
|
||
"description": "Current navigation for connecting apps and agents in Composio For You.",
|
||
"articlePath": "dashboard-for-you-navigation.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "dashboard/for-you-navigation/public.md",
|
||
"sourceHeading": "Use Connect Apps for provider accounts and Connect my agent for clients"
|
||
},
|
||
{
|
||
"sourcePath": "dashboard/for-you-navigation/public.md",
|
||
"sourceHeading": "For You settings include Sessions & API Key"
|
||
}
|
||
],
|
||
"topics": [
|
||
"account-and-billing",
|
||
"authentication",
|
||
"getting-started"
|
||
],
|
||
"tags": [
|
||
"dashboard",
|
||
"for-you"
|
||
],
|
||
"aliases": [],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-08-17",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "dashboard-log-storage",
|
||
"title": "Dashboard Log Storage",
|
||
"description": "Public behavior of the project Log storage setting.",
|
||
"articlePath": "dashboard-log-storage.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "dashboard/log-storage/public.md",
|
||
"sourceHeading": "“Don't store data” removes new payload content, not the audit row"
|
||
}
|
||
],
|
||
"topics": [
|
||
"errors-and-troubleshooting",
|
||
"security-and-trust",
|
||
"sessions-and-execution"
|
||
],
|
||
"tags": [
|
||
"dashboard",
|
||
"data-retention",
|
||
"logs",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/dashboard-and-projects/don-t-store-data-removes-new-payload-content-not-the-audit-row",
|
||
"don-t-store-data-removes-new-payload-content-not-the-audit-row"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-16",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "dashboard-login-restrictions",
|
||
"title": "Dashboard MFA Setup",
|
||
"description": "Public guidance for completing dashboard MFA setup.",
|
||
"articlePath": "dashboard-login-restrictions.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "dashboard/login-restrictions/public.md",
|
||
"sourceHeading": "Use the manual setup key when QR scanning does not complete"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"security-and-trust"
|
||
],
|
||
"tags": [
|
||
"login-restrictions",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/dashboard-and-projects/mfa-setup-qr-countdown-is-short-use-the-setup-key-if-scanning-fails",
|
||
"mfa-setup-qr-countdown-is-short-use-the-setup-key-if-scanning-fails"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "dashboard-navigation-overview",
|
||
"title": "Composio dashboard navigation",
|
||
"description": "Current navigation map for Composio Platform and Composio For You.",
|
||
"articlePath": "dashboard-navigation-overview.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "dashboard/navigation-overview/public.md",
|
||
"sourceHeading": "Choose Platform for developer projects and For You for personal agent connections"
|
||
},
|
||
{
|
||
"sourcePath": "dashboard/navigation-overview/public.md",
|
||
"sourceHeading": "Current Platform project navigation"
|
||
},
|
||
{
|
||
"sourcePath": "dashboard/navigation-overview/public.md",
|
||
"sourceHeading": "Organization and project settings are separate"
|
||
}
|
||
],
|
||
"topics": [
|
||
"getting-started",
|
||
"workflows"
|
||
],
|
||
"tags": [
|
||
"dashboard",
|
||
"for-you",
|
||
"navigation",
|
||
"platform"
|
||
],
|
||
"aliases": [],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-08-17",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "dashboard-org-members",
|
||
"title": "Organization Members and Administrators",
|
||
"description": "Public guidance for transferring organization control and managing administrator roles.",
|
||
"articlePath": "dashboard-org-members.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "dashboard/org-members/public.md",
|
||
"sourceHeading": "Transfer organization control to another user"
|
||
}
|
||
],
|
||
"topics": [
|
||
"account-and-billing",
|
||
"getting-started"
|
||
],
|
||
"tags": [
|
||
"dashboard",
|
||
"members",
|
||
"organizations",
|
||
"platform",
|
||
"roles"
|
||
],
|
||
"aliases": [
|
||
"/kb/dashboard-and-projects/transfer-organization-control-to-another-user",
|
||
"transfer-organization-control-to-another-user"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-16",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "dashboard-project-settings-navigation",
|
||
"title": "Platform project settings",
|
||
"description": "Current navigation for Platform project configuration and organization settings.",
|
||
"articlePath": "dashboard-project-settings-navigation.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "dashboard/project-settings-navigation/public.md",
|
||
"sourceHeading": "Project settings control one project"
|
||
},
|
||
{
|
||
"sourcePath": "dashboard/project-settings-navigation/public.md",
|
||
"sourceHeading": "Organization settings control the organization"
|
||
}
|
||
],
|
||
"topics": [
|
||
"account-and-billing",
|
||
"authentication",
|
||
"workflows"
|
||
],
|
||
"tags": [
|
||
"dashboard",
|
||
"platform",
|
||
"settings"
|
||
],
|
||
"aliases": [],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-08-17",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "dashboard-tool-trigger-logs-navigation",
|
||
"title": "Debug Platform tools, triggers, users, and sessions",
|
||
"description": "Current dashboard paths for inspecting Platform execution state and support identifiers.",
|
||
"articlePath": "dashboard-tool-trigger-logs-navigation.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "dashboard/tool-trigger-logs-navigation/public.md",
|
||
"sourceHeading": "Use Logs for execution evidence"
|
||
},
|
||
{
|
||
"sourcePath": "dashboard/tool-trigger-logs-navigation/public.md",
|
||
"sourceHeading": "Use Users and Sessions to explain retrieval and execution context"
|
||
},
|
||
{
|
||
"sourcePath": "dashboard/tool-trigger-logs-navigation/public.md",
|
||
"sourceHeading": "Disable a trigger when the goal is to pause it"
|
||
}
|
||
],
|
||
"topics": [
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"workflows"
|
||
],
|
||
"tags": [
|
||
"dashboard",
|
||
"logs",
|
||
"platform",
|
||
"triggers"
|
||
],
|
||
"aliases": [],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-08-17",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "faqs",
|
||
"title": "Current Support FAQs",
|
||
"description": "Public answers for recurring Composio support issues.",
|
||
"articlePath": "faqs.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "faqs/public.md",
|
||
"sourceHeading": "Route toolkit requests and toolkit partnership applications"
|
||
},
|
||
{
|
||
"sourcePath": "faqs/public.md",
|
||
"sourceHeading": "Security, privacy, data-retention, and compliance information"
|
||
},
|
||
{
|
||
"sourcePath": "faqs/public.md",
|
||
"sourceHeading": "Security reporting"
|
||
},
|
||
{
|
||
"sourcePath": "faqs/public.md",
|
||
"sourceHeading": "Google `access_not_configured` requires a Workspace for Education administrator"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"security-and-trust",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"faq",
|
||
"faqs",
|
||
"for-you",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/sdk-and-api/misc-faqs",
|
||
"misc-faqs",
|
||
"request-a-missing-toolkit-tool-or-trigger",
|
||
"security-privacy-data-retention-and-compliance-information"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-14",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "mcp-mcp-hermes",
|
||
"title": "Hermes MCP",
|
||
"description": "Public support knowledge for Hermes MCP.",
|
||
"articlePath": "mcp-mcp-hermes.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "mcp/mcp-hermes/public.md",
|
||
"sourceHeading": "Production MCP API paths and direct transport tests"
|
||
},
|
||
{
|
||
"sourcePath": "mcp/mcp-hermes/public.md",
|
||
"sourceHeading": "Auth configs are project-scoped"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"getting-started",
|
||
"sessions-and-execution"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"mcp",
|
||
"mcp-hermes",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/tool-router-and-mcp/mcp-mcp-hermes",
|
||
"auth-configs-are-project-scoped",
|
||
"production-mcp-api-paths-and-direct-transport-tests"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-16",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "mcp-tool-router-files",
|
||
"title": "Tool Router Files",
|
||
"description": "Public guidance for passing Tool Router session files to toolkit actions.",
|
||
"articlePath": "mcp-tool-router-files.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "mcp/tool-router-files/public.md",
|
||
"sourceHeading": "Session paths are not `FileUploadable` storage keys"
|
||
}
|
||
],
|
||
"topics": [
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution"
|
||
],
|
||
"tags": [
|
||
"files",
|
||
"for-you",
|
||
"mcp",
|
||
"platform",
|
||
"tool-router",
|
||
"uploads"
|
||
],
|
||
"aliases": [
|
||
"/kb/tool-router-and-mcp/use-tool-router-session-files-as-tool-inputs",
|
||
"use-tool-router-session-files-as-tool-inputs"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-14",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "mcp-tool-router-sessions",
|
||
"title": "Tool Router Sessions",
|
||
"description": "Public setup guidance for creating and using Tool Router sessions.",
|
||
"articlePath": "mcp-tool-router-sessions.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "mcp/tool-router-sessions/public.md",
|
||
"sourceHeading": "Create Tool Router sessions through the SDK or API"
|
||
},
|
||
{
|
||
"sourcePath": "mcp/tool-router-sessions/public.md",
|
||
"sourceHeading": "Session lifetime and deletion"
|
||
},
|
||
{
|
||
"sourcePath": "mcp/tool-router-sessions/public.md",
|
||
"sourceHeading": "Select among multiple accounts with an alias or account ID"
|
||
},
|
||
{
|
||
"sourcePath": "mcp/tool-router-sessions/public.md",
|
||
"sourceHeading": "The session user must match the connected-account user"
|
||
},
|
||
{
|
||
"sourcePath": "mcp/tool-router-sessions/public.md",
|
||
"sourceHeading": "Connected-account selection is live unless pinned"
|
||
},
|
||
{
|
||
"sourcePath": "mcp/tool-router-sessions/public.md",
|
||
"sourceHeading": "Toolkit allowlists are enforced before connection lookup"
|
||
},
|
||
{
|
||
"sourcePath": "mcp/tool-router-sessions/public.md",
|
||
"sourceHeading": "A fresh task context is a new session runtime, not model memory"
|
||
},
|
||
{
|
||
"sourcePath": "mcp/tool-router-sessions/public.md",
|
||
"sourceHeading": "Auth links create project- and user-scoped connected accounts"
|
||
},
|
||
{
|
||
"sourcePath": "mcp/tool-router-sessions/public.md",
|
||
"sourceHeading": "Toolkit filters do not preload every matching tool"
|
||
},
|
||
{
|
||
"sourcePath": "mcp/tool-router-sessions/public.md",
|
||
"sourceHeading": "SDK custom tools and Custom MCP toolkits have different runtimes"
|
||
},
|
||
{
|
||
"sourcePath": "mcp/tool-router-sessions/public.md",
|
||
"sourceHeading": "Enhanced Control requires client support for MCP elicitation"
|
||
},
|
||
{
|
||
"sourcePath": "mcp/tool-router-sessions/public.md",
|
||
"sourceHeading": "Pin the intended auth config when a toolkit has multiple auth schemes"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"workflows"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"mcp",
|
||
"platform",
|
||
"sessions",
|
||
"tool-router"
|
||
],
|
||
"aliases": [
|
||
"/kb/tool-router-and-mcp/mcp-tool-router-sessions",
|
||
"choose-a-connected-account-for-a-session",
|
||
"tool-router-session-lifetime-and-deletion",
|
||
"toolkit-is-not-allowed-for-this-session"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-16",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "platform-compliance-data-handling",
|
||
"title": "Compliance, Data Retention, and Model Training",
|
||
"description": "Public guidance for data retention, model training, compliance, and enterprise security reviews.",
|
||
"articlePath": "platform-compliance-data-handling.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "platform/compliance-data-handling/public.md",
|
||
"sourceHeading": "Canonical public sources"
|
||
},
|
||
{
|
||
"sourcePath": "platform/compliance-data-handling/public.md",
|
||
"sourceHeading": "Zero data retention and no-training requirements"
|
||
},
|
||
{
|
||
"sourcePath": "platform/compliance-data-handling/public.md",
|
||
"sourceHeading": "Model training"
|
||
},
|
||
{
|
||
"sourcePath": "platform/compliance-data-handling/public.md",
|
||
"sourceHeading": "FedRAMP"
|
||
},
|
||
{
|
||
"sourcePath": "platform/compliance-data-handling/public.md",
|
||
"sourceHeading": "Third-party providers"
|
||
}
|
||
],
|
||
"topics": [
|
||
"security-and-trust"
|
||
],
|
||
"tags": [
|
||
"compliance",
|
||
"platform",
|
||
"privacy",
|
||
"retention",
|
||
"security"
|
||
],
|
||
"aliases": [
|
||
"/kb/sdk-and-api/platform-compliance-data-handling",
|
||
"canonical-public-sources",
|
||
"model-training",
|
||
"third-party-providers",
|
||
"zero-data-retention-and-no-training-requirements"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "platform-connected-accounts",
|
||
"title": "Connected Accounts",
|
||
"description": "Public support knowledge for Connected Accounts.",
|
||
"articlePath": "platform-connected-accounts.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "platform/connected-accounts/public.md",
|
||
"sourceHeading": "Prefer a new auth link session when a user must reconnect"
|
||
},
|
||
{
|
||
"sourcePath": "platform/connected-accounts/public.md",
|
||
"sourceHeading": "Same user ID does not prove same upstream account"
|
||
},
|
||
{
|
||
"sourcePath": "platform/connected-accounts/public.md",
|
||
"sourceHeading": "Hosted connect links expire after 10 minutes"
|
||
},
|
||
{
|
||
"sourcePath": "platform/connected-accounts/public.md",
|
||
"sourceHeading": "Connection status describes a lifecycle, not credential validity"
|
||
},
|
||
{
|
||
"sourcePath": "platform/connected-accounts/public.md",
|
||
"sourceHeading": "OAuth refresh failures have multiple causes"
|
||
},
|
||
{
|
||
"sourcePath": "platform/connected-accounts/public.md",
|
||
"sourceHeading": "Provider tokens are redacted from connected-account responses"
|
||
},
|
||
{
|
||
"sourcePath": "platform/connected-accounts/public.md",
|
||
"sourceHeading": "Revoke provider credentials before removing a connection when required"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"errors-and-troubleshooting"
|
||
],
|
||
"tags": [
|
||
"connected-accounts",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/sdk-and-api/platform-connected-accounts",
|
||
"connection-status-describes-a-lifecycle-not-credential-validity",
|
||
"oauth-refresh-failures-have-multiple-causes",
|
||
"public-refresh-endpoint-starts-a-new-auth-flow",
|
||
"same-user-id-does-not-prove-same-upstream-account",
|
||
"token-based-connections-are-not-always-validated-when-stored"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-16",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "platform-custom-connection-data-fields",
|
||
"title": "Custom Connection Data Field Names",
|
||
"description": "Public support knowledge for Custom Connection Data Field Names.",
|
||
"articlePath": "platform-custom-connection-data-fields.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "platform/custom-connection-data-fields/public.md",
|
||
"sourceHeading": "Field names are toolkit-specific"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution"
|
||
],
|
||
"tags": [
|
||
"custom-connection-data-fields",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/authentication/custom-connection-data-fields-are-toolkit-specific",
|
||
"custom-connection-data-fields-are-toolkit-specific"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "platform-file-storage",
|
||
"title": "File Download Storage and Expiry",
|
||
"description": "Public guidance for staged files, signed download URLs, retention, and size questions.",
|
||
"articlePath": "platform-file-storage.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "platform/file-storage/public.md",
|
||
"sourceHeading": "Composio file URLs are short-lived staged downloads"
|
||
}
|
||
],
|
||
"topics": [
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution"
|
||
],
|
||
"tags": [
|
||
"files",
|
||
"platform",
|
||
"signed-urls",
|
||
"storage"
|
||
],
|
||
"aliases": [
|
||
"/kb/sdk-and-api/composio-file-urls-are-short-lived-staged-downloads",
|
||
"composio-file-urls-are-short-lived-staged-downloads"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-16",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "platform-google-oauth",
|
||
"title": "Google OAuth setup and consent",
|
||
"description": "Shared OAuth setup and consent guidance for Google toolkits.",
|
||
"articlePath": "platform-google-oauth.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "platform/google-oauth/public.md",
|
||
"sourceHeading": "An unapproved Google OAuth scope can block consent"
|
||
},
|
||
{
|
||
"sourcePath": "platform/google-oauth/public.md",
|
||
"sourceHeading": "A customer-owned OAuth app controls the provider consent-screen brand"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"google",
|
||
"oauth",
|
||
"platform"
|
||
],
|
||
"aliases": [],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-08-17",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "platform-health-endpoints",
|
||
"title": "Platform Health Endpoints",
|
||
"description": "Public reference for Composio on-prem and self-hosted health endpoints.",
|
||
"articlePath": "platform-health-endpoints.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "platform/health-endpoints/public.md",
|
||
"sourceHeading": "Apollo"
|
||
},
|
||
{
|
||
"sourcePath": "platform/health-endpoints/public.md",
|
||
"sourceHeading": "Thermos"
|
||
}
|
||
],
|
||
"topics": [
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution"
|
||
],
|
||
"tags": [
|
||
"health-endpoints",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/sdk-and-api/platform-health-endpoints",
|
||
"apollo",
|
||
"metrics-export",
|
||
"thermos"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "platform-microsoft-oauth",
|
||
"title": "Microsoft OAuth scopes and tenant consent",
|
||
"description": "Shared OAuth scope and tenant-consent guidance for Microsoft toolkits.",
|
||
"articlePath": "platform-microsoft-oauth.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "platform/microsoft-oauth/public.md",
|
||
"sourceHeading": "Request `offline_access` when a delegated connection needs refresh tokens"
|
||
},
|
||
{
|
||
"sourcePath": "platform/microsoft-oauth/public.md",
|
||
"sourceHeading": "Some Microsoft tenant policies and permissions require administrator consent"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"microsoft",
|
||
"oauth",
|
||
"platform"
|
||
],
|
||
"aliases": [],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-08-17",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "platform-pagination",
|
||
"title": "Platform Pagination",
|
||
"description": "Public guidance for endpoint-specific list limits and cursor pagination.",
|
||
"articlePath": "platform-pagination.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "platform/pagination/public.md",
|
||
"sourceHeading": "Pagination limits are endpoint-specific"
|
||
},
|
||
{
|
||
"sourcePath": "platform/pagination/public.md",
|
||
"sourceHeading": "Auth-config list pages return at most 50 items"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution"
|
||
],
|
||
"tags": [
|
||
"api",
|
||
"cursors",
|
||
"pagination",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/authentication/auth-config-list-pages-return-at-most-50-items",
|
||
"/kb/sdk-and-api/pagination-limits-are-endpoint-specific",
|
||
"auth-config-list-pages-return-at-most-50-items",
|
||
"pagination-limits-are-endpoint-specific"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-16",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "platform-production-readiness",
|
||
"title": "Move a Composio Integration from Prototype to Production",
|
||
"description": "Public guidance for production user identity, environment isolation, authentication, sessions, and trigger delivery.",
|
||
"articlePath": "platform-production-readiness.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "platform/production-readiness/public.md",
|
||
"sourceHeading": "Replace example user IDs with stable application user IDs"
|
||
},
|
||
{
|
||
"sourcePath": "platform/production-readiness/public.md",
|
||
"sourceHeading": "Isolate environments with separate Composio projects when needed"
|
||
},
|
||
{
|
||
"sourcePath": "platform/production-readiness/public.md",
|
||
"sourceHeading": "Switch from managed auth only when production requirements call for it"
|
||
},
|
||
{
|
||
"sourcePath": "platform/production-readiness/public.md",
|
||
"sourceHeading": "Restrict the production session to the capabilities the agent needs"
|
||
},
|
||
{
|
||
"sourcePath": "platform/production-readiness/public.md",
|
||
"sourceHeading": "Reuse a stored session until the user or configuration changes"
|
||
},
|
||
{
|
||
"sourcePath": "platform/production-readiness/public.md",
|
||
"sourceHeading": "Test production trigger handling through the real webhook path"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"getting-started",
|
||
"security-and-trust",
|
||
"sessions-and-execution",
|
||
"workflows"
|
||
],
|
||
"tags": [
|
||
"authentication",
|
||
"deployment",
|
||
"platform",
|
||
"production",
|
||
"projects",
|
||
"sessions",
|
||
"users"
|
||
],
|
||
"aliases": [],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-08-24",
|
||
"lastVerifiedAt": "2026-08-24",
|
||
"reviewAfter": "2026-11-22",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "platform-project-api-key-permissions",
|
||
"title": "Project API Key Permissions",
|
||
"description": "Public guidance for scoped Project API key permissions.",
|
||
"articlePath": "platform-project-api-key-permissions.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "platform/project-api-key-permissions/public.md",
|
||
"sourceHeading": "Proxy Execute requires an explicitly allowed Project API key"
|
||
},
|
||
{
|
||
"sourcePath": "platform/project-api-key-permissions/public.md",
|
||
"sourceHeading": "Tool Router session creation requires Sessions write access"
|
||
},
|
||
{
|
||
"sourcePath": "platform/project-api-key-permissions/public.md",
|
||
"sourceHeading": "Tool execution requires Tool execution write access"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution"
|
||
],
|
||
"tags": [
|
||
"api-keys",
|
||
"permissions",
|
||
"platform",
|
||
"sessions",
|
||
"tool-router"
|
||
],
|
||
"aliases": [
|
||
"/kb/sdk-and-api/platform-project-api-key-permissions",
|
||
"org-api-created-keys-do-not-currently-enable-proxy-execute",
|
||
"tool-router-session-creation-requires-sessions-write-access"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-16",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "platform-rate-limits",
|
||
"title": "Platform API Rate Limits",
|
||
"description": "Public guidance for organization-level Composio API limits and 429 handling.",
|
||
"articlePath": "platform-rate-limits.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "platform/rate-limits/public.md",
|
||
"sourceHeading": "Organization API limits and 429 handling"
|
||
}
|
||
],
|
||
"topics": [
|
||
"account-and-billing",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution"
|
||
],
|
||
"tags": [
|
||
"api",
|
||
"billing",
|
||
"platform",
|
||
"rate-limits"
|
||
],
|
||
"aliases": [],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-16",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "platform-routing",
|
||
"title": "Support Routing",
|
||
"description": "Public routing for hiring, compliance, and toolkit feature requests.",
|
||
"articlePath": "platform-routing.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "platform/routing/public.md",
|
||
"sourceHeading": "Hiring"
|
||
},
|
||
{
|
||
"sourcePath": "platform/routing/public.md",
|
||
"sourceHeading": "DPA, enterprise data handling, and compliance"
|
||
},
|
||
{
|
||
"sourcePath": "platform/routing/public.md",
|
||
"sourceHeading": "Tool or toolkit feature requests"
|
||
}
|
||
],
|
||
"topics": [
|
||
"getting-started",
|
||
"security-and-trust",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"compliance",
|
||
"platform",
|
||
"requests",
|
||
"routing"
|
||
],
|
||
"aliases": [
|
||
"/kb/sdk-and-api/dpa-enterprise-data-handling-and-compliance",
|
||
"dpa-enterprise-data-handling-and-compliance"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-24",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "platform-self-hosted-helm",
|
||
"title": "Self-hosted Helm",
|
||
"description": "Public support knowledge for Self-hosted Helm.",
|
||
"articlePath": "platform-self-hosted-helm.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "platform/self-hosted-helm/public.md",
|
||
"sourceHeading": "Apollo S3 with IRSA / ServiceAccount credentials needs no static S3 secret keys"
|
||
},
|
||
{
|
||
"sourcePath": "platform/self-hosted-helm/public.md",
|
||
"sourceHeading": "Disable social login explicitly for self-hosted deployments"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"getting-started"
|
||
],
|
||
"tags": [
|
||
"platform",
|
||
"self-hosted-helm"
|
||
],
|
||
"aliases": [
|
||
"/kb/sdk-and-api/platform-self-hosted-helm",
|
||
"apollo-s3-with-irsa-serviceaccount-credentials-needs-no-static-s3-secr",
|
||
"disable-social-login-explicitly-for-self-hosted-deployments"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "platform-session-tool-policies",
|
||
"title": "Create Read-Only and Restricted Composio Sessions",
|
||
"description": "Public guidance for limiting session tool access with tags, exact tool allowlists, OAuth scopes, and sandbox controls.",
|
||
"articlePath": "platform-session-tool-policies.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "platform/session-tool-policies/public.md",
|
||
"sourceHeading": "Filter a broad read-only session with behavior tags"
|
||
},
|
||
{
|
||
"sourcePath": "platform/session-tool-policies/public.md",
|
||
"sourceHeading": "Use exact tool allowlists for the narrowest policy"
|
||
},
|
||
{
|
||
"sourcePath": "platform/session-tool-policies/public.md",
|
||
"sourceHeading": "Combine provider scopes with session tool restrictions"
|
||
},
|
||
{
|
||
"sourcePath": "platform/session-tool-policies/public.md",
|
||
"sourceHeading": "Apply toolkit-specific exceptions without widening every toolkit"
|
||
},
|
||
{
|
||
"sourcePath": "platform/session-tool-policies/public.md",
|
||
"sourceHeading": "Disable the session sandbox when the workflow does not need code execution"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"security-and-trust",
|
||
"sessions-and-execution"
|
||
],
|
||
"tags": [
|
||
"least-privilege",
|
||
"oauth-scopes",
|
||
"platform",
|
||
"read-only",
|
||
"sessions",
|
||
"tool-policy"
|
||
],
|
||
"aliases": [],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-08-24",
|
||
"lastVerifiedAt": "2026-08-24",
|
||
"reviewAfter": "2026-11-22",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "platform-tool-router-workbench",
|
||
"title": "Tool Router Workbench Retention",
|
||
"description": "Public support knowledge for Tool Router Workbench Retention.",
|
||
"articlePath": "platform-tool-router-workbench.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "platform/tool-router-workbench/public.md",
|
||
"sourceHeading": "A “fresh” client label can still reuse the same sandbox"
|
||
}
|
||
],
|
||
"topics": [
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution"
|
||
],
|
||
"tags": [
|
||
"platform",
|
||
"tool-router-workbench"
|
||
],
|
||
"aliases": [
|
||
"/kb/sdk-and-api/a-fresh-client-label-can-still-reuse-the-same-sandbox",
|
||
"a-fresh-client-label-can-still-reuse-the-same-sandbox"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-16",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "platform-triggers",
|
||
"title": "Triggers",
|
||
"description": "Public trigger catalog and webhook delivery guidance.",
|
||
"articlePath": "platform-triggers.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "platform/triggers/public.md",
|
||
"sourceHeading": "Find every toolkit that currently supports triggers"
|
||
},
|
||
{
|
||
"sourcePath": "platform/triggers/public.md",
|
||
"sourceHeading": "Trigger webhook delivery is at-least-once"
|
||
}
|
||
],
|
||
"topics": [
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"workflows"
|
||
],
|
||
"tags": [
|
||
"catalog",
|
||
"platform",
|
||
"retries",
|
||
"triggers",
|
||
"webhooks"
|
||
],
|
||
"aliases": [
|
||
"/kb/triggers-and-webhooks/platform-triggers",
|
||
"deduplicate-trigger-webhook-deliveries",
|
||
"find-every-toolkit-that-currently-supports-triggers"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-14",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "sdk-tool-execution-retries",
|
||
"title": "Tool Execution Retries",
|
||
"description": "Public support knowledge for Tool Execution Retries.",
|
||
"articlePath": "sdk-tool-execution-retries.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "sdk/tool-execution-retries/public.md",
|
||
"sourceHeading": "Current SDKs do not automatically retry non-idempotent tool executions"
|
||
}
|
||
],
|
||
"topics": [
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution"
|
||
],
|
||
"tags": [
|
||
"platform",
|
||
"sdk",
|
||
"tool-execution-retries"
|
||
],
|
||
"aliases": [
|
||
"/kb/sdk-and-api/tool-execution-timeouts-can-retry-non-idempotent-actions",
|
||
"tool-execution-timeouts-can-retry-non-idempotent-actions"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "sdk-tool-schemas",
|
||
"title": "TypeScript Tool Schema Definitions",
|
||
"description": "Public guidance for dangling JSON Schema references in older TypeScript SDK versions.",
|
||
"articlePath": "sdk-tool-schemas.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "sdk/tool-schemas/public.md",
|
||
"sourceHeading": "Upgrade when `$ref` is present but root `$defs` is missing"
|
||
}
|
||
],
|
||
"topics": [
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution"
|
||
],
|
||
"tags": [
|
||
"json-schema",
|
||
"platform",
|
||
"sdk",
|
||
"typescript"
|
||
],
|
||
"aliases": [
|
||
"/kb/sdk-and-api/upgrade-when-ref-is-present-but-root-defs-is-missing",
|
||
"upgrade-when-ref-is-present-but-root-defs-is-missing"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-16",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-ahrefs",
|
||
"title": "Ahrefs",
|
||
"description": "Public support knowledge for Ahrefs.",
|
||
"articlePath": "toolkits-ahrefs.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/ahrefs/public.md",
|
||
"sourceHeading": "Ahrefs actions must call api.ahrefs.com, not ahrefs.com"
|
||
}
|
||
],
|
||
"topics": [
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"ahrefs",
|
||
"for-you",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/ahrefs-actions-use-the-api-host",
|
||
"ahrefs-actions-use-the-api-host"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-airtable",
|
||
"title": "Airtable",
|
||
"description": "Public support knowledge for Airtable.",
|
||
"articlePath": "toolkits-airtable.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/airtable/public.md",
|
||
"sourceHeading": "Connect Airtable to Claude using MCP"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/airtable/public.md",
|
||
"sourceHeading": "Use custom Airtable OAuth credentials for additional scopes"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/airtable/public.md",
|
||
"sourceHeading": "Connection initiation timeout after 10 minutes is not Airtable-specific"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/airtable/public.md",
|
||
"sourceHeading": "Missing Airtable tools may be caused by list limits or an older toolkit version"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/airtable/public.md",
|
||
"sourceHeading": "AIRTABLE_UPDATE_MULTIPLE_RECORDS updates at most 10 records per call"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/airtable/public.md",
|
||
"sourceHeading": "Use one of the current Airtable metadata triggers"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"airtable",
|
||
"for-you",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/airtable-troubleshooting",
|
||
"airtable-triggers-and-webhooks-were-not-yet-generally-available",
|
||
"airtable-troubleshooting",
|
||
"batch-airtable-record-updates-in-groups-of-10",
|
||
"connect-airtable-to-claude-using-mcp",
|
||
"connection-initiation-timeout-after-10-minutes-is-not-airtable-specifi",
|
||
"missing-airtable-tools-may-be-caused-by-default-list-limits-or-ts-sdk",
|
||
"use-custom-airtable-oauth-credentials-for-additional-scopes"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-apollo",
|
||
"title": "Apollo",
|
||
"description": "Public support knowledge for Apollo.",
|
||
"articlePath": "toolkits-apollo.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/apollo/public.md",
|
||
"sourceHeading": "Apollo 403s on search/enrichment endpoints can be key-permission or plan-access gated"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/apollo/public.md",
|
||
"sourceHeading": "Apollo people enrichment and bulk enrichment can behave differently"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/apollo/public.md",
|
||
"sourceHeading": "Apollo search results may mirror Apollo's official API behavior"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"apollo",
|
||
"for-you",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/apollo-tools-have-had-missing-or-incorrect-request-schema-parameters",
|
||
"/kb/toolkits/apollo-troubleshooting",
|
||
"apollo-people-enrichment-and-bulk-enrichment-can-behave-differently",
|
||
"apollo-search-results-may-mirror-apollo-s-official-api-behavior",
|
||
"apollo-tools-have-had-missing-or-incorrect-request-schema-parameters",
|
||
"apollo-troubleshooting"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-asana",
|
||
"title": "Asana",
|
||
"description": "Public support knowledge for Asana.",
|
||
"articlePath": "toolkits-asana.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/asana/public.md",
|
||
"sourceHeading": "Use `ASANA_GET_STORIES_FOR_TASK` and pass the task ID as a string"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/asana/public.md",
|
||
"sourceHeading": "Use the current Asana task triggers"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"asana",
|
||
"for-you",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/asana-is-listed-among-supported-trigger-toolkits-but-exact-trigger-ava",
|
||
"/kb/toolkits/asana-troubleshooting",
|
||
"asana-is-listed-among-supported-trigger-toolkits-but-exact-trigger-ava",
|
||
"asana-troubleshooting",
|
||
"deleted-asana-auth-configs-can-block-mcp-config-edits-create-a-new-mcp",
|
||
"older-sdk-connection-initiation-may-require-appname-integrationid-enti",
|
||
"verify-current-production-availability-before-using-asana-triggers"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-attio",
|
||
"title": "Attio",
|
||
"description": "Public support knowledge for Attio.",
|
||
"articlePath": "toolkits-attio.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/attio/public.md",
|
||
"sourceHeading": "Use $contains for partial text matching in ATTIO_FIND_RECORD filters"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/attio/public.md",
|
||
"sourceHeading": "Use custom tools when an Attio API object is not built into Composio yet"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/attio/public.md",
|
||
"sourceHeading": "Top-level $ parameter names were fixed for LLM provider compatibility in the latest schema version"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/attio/public.md",
|
||
"sourceHeading": "Attio toolkit defaults can stay on the base pinned version unless a version is explicitly selected"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"attio",
|
||
"for-you",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/attio-troubleshooting",
|
||
"attio-meeting-and-call-recording-get-by-id-endpoints-were-a-feature-re",
|
||
"attio-oauth-tokens-cannot-be-programmatically-revoked-by-composio",
|
||
"attio-toolkit-defaults-can-stay-on-the-base-pinned-version-unless-a-ve",
|
||
"attio-troubleshooting",
|
||
"auth-config-names-can-carry-a-reference-id-but-custom-auth-config-meta",
|
||
"missing-attio-scopes-on-composio-managed-auth-require-confirming-the-a",
|
||
"use-contains-for-partial-text-matching-in-attio-find-record-filters",
|
||
"use-custom-tools-when-an-attio-api-object-is-not-built-into-composio-y"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-browser-tool",
|
||
"title": "Browser Tool",
|
||
"description": "Public support knowledge for Browser Tool.",
|
||
"articlePath": "toolkits-browser-tool.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/browser_tool/public.md",
|
||
"sourceHeading": "Browser Tool profiles do not work in Zero Data Retention projects"
|
||
}
|
||
],
|
||
"topics": [
|
||
"security-and-trust",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"browser_tool",
|
||
"for-you",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/browser-tool-profiles-do-not-work-in-zero-data-retention-projects",
|
||
"browser-tool-profiles-do-not-work-in-zero-data-retention-projects"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-calendly",
|
||
"title": "Calendly",
|
||
"description": "Public support knowledge for Calendly.",
|
||
"articlePath": "toolkits-calendly.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/calendly/public.md",
|
||
"sourceHeading": "Use CALENDLY_POST_INVITEE instead of deprecated CALENDLY_CREATE_EVENT_INVITEE"
|
||
}
|
||
],
|
||
"topics": [
|
||
"errors-and-troubleshooting",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"calendly",
|
||
"for-you",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/use-calendly-post-invitee",
|
||
"use-calendly-post-invitee"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-canva",
|
||
"title": "Canva",
|
||
"description": "Public support knowledge for Canva.",
|
||
"articlePath": "toolkits-canva.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/canva/public.md",
|
||
"sourceHeading": "Use Canva autofill jobs when content must be populated into a design"
|
||
}
|
||
],
|
||
"topics": [
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"canva",
|
||
"for-you",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/use-canva-autofill-jobs-for-design-content",
|
||
"use-canva-autofill-jobs-for-design-content"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-canvas",
|
||
"title": "Canvas",
|
||
"description": "Public support knowledge for Canvas.",
|
||
"articlePath": "toolkits-canvas.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/canvas/public.md",
|
||
"sourceHeading": "Canvas triggers are available, and course selection can be driven from course IDs"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/canvas/public.md",
|
||
"sourceHeading": "Canvas triggers fire for users visible to the connected bearer-token user"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/canvas/public.md",
|
||
"sourceHeading": "Canvas Assignment Graded trigger is expected to work for Teacher accounts, not Student accounts"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/canvas/public.md",
|
||
"sourceHeading": "Canvas trigger payloads expose Canvas user ID separately as `canvas_user_id`"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/canvas/public.md",
|
||
"sourceHeading": "Canvas action 401/unauthorized errors can be caused by missing action-level scopes"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/canvas/public.md",
|
||
"sourceHeading": "Canvas OAuth credentials must match the configured Canvas base URL"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/canvas/public.md",
|
||
"sourceHeading": "Canvas account-level endpoints require admin permissions"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/canvas/public.md",
|
||
"sourceHeading": "`CANVAS_CREATE_CALENDAR_EVENT` can use a user ID, and Canvas API field names are preserved"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/canvas/public.md",
|
||
"sourceHeading": "Canvas list/fetch endpoints follow Canvas pagination behavior and may need `per_page`"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/canvas/public.md",
|
||
"sourceHeading": "Canvas discussion topics and announcements require `only_announcements` selection"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/canvas/public.md",
|
||
"sourceHeading": "Canvas 404s on course analytics usually mean the course or endpoint is unavailable"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/canvas/public.md",
|
||
"sourceHeading": "Canvas quiz matching question answers use unprefixed answer field keys"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/canvas/public.md",
|
||
"sourceHeading": "Older Canvas toolkit versions cannot be patched in place"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"canvas",
|
||
"for-you",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/canvas-troubleshooting",
|
||
"canvas-404s-on-course-analytics-usually-mean-the-course-or-endpoint-is",
|
||
"canvas-assignment-graded-trigger-is-expected-to-work-for-teacher-accou",
|
||
"canvas-create-calendar-event-can-use-a-user-id-and-canvas-api-field-na",
|
||
"canvas-discussion-topics-and-announcements-require-only-announcements",
|
||
"canvas-does-not-expose-webhooks-for-every-requested-trigger-use-case",
|
||
"canvas-oauth-credentials-must-match-the-configured-canvas-base-url",
|
||
"canvas-quiz-matching-question-answers-use-unprefixed-answer-field-keys",
|
||
"canvas-response-schemas-are-being-standardized-gradually-not-universal",
|
||
"canvas-trigger-payloads-expose-canvas-user-id-separately-as-canvas-use",
|
||
"canvas-triggers-are-available-and-course-selection-can-be-driven-from",
|
||
"canvas-troubleshooting",
|
||
"older-canvas-toolkit-versions-cannot-be-patched-in-place",
|
||
"paginate-canvas-list-results",
|
||
"resolve-canvas-account-endpoint-access-errors",
|
||
"toolkit-versioning-does-not-version-canvas-trigger-logic",
|
||
"use-shorter-polling-intervals-for-canvas-triggers-when-longer-interval"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-clickup",
|
||
"title": "ClickUp",
|
||
"description": "Public support knowledge for ClickUp.",
|
||
"articlePath": "toolkits-clickup.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/clickup/public.md",
|
||
"sourceHeading": "ClickUp supports managed OAuth, custom OAuth, and API-key credentials"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/clickup/public.md",
|
||
"sourceHeading": "ClickUp custom OAuth should use the Composio callback URL registered in the ClickUp app"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/clickup/public.md",
|
||
"sourceHeading": "ClickUp folders and tasks are supported through `CLICKUP_GET_FOLDERS` and `CLICKUP_GET_TASKS`"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"clickup",
|
||
"for-you",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/clickup-troubleshooting",
|
||
"clickup-custom-oauth-should-use-the-composio-callback-url-registered-i",
|
||
"clickup-folders-and-tasks-are-supported-through-clickup-get-folders-an",
|
||
"clickup-supports-default-auth-or-customer-owned-credentials-when-creat",
|
||
"clickup-tokens-may-require-manual-provider-side-removal-if-programmati",
|
||
"clickup-troubleshooting",
|
||
"cursor-may-fail-when-too-many-mcp-servers-are-configured-keep-clickup"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-24",
|
||
"reviewAfter": "2026-11-22",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-confluence",
|
||
"title": "Confluence",
|
||
"description": "Public support knowledge for Confluence.",
|
||
"articlePath": "toolkits-confluence.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/confluence/public.md",
|
||
"sourceHeading": "Confluence custom OAuth should keep scopes aligned with Composio defaults and endpoint type"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/confluence/public.md",
|
||
"sourceHeading": "Add `offline_access` to Confluence auth configs when refresh tokens are needed"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/confluence/public.md",
|
||
"sourceHeading": "Use connected account ID, not auth config ID, when executing Confluence tools"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/confluence/public.md",
|
||
"sourceHeading": "Use `CONFLUENCE_GET_PAGE_BY_ID` to retrieve Confluence page content"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/confluence/public.md",
|
||
"sourceHeading": "`CONFLUENCE_UPDATE_PAGE` should be paired with `CONFLUENCE_GET_PAGE_VERSIONS` for versioned updates"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/confluence/public.md",
|
||
"sourceHeading": "Download Confluence attachments by first getting attachment IDs"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/confluence/public.md",
|
||
"sourceHeading": "Confluence tool scopes are exposed in MCP listTools annotations for supported deployments"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/confluence/public.md",
|
||
"sourceHeading": "For Atlassian/Confluence OAuth, use the same redirect URI in auth config and Atlassian app"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"confluence",
|
||
"for-you",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/confluence-troubleshooting",
|
||
"confluence-custom-oauth-should-keep-scopes-aligned-with-composio-defau",
|
||
"confluence-managed-oauth-failures-can-come-from-scope-mismatch-between",
|
||
"confluence-needs-offline-access-for-refresh",
|
||
"confluence-troubleshooting",
|
||
"download-confluence-attachments-by-first-getting-attachment-ids",
|
||
"for-atlassian-confluence-oauth-use-the-same-redirect-uri-in-auth-confi",
|
||
"page-created-triggers-can-auto-disable-after-repeated-cloud-id-lookup"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-16",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-databricks",
|
||
"title": "Databricks",
|
||
"description": "Public support knowledge for Databricks.",
|
||
"articlePath": "toolkits-databricks.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/databricks/public.md",
|
||
"sourceHeading": "Databricks OAuth client and secret setup reference"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/databricks/public.md",
|
||
"sourceHeading": "Enter Databricks API key credentials during connected account linking"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"databricks",
|
||
"for-you",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/databricks-troubleshooting",
|
||
"databricks-oauth-client-and-secret-setup-reference",
|
||
"databricks-requires-custom-credentials-when-managed-auth-is-unavailabl",
|
||
"databricks-toolkit-does-not-yet-support-oauth-m2m",
|
||
"databricks-troubleshooting",
|
||
"enter-databricks-api-key-credentials-during-connected-account-linking"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-digital-ocean",
|
||
"title": "DigitalOcean authentication",
|
||
"description": "Current authentication choices for the DigitalOcean toolkit.",
|
||
"articlePath": "toolkits-digital-ocean.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/digital_ocean/public.md",
|
||
"sourceHeading": "DigitalOcean supports managed OAuth2, custom OAuth2, or a personal access token"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"digital_ocean",
|
||
"for-you",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/managed-oauth-fails-before-consent-with-unsupported-parameters-or-inva",
|
||
"managed-oauth-fails-before-consent-with-unsupported-parameters-or-inva"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-08-17",
|
||
"lastVerifiedAt": "2026-08-24",
|
||
"reviewAfter": "2026-11-22",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-discord",
|
||
"title": "Discord",
|
||
"description": "Public support knowledge for Discord.",
|
||
"articlePath": "toolkits-discord.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/discord/public.md",
|
||
"sourceHeading": "Discord OAuth credentials do not have a fixed expiration period"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"discord",
|
||
"for-you",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/discordbot-401s-on-managed-oauth-were-a-known-managed-app-configuratio",
|
||
"/kb/toolkits/multiple-accounts-for-the-same-discord-app-were-not-supported-in-that",
|
||
"discordbot-401s-on-managed-oauth-were-a-known-managed-app-configuratio",
|
||
"multiple-accounts-for-the-same-discord-app-were-not-supported-in-that"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-discordbot",
|
||
"title": "Discord Bot",
|
||
"description": "Public support knowledge for Discord Bot.",
|
||
"articlePath": "toolkits-discordbot.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/discordbot/public.md",
|
||
"sourceHeading": "Discord and DiscordBot use different token types"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/discordbot/public.md",
|
||
"sourceHeading": "Verify Discord auth config scopes when bot actions do not respond"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"discordbot",
|
||
"for-you",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/authentication/discord-bot-troubleshooting",
|
||
"/kb/toolkits/discord-message-triggers-need-bot-token-auth-which-is-not-available-th",
|
||
"/kb/toolkits/multiple-connected-accounts-for-the-same-app-are-not-supported",
|
||
"choose-discordbot-for-bot-token-operations",
|
||
"discord-bot-troubleshooting",
|
||
"discord-message-triggers-need-bot-token-auth-which-is-not-available-th",
|
||
"managed-discordbot-oauth-401s-can-be-worked-around-with-custom-credent",
|
||
"multiple-connected-accounts-for-the-same-app-are-not-supported",
|
||
"verify-discord-auth-config-scopes-when-bot-actions-do-not-respond"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-docusign",
|
||
"title": "DocuSign",
|
||
"description": "Public support knowledge for DocuSign.",
|
||
"articlePath": "toolkits-docusign.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/docusign/public.md",
|
||
"sourceHeading": "DocuSign auth guide URL"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"docusign",
|
||
"for-you",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/docusign-auth-guide-url",
|
||
"docusign-auth-guide-url"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-dropbox",
|
||
"title": "Dropbox",
|
||
"description": "Public support knowledge for Dropbox.",
|
||
"articlePath": "toolkits-dropbox.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/dropbox/public.md",
|
||
"sourceHeading": "Allow the Composio auth-app redirect URL in the Dropbox app"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/dropbox/public.md",
|
||
"sourceHeading": "Dropbox connections use Dropbox native OAuth, not Microsoft/Azure/Outlook login"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/dropbox/public.md",
|
||
"sourceHeading": "For Dropbox upload, `path` is the Dropbox destination and `content` is the local file path"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/dropbox/public.md",
|
||
"sourceHeading": "Pass file paths to SDK attachment arguments rather than base64/file metadata objects"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/dropbox/public.md",
|
||
"sourceHeading": "Use DROPBOX_GET_ABOUT_ME to confirm which Dropbox account is connected"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"dropbox",
|
||
"for-you",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/dropbox-triggers-are-not-currently-available",
|
||
"/kb/toolkits/dropbox-troubleshooting",
|
||
"allow-the-composio-auth-app-redirect-url-in-the-dropbox-app",
|
||
"dropbox-connections-use-dropbox-native-oauth-not-microsoft-azure-outlo",
|
||
"dropbox-triggers-are-not-currently-available",
|
||
"dropbox-troubleshooting",
|
||
"for-dropbox-upload-path-is-the-dropbox-destination-and-content-is-the",
|
||
"initiate-dropbox-oauth-connections-with-entityid-authmode-integrationi",
|
||
"pass-file-paths-to-sdk-attachment-arguments-rather-than-base64-file-me",
|
||
"recreate-older-dropbox-integrations-after-composio-updates-the-default",
|
||
"use-custom-dropbox-oauth-credentials-for-production-instead-of-the-def",
|
||
"use-dropbox-get-about-me-to-confirm-which-dropbox-account-is-connected"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-excel",
|
||
"title": "Excel",
|
||
"description": "Public support knowledge for Excel.",
|
||
"articlePath": "toolkits-excel.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/excel/public.md",
|
||
"sourceHeading": "EXCEL_UPDATE_RANGE values must be a 2D array"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/excel/public.md",
|
||
"sourceHeading": "Excel upload tools accept structured workbook data"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/excel/public.md",
|
||
"sourceHeading": "EXCEL_GET_RANGE failures can come from sheet name or item_id mismatches"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/excel/public.md",
|
||
"sourceHeading": "Use Excel toolkit actions for workbook operations on SharePoint-backed Excel files"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/excel/public.md",
|
||
"sourceHeading": "Excel uses the Microsoft auth guide at composio.dev/auth/outlook"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/excel/public.md",
|
||
"sourceHeading": "Upgrade if Excel schemas contain dollar-sign parameters"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/excel/public.md",
|
||
"sourceHeading": "Generic column formatting and wrapping are available in current versions"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"excel",
|
||
"for-you",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/excel-troubleshooting",
|
||
"excel-get-range-failures-can-come-from-sheet-name-or-item-id-mismatche",
|
||
"excel-support-for-oauth2-client-credentials-may-vary-by-action",
|
||
"excel-troubleshooting",
|
||
"excel-update-range-values-must-be-a-2d-array",
|
||
"excel-upload-tools-accept-structured-workbook-data",
|
||
"excel-uses-the-microsoft-auth-guide-at-composio-dev-auth-outlook",
|
||
"generic-column-formatting-and-wrapping-support-was-added-in-the-may-13",
|
||
"shared-item-listing-cannot-reliably-search-for-a-specific-shared-file",
|
||
"upgrade-older-on-prem-versions-if-excel-schemas-contain-dollar-sign-pa",
|
||
"use-excel-toolkit-actions-for-workbook-operations-on-sharepoint-backed"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-facebook",
|
||
"title": "Facebook",
|
||
"description": "Public support knowledge for Facebook.",
|
||
"articlePath": "toolkits-facebook.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/facebook/public.md",
|
||
"sourceHeading": "FACEBOOK_DELETE_POST failure can be fixed by using the latest Facebook toolkit version"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/facebook/public.md",
|
||
"sourceHeading": "Meta OAuth issues can require adding the Composio redirect URI in the Meta app settings"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/facebook/public.md",
|
||
"sourceHeading": "Facebook or Instagram connections authenticate the account selected in Meta's picker and cannot be repointed server-side"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/facebook/public.md",
|
||
"sourceHeading": "WhatsApp connections require WABA ID as generic_id, with bearer_token for API-key auth"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"facebook",
|
||
"for-you",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/facebook-troubleshooting",
|
||
"change-the-connected-facebook-or-instagram-account",
|
||
"connect-meta-ads-with-your-own-credentials",
|
||
"facebook-delete-post-failure-can-be-fixed-by-using-the-latest-facebook",
|
||
"facebook-troubleshooting",
|
||
"instagram-webhook-verification-config-is-not-needed-if-composio-has-no",
|
||
"meta-ads-toolkit-exists-missing-apis-should-be-filed-as-feature-reques",
|
||
"meta-ads-toolkit-was-updated-to-api-version-v24-0",
|
||
"whatsapp-connections-require-waba-id-as-generic-id-with-bearer-token-f",
|
||
"whatsapp-template-sending-needs-an-existing-template-and-required-phon"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-fathom",
|
||
"title": "Fathom",
|
||
"description": "Public support knowledge for Fathom.",
|
||
"articlePath": "toolkits-fathom.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/fathom/public.md",
|
||
"sourceHeading": "Fathom and granola_mcp are supported meeting transcription toolkits; request unsupported tools separately"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/fathom/public.md",
|
||
"sourceHeading": "OAuth authorization URLs are provider-specific"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"fathom",
|
||
"for-you",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/fathom-troubleshooting",
|
||
"fathom-and-granola-mcp-are-supported-meeting-transcription-toolkits-re",
|
||
"fathom-troubleshooting",
|
||
"oauth-authorization-urls-are-provider-specific"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-figma",
|
||
"title": "Figma",
|
||
"description": "Public support knowledge for Figma.",
|
||
"articlePath": "toolkits-figma.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/figma/public.md",
|
||
"sourceHeading": "Figma token auth is handled by Composio; customers do not need a separate Bearer-token auth scheme"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/figma/public.md",
|
||
"sourceHeading": "`FIGMA_EXTRACT_DESIGN_TOKENS` variables may be limited by the customer's Figma plan"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/figma/public.md",
|
||
"sourceHeading": "Figma 429s can come from Figma/provider limits; use custom credentials for production"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/figma/public.md",
|
||
"sourceHeading": "Remove deprecated `file_read` from Figma auth configs and reconnect"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/figma/public.md",
|
||
"sourceHeading": "Figma tools are available across auth modes; fetch available tools dynamically"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/figma/public.md",
|
||
"sourceHeading": "Common Figma design-token tools include extract, Tailwind conversion, and node fetch"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"figma",
|
||
"for-you",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/figma-troubleshooting",
|
||
"figma-429s-can-come-from-figma-provider-limits-use-custom-credentials",
|
||
"figma-token-auth-is-handled-by-composio-customers-do-not-need-a-separa",
|
||
"figma-tools-are-available-across-auth-modes-fetch-available-tools-dyna",
|
||
"figma-troubleshooting",
|
||
"new-figma-scopes-may-require-custom-oauth-api-key-auth-because-default"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-firecrawl",
|
||
"title": "Firecrawl",
|
||
"description": "Public support knowledge for Firecrawl.",
|
||
"articlePath": "toolkits-firecrawl.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/firecrawl/public.md",
|
||
"sourceHeading": "Firecrawl uses API-key auth, not OAuth; provide a Firecrawl API key"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/firecrawl/public.md",
|
||
"sourceHeading": "Create a Firecrawl API-key connected account with generic_api_key"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/firecrawl/public.md",
|
||
"sourceHeading": "FIRECRAWL_SEARCH may be hidden by default tool list limits"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/firecrawl/public.md",
|
||
"sourceHeading": "Batch fewer URLs or raise timeout for long Firecrawl scrape jobs"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/firecrawl/public.md",
|
||
"sourceHeading": "Firecrawl API base URL is https://api.firecrawl.dev/v1"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/firecrawl/public.md",
|
||
"sourceHeading": "Use FIRECRAWL_SCRAPE or FIRECRAWL_EXTRACT for web-content retrieval"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/firecrawl/public.md",
|
||
"sourceHeading": "Connect MCP sessions are tied to individual consumer accounts, not a shared workspace"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"firecrawl",
|
||
"for-you",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/firecrawl-troubleshooting",
|
||
"batch-fewer-urls-or-raise-timeout-for-long-firecrawl-scrape-jobs",
|
||
"connect-mcp-sessions-are-tied-to-individual-consumer-accounts-not-a-sh",
|
||
"create-a-firecrawl-api-key-connected-account-with-generic-api-key",
|
||
"firecrawl-api-base-url-is-https-api-firecrawl-dev-v1",
|
||
"firecrawl-search-may-be-hidden-by-default-tool-list-limits",
|
||
"firecrawl-troubleshooting",
|
||
"firecrawl-uses-api-key-auth-not-oauth-provide-a-firecrawl-api-key",
|
||
"use-firecrawl-scrape-or-firecrawl-extract-for-web-content-retrieval"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-gemini",
|
||
"title": "Gemini",
|
||
"description": "Public support knowledge for Gemini.",
|
||
"articlePath": "toolkits-gemini.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/gemini/public.md",
|
||
"sourceHeading": "Gemini no-auth/toolkit usage is counted as regular Composio tool calls"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gemini/public.md",
|
||
"sourceHeading": "Use newer Gemini models such as `gemini-2.5-flash` instead of old `gemini-1.5-flash` defaults"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gemini/public.md",
|
||
"sourceHeading": "Gemini video generation should use supported Veo model names"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gemini/public.md",
|
||
"sourceHeading": "Use `GEMINI_WAIT_FOR_VIDEO` before using generated video output"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gemini/public.md",
|
||
"sourceHeading": "Disable automatic file handling when Gemini generated files should remain as URLs/content"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gemini/public.md",
|
||
"sourceHeading": "Gemini can use Composio Tool Router through any MCP client"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gemini/public.md",
|
||
"sourceHeading": "Gemini CLI MCP issues may be client-side; Claude can be a more stable fallback"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gemini/public.md",
|
||
"sourceHeading": "Gemini schema errors can come from Google's OpenAPI-vs-JSON-Schema limitations"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gemini/public.md",
|
||
"sourceHeading": "Composio supports Google Gemini/Vertex AI providers, with Python support historically ahead of JS"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gemini/public.md",
|
||
"sourceHeading": "LangChain MCP tools are not OpenAI-only and can work with Gemini-capable tool calling"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"gemini",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/gemini-troubleshooting",
|
||
"composio-supports-google-gemini-vertex-ai-providers-with-python-suppor",
|
||
"disable-automatic-file-handling-when-gemini-generated-files-should-rem",
|
||
"gemini-can-use-composio-tool-router-through-any-mcp-client",
|
||
"gemini-cli-mcp-issues-may-be-client-side-claude-can-be-a-more-stable-f",
|
||
"gemini-schema-errors-can-come-from-google-s-openapi-vs-json-schema-lim",
|
||
"gemini-toolkit-quota-is-shared",
|
||
"gemini-troubleshooting",
|
||
"gemini-video-generation-should-use-supported-veo-model-names",
|
||
"gemini-wait-for-video-can-fail-with-missing-presigned-url-after-succes",
|
||
"langchain-mcp-tools-are-not-openai-only-and-can-work-with-gemini-capab",
|
||
"use-gemini-get-videos-operation-or-gemini-wait-for-video-before-using",
|
||
"use-newer-gemini-models-such-as-gemini-2-5-flash-instead-of-old-gemini"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-github",
|
||
"title": "GitHub",
|
||
"description": "Public support knowledge for GitHub.",
|
||
"articlePath": "toolkits-github.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/github/public.md",
|
||
"sourceHeading": "GitHub V2 triggers do not require creating a webhook endpoint first"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/github/public.md",
|
||
"sourceHeading": "List GitHub organizations and repositories for the authenticated user"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/github/public.md",
|
||
"sourceHeading": "GitHub connected-account tokens are redacted from API responses"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/github/public.md",
|
||
"sourceHeading": "GitHub organization access can require approval from an organization owner"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/github/public.md",
|
||
"sourceHeading": "Session-level tool allowlists are enforced server-side at execution time"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/github/public.md",
|
||
"sourceHeading": "Use custom OAuth credentials for branded GitHub consent and redirect flows"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"github",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/github-troubleshooting",
|
||
"access-token-freshness-when-retrieving-tokens-for-direct-github-operat",
|
||
"connect-a-github-app",
|
||
"github-troubleshooting",
|
||
"github-v2-triggers-do-not-require-creating-a-webhook-endpoint-first",
|
||
"list-github-organizations-and-repositories-for-the-authenticated-user",
|
||
"session-level-tool-allowlists-are-enforced-server-side-at-execution-ti",
|
||
"use-custom-oauth-credentials-for-branded-github-consent-and-redirect-f",
|
||
"why-github-connected-account-tokens-may-show-as-redacted"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-gmail",
|
||
"title": "Gmail",
|
||
"description": "Public support knowledge for Gmail.",
|
||
"articlePath": "toolkits-gmail.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/gmail/public.md",
|
||
"sourceHeading": "Use `latest` or v3.1 for newer Gmail settings tools"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gmail/public.md",
|
||
"sourceHeading": "Create Gmail custom OAuth auth config, then initiate a connection with callback URL"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gmail/public.md",
|
||
"sourceHeading": "Creating Gmail filters requires `gmail.settings.basic`"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gmail/public.md",
|
||
"sourceHeading": "`gmail.send` is granular but sensitive; `mail.google.com` gives full access"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gmail/public.md",
|
||
"sourceHeading": "Configure Gmail scopes on managed auth config as a comma-joined scopes string"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gmail/public.md",
|
||
"sourceHeading": "Avoid `gmail.metadata` when fetching full Gmail email content"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gmail/public.md",
|
||
"sourceHeading": "Use `me` for Gmail `user_id` in tool calls"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gmail/public.md",
|
||
"sourceHeading": "`GMAIL_SEND_EMAIL` accepts at least one of `to`, `cc`, or `bcc`"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gmail/public.md",
|
||
"sourceHeading": "For Gmail attachments over MCP, upload files before tool execution"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gmail/public.md",
|
||
"sourceHeading": "Gmail attachment sends can outlast a client timeout; verify before retrying"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gmail/public.md",
|
||
"sourceHeading": "Reduce Gmail fetch payload size with `include_payload=false`, `verbose=false`, `only_ids`, query, and limits"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gmail/public.md",
|
||
"sourceHeading": "Use `from_email` to select Gmail send-as alias"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gmail/public.md",
|
||
"sourceHeading": "Use Gmail label IDs, not label names, for label operations"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gmail/public.md",
|
||
"sourceHeading": "Patch Gmail label colors with `background_color` and accepted color values"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gmail/public.md",
|
||
"sourceHeading": "Filter Gmail new-message trigger by label/query instead of label IDs"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gmail/public.md",
|
||
"sourceHeading": "Use `googlesuper` for one Google auth across Gmail, Calendar, Drive-style use cases"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"gmail",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/gmail-troubleshooting",
|
||
"configure-gmail-scopes-on-managed-auth-config-as-a-comma-joined-scopes",
|
||
"create-gmail-filters-scope",
|
||
"filter-gmail-new-message-trigger-by-label-query-instead-of-label-ids",
|
||
"for-gmail-attachments-over-mcp-upload-files-before-tool-execution",
|
||
"gmail-attachments-can-make-send-email-slow-enough-to-hit-sdk-request-t",
|
||
"gmail-send-email-accepts-at-least-one-of-to-cc-or-bcc",
|
||
"gmail-send-is-granular-but-sensitive-mail-google-com-gives-full-access",
|
||
"gmail-troubleshooting",
|
||
"patch-gmail-label-colors-with-background-color-and-accepted-color-valu",
|
||
"reduce-gmail-fetch-payload-size",
|
||
"send-gmail-from-a-send-as-alias",
|
||
"use-gmail-label-ids-not-label-names-for-label-operations",
|
||
"use-googlesuper-for-one-google-auth-across-gmail-calendar-drive-style",
|
||
"use-latest-or-v3-1-for-newer-gmail-settings-tools",
|
||
"verbose-gmail-thread-results-cannot-select-custom-fields-and-may-not-b"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-14",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-gong",
|
||
"title": "Gong",
|
||
"description": "Public support knowledge for Gong.",
|
||
"articlePath": "toolkits-gong.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/gong/public.md",
|
||
"sourceHeading": "Gong base URL differs by customer and should be provided at connection time"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gong/public.md",
|
||
"sourceHeading": "Gong connection initiation can use Basic auth fields: access key, access key secret, and Gong URL"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/gong/public.md",
|
||
"sourceHeading": "Gong MCP tool scopes can be read from tool annotations in the tools API"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"gong",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/gong-triggers-were-planned-requested-but-may-not-be-available-for-ever",
|
||
"/kb/toolkits/gong-troubleshooting",
|
||
"gong-base-url-differs-by-customer-and-should-be-provided-at-connection",
|
||
"gong-connection-initiation-can-use-basic-auth-fields-access-key-access",
|
||
"gong-mcp-tool-scopes-can-be-read-from-tool-annotations-in-the-tools-ap",
|
||
"gong-oauth2-support-may-need-to-be-treated-as-a-feature-request-if-not",
|
||
"gong-triggers-were-planned-requested-but-may-not-be-available-for-ever",
|
||
"gong-troubleshooting"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-google-analytics",
|
||
"title": "Google Analytics",
|
||
"description": "Public support knowledge for Google Analytics.",
|
||
"articlePath": "toolkits-google-analytics.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/google_analytics/public.md",
|
||
"sourceHeading": "Use latest toolkit version when Google Analytics tools return ToolNotFound or only a few tools"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/google_analytics/public.md",
|
||
"sourceHeading": "Add Google Analytics to an MCP config as a selected tool/toolkit"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/google_analytics/public.md",
|
||
"sourceHeading": "Empty Google Analytics reports may be provider data availability rather than Composio failure"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"google_analytics",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/google-analytics-troubleshooting",
|
||
"add-google-analytics-to-an-mcp-config-as-a-selected-tool-toolkit",
|
||
"empty-google-analytics-reports-may-be-provider-data-availability-rathe",
|
||
"google-analytics-troubleshooting",
|
||
"old-google-analytics-mcp-could-show-0-actions-because-it-was-auth-only",
|
||
"use-latest-toolkit-version-when-google-analytics-tools-return-toolnotf"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-google-calendar",
|
||
"title": "Google Calendar",
|
||
"description": "Public support knowledge for Google Calendar.",
|
||
"articlePath": "toolkits-google-calendar.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/google_calendar/public.md",
|
||
"sourceHeading": "Create a Google Calendar integration to access tools and triggers"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/google_calendar/public.md",
|
||
"sourceHeading": "Updating RSVP status has an attendee-list API limitation"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/google_calendar/public.md",
|
||
"sourceHeading": "Canceled/deleted event trigger sends payloads for canceled or deleted events"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/google_calendar/public.md",
|
||
"sourceHeading": "Multiple triggers for the same slug/user can target different calendar IDs"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/google_calendar/public.md",
|
||
"sourceHeading": "`calendar.events` scope is required for event list/fetch flows"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/google_calendar/public.md",
|
||
"sourceHeading": "Google Calendar triggers now return full event data instead of only an ID"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/google_calendar/public.md",
|
||
"sourceHeading": "Google Calendar trigger moved toward polling for more verbose payloads"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/google_calendar/public.md",
|
||
"sourceHeading": "Use trigger-types endpoint to retrieve Google Calendar trigger info programmatically"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/google_calendar/public.md",
|
||
"sourceHeading": "Use Find Free Slots when you need processed availability; free/busy does not do timezone processing"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/google_calendar/public.md",
|
||
"sourceHeading": "Use `primary` as calendar ID; `me` is not valid for calendar ID"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/google_calendar/public.md",
|
||
"sourceHeading": "Use latest Google Calendar toolkit version when filters are ignored"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/google_calendar/public.md",
|
||
"sourceHeading": "Google Calendar meeting link is returned in `hangout_link`"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"google_calendar",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/authentication/google-calendar-troubleshooting",
|
||
"calendar-events-scope-is-required-for-event-list-fetch-flows",
|
||
"composio-does-not-support-org-wide-google-workspace-authentication-for",
|
||
"create-a-google-calendar-integration-to-access-tools-and-triggers",
|
||
"google-calendar-trigger-moved-toward-polling-for-more-verbose-payloads",
|
||
"google-calendar-troubleshooting",
|
||
"updating-rsvp-status-has-an-attendee-list-api-limitation",
|
||
"use-find-free-slots-when-you-need-processed-availability-free-busy-doe",
|
||
"use-latest-google-calendar-toolkit-version-when-filters-are-ignored",
|
||
"use-primary-for-google-calendar-id",
|
||
"use-trigger-types-endpoint-to-retrieve-google-calendar-trigger-info-pr"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-google-classroom",
|
||
"title": "Google Classroom",
|
||
"description": "Public OAuth and connection troubleshooting for Google Classroom.",
|
||
"articlePath": "toolkits-google-classroom.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/google_classroom/public.md",
|
||
"sourceHeading": "Set up custom Google OAuth credentials"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/google_classroom/public.md",
|
||
"sourceHeading": "Resolve an \"App is blocked\" connection error"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/google_classroom/public.md",
|
||
"sourceHeading": "Enable the Google Classroom API for custom OAuth"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/google_classroom/public.md",
|
||
"sourceHeading": "Resolve `Error 400: invalid_scope`"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/google_classroom/public.md",
|
||
"sourceHeading": "Choose managed or customer-owned Google OAuth"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/google_classroom/public.md",
|
||
"sourceHeading": "Resolve 401 errors on tool calls"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"google_classroom",
|
||
"oauth",
|
||
"platform",
|
||
"scopes"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/google-classroom-troubleshooting",
|
||
"enable-the-google-classroom-api-for-custom-oauth",
|
||
"google-blocks-sensitive-gmail-scopes",
|
||
"google-classroom-troubleshooting",
|
||
"resolve-401-errors-on-tool-calls",
|
||
"resolve-an-app-is-blocked-connection-error",
|
||
"resolve-an-app-is-blocked-connection-error-2",
|
||
"resolve-error-400-invalid-scope",
|
||
"set-up-custom-google-oauth-credentials",
|
||
"this-app-is-blocked-means-the-requested-google-scope-is-not-verified-o"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-24",
|
||
"lastVerifiedAt": "2026-08-24",
|
||
"reviewAfter": "2026-11-22",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-google-maps",
|
||
"title": "Google Maps",
|
||
"description": "Public support knowledge for Google Maps.",
|
||
"articlePath": "toolkits-google-maps.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/google_maps/public.md",
|
||
"sourceHeading": "Maps Embed API requires API-key authentication"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/google_maps/public.md",
|
||
"sourceHeading": "Google Maps OAuth can be blocked by sensitive cloud-platform scope"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/google_maps/public.md",
|
||
"sourceHeading": "Validate Places `includedTypes` against Google's supported place types"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/google_maps/public.md",
|
||
"sourceHeading": "Deprecated `GEOCODING_API` is not the Google Maps toolkit tool to use"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/google_maps/public.md",
|
||
"sourceHeading": "Google Maps APIs may require billing and quota management in GCP"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"google_maps",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/google-maps-troubleshooting",
|
||
"deprecated-geocoding-api-is-not-the-google-maps-toolkit-tool-to-use",
|
||
"google-maps-apis-may-require-billing-and-quota-management-in-gcp",
|
||
"google-maps-oauth-can-be-blocked-by-sensitive-cloud-platform-scope",
|
||
"google-maps-troubleshooting",
|
||
"maps-embed-api-requires-api-key-authentication",
|
||
"recreate-google-maps-auth-configs-after-default-oauth-app-updates",
|
||
"validate-places-includedtypes-against-google-s-supported-place-types"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-googleads",
|
||
"title": "Google Ads",
|
||
"description": "Public support knowledge for Google Ads.",
|
||
"articlePath": "toolkits-googleads.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/googleads/public.md",
|
||
"sourceHeading": "Google Ads developer token now belongs on the auth config, not connection initiation"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googleads/public.md",
|
||
"sourceHeading": "Google Ads API requires both OAuth access token and developer token"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googleads/public.md",
|
||
"sourceHeading": "Google Ads toolkit versions should be passed without the dashboard `v` prefix"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googleads/public.md",
|
||
"sourceHeading": "Google Ads MCC/sub-account customer ID targeting is supported"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googleads/public.md",
|
||
"sourceHeading": "Campaign mutate 400s can be caused by unsupported inline Campaign fields"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googleads/public.md",
|
||
"sourceHeading": "Google Ads OAuth callback token-exchange failures usually point to incorrect credentials"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googleads/public.md",
|
||
"sourceHeading": "Custom Google OAuth apps need callback routing through the customer's domain for branded consent"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"googleads",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/google-ads-troubleshooting",
|
||
"custom-google-oauth-apps-need-callback-routing-through-the-customer-s",
|
||
"google-ads-campaign-mutate-invalid-argument",
|
||
"google-ads-developer-token-belongs-on-the-auth-config",
|
||
"google-ads-oauth-callback-token-exchange-failures-usually-point-to-bad",
|
||
"google-ads-resource-exhausted-errors",
|
||
"google-ads-toolkit-versions-should-be-passed-without-the-dashboard-v-p",
|
||
"google-ads-troubleshooting",
|
||
"older-sdk-workaround-passed-google-ads-developer-token-and-customer-id",
|
||
"target-a-google-ads-sub-account"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-14",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-googlebigquery",
|
||
"title": "Google BigQuery",
|
||
"description": "Current authentication guidance for the Google BigQuery toolkit.",
|
||
"articlePath": "toolkits-googlebigquery.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/googlebigquery/public.md",
|
||
"sourceHeading": "BigQuery supports managed OAuth2, custom OAuth2, and service-account auth"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"googlebigquery",
|
||
"oauth",
|
||
"platform"
|
||
],
|
||
"aliases": [],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-08-17",
|
||
"lastVerifiedAt": "2026-08-24",
|
||
"reviewAfter": "2026-11-22",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-googledocs",
|
||
"title": "Google Docs",
|
||
"description": "Public support knowledge for Google Docs.",
|
||
"articlePath": "toolkits-googledocs.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/googledocs/public.md",
|
||
"sourceHeading": "`GOOGLEDOCS_CREATE_DOCUMENT_MARKDOWN` accepts GitHub-Flavored Markdown and HTML tables"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googledocs/public.md",
|
||
"sourceHeading": "Google Docs tab-level read and edit is supported by specific Google Docs tools"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googledocs/public.md",
|
||
"sourceHeading": "Google Docs supports managed and customer-owned OAuth2"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googledocs/public.md",
|
||
"sourceHeading": "Google sensitive scopes can cause app-blocked errors unless the OAuth app is verified"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googledocs/public.md",
|
||
"sourceHeading": "Google OAuth tokens are redacted from connected-account responses"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googledocs/public.md",
|
||
"sourceHeading": "Multiple Google accounts require explicit multi-account selection"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googledocs/public.md",
|
||
"sourceHeading": "Tool Router v2 sessions require connected accounts to belong to the same user/entity"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googledocs/public.md",
|
||
"sourceHeading": "Specify Google auth config IDs at session creation so Manage Connection uses the intended configs"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googledocs/public.md",
|
||
"sourceHeading": "Platform connections are isolated from For You / Connect MCP connections"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"googledocs",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/google-docs-troubleshooting",
|
||
"google-docs-tab-level-read-and-edit-is-supported-by-specific-google-do",
|
||
"google-docs-troubleshooting",
|
||
"google-sensitive-scopes-can-cause-app-blocked-errors-unless-the-oauth",
|
||
"googledocs-create-document-markdown-accepts-github-flavored-markdown-a",
|
||
"managed-google-oauth-tokens-stay-redacted-custom-oauth-is-needed-for-r",
|
||
"multiple-google-accounts-require-multi-account-support-or-distinct-con",
|
||
"platform-connections-are-isolated-from-for-you-connect-mcp-connections",
|
||
"specify-google-auth-config-ids-at-session-creation-so-manage-connectio",
|
||
"tool-router-v2-sessions-require-connected-accounts-to-belong-to-the-sa"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-24",
|
||
"reviewAfter": "2026-11-22",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-googledrive",
|
||
"title": "Google Drive",
|
||
"description": "Public support knowledge for Google Drive.",
|
||
"articlePath": "toolkits-googledrive.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/googledrive/public.md",
|
||
"sourceHeading": "Google Drive upload tools can accept local file paths or URLs through SDK auto file handling"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googledrive/public.md",
|
||
"sourceHeading": "Connect MCP exposes a curated Google Drive tool set and discovers the rest through meta-tools"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googledrive/public.md",
|
||
"sourceHeading": "Google Drive watch/change webhooks require a public endpoint"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googledrive/public.md",
|
||
"sourceHeading": "Google Drive downloads use temporary presigned URLs with configurable URL TTL and short-lived storage"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googledrive/public.md",
|
||
"sourceHeading": "Disable SDK auto file handling when you need the raw Google Drive download output instead of a local path"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googledrive/public.md",
|
||
"sourceHeading": "Use customer-owned Google OAuth credentials with verified scopes"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googledrive/public.md",
|
||
"sourceHeading": "A missing Google Drive tool can be caused by passing an invalid toolkit version"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googledrive/public.md",
|
||
"sourceHeading": "For a Google Drive file-browser UI, prefer direct tool execution over MCP as the primary integration layer"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googledrive/public.md",
|
||
"sourceHeading": "Use `GOOGLEDRIVE_GET_ABOUT` to confirm which Google Drive account is connected"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googledrive/public.md",
|
||
"sourceHeading": "Google Drive tool execution requests should include an `arguments` object, even when it is empty"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googledrive/public.md",
|
||
"sourceHeading": "Tool Router v2 sessions require all connected accounts to belong to the same entity"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googledrive/public.md",
|
||
"sourceHeading": "Choose the narrowest Google Drive scope that supports the workflow"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"googledrive",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/google-drive-troubleshooting",
|
||
"a-missing-google-drive-tool-can-be-caused-by-passing-an-invalid-toolki",
|
||
"disable-sdk-auto-file-handling-when-you-need-the-raw-google-drive-down",
|
||
"for-a-google-drive-file-browser-ui-prefer-direct-tool-execution-over-m",
|
||
"google-drive-downloads-use-temporary-presigned-urls-with-configurable",
|
||
"google-drive-tool-execution-requests-should-include-an-arguments-objec",
|
||
"google-drive-troubleshooting",
|
||
"google-drive-upload-tools-can-accept-local-file-paths-or-urls-through",
|
||
"google-drive-watch-change-webhooks-require-a-public-endpoint",
|
||
"managed-google-drive-scope-is-narrow",
|
||
"tool-router-v2-sessions-require-all-connected-accounts-to-belong-to-th",
|
||
"use-custom-google-oauth-credentials-when-managed-credentials-are-not-v"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-googlemeet",
|
||
"title": "Google Meet",
|
||
"description": "Public support knowledge for Google Meet.",
|
||
"articlePath": "toolkits-googlemeet.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/googlemeet/public.md",
|
||
"sourceHeading": "Use Google Super tool slugs with a Google Super connected account"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googlemeet/public.md",
|
||
"sourceHeading": "Configure Meet scopes and enable the Google Meet API before creating Meet spaces"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googlemeet/public.md",
|
||
"sourceHeading": "Fetch transcript entries by first resolving the conference record"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googlemeet/public.md",
|
||
"sourceHeading": "403 permission errors usually mean the conference resource is inaccessible or missing"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googlemeet/public.md",
|
||
"sourceHeading": "Recordings and transcripts require an eligible Google Workspace edition and enabled feature"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"googlemeet",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/google-meet-troubleshooting",
|
||
"403-permission-errors-usually-mean-the-conference-resource-is-inaccess",
|
||
"configure-meet-scopes-and-enable-the-google-meet-api-before-creating-m",
|
||
"google-meet-troubleshooting",
|
||
"google-workspace-enterprise-is-required-to-record-meetings-and-access",
|
||
"use-google-super-tool-slugs-with-a-google-super-connected-account"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-googlesheets",
|
||
"title": "Google Sheets",
|
||
"description": "Public support knowledge for Google Sheets.",
|
||
"articlePath": "toolkits-googlesheets.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/googlesheets/public.md",
|
||
"sourceHeading": "Platform Google Sheets connections are isolated from For You Connect MCP"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googlesheets/public.md",
|
||
"sourceHeading": "Fetch more than the default 20 Google Sheets tools with `limit`"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googlesheets/public.md",
|
||
"sourceHeading": "Google Sheets MCP may require the spreadsheet ID instead of searching by name"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googlesheets/public.md",
|
||
"sourceHeading": "Use the current values tools to update, append, or create a populated sheet"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googlesheets/public.md",
|
||
"sourceHeading": "Execute Google Sheets tools by passing the exact tool slug"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googlesheets/public.md",
|
||
"sourceHeading": "Google Sheets 403s can be caused by an old placeholder toolkit version"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googlesheets/public.md",
|
||
"sourceHeading": "Use Google Super when one Google connection should cover Gmail, Sheets, Docs, Drive, and other Google tools"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googlesheets/public.md",
|
||
"sourceHeading": "Use full Google scope URLs such as `https://www.googleapis.com/auth/drive`, not shorthand `/drive`"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googlesheets/public.md",
|
||
"sourceHeading": "Google Sheets provider quotas are separate from Composio plan limits"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"googlesheets",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/authentication/google-sheets-troubleshooting",
|
||
"execute-google-sheets-tools-by-passing-the-exact-tool-slug",
|
||
"fetch-more-than-the-default-20-google-sheets-tools-with-limit",
|
||
"google-sheets-403s-can-be-caused-by-an-old-placeholder-toolkit-version",
|
||
"google-sheets-429s-are-google-s-api-quota-and-shared-default-oauth-can",
|
||
"google-sheets-auth-configs-require-full-scope-uris",
|
||
"google-sheets-mcp-may-require-the-spreadsheet-id-instead-of-searching",
|
||
"google-sheets-oauth-cannot-be-scoped-to-a-drive-folder",
|
||
"google-sheets-troubleshooting",
|
||
"old-google-sheets-integrations-may-need-a-new-integration-to-access-ne",
|
||
"platform-google-sheets-connections-are-isolated-from-for-you-connect-m",
|
||
"use-google-super-when-one-google-connection-should-cover-gmail-sheets",
|
||
"use-googlesheets-batch-update-or-googlesheets-sheet-from-json-to-add-v"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-googleslides",
|
||
"title": "Google Slides",
|
||
"description": "Public support knowledge for Google Slides.",
|
||
"articlePath": "toolkits-googleslides.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/googleslides/public.md",
|
||
"sourceHeading": "Use Google Drive search to list or discover Google Slides presentations"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googleslides/public.md",
|
||
"sourceHeading": "`GOOGLESLIDES_PRESENTATIONS_GET` needs the presentation ID from the URL or Drive payload"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googleslides/public.md",
|
||
"sourceHeading": "Use the same Google account when pairing Drive discovery with Google Slides reads"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googleslides/public.md",
|
||
"sourceHeading": "Google Slide creation tools are available through Google Super"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googleslides/public.md",
|
||
"sourceHeading": "Custom Google Slides OAuth apps must be verified for sensitive scopes"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googleslides/public.md",
|
||
"sourceHeading": "Google Slides supports one trigger in Composio"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"googleslides",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/google-slides-troubleshooting",
|
||
"custom-google-slides-oauth-apps-must-be-verified-for-sensitive-scopes",
|
||
"google-slide-creation-tools-are-available-through-google-super",
|
||
"google-slides-may-require-a-custom-oauth-app-instead-of-default-compos",
|
||
"google-slides-troubleshooting",
|
||
"googledrive-create-file-from-text-cannot-create-native-google-slides-f",
|
||
"googleslides-presentations-get-needs-the-presentation-id-from-the-url",
|
||
"use-google-drive-search-to-list-or-discover-google-slides-presentation",
|
||
"use-the-same-google-account-when-pairing-drive-discovery-with-google-s"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-googlesuper",
|
||
"title": "Google Super",
|
||
"description": "Public support knowledge for Google Super.",
|
||
"articlePath": "toolkits-googlesuper.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/googlesuper/public.md",
|
||
"sourceHeading": "Google Super is a unified Google Workspace toolkit"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googlesuper/public.md",
|
||
"sourceHeading": "Google Meet through Google Super needs Meet scopes and Google Meet API enabled"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googlesuper/public.md",
|
||
"sourceHeading": "Google Super can be narrowed by removing unneeded scopes and tools"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googlesuper/public.md",
|
||
"sourceHeading": "Gmail filter creation through Google Super also requires `gmail.settings.basic`"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googlesuper/public.md",
|
||
"sourceHeading": "`GOOGLESUPER_LIST_LABELS` with `include_details=true` can be slow because it fans out per label"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googlesuper/public.md",
|
||
"sourceHeading": "Gmail thread listing includes `resultSizeEstimate`"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googlesuper/public.md",
|
||
"sourceHeading": "Use Gmail/Google Super query and label filters to find sent or labeled messages"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googlesuper/public.md",
|
||
"sourceHeading": "Google Super Sheets 404s can mean wrong spreadsheet ID, missing access, or missing spreadsheet scope"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googlesuper/public.md",
|
||
"sourceHeading": "`Connection initiation did not complete within 10 minutes` means OAuth consent was not completed, not token refresh failure"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googlesuper/public.md",
|
||
"sourceHeading": "Google users can deselect scopes during consent; Composio marks active if token exchange succeeds"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"googlesuper",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/google-super-troubleshooting",
|
||
"connection-initiation-did-not-complete-within-10-minutes-means-oauth-c",
|
||
"gmail-filter-creation-through-google-super-also-requires-gmail-setting",
|
||
"google-meet-through-google-super-needs-meet-scopes-and-google-meet-api",
|
||
"google-super-can-be-narrowed-by-removing-unneeded-scopes-and-tools",
|
||
"google-super-cannot-schedule-gmail-emails-out-of-the-box",
|
||
"google-super-is-a-unified-google-workspace-toolkit",
|
||
"google-super-sheets-404s-can-mean-wrong-spreadsheet-id-missing-access",
|
||
"google-super-troubleshooting",
|
||
"google-users-can-deselect-scopes-during-consent-composio-marks-active",
|
||
"googlesuper-list-labels-with-include-details-true-can-be-slow-because",
|
||
"googlesuper-list-threads-verbose-behavior-trades-payload-latency-for-d",
|
||
"managed-google-super-oauth-issues-can-be-unblocked-by-switching-to-a-c",
|
||
"missing-google-super-endpoints-should-be-filed-as-tool-requests-not-to",
|
||
"resultsizeestimate-was-added-to-gmail-thread-listing-response",
|
||
"use-gmail-google-super-query-and-label-filters-to-find-sent-or-labeled"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-googletasks",
|
||
"title": "Google Tasks",
|
||
"description": "Public OAuth, connection, and quota troubleshooting for Google Tasks.",
|
||
"articlePath": "toolkits-googletasks.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/googletasks/public.md",
|
||
"sourceHeading": "Set up custom Google OAuth credentials"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googletasks/public.md",
|
||
"sourceHeading": "Resolve an \"App is blocked\" connection error"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googletasks/public.md",
|
||
"sourceHeading": "Enable the Google Tasks API for custom OAuth"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googletasks/public.md",
|
||
"sourceHeading": "Resolve `Error 400: invalid_scope`"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googletasks/public.md",
|
||
"sourceHeading": "Choose managed or customer-owned Google OAuth"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/googletasks/public.md",
|
||
"sourceHeading": "Resolve 401 errors on tool calls"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"googletasks",
|
||
"oauth",
|
||
"platform",
|
||
"quotas",
|
||
"scopes"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/google-tasks-troubleshooting",
|
||
"enable-the-google-tasks-api-for-custom-oauth",
|
||
"google-tasks-troubleshooting",
|
||
"handle-quota-or-rate-limit-exhaustion",
|
||
"resolve-error-400-invalid-scope-2",
|
||
"set-up-custom-google-oauth-credentials-2"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-24",
|
||
"lastVerifiedAt": "2026-08-24",
|
||
"reviewAfter": "2026-11-22",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-granola-mcp",
|
||
"title": "Granola MCP",
|
||
"description": "Public behavior and schema guidance for the official Granola MCP server.",
|
||
"articlePath": "toolkits-granola-mcp.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/granola_mcp/public.md",
|
||
"sourceHeading": "Composio mirrors Granola's official MCP server"
|
||
}
|
||
],
|
||
"topics": [
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"granola",
|
||
"mcp",
|
||
"platform",
|
||
"schemas"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/granola-mcp-metadata-comes-from-the-upstream-server",
|
||
"granola-mcp-metadata-comes-from-the-upstream-server"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-14",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-hubspot",
|
||
"title": "HubSpot",
|
||
"description": "Public support knowledge for HubSpot.",
|
||
"articlePath": "toolkits-hubspot.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/hubspot/public.md",
|
||
"sourceHeading": "Minimum HubSpot contact scopes are contact read/write"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/hubspot/public.md",
|
||
"sourceHeading": "Use Composio scopes API or HubSpot docs to find required HubSpot scopes"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/hubspot/public.md",
|
||
"sourceHeading": "Create custom HubSpot tools through toolkit-authenticated API requests"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/hubspot/public.md",
|
||
"sourceHeading": "HubSpot trigger setup needs the HubSpot app ID"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/hubspot/public.md",
|
||
"sourceHeading": "Use custom HubSpot credentials for white-label auth"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/hubspot/public.md",
|
||
"sourceHeading": "HubSpot scopes must be predeclared in the HubSpot app config"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/hubspot/public.md",
|
||
"sourceHeading": "HubSpot OAuth token-fetch 400: check client secret and required-scope alignment"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/hubspot/public.md",
|
||
"sourceHeading": "Old HubSpot SDK/toolkit versions use old double-prefixed slugs"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/hubspot/public.md",
|
||
"sourceHeading": "HubSpot auth loops can be caused by HubSpot-side workspace/login state"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/hubspot/public.md",
|
||
"sourceHeading": "HubSpot marketing campaign objects do not expose a properties API like CRM objects"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/hubspot/public.md",
|
||
"sourceHeading": "HubSpot triggers require each customer’s own app ID and developer API key"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/hubspot/public.md",
|
||
"sourceHeading": "Deleting a HubSpot connected account disconnects it and stops token refresh"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"hubspot",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/authentication/hubspot-troubleshooting",
|
||
"/kb/toolkits/after-hubspot-trigger-fixes-recreate-old-triggers",
|
||
"after-hubspot-trigger-fixes-recreate-old-triggers",
|
||
"composio-does-not-provide-hubspot-field-level-permissions-restrict-by",
|
||
"create-custom-hubspot-tools-through-toolkit-authenticated-api-requests",
|
||
"fix-hubspot-oauth-token-exchange-400-client-secret-and-scopes",
|
||
"hubspot-auth-loops-can-be-caused-by-hubspot-side-workspace-login-state",
|
||
"hubspot-managed-oauth-app-unverified-warning-has-no-reliable-eta-byoa",
|
||
"hubspot-marketing-campaign-objects-do-not-expose-a-properties-api-like",
|
||
"hubspot-scopes-must-be-predeclared-in-the-hubspot-app-config",
|
||
"hubspot-trigger-setup-needs-the-hubspot-app-id",
|
||
"hubspot-triggers-require-each-customer-s-own-app-id-and-developer-api",
|
||
"hubspot-troubleshooting",
|
||
"minimum-hubspot-contact-scopes-are-contact-read-write",
|
||
"some-hubspot-scopes-are-not-in-composio-managed-auth-use-own-oauth-app",
|
||
"use-composio-scopes-api-or-hubspot-docs-to-find-required-hubspot-scope",
|
||
"use-custom-hubspot-credentials-for-white-label-auth"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false,
|
||
"verifyIgnoreToolSlugs": [
|
||
"HUBSPOT_HUBSPOT_LIST_CONTACTS"
|
||
]
|
||
},
|
||
{
|
||
"slug": "toolkits-instagram",
|
||
"title": "Instagram",
|
||
"description": "Public support knowledge for Instagram.",
|
||
"articlePath": "toolkits-instagram.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/instagram/public.md",
|
||
"sourceHeading": "Instagram OAuth tokens are bound to the account selected in Facebook Login"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/instagram/public.md",
|
||
"sourceHeading": "Instagram uses Business Login and only supported/verified scopes should be configured"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/instagram/public.md",
|
||
"sourceHeading": "Instagram toolkit requires a Business/Creator account for supported business features"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/instagram/public.md",
|
||
"sourceHeading": "Use `INSTAGRAM_LIST_ALL_MESSAGES` to fetch Instagram messages"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/instagram/public.md",
|
||
"sourceHeading": "Instagram DM send failures with code 10/subcode 2534022 are Meta's 24-hour messaging window"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/instagram/public.md",
|
||
"sourceHeading": "For custom Instagram/Meta OAuth, configure the redirect URI in the Meta app"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/instagram/public.md",
|
||
"sourceHeading": "For Instagram DMs via n8n/Claude, Connect MCP can simplify setup"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/instagram/public.md",
|
||
"sourceHeading": "`INSTAGRAM_POST_IG_MEDIA_COMMENTS` failures can be caused by an incorrect `ig_media_id`"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/instagram/public.md",
|
||
"sourceHeading": "Instagram is available as a toolkit and can be connected via a new authConfig"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/instagram/public.md",
|
||
"sourceHeading": "Publish local media with `image_file` or `video_file`"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"instagram",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/instagram-troubleshooting",
|
||
"for-custom-instagram-meta-oauth-configure-the-redirect-uri-in-the-meta",
|
||
"for-instagram-dms-via-n8n-claude-connect-mcp-can-simplify-setup",
|
||
"instagram-dm-send-failures-with-code-10-subcode-2534022-are-meta-s-24",
|
||
"instagram-is-available-as-a-toolkit-and-can-be-connected-via-a-new-aut",
|
||
"instagram-oauth-tokens-are-bound-to-the-account-selected-in-facebook-l",
|
||
"instagram-post-ig-media-comments-failures-can-be-caused-by-an-incorrec",
|
||
"instagram-reply-to-comment-may-require-a-scope-not-available-in-the-ma",
|
||
"instagram-toolkit-requires-a-business-creator-account-for-supported-bu",
|
||
"instagram-troubleshooting",
|
||
"instagram-uses-business-login-and-only-supported-verified-scopes-shoul",
|
||
"stage-local-instagram-media-before-publishing",
|
||
"use-instagram-list-all-messages-to-fetch-instagram-messages",
|
||
"use-your-own-meta-oauth-app-for-high-volume-instagram-production-usage"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-14",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-intercom",
|
||
"title": "Intercom",
|
||
"description": "Public support knowledge for Intercom.",
|
||
"articlePath": "toolkits-intercom.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/intercom/public.md",
|
||
"sourceHeading": "Use External Pages or a custom agent when connecting MCP knowledge to Intercom Fin"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/intercom/public.md",
|
||
"sourceHeading": "INTERCOM_LIST_ALL_COMPANIES per_page limit is 60"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/intercom/public.md",
|
||
"sourceHeading": "Update Python SDK packages when Intercom tool schemas fail on reserved parameter names"
|
||
}
|
||
],
|
||
"topics": [
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"intercom",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/intercom-troubleshooting",
|
||
"avoid-proxy-execute-for-slow-intercom-api-calls-that-can-hit-cloudflar",
|
||
"intercom-list-all-companies-per-page-limit-is-60",
|
||
"intercom-oauth-tokens-cannot-be-programmatically-revoked-by-composio",
|
||
"intercom-troubleshooting",
|
||
"update-python-sdk-packages-when-intercom-tool-schemas-fail-on-reserved",
|
||
"use-a-custom-intercom-developer-app-if-composio-s-hosted-oauth-app-is",
|
||
"use-external-pages-or-a-custom-agent-when-connecting-mcp-knowledge-to"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-jira",
|
||
"title": "Jira",
|
||
"description": "Public support knowledge for Jira.",
|
||
"articlePath": "toolkits-jira.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/jira/public.md",
|
||
"sourceHeading": "Keep Jira OAuth scopes within Atlassian's supported set"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/jira/public.md",
|
||
"sourceHeading": "Pin custom Jira authConfig when creating Tool Router sessions"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/jira/public.md",
|
||
"sourceHeading": "Jira custom token execution needs the Atlassian base URL/subdomain"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/jira/public.md",
|
||
"sourceHeading": "Jira search pagination tokens returned by current tools preserve search context"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/jira/public.md",
|
||
"sourceHeading": "Jira OAuth redirect URI must match the authConfig and Atlassian app"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/jira/public.md",
|
||
"sourceHeading": "Missing `audience=api.atlassian.com` can prevent Jira refresh tokens"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/jira/public.md",
|
||
"sourceHeading": "Use `JIRA_GET_CREATE_METADATA_ISSUE_TYPE_FIELDS` instead of deprecated create metadata behavior"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/jira/public.md",
|
||
"sourceHeading": "Download Jira attachments with `JIRA_GET_ATTACHMENT`"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/jira/public.md",
|
||
"sourceHeading": "Jira tool-call payload retention follows the project log-storage setting"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/jira/public.md",
|
||
"sourceHeading": "Jira service account use requires customer-owned credentials and scopes"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"jira",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/jira-managed-oauth-something-went-wrong-was-caused-by-managed-app-scop",
|
||
"/kb/toolkits/jira-troubleshooting",
|
||
"composio-manages-jira-oauth-tokens-but-does-not-store-jira-api-respons",
|
||
"download-jira-attachments-with-jira-get-attachment",
|
||
"jira-credentials-expire-without-refresh",
|
||
"jira-custom-token-execution-needs-the-atlassian-base-url-subdomain",
|
||
"jira-managed-oauth-something-went-wrong-was-caused-by-managed-app-scop",
|
||
"jira-oauth-redirect-uri-must-match-the-authconfig-and-atlassian-app",
|
||
"jira-search-pagination-token-requires-the-original-jql-or-filters",
|
||
"jira-service-account-use-requires-customer-owned-credentials-and-scope",
|
||
"jira-troubleshooting",
|
||
"pin-custom-jira-authconfig-when-creating-tool-router-sessions",
|
||
"use-jira-get-create-metadata-issue-type-fields-instead-of-deprecated-c"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-16",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-kickbox",
|
||
"title": "Kickbox",
|
||
"description": "Public support knowledge for Kickbox.",
|
||
"articlePath": "toolkits-kickbox.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/kickbox/public.md",
|
||
"sourceHeading": "Single verification auth and EU endpoint checks"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"kickbox",
|
||
"platform"
|
||
],
|
||
"aliases": [],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-klaviyo",
|
||
"title": "Klaviyo",
|
||
"description": "Public support knowledge for Klaviyo.",
|
||
"articlePath": "toolkits-klaviyo.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/klaviyo/public.md",
|
||
"sourceHeading": "Klaviyo schema keys that exceeded Claude's 64-character limit were fixed"
|
||
}
|
||
],
|
||
"topics": [
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"klaviyo",
|
||
"platform"
|
||
],
|
||
"aliases": [],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-kommo",
|
||
"title": "Kommo",
|
||
"description": "Public authentication and subdomain troubleshooting for Kommo.",
|
||
"articlePath": "toolkits-kommo.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/kommo/public.md",
|
||
"sourceHeading": "Enter only the Kommo account subdomain"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"kommo",
|
||
"oauth",
|
||
"platform",
|
||
"subdomain"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/enter-only-the-kommo-account-subdomain",
|
||
"enter-only-the-kommo-account-subdomain"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-launch-darkly",
|
||
"title": "LaunchDarkly",
|
||
"description": "Public support knowledge for LaunchDarkly.",
|
||
"articlePath": "toolkits-launch-darkly.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/launch_darkly/public.md",
|
||
"sourceHeading": "LaunchDarkly currently uses a REST API access token"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/launch_darkly/public.md",
|
||
"sourceHeading": "OAuth client actions operate after toolkit authentication"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"launch_darkly",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/launchdarkly-troubleshooting",
|
||
"feasibility-notes",
|
||
"launchdarkly-troubleshooting",
|
||
"oauth-client-actions-are-not-oauth-connection-support"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-linear",
|
||
"title": "Linear",
|
||
"description": "Public trigger configuration guidance for Linear.",
|
||
"articlePath": "toolkits-linear.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/linear/public.md",
|
||
"sourceHeading": "Linear triggers require a valid `team_id`"
|
||
}
|
||
],
|
||
"topics": [
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"linear",
|
||
"platform",
|
||
"team_id",
|
||
"triggers"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/linear-triggers-require-a-valid-team-id",
|
||
"linear-triggers-require-a-valid-team-id"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-linkedin",
|
||
"title": "LinkedIn",
|
||
"description": "Public support knowledge for LinkedIn.",
|
||
"articlePath": "toolkits-linkedin.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/linkedin/public.md",
|
||
"sourceHeading": "Fix LinkedIn 426 NONEXISTENT_VERSION by using the latest toolkit version"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/linkedin/public.md",
|
||
"sourceHeading": "Fetch modern LinkedIn tools with `toolkit_slug=linkedin` and `toolkit_versions=latest`"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/linkedin/public.md",
|
||
"sourceHeading": "LinkedIn organization scopes depend on the toolkit and auth config"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/linkedin/public.md",
|
||
"sourceHeading": "LinkedIn post creation supports image arrays through SDK/API"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/linkedin/public.md",
|
||
"sourceHeading": "Use Connect MCP instead of legacy Platform MCP for consumer LinkedIn connector flows"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/linkedin/public.md",
|
||
"sourceHeading": "Fix LinkedIn Ads `redirect_uri` mismatch before debugging scopes"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/linkedin/public.md",
|
||
"sourceHeading": "LinkedIn Ads `unauthorized_scope_error` means a requested scope is unavailable"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"linkedin",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/linkedin-troubleshooting",
|
||
"fetch-modern-linkedin-tools-with-toolkit-slug-linkedin-and-toolkit-ver",
|
||
"fix-linkedin-426-nonexistent-version",
|
||
"fix-linkedin-ads-redirect-uri-mismatch-before-debugging-scopes",
|
||
"linkedin-ads-unauthorized-scope-error-means-a-requested-scope-is-unava",
|
||
"linkedin-company-actions-require-organization-scopes",
|
||
"linkedin-get-company-info-currently-returns-one-company-profile",
|
||
"linkedin-post-creation-supports-image-arrays-through-sdk-api",
|
||
"linkedin-troubleshooting",
|
||
"use-connect-mcp-instead-of-legacy-platform-mcp-for-consumer-linkedin-c"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-16",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-mailchimp",
|
||
"title": "Mailchimp",
|
||
"description": "Public support knowledge for Mailchimp.",
|
||
"articlePath": "toolkits-mailchimp.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/mailchimp/public.md",
|
||
"sourceHeading": "Mailchimp server prefix is the URL prefix before .admin.mailchimp.com"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/mailchimp/public.md",
|
||
"sourceHeading": "Use subdomain or dc, not server_prefix, for Mailchimp connectionConfig"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/mailchimp/public.md",
|
||
"sourceHeading": "Some Mailchimp tools require at least the Mailchimp Essentials plan"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/mailchimp/public.md",
|
||
"sourceHeading": "Mailchimp Proxy Execute with raw access token also needs subdomain"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/mailchimp/public.md",
|
||
"sourceHeading": "Mailchimp has trigger support in the supported-trigger toolkit list"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"mailchimp",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/mailchimp-troubleshooting",
|
||
"mailchimp-has-trigger-support-in-the-supported-trigger-toolkit-list",
|
||
"mailchimp-proxy-execute-with-raw-access-token-also-needs-subdomain",
|
||
"mailchimp-server-prefix-is-the-url-prefix-before-admin-mailchimp-com",
|
||
"mailchimp-troubleshooting",
|
||
"some-mailchimp-tools-require-at-least-the-mailchimp-essentials-plan",
|
||
"use-subdomain-or-dc-not-server-prefix-for-mailchimp-connectionconfig"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-marketstack",
|
||
"title": "Marketstack",
|
||
"description": "Public support knowledge for Marketstack.",
|
||
"articlePath": "toolkits-marketstack.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/marketstack/public.md",
|
||
"sourceHeading": "API Coverage"
|
||
}
|
||
],
|
||
"topics": [
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"marketstack",
|
||
"platform"
|
||
],
|
||
"aliases": [],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-microsoft-teams",
|
||
"title": "Microsoft Teams",
|
||
"description": "Public support knowledge for Microsoft Teams.",
|
||
"articlePath": "toolkits-microsoft-teams.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/microsoft_teams/public.md",
|
||
"sourceHeading": "Microsoft Teams delegated permissions should be checked with `get_scopes_required` and `toolkit_versions[microsoft_teams]=latest`"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/microsoft_teams/public.md",
|
||
"sourceHeading": "Invalid OAuth scope: `ChannelMessage.Read.Group`"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/microsoft_teams/public.md",
|
||
"sourceHeading": "`MICROSOFT_TEAMS_CHATS_GET_ALL_CHATS` and `MICROSOFT_TEAMS_CREATE_MEETING` can work with delegated user scopes"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/microsoft_teams/public.md",
|
||
"sourceHeading": "Microsoft Teams often needs customer-owned Azure OAuth credentials and tenant admin consent"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/microsoft_teams/public.md",
|
||
"sourceHeading": "Microsoft Teams one-on-one chat creation needs two users and correct OData bind format"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/microsoft_teams/public.md",
|
||
"sourceHeading": "Microsoft Teams MCP access is tied to the connected account `user_id` used in the MCP URL"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/microsoft_teams/public.md",
|
||
"sourceHeading": "Teams chat tools return 400/403/404 when user IDs or chat membership do not match Microsoft Graph expectations"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/microsoft_teams/public.md",
|
||
"sourceHeading": "Microsoft Teams tool listing may return only 20 tools unless `limit` is increased"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/microsoft_teams/public.md",
|
||
"sourceHeading": "Some Microsoft Teams slugs were restored as deprecated aliases with replacement descriptions"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/microsoft_teams/public.md",
|
||
"sourceHeading": "Tool Router memory for Microsoft Teams should be a list under the toolkit key"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"microsoft_teams",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/microsoft-teams-troubleshooting",
|
||
"microsoft-teams-chats-get-all-chats-and-microsoft-teams-create-meeting",
|
||
"microsoft-teams-delegated-permissions-should-be-checked-with-get-scope",
|
||
"microsoft-teams-mcp-access-is-tied-to-the-connected-account-user-id-us",
|
||
"microsoft-teams-often-needs-customer-owned-azure-oauth-credentials-and",
|
||
"microsoft-teams-one-on-one-chat-creation-needs-two-users-and-correct-o",
|
||
"microsoft-teams-tool-listing-may-return-only-20-tools-unless-limit-is",
|
||
"microsoft-teams-troubleshooting",
|
||
"some-microsoft-teams-slugs-were-restored-as-deprecated-aliases-with-re",
|
||
"teams-chat-tools-return-400-403-404-when-user-ids-or-chat-membership-d",
|
||
"tool-router-memory-for-microsoft-teams-should-be-a-list-under-the-tool"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false,
|
||
"verifyIgnoreToolSlugs": [
|
||
"MICROSOFT_TEAMS_TEAMS_GET_MESSAGE"
|
||
]
|
||
},
|
||
{
|
||
"slug": "toolkits-monday",
|
||
"title": "Monday",
|
||
"description": "Public support knowledge for Monday.",
|
||
"articlePath": "toolkits-monday.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/monday/public.md",
|
||
"sourceHeading": "Monday requires the OAuth app to be installed in the workspace before user connections"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/monday/public.md",
|
||
"sourceHeading": "Add the Composio redirect URL to the Monday OAuth app"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/monday/public.md",
|
||
"sourceHeading": "`MONDAY_UPDATE_ITEM` body must be passed as a properly escaped string"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/monday/public.md",
|
||
"sourceHeading": "Tool Router may prefer `MONDAY_MCP` over `MONDAY` when both are available"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/monday/public.md",
|
||
"sourceHeading": "Monday scopes come from the OAuth app and do not need separate Composio-side setup in the common flow"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/monday/public.md",
|
||
"sourceHeading": "Monday trigger management is not handled by the agent at runtime"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"monday",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/monday-troubleshooting",
|
||
"add-the-composio-redirect-url-to-the-monday-oauth-app",
|
||
"monday-requires-the-oauth-app-to-be-installed-in-the-workspace-before",
|
||
"monday-scopes-come-from-the-oauth-app-and-do-not-need-separate-composi",
|
||
"monday-troubleshooting",
|
||
"monday-update-item-body-must-be-passed-as-a-properly-escaped-string"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false,
|
||
"verifyIgnoreToolSlugs": [
|
||
"MONDAY_MCP"
|
||
]
|
||
},
|
||
{
|
||
"slug": "toolkits-netsuite",
|
||
"title": "NetSuite",
|
||
"description": "Public support knowledge for NetSuite.",
|
||
"articlePath": "toolkits-netsuite.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/netsuite/public.md",
|
||
"sourceHeading": "NetSuite OAuth token exchange failures can be caused by generic OAuth endpoints"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"netsuite",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/netsuite-oauth-token-exchange-failures-can-be-caused-by-generic-oauth",
|
||
"netsuite-oauth-token-exchange-failures-can-be-caused-by-generic-oauth"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-notion",
|
||
"title": "Notion",
|
||
"description": "Public support knowledge for Notion.",
|
||
"articlePath": "toolkits-notion.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/notion/public.md",
|
||
"sourceHeading": "Use `NOTION_RETRIEVE_PAGE` instead of deprecated/invalid `NOTION_GET_PAGE`"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/notion/public.md",
|
||
"sourceHeading": "Use the current Notion page and data-source update triggers"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/notion/public.md",
|
||
"sourceHeading": "Notion page/database access is granted per integration, not per Composio auth config token"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/notion/public.md",
|
||
"sourceHeading": "Specifying a different auth config affects get/use lookup, not existing Notion token refresh"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/notion/public.md",
|
||
"sourceHeading": "Notion 401 can be caused by invalid refresh token after user/admin revokes integration"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/notion/public.md",
|
||
"sourceHeading": "Use `NOTION_FETCH_DATA`, not `NOTION_FETCH_NOTION_DATA`"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/notion/public.md",
|
||
"sourceHeading": "Large unfiltered Notion responses can hurt agent quality"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"notion",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/notion-troubleshooting",
|
||
"large-unfiltered-notion-responses-can-hurt-agent-quality",
|
||
"notion-401-can-be-caused-by-invalid-refresh-token-after-user-admin-rev",
|
||
"notion-database-trigger-fires-for-new-pages-not-updates",
|
||
"notion-page-database-access-is-granted-per-integration-not-per-composi",
|
||
"notion-troubleshooting",
|
||
"repeated-notion-reconnect-loops-may-be-a-rotating-refresh-token-issue",
|
||
"specifying-a-different-auth-config-affects-get-use-lookup-not-existing"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-16",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false,
|
||
"verifyIgnoreToolSlugs": [
|
||
"NOTION_GET_PAGE",
|
||
"NOTION_FETCH_NOTION_DATA"
|
||
]
|
||
},
|
||
{
|
||
"slug": "toolkits-odoo",
|
||
"title": "Odoo",
|
||
"description": "Public troubleshooting guidance for Odoo tools.",
|
||
"articlePath": "toolkits-odoo.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/odoo/public.md",
|
||
"sourceHeading": "JSON-RPC access errors can arrive inside HTTP 200 responses"
|
||
}
|
||
],
|
||
"topics": [
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"json-rpc",
|
||
"odoo",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/inspect-odoo-json-rpc-errors-inside-http-200-responses",
|
||
"inspect-odoo-json-rpc-errors-inside-http-200-responses"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-16",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-one-drive",
|
||
"title": "OneDrive",
|
||
"description": "Public support knowledge for OneDrive.",
|
||
"articlePath": "toolkits-one-drive.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/one_drive/public.md",
|
||
"sourceHeading": "OneDrive custom OAuth issues usually require verifying Azure app setup and recreating the integration"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/one_drive/public.md",
|
||
"sourceHeading": "Use the scopes-required endpoint to derive OneDrive/Microsoft Graph permissions"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/one_drive/public.md",
|
||
"sourceHeading": "Pass `version=latest` if OneDrive folder/list behavior looks stale"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/one_drive/public.md",
|
||
"sourceHeading": "Use file-uploadable or base64-compatible inputs for supported OneDrive actions"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/one_drive/public.md",
|
||
"sourceHeading": "Tool Router v2 sessions should keep all connected accounts under the same `user_id`"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/one_drive/public.md",
|
||
"sourceHeading": "Disable OneDrive destructive actions with `destructiveHint` or explicit tool disables"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"one_drive",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/onedrive-troubleshooting",
|
||
"deleting-a-onedrive-connection-may-not-revoke-provider-side-tokens",
|
||
"disable-onedrive-destructive-actions-with-destructivehint-or-explicit",
|
||
"onedrive-custom-oauth-issues-usually-require-verifying-azure-app-setup",
|
||
"onedrive-troubleshooting",
|
||
"tool-router-v2-sessions-should-keep-all-connected-accounts-under-the-s",
|
||
"use-the-scopes-required-endpoint-to-derive-onedrive-microsoft-graph-pe"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-onenote",
|
||
"title": "Microsoft OneNote",
|
||
"description": "Current authentication setup for the Microsoft OneNote toolkit.",
|
||
"articlePath": "toolkits-onenote.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/onenote/public.md",
|
||
"sourceHeading": "OneNote uses a customer-owned Microsoft OAuth app"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"microsoft",
|
||
"onenote",
|
||
"platform"
|
||
],
|
||
"aliases": [],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-08-17",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-openai",
|
||
"title": "OpenAI",
|
||
"description": "Public support knowledge for OpenAI.",
|
||
"articlePath": "toolkits-openai.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/openai/public.md",
|
||
"sourceHeading": "`OPENAI_CREATE_IMAGE` supports `gpt-image-2` in the latest toolkit version"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/openai/public.md",
|
||
"sourceHeading": "Use `OpenAIAgentsProvider` when wiring Composio tools into OpenAI Agents"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/openai/public.md",
|
||
"sourceHeading": "Pin auth config and connected account IDs in Tool Router sessions when a specific connection must be used"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/openai/public.md",
|
||
"sourceHeading": "Use `beforeExecute` modifiers to add a human approval layer before tool execution"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/openai/public.md",
|
||
"sourceHeading": "Provider/schema compatibility errors often require upgrading Composio SDK packages together"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"openai",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/openai-troubleshooting",
|
||
"append-session-experimental-assistiveprompt-when-gpt-models-are-flaky",
|
||
"openai-create-image-supports-gpt-image-2-in-the-latest-toolkit-version",
|
||
"openai-troubleshooting",
|
||
"pin-auth-config-and-connected-account-ids-in-tool-router-sessions-when",
|
||
"provider-schema-bugs-often-require-upgrading-composio-sdk-packages-tog",
|
||
"use-beforeexecute-modifiers-to-add-a-human-approval-layer-before-tool",
|
||
"use-openaiagentsprovider-when-wiring-composio-tools-into-openai-agents"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-outlook",
|
||
"title": "Outlook",
|
||
"description": "Public support knowledge for Outlook.",
|
||
"articlePath": "toolkits-outlook.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/outlook/public.md",
|
||
"sourceHeading": "Outlook desktop users still need to authenticate the cloud Microsoft account in browser"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/outlook/public.md",
|
||
"sourceHeading": "Connect MCP exposes meta-tools, not individual Outlook tools, by design"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/outlook/public.md",
|
||
"sourceHeading": "For Outlook shared mailboxes, pass the shared mailbox address as `user_id`/mailbox target"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/outlook/public.md",
|
||
"sourceHeading": "Remove obsolete or invalid Outlook tool slugs from MCP configs and patch `allowed_tools`"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/outlook/public.md",
|
||
"sourceHeading": "Outlook multi-account sessions require explicit per-call `account` selection and aliases"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/outlook/public.md",
|
||
"sourceHeading": "Use `get_scopes_required` with Outlook tool slugs, then refresh/reconnect after scope changes"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/outlook/public.md",
|
||
"sourceHeading": "Outlook/Microsoft apps may need admin consent from App Registration or Enterprise Applications"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/outlook/public.md",
|
||
"sourceHeading": "Outlook/Gmail email attachments through SDK should be passed as file paths"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/outlook/public.md",
|
||
"sourceHeading": "Incomplete Outlook auth links expire after about 10 minutes and mark the connection `EXPIRED`"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"outlook",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/authentication/outlook-troubleshooting",
|
||
"an-active-outlook-connection-can-have-a-disabled-webhook-trigger",
|
||
"connect-mcp-exposes-meta-tools-not-individual-outlook-tools-by-design",
|
||
"incomplete-outlook-auth-links-expire-after-about-10-minutes-and-mark-t",
|
||
"outlook-desktop-users-still-need-to-authenticate-the-cloud-microsoft-a",
|
||
"outlook-email-categories-and-send-draft-pin-email-support-may-need-too",
|
||
"outlook-gmail-email-attachments-through-sdk-should-be-passed-as-file-p",
|
||
"outlook-microsoft-apps-may-need-admin-consent-from-app-registration-or",
|
||
"outlook-multi-account-sessions-require-explicit-per-call-account-selec",
|
||
"outlook-troubleshooting",
|
||
"remove-old-bad-outlook-tool-slugs-from-mcp-configs-and-patch-allowed-t",
|
||
"target-outlook-shared-mailboxes-by-address",
|
||
"use-get-scopes-required-with-outlook-tool-slugs-then-refresh-reconnect"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-16",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-perplexityai",
|
||
"title": "Perplexity AI authentication",
|
||
"description": "Current API-key setup for the Perplexity AI toolkit.",
|
||
"articlePath": "toolkits-perplexityai.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/perplexityai/public.md",
|
||
"sourceHeading": "Perplexity AI uses the `generic_api_key` connection field"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"perplexityai",
|
||
"platform"
|
||
],
|
||
"aliases": [],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-08-17",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-pipedrive",
|
||
"title": "Pipedrive",
|
||
"description": "Public support knowledge for Pipedrive.",
|
||
"articlePath": "toolkits-pipedrive.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/pipedrive/public.md",
|
||
"sourceHeading": "Pipedrive requires custom OAuth or API-key credentials"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/pipedrive/public.md",
|
||
"sourceHeading": "Pipedrive OAuth initiation requires the workspace subdomain"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/pipedrive/public.md",
|
||
"sourceHeading": "Do not install the Pipedrive app directly from Pipedrive OAuth settings"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/pipedrive/public.md",
|
||
"sourceHeading": "Hosted auth links can collect Pipedrive required fields"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/pipedrive/public.md",
|
||
"sourceHeading": "Pass `callback_url` when initiating Pipedrive auth to redirect users after authentication"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/pipedrive/public.md",
|
||
"sourceHeading": "Pipedrive has trigger support"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"pipedrive",
|
||
"platform"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/pipedrive-troubleshooting",
|
||
"claude-may-block-pipedrive-because-payment-processing-toolkits-are-res",
|
||
"do-not-install-the-pipedrive-app-directly-from-pipedrive-oauth-setting",
|
||
"hosted-auth-links-can-collect-pipedrive-required-fields",
|
||
"pass-callback-url-when-initiating-pipedrive-auth-to-redirect-users-aft",
|
||
"pipedrive-oauth-initiation-requires-the-workspace-subdomain",
|
||
"pipedrive-troubleshooting",
|
||
"use-custom-credentials-or-api-key-when-composio-s-default-pipedrive-oa"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-24",
|
||
"reviewAfter": "2026-11-22",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-posthog",
|
||
"title": "PostHog",
|
||
"description": "Public support knowledge for PostHog.",
|
||
"articlePath": "toolkits-posthog.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/posthog/public.md",
|
||
"sourceHeading": "PostHog is API-key based; use the PostHog API key when creating the connection"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/posthog/public.md",
|
||
"sourceHeading": "Configure PostHog subdomain for EU or self-hosted instances"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/posthog/public.md",
|
||
"sourceHeading": "Pass auth config into Tool Router sessions; platform-created auth configs are not automatically usable"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/posthog/public.md",
|
||
"sourceHeading": "Create a PostHog integration/auth config before expecting it in auth_configs API results"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/posthog/public.md",
|
||
"sourceHeading": "Fetch PostHog tool schema to see required fields for a tool call"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"posthog"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/posthog-troubleshooting",
|
||
"api-key-connections-may-show-active-without-live-credential-validation",
|
||
"configure-posthog-subdomain-for-eu-or-self-hosted-instances",
|
||
"create-a-posthog-integration-auth-config-before-expecting-it-in-auth-c",
|
||
"fetch-posthog-tool-schema-to-see-required-fields-for-a-tool-call",
|
||
"pass-auth-config-into-tool-router-sessions-platform-created-auth-confi",
|
||
"posthog-is-api-key-based-use-the-posthog-api-key-when-creating-the-con",
|
||
"posthog-troubleshooting"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-quickbooks",
|
||
"title": "QuickBooks",
|
||
"description": "Public support knowledge for QuickBooks.",
|
||
"articlePath": "toolkits-quickbooks.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/quickbooks/public.md",
|
||
"sourceHeading": "Use the sandbox QuickBooks API base URL for sandbox connections"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/quickbooks/public.md",
|
||
"sourceHeading": "QuickBooks auth configs need QuickBooks credentials and matching redirect URL"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/quickbooks/public.md",
|
||
"sourceHeading": "QuickBooks auth can accept custom auth and token URLs for sandbox/custom flows"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/quickbooks/public.md",
|
||
"sourceHeading": "QuickBooks payment scope requires payment module access"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/quickbooks/public.md",
|
||
"sourceHeading": "Realm ID mapping fixes may require the latest QuickBooks toolkit version"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/quickbooks/public.md",
|
||
"sourceHeading": "Multiple QuickBooks accounts can be selected in Claude/MCP by using separate user IDs or connected account IDs"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/quickbooks/public.md",
|
||
"sourceHeading": "QuickBooks tokens are refreshed periodically with retries before expiring the connection"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/quickbooks/public.md",
|
||
"sourceHeading": "QuickBooks hosted auth screen can be skipped by sending users directly to the OAuth provider"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"quickbooks"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/quickbooks-disabled-for-this-session",
|
||
"/kb/toolkits/quickbooks-troubleshooting",
|
||
"connect-a-quickbooks-sandbox-company",
|
||
"connect-multiple-quickbooks-companies",
|
||
"missing-quickbooks-expense-bill-tools-should-be-filed-with-the-exact-i",
|
||
"quickbooks-disabled-for-this-session",
|
||
"quickbooks-hosted-auth-screen-can-be-skipped-by-sending-users-directly",
|
||
"quickbooks-oauth-fails-with-payments-scope",
|
||
"quickbooks-requests-resolve-to-company-none",
|
||
"quickbooks-tokens-are-refreshed-periodically-with-retries-before-expir",
|
||
"quickbooks-troubleshooting"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-16",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-reddit",
|
||
"title": "Reddit",
|
||
"description": "Public support knowledge for Reddit.",
|
||
"articlePath": "toolkits-reddit.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/reddit/public.md",
|
||
"sourceHeading": "Use Connect MCP for Reddit OAuth callback failures in Claude Code"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/reddit/public.md",
|
||
"sourceHeading": "Reddit supports managed and customer-owned OAuth 2.0"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/reddit/public.md",
|
||
"sourceHeading": "Reddit toolkit behavior can change when Reddit changes its API or enforcement policies"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/reddit/public.md",
|
||
"sourceHeading": "Older Reddit Create Post tool versions may require `flair_id`"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"reddit"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/reddit-troubleshooting",
|
||
"connect-reddit-with-your-own-oauth-credentials",
|
||
"reddit-create-post-requires-flair-id",
|
||
"reddit-troubleshooting",
|
||
"use-connect-mcp-for-reddit-oauth-callback-failures-in-claude-code"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-24",
|
||
"reviewAfter": "2026-11-22",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-salesforce",
|
||
"title": "Salesforce",
|
||
"description": "Public support knowledge for Salesforce.",
|
||
"articlePath": "toolkits-salesforce.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/salesforce/public.md",
|
||
"sourceHeading": "Use customer-owned Salesforce credentials when you need app-level control"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/salesforce/public.md",
|
||
"sourceHeading": "Salesforce connection initiation needs instance endpoint and My Domain subdomain fields"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/salesforce/public.md",
|
||
"sourceHeading": "Salesforce subdomain defaults to `login`; use the My Domain/API prefix when needed"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/salesforce/public.md",
|
||
"sourceHeading": "`URL_NOT_RESET` usually means Salesforce subdomain was not configured and defaulted to `login`"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/salesforce/public.md",
|
||
"sourceHeading": "Use hosted auth for Salesforce required fields, or direct `.initiate()` when you want to prefill them yourself"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/salesforce/public.md",
|
||
"sourceHeading": "Use `SALESFORCE_GET_ALL_FIELDS_FOR_OBJECT` to inspect a Salesforce object's fields"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/salesforce/public.md",
|
||
"sourceHeading": "Salesforce org admins may need to install/approve the connected app before users can authenticate"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/salesforce/public.md",
|
||
"sourceHeading": "Salesforce allows only five active refresh tokens per user per app"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/salesforce/public.md",
|
||
"sourceHeading": "Use Proxy Execute for Salesforce Frontdoor/UI bridge flows instead of reading tokens from connected accounts"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/salesforce/public.md",
|
||
"sourceHeading": "Migrate deprecated Salesforce retrieve tools to the current get/list tools"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/salesforce/public.md",
|
||
"sourceHeading": "Retrieve a specific Salesforce contact by listing contacts and then fetching by ID"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/salesforce/public.md",
|
||
"sourceHeading": "The Salesforce custom auth redirect URL is Composio's toolkit auth callback endpoint"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"salesforce"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/salesforce-troubleshooting",
|
||
"migrate-deprecated-salesforce-retrieve-tools-to-the-newer-get-list-too",
|
||
"retrieve-a-specific-salesforce-contact-by-first-listing-contacts-and-t",
|
||
"salesforce-action-to-scope-mapping-is-not-granular-include-refresh-tok",
|
||
"salesforce-allows-only-five-active-refresh-tokens-per-user-per-app",
|
||
"salesforce-connection-initiation-needs-instance-endpoint-and-my-domain",
|
||
"salesforce-requires-customer-owned-developer-credentials",
|
||
"salesforce-subdomain-defaults-to-login-use-the-my-domain-api-prefix-wh",
|
||
"salesforce-troubleshooting",
|
||
"the-salesforce-custom-auth-redirect-url-is-composio-s-toolkit-auth-cal",
|
||
"url-not-reset-usually-means-salesforce-subdomain-was-not-configured-an",
|
||
"use-hosted-auth-for-salesforce-required-fields-or-direct-initiate-when",
|
||
"use-proxy-execute-for-salesforce-frontdoor-ui-bridge-flows-instead-of",
|
||
"use-salesforce-get-all-fields-for-object-to-inspect-a-salesforce-objec"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-serpapi",
|
||
"title": "SerpApi",
|
||
"description": "Public support knowledge for SerpApi.",
|
||
"articlePath": "toolkits-serpapi.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/serpapi/public.md",
|
||
"sourceHeading": "Disable SerpAPI by listing premium toolkit slugs in session config"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/serpapi/public.md",
|
||
"sourceHeading": "Use toolkit details to inspect SerpAPI required auth fields"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/serpapi/public.md",
|
||
"sourceHeading": "Search and scraping use cases can use SerpAPI alongside Firecrawl, Exa, Tavily, or Composio Search"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"serpapi"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/serpapi-troubleshooting",
|
||
"avoid-serpapi-ebay-search-when-its-schema-causes-field-errors",
|
||
"disable-serpapi-by-listing-premium-toolkit-slugs-in-session-config",
|
||
"search-and-scraping-use-cases-can-use-serpapi-alongside-firecrawl-exa",
|
||
"serpapi-api-key-validation-was-not-available-in-the-connection-flow",
|
||
"serpapi-troubleshooting",
|
||
"use-toolkit-details-to-inspect-serpapi-required-auth-fields"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-servicenow",
|
||
"title": "ServiceNow authentication",
|
||
"description": "Current instance-specific authentication setup for ServiceNow.",
|
||
"articlePath": "toolkits-servicenow.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/servicenow/public.md",
|
||
"sourceHeading": "ServiceNow credentials and instance subdomain are collected at different stages"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"servicenow"
|
||
],
|
||
"aliases": [],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-08-17",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-sharepoint",
|
||
"title": "SharePoint",
|
||
"description": "Public support knowledge for SharePoint.",
|
||
"articlePath": "toolkits-sharepoint.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/sharepoint/public.md",
|
||
"sourceHeading": "SharePoint REST APIs and SharePoint Graph are separate API families"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/sharepoint/public.md",
|
||
"sourceHeading": "`/teams/` SharePoint sites require the server-relative Subsite path"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/sharepoint/public.md",
|
||
"sourceHeading": "SharePoint REST app-only client credentials use certificate auth"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/sharepoint/public.md",
|
||
"sourceHeading": "SharePoint `.default` scope uses the tenant domain placeholder"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/sharepoint/public.md",
|
||
"sourceHeading": "Pass the SharePoint tenant/subdomain during connection initiation"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/sharepoint/public.md",
|
||
"sourceHeading": "The SharePoint subsite field is not a permission boundary"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/sharepoint/public.md",
|
||
"sourceHeading": "Retrieve SharePoint site name from connected account state"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/sharepoint/public.md",
|
||
"sourceHeading": "Use `SHARE_POINT_SEARCH_QUERY` for KQL/FQL SharePoint search"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/sharepoint/public.md",
|
||
"sourceHeading": "SharePoint toolkit slug is `share_point`"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/sharepoint/public.md",
|
||
"sourceHeading": "Disable destructive SharePoint tools with `destructiveHint` or explicit tool filters"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/sharepoint/public.md",
|
||
"sourceHeading": "`SHARE_POINT_UPLOAD_FROM_URL` needs a server-fetchable URL"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"sharepoint"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/after-certain-sharepoint-auth-fixes-create-a-new-auth-config-integrati",
|
||
"/kb/toolkits/sharepoint-troubleshooting",
|
||
"after-certain-sharepoint-auth-fixes-create-a-new-auth-config-integrati",
|
||
"create-folder-odata-type-name-error",
|
||
"disable-destructive-sharepoint-tools-with-destructivehint-or-explicit",
|
||
"set-the-sharepoint-tenant-on-the-connection",
|
||
"share-point-upload-from-url-needs-a-server-fetchable-url",
|
||
"sharepoint-rest-and-graph-need-separate-connections",
|
||
"sharepoint-rest-app-only-client-credentials-use-certificate-auth",
|
||
"sharepoint-teams-site-returns-404",
|
||
"sharepoint-troubleshooting",
|
||
"the-sharepoint-subsite-field-is-not-a-permission-boundary",
|
||
"use-share-point-search-query-for-kql-fql-sharepoint-search"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-16",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-shopify",
|
||
"title": "Shopify",
|
||
"description": "Public support knowledge for Shopify.",
|
||
"articlePath": "toolkits-shopify.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/shopify/public.md",
|
||
"sourceHeading": "Shopify API-key/admin-token auth is deprecated; use OAuth2 or S2S auth instead"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/shopify/public.md",
|
||
"sourceHeading": "Use Composio's toolkit auth callback as the Shopify OAuth redirect URL"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/shopify/public.md",
|
||
"sourceHeading": "Custom Shopify credentials keep the same hosted auth UX and Composio still manages refresh"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/shopify/public.md",
|
||
"sourceHeading": "Shopify OAuth 400s are commonly caused by incorrect client secrets or unverified gated scopes"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/shopify/public.md",
|
||
"sourceHeading": "Shopify subdomain should be only the store name, not the full `.myshopify.com` host"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/shopify/public.md",
|
||
"sourceHeading": "Use `SHOPIFY_GRAPH_QL_QUERY` for Shopify GraphQL queries"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/shopify/public.md",
|
||
"sourceHeading": "Fetch more than the default 20 Shopify tools and enable the tool in MCP config"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/shopify/public.md",
|
||
"sourceHeading": "Use `SHOPIFY_GET_ORDERS_WITH_FILTERS` to confirm orders and retrieve order IDs"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/shopify/public.md",
|
||
"sourceHeading": "Shopify order update 403s can be caused by missing `read_all_orders` scope"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/shopify/public.md",
|
||
"sourceHeading": "Custom Shopify tools can call GraphQL with Composio-injected auth"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"shopify"
|
||
],
|
||
"aliases": [
|
||
"/kb/authentication/shopify-troubleshooting",
|
||
"choose-current-shopify-app-auth-flow",
|
||
"custom-shopify-credentials-keep-the-same-hosted-auth-ux-and-composio-s",
|
||
"custom-shopify-tools-can-call-graphql-with-composio-injected-auth",
|
||
"dashboard-claude-shopify-flow-does-not-currently-support-multiple-conn",
|
||
"fetch-more-than-the-default-20-shopify-tools-and-enable-the-tool-in-mc",
|
||
"for-you-shopify-oauth-scopes-cannot-currently-be-customized",
|
||
"if-shopify-mcp-auth-completes-but-tools-fail-append-the-configured-use",
|
||
"shopify-managed-default-oauth-is-not-available-use-your-own-shopify-oa",
|
||
"shopify-oauth-400s-are-commonly-caused-by-bad-client-secrets-or-unveri",
|
||
"shopify-order-update-403s-can-be-caused-by-missing-read-all-orders-sco",
|
||
"shopify-subdomain-should-be-only-the-store-name-not-the-full-myshopify",
|
||
"shopify-troubleshooting",
|
||
"use-composio-s-toolkit-auth-callback-as-the-shopify-oauth-redirect-url",
|
||
"use-shopify-get-order-list-to-confirm-orders-and-retrieve-order-ids",
|
||
"use-shopify-graph-ql-query-for-shopify-graphql-queries"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-slack",
|
||
"title": "Slack",
|
||
"description": "Public support knowledge for Slack.",
|
||
"articlePath": "toolkits-slack.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/slack/public.md",
|
||
"sourceHeading": "Use `user_scopes` for Slack user-token permissions"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/slack/public.md",
|
||
"sourceHeading": "Download Slack file content using file ID"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/slack/public.md",
|
||
"sourceHeading": "Slack `assistant.search.context` requires Agents & AI Apps and Business+"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/slack/public.md",
|
||
"sourceHeading": "Use Slack V2 trigger slugs for channel and direct messages"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/slack/public.md",
|
||
"sourceHeading": "Slack trigger delivery depends on the Slack app event subscription webhook URL"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/slack/public.md",
|
||
"sourceHeading": "Slack short connect links are not the OAuth redirect URI"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/slack/public.md",
|
||
"sourceHeading": "Slack scheduled-message attachments are not file uploads"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/slack/public.md",
|
||
"sourceHeading": "`admin.conversations:write` requires Slack Enterprise"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"slack"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/slack-troubleshooting",
|
||
"download-slack-file-content-using-file-id",
|
||
"revoked-slack-tokens-can-remain-active-briefly-before-expiring",
|
||
"slack-admin-conversation-writes-require-enterprise",
|
||
"slack-assistant-search-context-requires-agents-ai-apps-and-business",
|
||
"slack-marketplace-warning-on-composio-managed-app-does-not-block-oauth",
|
||
"slack-scheduled-message-attachments-are-not-file-uploads",
|
||
"slack-short-connect-links-are-not-the-oauth-redirect-uri",
|
||
"slack-trigger-delivery-depends-on-the-slack-app-event-subscription-web",
|
||
"slack-troubleshooting",
|
||
"slackbot-token-rotation-can-make-externally-cached-tokens-expire-quick",
|
||
"use-slack-v2-trigger-slugs-for-channel-and-direct-messages",
|
||
"use-user-scopes-for-slack-user-token-permissions",
|
||
"use-your-own-slack-oauth-app-for-production-quota-isolation"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-slackbot",
|
||
"title": "Slackbot",
|
||
"description": "Public support knowledge for Slackbot.",
|
||
"articlePath": "toolkits-slackbot.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/slackbot/public.md",
|
||
"sourceHeading": "Use Slack for user actions and Slackbot for bot-token/bot-scope actions"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/slackbot/public.md",
|
||
"sourceHeading": "Slackbot triggers require the verification token in custom auth"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/slackbot/public.md",
|
||
"sourceHeading": "Private Slack channels and DMs require extra history scopes"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/slackbot/public.md",
|
||
"sourceHeading": "Slack file downloads use `SLACK_DOWNLOAD_SLACK_FILE` with a Slack file ID"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/slackbot/public.md",
|
||
"sourceHeading": "Slack short auth links are not the OAuth redirect URI"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/slackbot/public.md",
|
||
"sourceHeading": "Use `SLACKBOT_SEND_MESSAGE` to post a bot message"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/slackbot/public.md",
|
||
"sourceHeading": "Slackbot trigger payloads include `connection_id` and `trigger_id`"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"slackbot"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/slackbot-troubleshooting",
|
||
"revoked-slack-tokens-may-stay-active-for-two-refresh-cycles-before-exp",
|
||
"slack-file-downloads-use-slack-download-slack-file-with-a-slack-file-i",
|
||
"slack-private-conversations-require-separate-history-scopes",
|
||
"slack-short-auth-links-are-not-the-oauth-redirect-uri",
|
||
"slackbot-trigger-payloads-include-connection-id-and-trigger-id",
|
||
"slackbot-trigger-setup-needs-team-read-on-the-user-token",
|
||
"slackbot-triggers-require-a-verification-token-or-subscription-id-in-c",
|
||
"slackbot-troubleshooting",
|
||
"use-slack-for-user-actions-and-slackbot-for-bot-token-bot-scope-action",
|
||
"with-slack-token-rotation-enabled-fetch-connected-account-data-frequen"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-16",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-snapchat",
|
||
"title": "Snapchat authentication",
|
||
"description": "Current customer-owned OAuth setup for the Snapchat toolkit.",
|
||
"articlePath": "toolkits-snapchat.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/snapchat/public.md",
|
||
"sourceHeading": "Snapchat uses customer-owned OAuth credentials"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"snapchat"
|
||
],
|
||
"aliases": [],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-08-17",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-snowflake",
|
||
"title": "Snowflake",
|
||
"description": "Public support knowledge for Snowflake.",
|
||
"articlePath": "toolkits-snowflake.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/snowflake/public.md",
|
||
"sourceHeading": "Use one Snowflake auth config per customer account for multi-tenant SaaS OAuth"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/snowflake/public.md",
|
||
"sourceHeading": "Snowflake Basic auth was deprecated in favor of OAuth2"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/snowflake/public.md",
|
||
"sourceHeading": "Configure Snowflake OAuth refresh tokens and expect periodic reconnects"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/snowflake/public.md",
|
||
"sourceHeading": "Fetch connected-account fields or toolkit metadata to discover Snowflake account details"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/snowflake/public.md",
|
||
"sourceHeading": "Snowflake statement results may require checking each partition"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/snowflake/public.md",
|
||
"sourceHeading": "Use processors or tool description overrides to reduce Snowflake tool output/token load"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"snowflake"
|
||
],
|
||
"aliases": [
|
||
"/kb/authentication/snowflake-troubleshooting",
|
||
"configure-snowflake-oauth-refresh-tokens-and-expect-periodic-reconnect",
|
||
"snowflake-account-id-uses-org-account-format",
|
||
"snowflake-basic-auth-was-deprecated-in-favor-of-oauth2",
|
||
"snowflake-troubleshooting"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-spotify",
|
||
"title": "Spotify",
|
||
"description": "Public support knowledge for Spotify.",
|
||
"articlePath": "toolkits-spotify.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/spotify/public.md",
|
||
"sourceHeading": "Spotify requires a customer-owned OAuth app"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/spotify/public.md",
|
||
"sourceHeading": "Spotify library scopes may need to be added to the auth config and then the user must reconnect"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/spotify/public.md",
|
||
"sourceHeading": "Custom Spotify toolkit names cannot collide with the built-in Spotify toolkit slug/name"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/spotify/public.md",
|
||
"sourceHeading": "Spotify can be added to an MCP server from the MCP configs page"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/spotify/public.md",
|
||
"sourceHeading": "Spotify has trigger support"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/spotify/public.md",
|
||
"sourceHeading": "Spotify playlist writes require playlist-modify scopes"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"spotify"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/spotify-troubleshooting",
|
||
"custom-spotify-toolkit-names-cannot-collide-with-the-built-in-spotify",
|
||
"spotify-can-be-added-to-an-mcp-server-from-the-mcp-configs-page",
|
||
"spotify-has-trigger-support",
|
||
"spotify-library-scopes-may-need-to-be-added-to-the-auth-config-and-the",
|
||
"spotify-playlist-writes-require-playlist-modify-scopes",
|
||
"spotify-tokens-may-need-manual-provider-side-removal-when-programmatic",
|
||
"spotify-troubleshooting"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-16",
|
||
"lastVerifiedAt": "2026-08-24",
|
||
"reviewAfter": "2026-11-22",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-strava",
|
||
"title": "Strava",
|
||
"description": "Public authentication and provider-capacity guidance for Strava.",
|
||
"articlePath": "toolkits-strava.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/strava/public.md",
|
||
"sourceHeading": "Athlete-limit errors belong to the OAuth application"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"oauth",
|
||
"platform",
|
||
"strava"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/strava-athlete-limits-belong-to-the-oauth-app",
|
||
"strava-athlete-limits-belong-to-the-oauth-app"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-16",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-stripe",
|
||
"title": "Stripe",
|
||
"description": "Public support knowledge for Stripe.",
|
||
"articlePath": "toolkits-stripe.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/stripe/public.md",
|
||
"sourceHeading": "Stripe is supported and offers OAuth2 and API-key auth modes"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/stripe/public.md",
|
||
"sourceHeading": "For Stripe API-key auth, use the Stripe secret key from Developers -> API Keys -> Standard keys"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/stripe/public.md",
|
||
"sourceHeading": "One Stripe MCP/API-key connection maps to one Stripe account unless the customer uses Stripe Connect"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/stripe/public.md",
|
||
"sourceHeading": "MRR can be calculated from `STRIPE_LIST_SUBSCRIPTIONS`"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/stripe/public.md",
|
||
"sourceHeading": "Stripe payment-success triggers are available"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"stripe"
|
||
],
|
||
"aliases": [
|
||
"/kb/authentication/stripe-troubleshooting",
|
||
"/kb/toolkits/duplicate-stripe-trigger-events-can-be-caused-by-stale-webhook-records",
|
||
"/kb/toolkits/stripe-dispute-payment-success-triggers-may-need-feature-requests-if-n",
|
||
"a-stripe-trigger-should-create-a-corresponding-subscription-webhook-in",
|
||
"additional-stripe-endpoints-can-be-added-as-toolkit-requests",
|
||
"duplicate-stripe-trigger-events-can-be-caused-by-stale-webhook-records",
|
||
"mrr-can-be-calculated-from-stripe-list-subscriptions",
|
||
"one-stripe-mcp-api-key-connection-maps-to-one-stripe-account-unless-th",
|
||
"some-stripe-triggers-worked-with-api-key-auth-but-failed-with-oauth-on",
|
||
"stripe-api-key-connections-require-a-secret-key",
|
||
"stripe-dispute-payment-success-triggers-may-need-feature-requests-if-n",
|
||
"stripe-may-require-customer-owned-credentials-because-a-default-oauth",
|
||
"stripe-tokens-may-not-be-revocable-programmatically-through-provider-a",
|
||
"stripe-troubleshooting"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-supabase",
|
||
"title": "Supabase",
|
||
"description": "Public support knowledge for Supabase.",
|
||
"articlePath": "toolkits-supabase.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/supabase/public.md",
|
||
"sourceHeading": "Supabase authorization is usually organization-scoped"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/supabase/public.md",
|
||
"sourceHeading": "Supabase API-key connections pass `supabase_personal_token` during connected account creation"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/supabase/public.md",
|
||
"sourceHeading": "Supabase supports both OAuth2 and API_KEY auth through Composio APIs"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/supabase/public.md",
|
||
"sourceHeading": "Supabase MCP in Cursor may need an explicit initiate-connection step"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/supabase/public.md",
|
||
"sourceHeading": "`SUPABASE_BETA_RUN_SQL_QUERY` is still available when configured in an MCP server"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/supabase/public.md",
|
||
"sourceHeading": "Hosted Supabase should use `https://api.supabase.com` as base URL, not the project URL"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/supabase/public.md",
|
||
"sourceHeading": "Self-hosted Supabase requires toolkit support for a custom base URL"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/supabase/public.md",
|
||
"sourceHeading": "Configure Supabase Management API scopes on the Supabase OAuth app"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/supabase/public.md",
|
||
"sourceHeading": "Supabase permission errors are often provider-side access-control failures"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/supabase/public.md",
|
||
"sourceHeading": "Diagnose Supabase rate limits from the underlying error"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"supabase"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/supabase-troubleshooting",
|
||
"composio-does-not-enforce-hard-service-rate-limits-check-the-underlyin",
|
||
"cursor-mcp-server-name-length-limits-can-break-supabase-mcp",
|
||
"hosted-supabase-should-use-https-api-supabase-com-as-base-url-not-the",
|
||
"limit-supabase-scopes-in-the-customer-s-oauth-app-not-through-composio",
|
||
"self-hosted-supabase-requires-toolkit-support-for-a-custom-base-url",
|
||
"supabase-api-key-connections-pass-supabase-personal-token-during-conne",
|
||
"supabase-authorization-is-usually-organization-scoped",
|
||
"supabase-beta-run-sql-query-is-still-available-when-configured-in-an-m",
|
||
"supabase-mcp-in-cursor-may-need-an-explicit-initiate-connection-step",
|
||
"supabase-permission-errors-are-often-provider-side-access-control-fail",
|
||
"supabase-supports-both-oauth2-and-api-key-auth-through-composio-apis",
|
||
"supabase-troubleshooting"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-tavily",
|
||
"title": "Tavily",
|
||
"description": "Public support knowledge for Tavily.",
|
||
"articlePath": "toolkits-tavily.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/tavily/public.md",
|
||
"sourceHeading": "Use COMPOSIO_SEARCH_TAVILY for Tavily search"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/tavily/public.md",
|
||
"sourceHeading": "Initiate Tavily API-key connections in the legacy JS SDK with generic_api_key"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/tavily/public.md",
|
||
"sourceHeading": "Use composio_search for auth-free Exa/Tavily-style search"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"tavily"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/tavily-troubleshooting",
|
||
"initiate-tavily-api-key-connections-in-the-legacy-js-sdk-with-generic",
|
||
"tavily-troubleshooting",
|
||
"use-composio-search-for-auth-free-exa-tavily-style-search",
|
||
"use-composio-search-tavily-for-tavily-search"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-tiktok",
|
||
"title": "TikTok",
|
||
"description": "Public support knowledge for TikTok.",
|
||
"articlePath": "toolkits-tiktok.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/tiktok/public.md",
|
||
"sourceHeading": "TikTok is supported, but customers generally need their own TikTok developer app"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/tiktok/public.md",
|
||
"sourceHeading": "TikTok URL-prefix verification must be done on a customer-owned redirect domain, not Composio's shared callback domain"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/tiktok/public.md",
|
||
"sourceHeading": "TikTok OAuth uses `client_key`; credential mismatch or old `client_id` handling causes `client_key` errors"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/tiktok/public.md",
|
||
"sourceHeading": "TikTok app status, scopes, and sandbox/production mode determine who can complete OAuth"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/tiktok/public.md",
|
||
"sourceHeading": "Old TikTok-specific MCP URL patterns are deprecated; use Connect MCP"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/tiktok/public.md",
|
||
"sourceHeading": "Public TikTok posting requires the customer's own app to pass TikTok's content posting audit"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/tiktok/public.md",
|
||
"sourceHeading": "TikTok Ads/Marketing may require a separate approved app and test credentials"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/tiktok/public.md",
|
||
"sourceHeading": "TikTok custom auth must request only approved scopes"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"tiktok"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/tiktok-troubleshooting",
|
||
"connect-tiktok-with-your-own-developer-app",
|
||
"fix-tiktok-client-key-errors",
|
||
"old-tiktok-specific-mcp-url-patterns-are-deprecated-use-connect-mcp",
|
||
"request-only-approved-tiktok-scopes",
|
||
"tiktok-ads-marketing-may-require-a-separate-approved-app-and-test-cred",
|
||
"tiktok-troubleshooting"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-16",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-trello",
|
||
"title": "Trello",
|
||
"description": "Public support knowledge for Trello.",
|
||
"articlePath": "toolkits-trello.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/trello/public.md",
|
||
"sourceHeading": "Trello supports managed and customer-owned OAuth1"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/trello/public.md",
|
||
"sourceHeading": "Route Trello MCP calls by appending user_id or connected_account_id"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/trello/public.md",
|
||
"sourceHeading": "Connect Trello to Cursor by creating a Trello MCP instance and running the generated command"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/trello/public.md",
|
||
"sourceHeading": "Get the authenticated Trello user with TRELLO_GET_MEMBERS_BY_ID_MEMBER and idMember=me"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/trello/public.md",
|
||
"sourceHeading": "Invalid Trello board ID can break Trello triggers"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/trello/public.md",
|
||
"sourceHeading": "Legacy mcp.composio.dev Trello endpoint should be migrated to Tool Router or Connect"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"trello"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/trello-troubleshooting",
|
||
"connect-trello-to-cursor-by-creating-a-trello-mcp-instance-and-running",
|
||
"get-the-authenticated-trello-user-with-trello-get-members-by-id-member",
|
||
"invalid-trello-board-id-can-break-trello-triggers",
|
||
"legacy-mcp-composio-dev-trello-endpoint-should-be-migrated-to-tool-rou",
|
||
"old-trello-auth-configs-can-fail-after-oauth-app-changes-create-a-new",
|
||
"route-trello-mcp-calls-by-appending-user-id-or-connected-account-id",
|
||
"trello-supports-oauth1-and-bearer-token-authentication",
|
||
"trello-troubleshooting"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-24",
|
||
"reviewAfter": "2026-11-22",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-twitter",
|
||
"title": "Twitter",
|
||
"description": "Public support knowledge for Twitter.",
|
||
"articlePath": "toolkits-twitter.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/twitter/public.md",
|
||
"sourceHeading": "Twitter/X requires a customer-owned OAuth app"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/twitter/public.md",
|
||
"sourceHeading": "Use the current auth-config callback URI for Twitter OAuth callback mismatch errors"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/twitter/public.md",
|
||
"sourceHeading": "Twitter/X posts must stay within X's character counting rules"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/twitter/public.md",
|
||
"sourceHeading": "`client-not-enrolled` and `App not linked to project` usually point to Twitter developer app/project setup issues"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/twitter/public.md",
|
||
"sourceHeading": "If X v2 API support appears missing, check for an older Twitter toolkit version"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/twitter/public.md",
|
||
"sourceHeading": "Search and other app-only actions use the Application Bearer Token"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"twitter"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/twitter-troubleshooting",
|
||
"connect-x-twitter-with-your-own-developer-app",
|
||
"if-x-v2-api-support-appears-missing-check-for-an-older-twitter-toolkit",
|
||
"search-and-other-app-only-actions-use-the-application-bearer-token",
|
||
"twitter-troubleshooting",
|
||
"twitter-x-posts-must-stay-within-x-s-character-counting-rules",
|
||
"use-composio-s-v1-auth-app-redirect-uri-for-twitter-oauth-callback-mis"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-16",
|
||
"lastVerifiedAt": "2026-08-24",
|
||
"reviewAfter": "2026-11-22",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-webflow",
|
||
"title": "Webflow",
|
||
"description": "Public support knowledge for Webflow.",
|
||
"articlePath": "toolkits-webflow.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/webflow/public.md",
|
||
"sourceHeading": "Create or update Webflow collection items with the draft/live flag"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/webflow/public.md",
|
||
"sourceHeading": "Use the current Webflow toolkit version for recently added page tools"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/webflow/public.md",
|
||
"sourceHeading": "Deprecated Webflow v1 endpoints caused publish-site integration failures"
|
||
}
|
||
],
|
||
"topics": [
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"webflow"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/webflow-troubleshooting",
|
||
"create-or-update-webflow-collection-items-with-the-draft-live-flag",
|
||
"deprecated-webflow-v1-endpoints-caused-publish-site-integration-failur",
|
||
"use-a-custom-webflow-oauth-app-when-the-default-app-cannot-authorize-w",
|
||
"use-the-current-webflow-toolkit-version-for-recently-added-page-tools",
|
||
"webflow-troubleshooting"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-whatsapp",
|
||
"title": "WhatsApp",
|
||
"description": "Public support knowledge for WhatsApp.",
|
||
"articlePath": "toolkits-whatsapp.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/whatsapp/public.md",
|
||
"sourceHeading": "WhatsApp toolkit supports WhatsApp Business API accounts, not personal WhatsApp accounts"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/whatsapp/public.md",
|
||
"sourceHeading": "WABA ID is required for WhatsApp connections"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/whatsapp/public.md",
|
||
"sourceHeading": "WhatsApp API key auth needs both system user token and WABA ID"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/whatsapp/public.md",
|
||
"sourceHeading": "WhatsApp OAuth2 initiation still requires `generic_id` as the WABA ID"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/whatsapp/public.md",
|
||
"sourceHeading": "WhatsApp OAuth requires a Meta developer app with Business use case enabled and published"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/whatsapp/public.md",
|
||
"sourceHeading": "Meta OAuth errors can require adding the Composio redirect URI in the Meta app"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/whatsapp/public.md",
|
||
"sourceHeading": "WhatsApp template messages require an existing template before sending"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/whatsapp/public.md",
|
||
"sourceHeading": "`WHATSAPP_SEND_TEMPLATE_MESSAGE` supports `components` in newer toolkit versions"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/whatsapp/public.md",
|
||
"sourceHeading": "When sending WhatsApp messages, pass real `phone_number_id` and `to_number` values"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/whatsapp/public.md",
|
||
"sourceHeading": "Reading WhatsApp replies is better modeled as triggers/webhooks than a normal read API"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/whatsapp/public.md",
|
||
"sourceHeading": "Use Proxy Execute when a WhatsApp/Meta workflow needs direct provider API access with scoped credentials"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/whatsapp/public.md",
|
||
"sourceHeading": "WhatsApp Business app coexistence is enabled through Meta Embedded Signup"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"whatsapp"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/whatsapp-has-limited-beta-support-and-some-requested-apis-must-go-thro",
|
||
"/kb/toolkits/whatsapp-troubleshooting",
|
||
"meta-oauth-errors-can-require-adding-the-composio-redirect-uri-in-the",
|
||
"reading-whatsapp-replies-is-better-modeled-as-triggers-webhooks-than-a",
|
||
"use-proxy-execute-when-a-whatsapp-meta-workflow-needs-direct-provider",
|
||
"waba-id-is-required-for-whatsapp-connections",
|
||
"whatsapp-api-key-auth-needs-both-system-user-token-and-waba-id",
|
||
"whatsapp-business-app-coexistence-is-enabled-through-meta-embedded-sig",
|
||
"whatsapp-has-limited-beta-support-and-some-requested-apis-must-go-thro",
|
||
"whatsapp-oauth-requires-a-meta-developer-app-with-business-use-case-en",
|
||
"whatsapp-oauth2-initiation-still-requires-generic-id-as-the-waba-id",
|
||
"whatsapp-send-template-message-supports-components-in-newer-toolkit-ve",
|
||
"whatsapp-template-messages-require-an-existing-template-before-sending",
|
||
"whatsapp-toolkit-supports-whatsapp-business-api-accounts-not-personal",
|
||
"whatsapp-troubleshooting",
|
||
"when-sending-whatsapp-messages-pass-real-phone-number-id-and-to-number"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-07-14",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-wrike",
|
||
"title": "Wrike",
|
||
"description": "Public support knowledge for Wrike.",
|
||
"articlePath": "toolkits-wrike.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/wrike/public.md",
|
||
"sourceHeading": "Use the Wrike user id, not the account id, when assigning or updating task users"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/wrike/public.md",
|
||
"sourceHeading": "Wrike task responses expose multiple user-id fields and can resolve names"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/wrike/public.md",
|
||
"sourceHeading": "Assignee is not a native field in Wrike fetch-task API responses"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/wrike/public.md",
|
||
"sourceHeading": "Use the Composio proxy endpoint or SDK executeRequest for direct Wrike API calls"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/wrike/public.md",
|
||
"sourceHeading": "Pass entityId as a string when getConnections returns 404 in v3 SDK flows"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/wrike/public.md",
|
||
"sourceHeading": "Use the latest Wrike toolkit version for nested folder pagination"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"wrike"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/wrike-troubleshooting",
|
||
"assignee-is-not-a-native-field-in-wrike-fetch-task-api-responses",
|
||
"pass-entityid-as-a-string-when-getconnections-returns-404-in-v3-sdk-fl",
|
||
"use-the-composio-proxy-endpoint-or-sdk-executerequest-for-direct-wrike",
|
||
"use-the-wrike-user-id-not-the-account-id-when-assigning-or-updating-ta",
|
||
"use-wrike-toolkit-version-20260204-00-or-latest-for-nested-folder-pagi",
|
||
"wrike-task-responses-expose-multiple-user-id-fields-and-can-resolve-na",
|
||
"wrike-troubleshooting"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-xero",
|
||
"title": "Xero",
|
||
"description": "Public support knowledge for Xero.",
|
||
"articlePath": "toolkits-xero.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/xero/public.md",
|
||
"sourceHeading": "Xero redirect URI must match the current auth-config flow exactly"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/xero/public.md",
|
||
"sourceHeading": "Xero OAuth app should be a Web app and the client secret must match the auth config"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/xero/public.md",
|
||
"sourceHeading": "Remove deprecated Xero scopes that cause invalid-scope/CSP/login errors"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/xero/public.md",
|
||
"sourceHeading": "Connect MCP discovers Xero tools through meta-tools instead of preloading every tool"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/xero/public.md",
|
||
"sourceHeading": "Connect MCP and Platform MCP Xero connections are independent"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"xero"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/xero-troubleshooting",
|
||
"connect-mcp-and-platform-mcp-xero-connections-are-independent",
|
||
"connect-mcp-discovers-xero-tools-through-meta-tools-instead-of-preload",
|
||
"connect-xero-with-your-own-oauth-app",
|
||
"if-for-you-xero-connect-button-is-blocked-use-connect-mcp-directly-whi",
|
||
"xero-can-be-blocked-in-claude-cowork-by-payment-processing-session-res",
|
||
"xero-redirect-uri-must-match-exactly-v1-auth-apps-callback-can-be-requ",
|
||
"xero-troubleshooting"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-ynab",
|
||
"title": "YNAB authentication",
|
||
"description": "Current OAuth setup for the YNAB toolkit.",
|
||
"articlePath": "toolkits-ynab.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/ynab/public.md",
|
||
"sourceHeading": "YNAB supports managed and customer-owned OAuth"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"ynab"
|
||
],
|
||
"aliases": [],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-08-17",
|
||
"lastVerifiedAt": "2026-08-24",
|
||
"reviewAfter": "2026-11-22",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-youtube",
|
||
"title": "YouTube",
|
||
"description": "Public support knowledge for YouTube.",
|
||
"articlePath": "toolkits-youtube.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/youtube/public.md",
|
||
"sourceHeading": "`YOUTUBE_UPLOAD_VIDEO` with `videoFilePath` is SDK-oriented and expects a full file path"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/youtube/public.md",
|
||
"sourceHeading": "Use direct file paths or the current multipart upload action for YouTube videos"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/youtube/public.md",
|
||
"sourceHeading": "Diagnose YouTube `processing abandoned` from the current upload and provider state"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/youtube/public.md",
|
||
"sourceHeading": "YouTube caption download requires `https://www.googleapis.com/auth/youtube.force-ssl`"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/youtube/public.md",
|
||
"sourceHeading": "YouTube has trigger support, but trigger creation errors may only surface at trigger setup time"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/youtube/public.md",
|
||
"sourceHeading": "`uploadLimitExceeded` is a YouTube channel limit, not an OAuth-app quota"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"youtube"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/youtube-processing-abandoned-can-be-provider-side-but-upload-byte-tran",
|
||
"/kb/toolkits/youtube-troubleshooting",
|
||
"use-a-custom-youtube-oauth-app-in-production-to-avoid-shared-default-a",
|
||
"use-direct-file-paths-or-multipart-upload-for-youtube-videos-fileuploa",
|
||
"youtube-caption-download-requires-https-www-googleapis-com-auth-youtub",
|
||
"youtube-has-trigger-support-but-trigger-creation-errors-may-only-surfa",
|
||
"youtube-processing-abandoned-can-be-provider-side-but-upload-byte-tran",
|
||
"youtube-transcript-community-post-tools-may-need-feature-requests-or-c",
|
||
"youtube-troubleshooting",
|
||
"youtube-upload-video-with-videofilepath-is-sdk-oriented-and-expects-a"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-17",
|
||
"reviewAfter": "2026-11-15",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-zendesk",
|
||
"title": "Zendesk",
|
||
"description": "Public support knowledge for Zendesk.",
|
||
"articlePath": "toolkits-zendesk.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/zendesk/public.md",
|
||
"sourceHeading": "Zendesk OAuth setup does not require manually entering an access token"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zendesk/public.md",
|
||
"sourceHeading": "Zendesk connections require the account subdomain"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zendesk/public.md",
|
||
"sourceHeading": "Initiate Zendesk OAuth connections by passing `subdomain` in config values"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zendesk/public.md",
|
||
"sourceHeading": "Zendesk API-key/basic auth initiation passes `subdomain` and base64 encoded credentials"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zendesk/public.md",
|
||
"sourceHeading": "Include `toolkit_versions` when listing Zendesk tools through the API"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zendesk/public.md",
|
||
"sourceHeading": "`ZENDESK_SEARCH_ZENDESK` was added for Zendesk search use cases"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zendesk/public.md",
|
||
"sourceHeading": "`ZENDESK_UPDATE_ZENDESK_TICKET` is available for updating Zendesk tickets"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zendesk/public.md",
|
||
"sourceHeading": "Zendesk get-ticket-by-id returns ticket details in one tool call"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zendesk/public.md",
|
||
"sourceHeading": "Zendesk supports triggers in Composio"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"zendesk"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/zendesk-troubleshooting",
|
||
"include-toolkit-versions-when-listing-zendesk-tools-through-the-api",
|
||
"initiate-zendesk-oauth-connections-by-passing-subdomain-in-config-valu",
|
||
"use-your-own-zendesk-oauth-app-for-production-or-when-the-default-app",
|
||
"zendesk-api-key-basic-auth-initiation-passes-subdomain-and-base64-enco",
|
||
"zendesk-connections-require-the-account-subdomain",
|
||
"zendesk-get-ticket-by-id-returns-ticket-details-in-one-tool-call",
|
||
"zendesk-is-not-officially-supported-in-langflow-connect-through-the-co",
|
||
"zendesk-oauth-setup-does-not-require-manually-entering-an-access-token",
|
||
"zendesk-troubleshooting",
|
||
"zendesk-update-zendesk-ticket-is-available-for-updating-zendesk-ticket"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-zoho-books",
|
||
"title": "Zoho Books",
|
||
"description": "Public support knowledge for Zoho Books.",
|
||
"articlePath": "toolkits-zoho-books.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/zoho_books/public.md",
|
||
"sourceHeading": "Use Zoho Invoice for create estimate"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zoho_books/public.md",
|
||
"sourceHeading": "Optional Zoho Books item rate filters do not have default values"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zoho_books/public.md",
|
||
"sourceHeading": "Pin Zoho Books toolkit version when reproducing list-items behavior"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zoho_books/public.md",
|
||
"sourceHeading": "Zoho domain suffix parameter expects the extension value"
|
||
}
|
||
],
|
||
"topics": [
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"zoho_books"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/zoho-books-troubleshooting",
|
||
"optional-zoho-books-item-rate-filters-do-not-have-default-values",
|
||
"pin-zoho-books-toolkit-version-when-reproducing-list-items-behavior",
|
||
"use-existing-bill-read-tools-or-file-a-request-for-missing-bill-creati",
|
||
"zoho-books-troubleshooting",
|
||
"zoho-domain-suffix-parameter-expects-the-extension-value"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false,
|
||
"verifyIgnoreToolSlugs": [
|
||
"ZOHO_BOOKS_CREATE_ESTIMATE"
|
||
]
|
||
},
|
||
{
|
||
"slug": "toolkits-zoho-mail",
|
||
"title": "Zoho Mail",
|
||
"description": "Public support knowledge for Zoho Mail.",
|
||
"articlePath": "toolkits-zoho-mail.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/zoho_mail/public.md",
|
||
"sourceHeading": "ZOHO_MAIL_MESSAGES_SEND_EMAIL supports sending attachments"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zoho_mail/public.md",
|
||
"sourceHeading": "Pass the correct Zoho region when connecting Zoho Mail"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zoho_mail/public.md",
|
||
"sourceHeading": "Zoho Mail account_id must be handled as a string to avoid JavaScript precision loss"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zoho_mail/public.md",
|
||
"sourceHeading": "Connect MCP is agent-oriented; authenticate Zoho Mail in Connect dashboard before tool use"
|
||
}
|
||
],
|
||
"topics": [
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"zoho_mail"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/zoho-mail-troubleshooting",
|
||
"connect-mcp-is-agent-oriented-authenticate-zoho-mail-in-connect-dashbo",
|
||
"pass-the-correct-zoho-region-when-connecting-zoho-mail",
|
||
"zoho-mail-account-id-must-be-handled-as-a-string-to-avoid-javascript-p",
|
||
"zoho-mail-attachment-download-support-should-be-treated-as-a-feature-r",
|
||
"zoho-mail-messages-send-email-supports-sending-attachments",
|
||
"zoho-mail-troubleshooting"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-zoho",
|
||
"title": "Zoho",
|
||
"description": "Public support knowledge for Zoho.",
|
||
"articlePath": "toolkits-zoho.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/zoho/public.md",
|
||
"sourceHeading": "`ZOHO_MAIL_MESSAGES_SEND_EMAIL` supports attachments in newer versions"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zoho/public.md",
|
||
"sourceHeading": "Zoho connections require the correct region/domain extension"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zoho/public.md",
|
||
"sourceHeading": "Zoho Mail uses `suffix.one` as the connection initiation domain-extension field"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zoho/public.md",
|
||
"sourceHeading": "Zoho auth config and connection required fields can be fetched from toolkit schema APIs/SDK"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zoho/public.md",
|
||
"sourceHeading": "Zoho Books create-estimate moved to the `zoho_invoice` toolkit"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zoho/public.md",
|
||
"sourceHeading": "`ZOHO_BOOKS_LIST_ITEMS` has no default `rate`; optional fields can be omitted"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zoho/public.md",
|
||
"sourceHeading": "Use `ZOHO_GET_ZOHO_RECORDS` to find a `lead_id` before converting a Zoho lead"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zoho/public.md",
|
||
"sourceHeading": "Zoho record listing can require page tokens and is subject to Zoho rate limits"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zoho/public.md",
|
||
"sourceHeading": "Zoho MCP setup uses OAuth2 and should initiate a new connection from the client/dashboard"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zoho/public.md",
|
||
"sourceHeading": "Zoho Mail account IDs should be treated as strings to avoid JS safe-integer precision loss"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"zoho"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/zoho-troubleshooting",
|
||
"request-zoho-mail-attachment-download-if-the-current-toolkit-does-not",
|
||
"some-zoho-surfaces-may-be-auth-only-or-lack-formal-tools-use-custom-to",
|
||
"use-zoho-get-zoho-records-to-find-a-lead-id-before-converting-a-zoho-l",
|
||
"zoho-auth-config-and-connection-required-fields-can-be-fetched-from-to",
|
||
"zoho-books-bill-tools-exist-but-missing-purchase-order-bill-flows-may",
|
||
"zoho-books-create-estimate-moved-to-the-zoho-invoice-toolkit",
|
||
"zoho-books-list-items-has-no-default-rate-optional-fields-can-be-omitt",
|
||
"zoho-connections-require-the-correct-region-domain-extension",
|
||
"zoho-mail-account-ids-should-be-treated-as-strings-to-avoid-js-safe-in",
|
||
"zoho-mail-messages-send-email-supports-attachments-in-newer-versions",
|
||
"zoho-mail-uses-suffix-one-as-the-connection-initiation-domain-extensio",
|
||
"zoho-mcp-setup-uses-oauth2-and-should-initiate-a-new-connection-from-t",
|
||
"zoho-record-listing-can-require-page-tokens-and-is-subject-to-zoho-rat",
|
||
"zoho-troubleshooting"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
},
|
||
{
|
||
"slug": "toolkits-zoom",
|
||
"title": "Zoom",
|
||
"description": "Public support knowledge for Zoom.",
|
||
"articlePath": "toolkits-zoom.md",
|
||
"sources": [
|
||
{
|
||
"sourcePath": "toolkits/zoom/public.md",
|
||
"sourceHeading": "Zoom custom OAuth apps may only connect users in the app owner's Zoom organization unless configured/approved otherwise"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zoom/public.md",
|
||
"sourceHeading": "Zoom should use the default Composio redirect URL unless the auth guide says otherwise"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zoom/public.md",
|
||
"sourceHeading": "`ZOOM_GET_A_MEETING_SUMMARY` needs the correct past-meeting UUID and auto summary enabled"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zoom/public.md",
|
||
"sourceHeading": "Zoom delete/summary tools may require extra scopes in a custom OAuth app"
|
||
},
|
||
{
|
||
"sourcePath": "toolkits/zoom/public.md",
|
||
"sourceHeading": "Zoom OAuth consent branding comes from the customer's OAuth app"
|
||
}
|
||
],
|
||
"topics": [
|
||
"auth-config",
|
||
"authentication",
|
||
"errors-and-troubleshooting",
|
||
"sessions-and-execution",
|
||
"toolkits-and-providers"
|
||
],
|
||
"tags": [
|
||
"for-you",
|
||
"platform",
|
||
"zoom"
|
||
],
|
||
"aliases": [
|
||
"/kb/toolkits/use-a-custom-zoom-oauth-app-when-the-composio-managed-zoom-app-is-unav",
|
||
"/kb/toolkits/zoom-troubleshooting",
|
||
"create-a-new-zoom-auth-config-if-the-default-oauth-app-changed-after-t",
|
||
"use-a-custom-zoom-oauth-app-when-the-composio-managed-zoom-app-is-unav",
|
||
"zoom-custom-oauth-apps-may-only-connect-users-in-the-app-owner-s-zoom",
|
||
"zoom-get-a-meeting-summary-needs-the-correct-past-meeting-uuid-and-aut",
|
||
"zoom-oauth-consent-branding-comes-from-the-customer-s-oauth-app",
|
||
"zoom-should-use-the-default-composio-redirect-url-unless-the-auth-guid",
|
||
"zoom-troubleshooting"
|
||
],
|
||
"relatedGuides": [],
|
||
"externalResources": [],
|
||
"updatedAt": "2026-06-24",
|
||
"lastVerifiedAt": "2026-08-12",
|
||
"reviewAfter": "2026-11-10",
|
||
"freshness": "evergreen",
|
||
"state": "published",
|
||
"featured": false
|
||
}
|
||
]
|
||
}
|