A Workspace Connector is an account-scoped connected account — Gmail, Slack, Salesforce, Google Sheets, and so on. In the app these are called workspace connectors; in the Public API they live under /integrations.
Each connector has a numeric id that you pass as connectedAccountId when wiring workflow/flow triggers and tool nodes. Setting up an automation almost always starts here: find the connector, confirm it is connected, and read its id.
These are distinct from Max Connectors, which belong to a single user and power that person's Max assistant.
The Public API is read-only. Connecting, renaming, visibility, and which tools a connector exposes are changed in the app — not via an API key. Requires a USER API key.
| Field | Type | Notes |
|---|---|---|
id | number | Use as connectedAccountId in triggers and TOOLS_AI nodes. |
toolkit | string | Uppercase enum name, e.g. GMAIL, SLACK, SALESFORCE, GOOGLESHEETS. |
alias | string? | Display name. |
visibility | enum | SHARED · PRIVATE. |
isConnected | boolean | Whether the OAuth grant is currently valid. |
isExpired | boolean | Needs reconnect in the app. |
connectedEmail | string? | Connected email/account identifier. |
allowedToolSlugs | array | Currently enabled tool slugs. |
enabledToolsCount | number | |
availableToolsCount | number |
Discover valid toolkit values with GET /integrations/toolkits. An unknown value on list filters returns 400.
- Event trigger nodes — a workflow
TRIGGERwithtriggerType: "COMPOSIO_TRIGGER"needsconnectedAccountId,triggerToolkit, andtriggerSlug, plustriggerConfig. When the trigger fires, the payload is available downstream as{trigger_payload}. TOOLS_AInodes —data.connectedAccountConfigsis an array of{ connectedAccountId, useAllTools, selectedToolSlugs }.- References are validated server-side: a wrong
connectedAccountIdreturns 400.
To resolve the ids a trigger config expects (spreadsheet, Drive folder, Gmail label, …), use Integration Resources (GET /integrations/trigger-types and GET /integrations/trigger-resources/...). Those are a separate tag from Workspace Connectors.
| Verb | Path | Purpose |
|---|---|---|
GET | /public/v1/integrations | List (filters: toolkit, filterText, connection state) |
GET | /public/v1/integrations/toolkits | Catalog of connectable toolkits + tool slugs |
GET | /public/v1/integrations/{integrationId} | Detail |
GET | /public/v1/integrations/{integrationId}/tools | Enabled vs available tools, with required-scope status |
hasRequiredScopes: false on a tool means the OAuth grant is missing scopes that tool needs — it will fail at runtime until the user reconnects in the app with broader permissions.
Full list in the API Reference under the Workspace Connectors tag.
frontline integrations list --toolkit GMAIL --connected --table
frontline integrations toolkits --table
frontline integrations get 42
frontline integrations tools 42 --table