naftiko: 1.0.0-alpha2 info: label: Telnyx API — Assistants description: 'Telnyx API — Assistants. 45 operations. Lead operation: List assistants. Self-contained Naftiko capability covering one Telnyx business surface.' tags: - Telnyx - Assistants created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: TELNYX_API_KEY: TELNYX_API_KEY capability: consumes: - type: http namespace: telnyx-assistants baseUri: https://api.telnyx.com/v2 description: Telnyx API — Assistants business capability. Self-contained, no shared references. resources: - name: ai-assistants path: /ai/assistants operations: - name: getassistantspublicassistantsget method: GET description: List assistants outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createnewassistantpublicassistantspost method: POST description: Create an assistant outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: ai-assistants-import path: /ai/assistants/import operations: - name: importassistantspublicassistantsimportpost method: POST description: Import assistants from external provider outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: ai-assistants-tags path: /ai/assistants/tags operations: - name: getallassistanttags method: GET description: Get All Tags outputRawFormat: json outputParameters: - name: result type: object value: $. - name: ai-assistants-tests path: /ai/assistants/tests operations: - name: getassistanttestspublicassistantstestsget method: GET description: List assistant tests with pagination outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: test_suite in: query type: string description: Filter tests by test suite name - name: telnyx_conversation_channel in: query type: string description: Filter tests by communication channel (e.g., 'web_chat', 'sms') - name: destination in: query type: string description: Filter tests by destination (phone number, webhook URL, etc.) - name: page in: query type: object description: 'Consolidated page parameter (deepObject style). Originally: page[size], page[number]' - name: createassistanttestpublicassistantstestspost method: POST description: Create a new assistant test outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: ai-assistants-tests-test-suites path: /ai/assistants/tests/test-suites operations: - name: fetchtestsuitespublicassistantsteststestsuitesget method: GET description: Get all test suite names outputRawFormat: json outputParameters: - name: result type: object value: $. - name: ai-assistants-tests-test-suites-suite_name-runs path: /ai/assistants/tests/test-suites/{suite_name}/runs operations: - name: gettestsuiterunsfortestpublicassistantsteststestsuitessuitenamerunsget method: GET description: Get test suite run history outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: suite_name in: path type: string required: true - name: status in: query type: string description: Filter runs by execution status (pending, running, completed, failed, timeout) - name: test_suite_run_id in: query type: string description: Filter runs by specific suite execution batch ID - name: page in: query type: object description: 'Consolidated page parameter (deepObject style). Originally: page[size], page[number]' - name: triggertestsuiterunspublicassistantsteststestsuitessuitenamerunspost method: POST description: Trigger test suite execution outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: suite_name in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: false - name: ai-assistants-tests-test_id path: /ai/assistants/tests/{test_id} operations: - name: deleteassistanttestpublicassistantsteststestiddelete method: DELETE description: Delete an assistant test outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: test_id in: path type: string required: true - name: getassistanttestpublicassistantsteststestidget method: GET description: Get assistant test by ID outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: test_id in: path type: string required: true - name: updateassistanttestpublicassistantsteststestidput method: PUT description: Update an assistant test outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: test_id in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: true - name: ai-assistants-tests-test_id-runs path: /ai/assistants/tests/{test_id}/runs operations: - name: gettestrunsfortestpublicassistantsteststestidrunsget method: GET description: Get test run history for a specific test outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: test_id in: path type: string required: true - name: status in: query type: string description: Filter runs by execution status (pending, running, completed, failed, timeout) - name: page in: query type: object description: 'Consolidated page parameter (deepObject style). Originally: page[size], page[number]' - name: triggertestrunpublicassistantsteststestidrunspost method: POST description: Trigger a manual test run outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: test_id in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: false - name: ai-assistants-tests-test_id-runs-run_id path: /ai/assistants/tests/{test_id}/runs/{run_id} operations: - name: gettestrunpublicassistantsteststestidrunsrunidget method: GET description: Get specific test run details outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: test_id in: path type: string required: true - name: run_id in: path type: string required: true - name: ai-assistants-assistant_id path: /ai/assistants/{assistant_id} operations: - name: deleteassistantpublicassistantsassistantiddelete method: DELETE description: Delete an assistant outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistant_id in: path type: string required: true - name: getassistantpublicassistantsassistantidget method: GET description: Get an assistant outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistant_id in: path type: string required: true - name: fetch_dynamic_variables_from_webhook in: query type: boolean - name: from in: query type: string - name: to in: query type: string - name: call_control_id in: query type: string - name: updateassistantpublicassistantsassistantidpost method: POST description: Update an assistant outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistant_id in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: true - name: ai-assistants-assistant_id-canary-deploys path: /ai/assistants/{assistant_id}/canary-deploys operations: - name: deletecanarydeployassistantsassistantidcanarydeploysdelete method: DELETE description: Delete Canary Deploy outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistant_id in: path type: string required: true - name: getcanarydeployassistantsassistantidcanarydeploysget method: GET description: Get Canary Deploy outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistant_id in: path type: string required: true - name: createcanarydeployassistantsassistantidcanarydeployspost method: POST description: Create Canary Deploy outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistant_id in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: true - name: updatecanarydeployassistantsassistantidcanarydeploysput method: PUT description: Update Canary Deploy outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistant_id in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: true - name: ai-assistants-assistant_id-chat path: /ai/assistants/{assistant_id}/chat operations: - name: assistantchatpublicassistantsassistantidchatpost method: POST description: Assistant Chat (BETA) outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistant_id in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: true - name: ai-assistants-assistant_id-chat-sms path: /ai/assistants/{assistant_id}/chat/sms operations: - name: assistantsmschatassistantsassistantidchatsmspost method: POST description: Assistant Sms Chat outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistant_id in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: true - name: ai-assistants-assistant_id-clone path: /ai/assistants/{assistant_id}/clone operations: - name: cloneassistantpublicassistantsassistantidclonepost method: POST description: Clone Assistant outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistant_id in: path type: string required: true - name: ai-assistants-assistant_id-scheduled_events path: /ai/assistants/{assistant_id}/scheduled_events operations: - name: getscheduledevents method: GET description: List scheduled events outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistant_id in: path type: string required: true - name: from_date in: query type: string - name: to_date in: query type: string - name: conversation_channel in: query type: string - name: page in: query type: object description: 'Consolidated page parameter (deepObject style). Originally: page[size], page[number]' - name: createscheduledevent method: POST description: Create a scheduled event outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistant_id in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: true - name: ai-assistants-assistant_id-scheduled_events-event_id path: /ai/assistants/{assistant_id}/scheduled_events/{event_id} operations: - name: deletescheduledevent method: DELETE description: Delete a scheduled event outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistant_id in: path type: string required: true - name: event_id in: path type: string required: true - name: getscheduledevent method: GET description: Get a scheduled event outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistant_id in: path type: string required: true - name: event_id in: path type: string required: true - name: ai-assistants-assistant_id-tags path: /ai/assistants/{assistant_id}/tags operations: - name: addassistanttag method: POST description: Add Assistant Tag outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistant_id in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: true - name: ai-assistants-assistant_id-tags-tag path: /ai/assistants/{assistant_id}/tags/{tag} operations: - name: removeassistanttag method: DELETE description: Remove Assistant Tag outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistant_id in: path type: string required: true - name: tag in: path type: string required: true - name: ai-assistants-assistant_id-texml path: /ai/assistants/{assistant_id}/texml operations: - name: getassistanttexmlpublicassistantsassistantidtexmlget method: GET description: Get assistant texml outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistant_id in: path type: string required: true - name: ai-assistants-assistant_id-tools-tool_id path: /ai/assistants/{assistant_id}/tools/{tool_id} operations: - name: removeassistanttool method: DELETE description: Remove Assistant Tool outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistant_id in: path type: string required: true - name: tool_id in: path type: string required: true - name: addassistanttool method: PUT description: Add Assistant Tool outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistant_id in: path type: string required: true - name: tool_id in: path type: string required: true - name: ai-assistants-assistant_id-tools-tool_id-test path: /ai/assistants/{assistant_id}/tools/{tool_id}/test operations: - name: testassistanttoolpublicassistantsassistantidtoolstoolidtestpost method: POST description: Test Assistant Tool outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistant_id in: path type: string required: true - name: tool_id in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: false - name: ai-assistants-assistant_id-versions path: /ai/assistants/{assistant_id}/versions operations: - name: getassistantversionspublicassistantsassistantidversionsget method: GET description: Get all versions of an assistant outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistant_id in: path type: string required: true - name: ai-assistants-assistant_id-versions-version_id path: /ai/assistants/{assistant_id}/versions/{version_id} operations: - name: deleteassistantversionpublicassistantsassistantidversionsversioniddelete method: DELETE description: Delete a specific assistant version outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistant_id in: path type: string required: true - name: version_id in: path type: string required: true - name: getassistantversionpublicassistantsassistantidversionsversionidget method: GET description: Get a specific assistant version outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistant_id in: path type: string required: true - name: version_id in: path type: string required: true - name: include_mcp_servers in: query type: boolean - name: updateassistantversionpublicassistantsassistantidversionsversionidpost method: POST description: Update a specific assistant version outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistant_id in: path type: string required: true - name: version_id in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: true - name: ai-assistants-assistant_id-versions-version_id-promote path: /ai/assistants/{assistant_id}/versions/{version_id}/promote operations: - name: promoteassistantversionpublicassistantsassistantidversionsversionidpromotepost method: POST description: Promote an assistant version to main outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistant_id in: path type: string required: true - name: version_id in: path type: string required: true - name: ai-tools path: /ai/tools operations: - name: listtools method: GET description: List Tools outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: filter[type] in: query type: string - name: filter[name] in: query type: string - name: page[size] in: query type: integer - name: page[number] in: query type: integer - name: createtoolpost method: POST description: Create Tool outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: ai-tools-tool_id path: /ai/tools/{tool_id} operations: - name: deletetooltoolid method: DELETE description: Delete Tool outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: tool_id in: path type: string required: true - name: gettooltoolid method: GET description: Get Tool outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: tool_id in: path type: string required: true - name: updatetooltoolid method: PATCH description: Update Tool outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: tool_id in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: true authentication: type: bearer token: '{{env.TELNYX_API_KEY}}' exposes: - type: rest namespace: telnyx-assistants-rest port: 8080 description: REST adapter for Telnyx API — Assistants. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/ai/assistants name: ai-assistants description: REST surface for ai-assistants. operations: - method: GET name: getassistantspublicassistantsget description: List assistants call: telnyx-assistants.getassistantspublicassistantsget outputParameters: - type: object mapping: $. - method: POST name: createnewassistantpublicassistantspost description: Create an assistant call: telnyx-assistants.createnewassistantpublicassistantspost with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/ai/assistants/import name: ai-assistants-import description: REST surface for ai-assistants-import. operations: - method: POST name: importassistantspublicassistantsimportpost description: Import assistants from external provider call: telnyx-assistants.importassistantspublicassistantsimportpost with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/ai/assistants/tags name: ai-assistants-tags description: REST surface for ai-assistants-tags. operations: - method: GET name: getallassistanttags description: Get All Tags call: telnyx-assistants.getallassistanttags outputParameters: - type: object mapping: $. - path: /v1/ai/assistants/tests name: ai-assistants-tests description: REST surface for ai-assistants-tests. operations: - method: GET name: getassistanttestspublicassistantstestsget description: List assistant tests with pagination call: telnyx-assistants.getassistanttestspublicassistantstestsget with: test_suite: rest.test_suite telnyx_conversation_channel: rest.telnyx_conversation_channel destination: rest.destination page: rest.page outputParameters: - type: object mapping: $. - method: POST name: createassistanttestpublicassistantstestspost description: Create a new assistant test call: telnyx-assistants.createassistanttestpublicassistantstestspost with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/ai/assistants/tests/test-suites name: ai-assistants-tests-test-suites description: REST surface for ai-assistants-tests-test-suites. operations: - method: GET name: fetchtestsuitespublicassistantsteststestsuitesget description: Get all test suite names call: telnyx-assistants.fetchtestsuitespublicassistantsteststestsuitesget outputParameters: - type: object mapping: $. - path: /v1/ai/assistants/tests/test-suites/{suite-name}/runs name: ai-assistants-tests-test-suites-suite-name-runs description: REST surface for ai-assistants-tests-test-suites-suite_name-runs. operations: - method: GET name: gettestsuiterunsfortestpublicassistantsteststestsuitessuitenamerunsget description: Get test suite run history call: telnyx-assistants.gettestsuiterunsfortestpublicassistantsteststestsuitessuitenamerunsget with: suite_name: rest.suite_name status: rest.status test_suite_run_id: rest.test_suite_run_id page: rest.page outputParameters: - type: object mapping: $. - method: POST name: triggertestsuiterunspublicassistantsteststestsuitessuitenamerunspost description: Trigger test suite execution call: telnyx-assistants.triggertestsuiterunspublicassistantsteststestsuitessuitenamerunspost with: suite_name: rest.suite_name body: rest.body outputParameters: - type: object mapping: $. - path: /v1/ai/assistants/tests/{test-id} name: ai-assistants-tests-test-id description: REST surface for ai-assistants-tests-test_id. operations: - method: DELETE name: deleteassistanttestpublicassistantsteststestiddelete description: Delete an assistant test call: telnyx-assistants.deleteassistanttestpublicassistantsteststestiddelete with: test_id: rest.test_id outputParameters: - type: object mapping: $. - method: GET name: getassistanttestpublicassistantsteststestidget description: Get assistant test by ID call: telnyx-assistants.getassistanttestpublicassistantsteststestidget with: test_id: rest.test_id outputParameters: - type: object mapping: $. - method: PUT name: updateassistanttestpublicassistantsteststestidput description: Update an assistant test call: telnyx-assistants.updateassistanttestpublicassistantsteststestidput with: test_id: rest.test_id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/ai/assistants/tests/{test-id}/runs name: ai-assistants-tests-test-id-runs description: REST surface for ai-assistants-tests-test_id-runs. operations: - method: GET name: gettestrunsfortestpublicassistantsteststestidrunsget description: Get test run history for a specific test call: telnyx-assistants.gettestrunsfortestpublicassistantsteststestidrunsget with: test_id: rest.test_id status: rest.status page: rest.page outputParameters: - type: object mapping: $. - method: POST name: triggertestrunpublicassistantsteststestidrunspost description: Trigger a manual test run call: telnyx-assistants.triggertestrunpublicassistantsteststestidrunspost with: test_id: rest.test_id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/ai/assistants/tests/{test-id}/runs/{run-id} name: ai-assistants-tests-test-id-runs-run-id description: REST surface for ai-assistants-tests-test_id-runs-run_id. operations: - method: GET name: gettestrunpublicassistantsteststestidrunsrunidget description: Get specific test run details call: telnyx-assistants.gettestrunpublicassistantsteststestidrunsrunidget with: test_id: rest.test_id run_id: rest.run_id outputParameters: - type: object mapping: $. - path: /v1/ai/assistants/{assistant-id} name: ai-assistants-assistant-id description: REST surface for ai-assistants-assistant_id. operations: - method: DELETE name: deleteassistantpublicassistantsassistantiddelete description: Delete an assistant call: telnyx-assistants.deleteassistantpublicassistantsassistantiddelete with: assistant_id: rest.assistant_id outputParameters: - type: object mapping: $. - method: GET name: getassistantpublicassistantsassistantidget description: Get an assistant call: telnyx-assistants.getassistantpublicassistantsassistantidget with: assistant_id: rest.assistant_id fetch_dynamic_variables_from_webhook: rest.fetch_dynamic_variables_from_webhook from: rest.from to: rest.to call_control_id: rest.call_control_id outputParameters: - type: object mapping: $. - method: POST name: updateassistantpublicassistantsassistantidpost description: Update an assistant call: telnyx-assistants.updateassistantpublicassistantsassistantidpost with: assistant_id: rest.assistant_id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/ai/assistants/{assistant-id}/canary-deploys name: ai-assistants-assistant-id-canary-deploys description: REST surface for ai-assistants-assistant_id-canary-deploys. operations: - method: DELETE name: deletecanarydeployassistantsassistantidcanarydeploysdelete description: Delete Canary Deploy call: telnyx-assistants.deletecanarydeployassistantsassistantidcanarydeploysdelete with: assistant_id: rest.assistant_id outputParameters: - type: object mapping: $. - method: GET name: getcanarydeployassistantsassistantidcanarydeploysget description: Get Canary Deploy call: telnyx-assistants.getcanarydeployassistantsassistantidcanarydeploysget with: assistant_id: rest.assistant_id outputParameters: - type: object mapping: $. - method: POST name: createcanarydeployassistantsassistantidcanarydeployspost description: Create Canary Deploy call: telnyx-assistants.createcanarydeployassistantsassistantidcanarydeployspost with: assistant_id: rest.assistant_id body: rest.body outputParameters: - type: object mapping: $. - method: PUT name: updatecanarydeployassistantsassistantidcanarydeploysput description: Update Canary Deploy call: telnyx-assistants.updatecanarydeployassistantsassistantidcanarydeploysput with: assistant_id: rest.assistant_id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/ai/assistants/{assistant-id}/chat name: ai-assistants-assistant-id-chat description: REST surface for ai-assistants-assistant_id-chat. operations: - method: POST name: assistantchatpublicassistantsassistantidchatpost description: Assistant Chat (BETA) call: telnyx-assistants.assistantchatpublicassistantsassistantidchatpost with: assistant_id: rest.assistant_id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/ai/assistants/{assistant-id}/chat/sms name: ai-assistants-assistant-id-chat-sms description: REST surface for ai-assistants-assistant_id-chat-sms. operations: - method: POST name: assistantsmschatassistantsassistantidchatsmspost description: Assistant Sms Chat call: telnyx-assistants.assistantsmschatassistantsassistantidchatsmspost with: assistant_id: rest.assistant_id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/ai/assistants/{assistant-id}/clone name: ai-assistants-assistant-id-clone description: REST surface for ai-assistants-assistant_id-clone. operations: - method: POST name: cloneassistantpublicassistantsassistantidclonepost description: Clone Assistant call: telnyx-assistants.cloneassistantpublicassistantsassistantidclonepost with: assistant_id: rest.assistant_id outputParameters: - type: object mapping: $. - path: /v1/ai/assistants/{assistant-id}/scheduled-events name: ai-assistants-assistant-id-scheduled-events description: REST surface for ai-assistants-assistant_id-scheduled_events. operations: - method: GET name: getscheduledevents description: List scheduled events call: telnyx-assistants.getscheduledevents with: assistant_id: rest.assistant_id from_date: rest.from_date to_date: rest.to_date conversation_channel: rest.conversation_channel page: rest.page outputParameters: - type: object mapping: $. - method: POST name: createscheduledevent description: Create a scheduled event call: telnyx-assistants.createscheduledevent with: assistant_id: rest.assistant_id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/ai/assistants/{assistant-id}/scheduled-events/{event-id} name: ai-assistants-assistant-id-scheduled-events-event-id description: REST surface for ai-assistants-assistant_id-scheduled_events-event_id. operations: - method: DELETE name: deletescheduledevent description: Delete a scheduled event call: telnyx-assistants.deletescheduledevent with: assistant_id: rest.assistant_id event_id: rest.event_id outputParameters: - type: object mapping: $. - method: GET name: getscheduledevent description: Get a scheduled event call: telnyx-assistants.getscheduledevent with: assistant_id: rest.assistant_id event_id: rest.event_id outputParameters: - type: object mapping: $. - path: /v1/ai/assistants/{assistant-id}/tags name: ai-assistants-assistant-id-tags description: REST surface for ai-assistants-assistant_id-tags. operations: - method: POST name: addassistanttag description: Add Assistant Tag call: telnyx-assistants.addassistanttag with: assistant_id: rest.assistant_id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/ai/assistants/{assistant-id}/tags/{tag} name: ai-assistants-assistant-id-tags-tag description: REST surface for ai-assistants-assistant_id-tags-tag. operations: - method: DELETE name: removeassistanttag description: Remove Assistant Tag call: telnyx-assistants.removeassistanttag with: assistant_id: rest.assistant_id tag: rest.tag outputParameters: - type: object mapping: $. - path: /v1/ai/assistants/{assistant-id}/texml name: ai-assistants-assistant-id-texml description: REST surface for ai-assistants-assistant_id-texml. operations: - method: GET name: getassistanttexmlpublicassistantsassistantidtexmlget description: Get assistant texml call: telnyx-assistants.getassistanttexmlpublicassistantsassistantidtexmlget with: assistant_id: rest.assistant_id outputParameters: - type: object mapping: $. - path: /v1/ai/assistants/{assistant-id}/tools/{tool-id} name: ai-assistants-assistant-id-tools-tool-id description: REST surface for ai-assistants-assistant_id-tools-tool_id. operations: - method: DELETE name: removeassistanttool description: Remove Assistant Tool call: telnyx-assistants.removeassistanttool with: assistant_id: rest.assistant_id tool_id: rest.tool_id outputParameters: - type: object mapping: $. - method: PUT name: addassistanttool description: Add Assistant Tool call: telnyx-assistants.addassistanttool with: assistant_id: rest.assistant_id tool_id: rest.tool_id outputParameters: - type: object mapping: $. - path: /v1/ai/assistants/{assistant-id}/tools/{tool-id}/test name: ai-assistants-assistant-id-tools-tool-id-test description: REST surface for ai-assistants-assistant_id-tools-tool_id-test. operations: - method: POST name: testassistanttoolpublicassistantsassistantidtoolstoolidtestpost description: Test Assistant Tool call: telnyx-assistants.testassistanttoolpublicassistantsassistantidtoolstoolidtestpost with: assistant_id: rest.assistant_id tool_id: rest.tool_id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/ai/assistants/{assistant-id}/versions name: ai-assistants-assistant-id-versions description: REST surface for ai-assistants-assistant_id-versions. operations: - method: GET name: getassistantversionspublicassistantsassistantidversionsget description: Get all versions of an assistant call: telnyx-assistants.getassistantversionspublicassistantsassistantidversionsget with: assistant_id: rest.assistant_id outputParameters: - type: object mapping: $. - path: /v1/ai/assistants/{assistant-id}/versions/{version-id} name: ai-assistants-assistant-id-versions-version-id description: REST surface for ai-assistants-assistant_id-versions-version_id. operations: - method: DELETE name: deleteassistantversionpublicassistantsassistantidversionsversioniddelete description: Delete a specific assistant version call: telnyx-assistants.deleteassistantversionpublicassistantsassistantidversionsversioniddelete with: assistant_id: rest.assistant_id version_id: rest.version_id outputParameters: - type: object mapping: $. - method: GET name: getassistantversionpublicassistantsassistantidversionsversionidget description: Get a specific assistant version call: telnyx-assistants.getassistantversionpublicassistantsassistantidversionsversionidget with: assistant_id: rest.assistant_id version_id: rest.version_id include_mcp_servers: rest.include_mcp_servers outputParameters: - type: object mapping: $. - method: POST name: updateassistantversionpublicassistantsassistantidversionsversionidpost description: Update a specific assistant version call: telnyx-assistants.updateassistantversionpublicassistantsassistantidversionsversionidpost with: assistant_id: rest.assistant_id version_id: rest.version_id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/ai/assistants/{assistant-id}/versions/{version-id}/promote name: ai-assistants-assistant-id-versions-version-id-promote description: REST surface for ai-assistants-assistant_id-versions-version_id-promote. operations: - method: POST name: promoteassistantversionpublicassistantsassistantidversionsversionidpromotepost description: Promote an assistant version to main call: telnyx-assistants.promoteassistantversionpublicassistantsassistantidversionsversionidpromotepost with: assistant_id: rest.assistant_id version_id: rest.version_id outputParameters: - type: object mapping: $. - path: /v1/ai/tools name: ai-tools description: REST surface for ai-tools. operations: - method: GET name: listtools description: List Tools call: telnyx-assistants.listtools with: filter[type]: rest.filter[type] filter[name]: rest.filter[name] page[size]: rest.page[size] page[number]: rest.page[number] outputParameters: - type: object mapping: $. - method: POST name: createtoolpost description: Create Tool call: telnyx-assistants.createtoolpost with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/ai/tools/{tool-id} name: ai-tools-tool-id description: REST surface for ai-tools-tool_id. operations: - method: DELETE name: deletetooltoolid description: Delete Tool call: telnyx-assistants.deletetooltoolid with: tool_id: rest.tool_id outputParameters: - type: object mapping: $. - method: GET name: gettooltoolid description: Get Tool call: telnyx-assistants.gettooltoolid with: tool_id: rest.tool_id outputParameters: - type: object mapping: $. - method: PATCH name: updatetooltoolid description: Update Tool call: telnyx-assistants.updatetooltoolid with: tool_id: rest.tool_id body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: telnyx-assistants-mcp port: 9090 transport: http description: MCP adapter for Telnyx API — Assistants. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-assistants description: List assistants hints: readOnly: true destructive: false idempotent: true call: telnyx-assistants.getassistantspublicassistantsget outputParameters: - type: object mapping: $. - name: create-assistant description: Create an assistant hints: readOnly: false destructive: false idempotent: false call: telnyx-assistants.createnewassistantpublicassistantspost with: body: tools.body outputParameters: - type: object mapping: $. - name: import-assistants-external-provider description: Import assistants from external provider hints: readOnly: false destructive: false idempotent: false call: telnyx-assistants.importassistantspublicassistantsimportpost with: body: tools.body outputParameters: - type: object mapping: $. - name: get-all-tags description: Get All Tags hints: readOnly: true destructive: false idempotent: true call: telnyx-assistants.getallassistanttags outputParameters: - type: object mapping: $. - name: list-assistant-tests-pagination description: List assistant tests with pagination hints: readOnly: true destructive: false idempotent: true call: telnyx-assistants.getassistanttestspublicassistantstestsget with: test_suite: tools.test_suite telnyx_conversation_channel: tools.telnyx_conversation_channel destination: tools.destination page: tools.page outputParameters: - type: object mapping: $. - name: create-new-assistant-test description: Create a new assistant test hints: readOnly: false destructive: false idempotent: false call: telnyx-assistants.createassistanttestpublicassistantstestspost with: body: tools.body outputParameters: - type: object mapping: $. - name: get-all-test-suite-names description: Get all test suite names hints: readOnly: true destructive: false idempotent: true call: telnyx-assistants.fetchtestsuitespublicassistantsteststestsuitesget outputParameters: - type: object mapping: $. - name: get-test-suite-run-history description: Get test suite run history hints: readOnly: true destructive: false idempotent: true call: telnyx-assistants.gettestsuiterunsfortestpublicassistantsteststestsuitessuitenamerunsget with: suite_name: tools.suite_name status: tools.status test_suite_run_id: tools.test_suite_run_id page: tools.page outputParameters: - type: object mapping: $. - name: trigger-test-suite-execution description: Trigger test suite execution hints: readOnly: true destructive: false idempotent: false call: telnyx-assistants.triggertestsuiterunspublicassistantsteststestsuitessuitenamerunspost with: suite_name: tools.suite_name body: tools.body outputParameters: - type: object mapping: $. - name: delete-assistant-test description: Delete an assistant test hints: readOnly: false destructive: true idempotent: true call: telnyx-assistants.deleteassistanttestpublicassistantsteststestiddelete with: test_id: tools.test_id outputParameters: - type: object mapping: $. - name: get-assistant-test-id description: Get assistant test by ID hints: readOnly: true destructive: false idempotent: true call: telnyx-assistants.getassistanttestpublicassistantsteststestidget with: test_id: tools.test_id outputParameters: - type: object mapping: $. - name: update-assistant-test description: Update an assistant test hints: readOnly: false destructive: false idempotent: true call: telnyx-assistants.updateassistanttestpublicassistantsteststestidput with: test_id: tools.test_id body: tools.body outputParameters: - type: object mapping: $. - name: get-test-run-history-specific description: Get test run history for a specific test hints: readOnly: true destructive: false idempotent: true call: telnyx-assistants.gettestrunsfortestpublicassistantsteststestidrunsget with: test_id: tools.test_id status: tools.status page: tools.page outputParameters: - type: object mapping: $. - name: trigger-manual-test-run description: Trigger a manual test run hints: readOnly: true destructive: false idempotent: false call: telnyx-assistants.triggertestrunpublicassistantsteststestidrunspost with: test_id: tools.test_id body: tools.body outputParameters: - type: object mapping: $. - name: get-specific-test-run-details description: Get specific test run details hints: readOnly: true destructive: false idempotent: true call: telnyx-assistants.gettestrunpublicassistantsteststestidrunsrunidget with: test_id: tools.test_id run_id: tools.run_id outputParameters: - type: object mapping: $. - name: delete-assistant description: Delete an assistant hints: readOnly: false destructive: true idempotent: true call: telnyx-assistants.deleteassistantpublicassistantsassistantiddelete with: assistant_id: tools.assistant_id outputParameters: - type: object mapping: $. - name: get-assistant description: Get an assistant hints: readOnly: true destructive: false idempotent: true call: telnyx-assistants.getassistantpublicassistantsassistantidget with: assistant_id: tools.assistant_id fetch_dynamic_variables_from_webhook: tools.fetch_dynamic_variables_from_webhook from: tools.from to: tools.to call_control_id: tools.call_control_id outputParameters: - type: object mapping: $. - name: update-assistant description: Update an assistant hints: readOnly: false destructive: false idempotent: false call: telnyx-assistants.updateassistantpublicassistantsassistantidpost with: assistant_id: tools.assistant_id body: tools.body outputParameters: - type: object mapping: $. - name: delete-canary-deploy description: Delete Canary Deploy hints: readOnly: false destructive: true idempotent: true call: telnyx-assistants.deletecanarydeployassistantsassistantidcanarydeploysdelete with: assistant_id: tools.assistant_id outputParameters: - type: object mapping: $. - name: get-canary-deploy description: Get Canary Deploy hints: readOnly: true destructive: false idempotent: true call: telnyx-assistants.getcanarydeployassistantsassistantidcanarydeploysget with: assistant_id: tools.assistant_id outputParameters: - type: object mapping: $. - name: create-canary-deploy description: Create Canary Deploy hints: readOnly: false destructive: false idempotent: false call: telnyx-assistants.createcanarydeployassistantsassistantidcanarydeployspost with: assistant_id: tools.assistant_id body: tools.body outputParameters: - type: object mapping: $. - name: update-canary-deploy description: Update Canary Deploy hints: readOnly: false destructive: false idempotent: true call: telnyx-assistants.updatecanarydeployassistantsassistantidcanarydeploysput with: assistant_id: tools.assistant_id body: tools.body outputParameters: - type: object mapping: $. - name: assistant-chat-beta description: Assistant Chat (BETA) hints: readOnly: false destructive: false idempotent: false call: telnyx-assistants.assistantchatpublicassistantsassistantidchatpost with: assistant_id: tools.assistant_id body: tools.body outputParameters: - type: object mapping: $. - name: assistant-sms-chat description: Assistant Sms Chat hints: readOnly: false destructive: false idempotent: false call: telnyx-assistants.assistantsmschatassistantsassistantidchatsmspost with: assistant_id: tools.assistant_id body: tools.body outputParameters: - type: object mapping: $. - name: clone-assistant description: Clone Assistant hints: readOnly: false destructive: false idempotent: false call: telnyx-assistants.cloneassistantpublicassistantsassistantidclonepost with: assistant_id: tools.assistant_id outputParameters: - type: object mapping: $. - name: list-scheduled-events description: List scheduled events hints: readOnly: true destructive: false idempotent: true call: telnyx-assistants.getscheduledevents with: assistant_id: tools.assistant_id from_date: tools.from_date to_date: tools.to_date conversation_channel: tools.conversation_channel page: tools.page outputParameters: - type: object mapping: $. - name: create-scheduled-event description: Create a scheduled event hints: readOnly: false destructive: false idempotent: false call: telnyx-assistants.createscheduledevent with: assistant_id: tools.assistant_id body: tools.body outputParameters: - type: object mapping: $. - name: delete-scheduled-event description: Delete a scheduled event hints: readOnly: false destructive: true idempotent: true call: telnyx-assistants.deletescheduledevent with: assistant_id: tools.assistant_id event_id: tools.event_id outputParameters: - type: object mapping: $. - name: get-scheduled-event description: Get a scheduled event hints: readOnly: true destructive: false idempotent: true call: telnyx-assistants.getscheduledevent with: assistant_id: tools.assistant_id event_id: tools.event_id outputParameters: - type: object mapping: $. - name: add-assistant-tag description: Add Assistant Tag hints: readOnly: false destructive: false idempotent: false call: telnyx-assistants.addassistanttag with: assistant_id: tools.assistant_id body: tools.body outputParameters: - type: object mapping: $. - name: remove-assistant-tag description: Remove Assistant Tag hints: readOnly: false destructive: true idempotent: true call: telnyx-assistants.removeassistanttag with: assistant_id: tools.assistant_id tag: tools.tag outputParameters: - type: object mapping: $. - name: get-assistant-texml description: Get assistant texml hints: readOnly: true destructive: false idempotent: true call: telnyx-assistants.getassistanttexmlpublicassistantsassistantidtexmlget with: assistant_id: tools.assistant_id outputParameters: - type: object mapping: $. - name: remove-assistant-tool description: Remove Assistant Tool hints: readOnly: false destructive: true idempotent: true call: telnyx-assistants.removeassistanttool with: assistant_id: tools.assistant_id tool_id: tools.tool_id outputParameters: - type: object mapping: $. - name: add-assistant-tool description: Add Assistant Tool hints: readOnly: false destructive: false idempotent: true call: telnyx-assistants.addassistanttool with: assistant_id: tools.assistant_id tool_id: tools.tool_id outputParameters: - type: object mapping: $. - name: test-assistant-tool description: Test Assistant Tool hints: readOnly: true destructive: false idempotent: false call: telnyx-assistants.testassistanttoolpublicassistantsassistantidtoolstoolidtestpost with: assistant_id: tools.assistant_id tool_id: tools.tool_id body: tools.body outputParameters: - type: object mapping: $. - name: get-all-versions-assistant description: Get all versions of an assistant hints: readOnly: true destructive: false idempotent: true call: telnyx-assistants.getassistantversionspublicassistantsassistantidversionsget with: assistant_id: tools.assistant_id outputParameters: - type: object mapping: $. - name: delete-specific-assistant-version description: Delete a specific assistant version hints: readOnly: false destructive: true idempotent: true call: telnyx-assistants.deleteassistantversionpublicassistantsassistantidversionsversioniddelete with: assistant_id: tools.assistant_id version_id: tools.version_id outputParameters: - type: object mapping: $. - name: get-specific-assistant-version description: Get a specific assistant version hints: readOnly: true destructive: false idempotent: true call: telnyx-assistants.getassistantversionpublicassistantsassistantidversionsversionidget with: assistant_id: tools.assistant_id version_id: tools.version_id include_mcp_servers: tools.include_mcp_servers outputParameters: - type: object mapping: $. - name: update-specific-assistant-version description: Update a specific assistant version hints: readOnly: false destructive: false idempotent: false call: telnyx-assistants.updateassistantversionpublicassistantsassistantidversionsversionidpost with: assistant_id: tools.assistant_id version_id: tools.version_id body: tools.body outputParameters: - type: object mapping: $. - name: promote-assistant-version-main description: Promote an assistant version to main hints: readOnly: false destructive: false idempotent: false call: telnyx-assistants.promoteassistantversionpublicassistantsassistantidversionsversionidpromotepost with: assistant_id: tools.assistant_id version_id: tools.version_id outputParameters: - type: object mapping: $. - name: list-tools description: List Tools hints: readOnly: true destructive: false idempotent: true call: telnyx-assistants.listtools with: filter[type]: tools.filter[type] filter[name]: tools.filter[name] page[size]: tools.page[size] page[number]: tools.page[number] outputParameters: - type: object mapping: $. - name: create-tool description: Create Tool hints: readOnly: false destructive: false idempotent: false call: telnyx-assistants.createtoolpost with: body: tools.body outputParameters: - type: object mapping: $. - name: delete-tool description: Delete Tool hints: readOnly: false destructive: true idempotent: true call: telnyx-assistants.deletetooltoolid with: tool_id: tools.tool_id outputParameters: - type: object mapping: $. - name: get-tool description: Get Tool hints: readOnly: true destructive: false idempotent: true call: telnyx-assistants.gettooltoolid with: tool_id: tools.tool_id outputParameters: - type: object mapping: $. - name: update-tool description: Update Tool hints: readOnly: false destructive: false idempotent: true call: telnyx-assistants.updatetooltoolid with: tool_id: tools.tool_id body: tools.body outputParameters: - type: object mapping: $.