Skip to main content

telnyx-ai-assistants-python

Create and manage AI voice assistants with custom personalities, knowledge bases, and tool integrations. This skill provides Python SDK examples.

Quellinformationen

Repository
team-telnyx/telnyx-toolkit
Letzte Quellaktivität
10. Februar 2026 um 20:41
Erkannte Sprache von SKILL.md
Englisch
Sterne
3
Forks
2

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
telnyx-ai-assistants-python
description
Create and manage AI voice assistants with custom personalities, knowledge bases, and tool integrations. This skill provides Python SDK examples.
metadata
{"author":"telnyx","product":"ai-assistants","language":"python","generated_by":"telnyx-ext-skills-generator"}
<!-- Auto-generated from Telnyx OpenAPI specs. Do not edit. --> # Telnyx Ai Assistants - Python ## Installation ```bash pip install telnyx ``` ## Setup ```python import os from telnyx import Telnyx client = Telnyx( api_key=os.environ.get("TELNYX_API_KEY"), # This is the default and can be omitted ) ``` All examples below assume `client` is already initialized as shown above. ## List assistants Retrieve a list of all AI Assistants configured by the user. `GET /ai/assistants` ```python assistants_list = client.ai.assistants.list() print(assistants_list.data) ``` ## Create an assistant Create a new AI Assistant. `POST /ai/assistants` — Required: `name`, `model`, `instructions` ```python assistant = client.ai.assistants.create( instructions="instructions", model="model", name="name", ) print(assistant.id) ``` ## Get an assistant Retrieve an AI Assistant configuration by `assistant_id`. `GET /ai/assistants/{assistant_id}` ```python assistant = client.ai.assistants.retrieve( assistant_id="assistant_id", ) print(assistant.id) ``` ## Update an assistant Update an AI Assistant's attributes. `POST /ai/assistants/{assistant_id}` ```python assistant = client.ai.assistants.update( assistant_id="assistant_id", ) print(assistant.id) ``` ## Delete an assistant Delete an AI Assistant by `assistant_id`. `DELETE /ai/assistants/{assistant_id}` ```python assistant = client.ai.assistants.delete( "assistant_id", ) print(assistant.id) ``` ## Assistant Chat (BETA) This endpoint allows a client to send a chat message to a specific AI Assistant. `POST /ai/assistants/{assistant_id}/chat` — Required: `content`, `conversation_id` ```python response = client.ai.assistants.chat( assistant_id="assistant_id", content="Tell me a joke about cats", conversation_id="42b20469-1215-4a9a-8964-c36f66b406f4", ) print(response.content) ``` ## Assistant Sms Chat Send an SMS message for an assistant. `POST /ai/assistants/{assistant_id}/chat/sms` — Required: `from`, `to` ```python response = client.ai.assistants.send_sms( assistant_id="assistant_id", from_="from", to="to", ) print(response.conversation_id) ``` ## Clone Assistant Clone an existing assistant, excluding telephony and messaging settings. `POST /ai/assistants/{assistant_id}/clone` ```python assistant = client.ai.assistants.clone( "assistant_id", ) print(assistant.id) ``` ## Import assistants from external provider Import assistants from external providers. `POST /ai/assistants/import` — Required: `provider`, `api_key_ref` ```python assistants_list = client.ai.assistants.imports( api_key_ref="api_key_ref", provider="elevenlabs", ) print(assistants_list.data) ``` ## List scheduled events Get scheduled events for an assistant with pagination and filtering `GET /ai/assistants/{assistant_id}/scheduled_events` ```python page = client.ai.assistants.scheduled_events.list( assistant_id="assistant_id", ) page = page.data[0] print(page) ``` ## Create a scheduled event Create a scheduled event for an assistant `POST /ai/assistants/{assistant_id}/scheduled_events` — Required: `telnyx_conversation_channel`, `telnyx_end_user_target`, `telnyx_agent_target`, `scheduled_at_fixed_datetime` ```python from datetime import datetime scheduled_event_response = client.ai.assistants.scheduled_events.create( assistant_id="assistant_id", scheduled_at_fixed_datetime=datetime.fromisoformat("2025-04-15T13:07:28.764"), telnyx_agent_target="telnyx_agent_target", telnyx_conversation_channel="phone_call", telnyx_end_user_target="telnyx_end_user_target", ) print(scheduled_event_response) ``` ## Get a scheduled event Retrieve a scheduled event by event ID `GET /ai/assistants/{assistant_id}/scheduled_events/{event_id}` ```python scheduled_event_response = client.ai.assistants.scheduled_events.retrieve( event_id="event_id", assistant_id="assistant_id", ) print(scheduled_event_response) ``` ## Delete a scheduled event If the event is pending, this will cancel the event. `DELETE /ai/assistants/{assistant_id}/scheduled_events/{event_id}` ```python client.ai.assistants.scheduled_events.delete( event_id="event_id", assistant_id="assistant_id", ) ``` ## List assistant tests with pagination Retrieves a paginated list of assistant tests with optional filtering capabilities `GET /ai/assistants/tests` ```python page = client.ai.assistants.tests.list() page = page.data[0] print(page.test_id) ``` ## Create a new assistant test Creates a comprehensive test configuration for evaluating AI assistant performance `POST /ai/assistants/tests` — Required: `name`, `destination`, `instructions`, `rubric` ```python assistant_test = client.ai.assistants.tests.create( destination="+15551234567", instructions="Act as a frustrated customer who received a damaged product. Ask for a refund and escalate if not satisfied with the initial response.", name="Customer Support Bot Test", rubric=[{ "criteria": "Assistant responds within 30 seconds", "name": "Response Time", }, { "criteria": "Provides correct product information", "name": "Accuracy", }], ) print(assistant_test.test_id) ``` ## Get all test suite names Retrieves a list of all distinct test suite names available to the current user `GET /ai/assistants/tests/test-suites` ```python test_suites = client.ai.assistants.tests.test_suites.list() print(test_suites.data) ``` ## Get test suite run history Retrieves paginated history of test runs for a specific test suite with filtering options `GET /ai/assistants/tests/test-suites/{suite_name}/runs` ```python page = client.ai.assistants.tests.test_suites.runs.list( suite_name="suite_name", ) page = page.data[0] print(page.run_id) ``` ## Trigger test suite execution Executes all tests within a specific test suite as a batch operation `POST /ai/assistants/tests/test-suites/{suite_name}/runs` ```python test_run_responses = client.ai.assistants.tests.test_suites.runs.trigger( suite_name="suite_name", ) print(test_run_responses) ``` ## Get assistant test by ID Retrieves detailed information about a specific assistant test `GET /ai/assistants/tests/{test_id}` ```python assistant_test = client.ai.assistants.tests.retrieve( "test_id", ) print(assistant_test.test_id) ``` ## Update an assistant test Updates an existing assistant test configuration with new settings `PUT /ai/assistants/tests/{test_id}` ```python assistant_test = client.ai.assistants.tests.update( test_id="test_id", ) print(assistant_test.test_id) ``` ## Delete an assistant test Permanently removes an assistant test and all associated data `DELETE /ai/assistants/tests/{test_id}` ```python client.ai.assistants.tests.delete( "test_id", ) ``` ## Get test run history for a specific test Retrieves paginated execution history for a specific assistant test with filtering options `GET /ai/assistants/tests/{test_id}/runs` ```python page = client.ai.assistants.tests.runs.list( test_id="test_id", ) page = page.data[0] print(page.run_id) ``` ## Trigger a manual test run Initiates immediate execution of a specific assistant test `POST /ai/assistants/tests/{test_id}/runs` ```python test_run_response = client.ai.assistants.tests.runs.trigger( test_id="test_id", ) print(test_run_response.run_id) ``` ## Get specific test run details Retrieves detailed information about a specific test run execution `GET /ai/assistants/tests/{test_id}/runs/{run_id}` ```python test_run_response = client.ai.assistants.tests.runs.retrieve( run_id="run_id", test_id="test_id", ) print(test_run_response.run_id) ``` ## Get all versions of an assistant Retrieves all versions of a specific assistant with complete configuration and metadata `GET /ai/assistants/{assistant_id}/versions` ```python assistants_list = client.ai.assistants.versions.list( "assistant_id", ) print(assistants_list.data) ``` ## Get a specific assistant version Retrieves a specific version of an assistant by assistant_id and version_id `GET /ai/assistants/{assistant_id}/versions/{version_id}` ```python assistant = client.ai.assistants.versions.retrieve( version_id="version_id", assistant_id="assistant_id", ) print(assistant.id) ``` ## Update a specific assistant version Updates the configuration of a specific assistant version. `POST /ai/assistants/{assistant_id}/versions/{version_id}` ```python assistant = client.ai.assistants.versions.update( version_id="version_id", assistant_id="assistant_id", ) print(assistant.id) ``` ## Delete a specific assistant version Permanently removes a specific version of an assistant. `DELETE /ai/assistants/{assistant_id}/versions/{version_id}` ```python client.ai.assistants.versions.delete( version_id="version_id", assistant_id="assistant_id", ) ``` ## Promote an assistant version to main Promotes a specific version to be the main/current version of the assistant. `POST /ai/assistants/{assistant_id}/versions/{version_id}/promote` ```python assistant = client.ai.assistants.versions.promote( version_id="version_id", assistant_id="assistant_id", ) print(assistant.id) ``` ## Get Canary Deploy Endpoint to get a canary deploy configuration for an assistant. `GET /ai/assistants/{assistant_id}/canary-deploys` ```python canary_deploy_response = client.ai.assistants.canary_deploys.retrieve( "assistant_id", ) print(canary_deploy_response.assistant_id) ``` ## Create Canary Deploy Endpoint to create a canary deploy configuration for an assistant. `POST /ai/assistants/{assistant_id}/canary-deploys` — Required: `versions` ```python canary_deploy_response = client.ai.assistants.canary_deploys.create( assistant_id="assistant_id", versions=[{ "percentage": 1, "version_id": "version_id", }], ) print(canary_deploy_response.assistant_id) ``` ## Update Canary Deploy Endpoint to update a canary deploy configuration for an assistant. `PUT /ai/assistants/{assistant_id}/canary-deploys` — Required: `versions` ```python canary_deploy_response = client.ai.assistants.canary_deploys.update( assistant_id="assistant_id", versions=[{ "percentage": 1, "version_id": "version_id", }], ) print(canary_deploy_response.assistant_id) ``` ## Delete Canary Deploy Endpoint to delete a canary deploy configuration for an assistant. `DELETE /ai/assistants/{assistant_id}/canary-deploys` ```python client.ai.assistants.canary_deploys.delete( "assistant_id", ) ``` ## Get assistant texml Get an assistant texml by `assistant_id`. `GET /ai/assistants/{assistant_id}/texml` ```python response = client.ai.assistants.get_texml(
Auf GitHub ansehen
Diese SKILL.md ist sehr gross, daher zeigt SkillsMP hier nur den ersten Abschnitt. Auf GitHub ansehen