Replace a built-in integration connection's tool allow-list
Replaces the tools the organization’s agents may use through this built-in integration connection, validated against the catalog exactly as when the app was added: an empty list, an unknown tool, or a tool the read preset does not admit is refused. The connection’s state is unchanged. Every agent using the app inherits the new list at its next credential refresh. A connection that is narrowed at vault-grant time instead is refused with 422.
Authorizations
A Recursion API key, created in the console under API keys.
Path Parameters
Integration connection id (UUID) as returned by listIntegrationConnections.
Body
Request body replacing the tool allow-list of a built-in integration connection. Validated against the catalog exactly as when the app was added; the connection's state is unchanged and sessions pick the new list up at their next credential refresh.
The app's tools the organization's agents may use, by tool name from the catalog. Replaces the connection's allow-list in full; an empty list is refused.
1 - 200 elementsThe permission preset the allow-list is held to: read (every tool must be classified read-only) or write (any catalog tool; each is stored at its classified level). Omit for read.
Response
An organization's link to a third-party account, created by installing an integration such as the GitHub App. It holds no secret itself; grant it to an agent so sessions can mint short-lived provider credentials from it.
An organization's link to a third-party account, created by installing an integration such as the GitHub App. It holds no secret itself; grant it to an agent so sessions can mint short-lived provider credentials from it.
Identifier for this connection (UUID). Server-assigned. Cite it when granting an agent access to the integration.
RFC 3339 timestamp of when this record was created. Server-assigned.
The provider's own identifier for the link, which token minting addresses. The installation id for GitHub; the composite {api_app_id}:{team_id} for Slack; the customer service-account email for Google Cloud.
Organization that owns this record. Resolved from the API key; never accepted from the caller.
Stable slug of the third-party integration adapter this connection uses.
Lifecycle of the connection: pending was registered directly and waits for the customer to grant trust at the provider (a successful probe activates it), active can mint tokens, suspended is restorable at the provider and resolves to no credential, revoked was uninstalled and must be installed again.
RFC 3339 timestamp of the last change to this record. Server-assigned.
Name of the connected third-party account, e.g. the GitHub org or user login. Cached at install time for display, so no provider call is needed to show it.
Kind of account that was connected, as the provider reports it, e.g. Organization or User for GitHub and workspace for Slack.
User who completed the install, recorded for audit. Empty for connections created by an internal admin route.
What the provider granted the install, as permission name to access level (e.g. contents: write). Used to narrow a minted token without a provider round trip and to explain why a permission preset is unavailable.
Whether the install covers all of the account's resources or only chosen ones: all or selected. Informational only; the authoritative list stays at the provider.
Runtime usage counts, supplied on the connection list.