Skip to main content
Integrations are reusable tool definitions — an endpoint URL + method + headers + a JSON schema for arguments — that you can attach to one or more agents. During a call the agent uses the tool’s schema to decide when to call out; ThunderPhone makes the outbound HTTP request on the agent’s behalf using the integration’s saved configuration. See also Function Tools for the shape of the JSON schema an integration’s spec must follow.

Endpoints

Integration object


List integrations

Returns an array of Integration objects.

Create an integration

Request fields

Returns 201 Created with the new Integration object in validation_status="untested".

Retrieve / update / delete

GET, PATCH, and DELETE behave conventionally. PATCH accepts any subset of the create fields. Deleting an integration removes it from every agent it was linked to.

Transfer an integration

Returns 201 Created for copy / 200 OK for move:

Version history

Response is analogous to Agent versions: {count, results[]} with each result containing id, revision, created_by, snapshot, and changed_fields.

Test integration request

Execute a one-off HTTP request against the integration endpoint (from ThunderPhone’s servers) to validate connectivity before linking the integration to an agent. The sandbox enforces SSRF guards — no requests to localhost or private IP ranges.
Response
Response bodies are truncated at 6 kB. SSRF-blocked requests return 400 with code="url_not_allowed".

Agents

Attach integrations to agents via integration_ids.

Function Tools

The JSON schema shape for spec.