Replace an agent's specialist-transfer links (full replacement)
Full-replacement — see AgentLinksInput. Requires a writer role.
Returns the saved set (server-assigned id/position/timestamps),
re-read after the write rather than an echo of the request.
Authorization
bearerAuth Long-lived ES256 JWT minted from the dashboard (https://app.sautikit.com/developers/api-keys). Signed by the
platform keyring. Carries workspace_id and scopes claims;
revoked via the platform deny-list.
In: header
Path Parameters
uuidRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Full-replacement request body for PUT /v1/agents/{id}/links —
every call replaces the agent's entire draft link set (delete +
bulk insert in one transaction); there is no partial-update verb.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X PUT "https://example.com/v1/agents/497f6eca-6276-4993-bfeb-53cbbbba6f08/links" \ -H "Content-Type: application/json" \ -d '{ "links": [ { "target_agent_id": "9d2b1f53-8c0e-4f1d-9a6b-5d3a8c47e9f0", "description": "Transfer billing questions to the billing specialist." } ] }'[ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "target_agent_id": "b0b31ccc-0df2-496f-b84c-b8d90f867dcc", "description": "string", "position": 0, "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z" }]{ "error": { "code": "validation.bad_request", "message": "string", "request_id": "string", "details": [ "string" ] }}{ "error": { "code": "validation.bad_request", "message": "string", "request_id": "string", "details": [ "string" ] }}{ "error": { "code": "validation.bad_request", "message": "string", "request_id": "string", "details": [ "string" ] }}{ "error": { "code": "validation.bad_request", "message": "string", "request_id": "string", "details": [ "string" ] }}{ "error": { "code": "validation.bad_request", "message": "string", "request_id": "string", "details": [ "string" ] }}List an agent's specialist-transfer links GET
Returns a BARE JSON ARRAY (not a `data` envelope), ordered by `position` — the try order a live transfer decision walks.
List everything that references an agent ("Used by") GET
The "Used by" view: every place in the workspace that references this agent, so an operator can see — and click through to — where it is wired. Three workspace-scoped sources, each an array that is always present (never null) and empty when nothing references the agent: - `numbers` — inbound number bindings (a number's `routing_config.inbound_agent` names this agent). - `broadcasts` — outbound campaigns whose `agent_id` is this agent. - `linked_by` — OTHER agents that list this agent as a specialist-transfer target. See `AgentUsage` for the per-source fields.