Skip to main content
PATCH
/
v1
/
integrations
/
connections
/
{connection_id}
/
tools
Enable or disable all tools on a connection
curl --request PATCH \
  --url https://api-sandbox.featherhq.com/v1/integrations/connections/{connection_id}/tools \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '
{
  "is_enabled": true
}
'
[
  {
    "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "connection_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "organization_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "nickname_slug": "<string>",
    "tool_path": "<string>",
    "slug": "<string>",
    "display_name": "<string>",
    "description": "<string>",
    "input_schema": {},
    "is_enabled": true,
    "last_seen_at": "2023-11-07T05:31:56Z",
    "created_at": "2023-11-07T05:31:56Z",
    "updated_at": "2023-11-07T05:31:56Z",
    "stale_field_paths": [
      "<string>"
    ],
    "default_count": 123,
    "pinned_count": 123,
    "stale_input_fields": [
      "<string>"
    ],
    "merged_input_preview": {},
    "response_schema": {},
    "response_field_map": {},
    "input_defaults": {}
  }
]

Authorizations

x-api-key
string
header
required

Path Parameters

connection_id
string<uuid>
required

Body

application/json

Body for the per-connection "enable all / disable all" switch.

Applies a single is_enabled value to every tool on the connection. Unlike :class:ConnectionToolPatchRequest the field is required — there is nothing to no-op on a bulk flip.

is_enabled
boolean
required

Response

Successful Response

id
string<uuid>
required
connection_id
string<uuid>
required
organization_id
string<uuid>
required
integration_key
enum<string>
required

Stable identifier for each supported integration.

The string value must match the vendor's per-provider identifier (for Nango: provider_config_key). Persisted on integration_connections.integration_key and integration_connection_tools.integration_key.

Adding a new integration: append a member here, add an IntegrationSpec to INTEGRATIONS, register the provider in the vendor cloud via src/integrations/bootstrap.py (Step 3).

Available options:
slack,
custom_mcp,
notion,
google_drive,
calcom,
twilio,
email
nickname_slug
string
required
tool_path
string
required
slug
string
required
display_name
string
required
description
string | null
required
input_schema
Input Schema · object
required
is_enabled
boolean
required
last_seen_at
string<date-time>
required
created_at
string<date-time>
required
updated_at
string<date-time>
required
stale_field_paths
string[]
required
read-only

Saved field-map paths no longer present in the shape (ENG-631 D4).

default_count
integer
required
read-only

How many input fields carry an operator default (ENG-590 / PRD 7.7).

pinned_count
integer
required
read-only

How many input fields are operator-pinned (ENG-590).

stale_input_fields
string[]
required
read-only

Configured input fields removed/renamed/retyped by a re-sync (PRD 7.6).

merged_input_preview
Merged Input Preview · object
required
read-only

input_schema with each operator value injected (PRD 7.8).

response_schema
Response Schema · object
response_field_map
Response Field Map · object
input_defaults
Input Defaults · object