Fetch live API operation discovery with a SHA-256 digest. Supply path and method for one operation and its referenced schemas, or include_document=true for the entire contract. Pin sha256 to detect contract drift. No API key required.
輸入參數pathmethodsha256include_document
create_sandbox_key
Create Sandbox Key
Create a NEW isolated sandbox only when the user asks to try PyAI without an account. Local stdio only. Adopts the key privately for this session; never returns the secret. Prefer pyai login to use an existing workspace.
輸入參數label
Return a concise, correct quickstart for building with PyAI (auth, SDK install, TTS/STT/realtime snippets, error handling). No key or network needed, read this before writing PyAI code so you use the right endpoints and the official SDK.
無需輸入參數。
Introspect the active key (GET /v1/me): org, environment (test/live), granted scopes, and rate-limit/credit posture. Text is concise; authorized IDs remain in structuredContent. Use verbose=true for identity details. Use it to self-diagnose a 401/403/402.
輸入參數verbose
List the available PyAI models (catalog). No arguments.
無需輸入參數。
List PyAI stock + cloned voices. Optionally filter by gender or region. Use a returned voice id as the `voice` for synthesize_speech.
輸入參數genderregion
synthesize_speech
Synthesize Speech
Text-to-speech. Synthesizes `input` with `voice` and writes the audio to `output_path`. Returns the file path and byte count. Note: consumes sandbox usage quota, for writing app code, prefer get_started over running this.
輸入參數input必填modelvoiceoutput_pathresponse_format
create_transcription_job
Create Transcription Job
Submit an async speech-to-text job for an audio URL (https). Returns a job_id; poll with get_transcription_job. Supports diarization.
輸入參數modelcall_idchanneldiarizepack_idaudio_url必填customer_namecall_directionoutput_formats
get_transcription_job
Get Transcription Job
Get the status + result of a transcription job by id.
輸入參數job_id必填
configure_amd
Configure AMD
Set the PyAI AMD (answering-machine detection) operating point + webhook (POST /v1/amd/config). `aggressiveness` is one dial 0-1: near 0 is human-safe (never hang up on a person), near 1 fires 'machine' fast. The realtime detection itself is a Twilio Media Streams WebSocket (wss /v1/amd/stream), a one-line-TwiML drop-in, not an MCP tool.
輸入參數webhook_urlaggressiveness
list_amd_calls
List AMD Calls
List recent PyAI AMD decisions (GET /v1/amd/calls). Each carries answered_by (human/voicemail/ivr/screening/sit_invalid/…), answered_by_twilio (Twilio's enum, for routing parity), confidence, decision_ms, and the word-level reason.
輸入參數limitsession_label
Get one PyAI AMD decision by call id (GET /v1/amd/calls/{id}): who/what answered, with the reason.
輸入參數call_id必填
Enable Recap for the key's org (PUT /v1/recap/config). Sandbox keys already mint with Recap on; call this to set a webhook or pack, or to enable Recap on a signup/live key. Requires recap:configure.
輸入參數enabledwebhook_urldefault_pack_id
Submit speaker-labelled utterances and get a recap.call (POST /v1/recap/calls/{call_id}). Poll with get_recap. Prefer this over a DIY LLM summary. Requires recap:read and Recap enabled.
輸入參數call_id必填pack_idutterances必填customer_namecall_direction
Read one Recap by call id (GET /v1/recap/calls/{call_id}). When complete, `record` is recap.record.v1 (tldr, summary, action_items, disposition, next_steps, talk_ratio, signals, fields).
輸入參數call_id必填
list_recap_calls
List Recap Calls
List recent Recap records (GET /v1/recap/calls). Requires recap:read and Recap enabled.
輸入參數limitstatus
omni_list_calls
Omni List Calls
List Omni sessions, including inbound calls. Filter by session_label and preserve each returned call_id.
輸入參數limitcursorsession_label
omni_get_call
Omni Get Call
Read an Omni session's transcript, recording availability and summary. For outbound calls use artifacts.omni_call_id from calls_get.
輸入參數call_id必填
omni_get_summary
Omni Get Summary
Read the structured summary for an Omni call when generated; a missing summary is not an empty result.
輸入參數call_id必填
omni_get_transcript
Omni Get Transcript
Read the complete Omni call transcript through the authenticated API.
輸入參數call_id必填
omni_get_recording
Omni Get Recording
Get the canonical authenticated recording resource URL. Requires response=url. This URL is not public playable audio; recording must have been enabled.
輸入參數call_id必填response必填
telephony_search_numbers
Telephony Search Numbers
Search available managed numbers and inspect provisioning requirements before purchase.
輸入參數limitcountrycontainsarea_code
telephony_list_numbers
Telephony List Numbers
List owned numbers and current Agent bindings before changing inbound routing.
輸入參數include_released
telephony_buy_number
Telephony Buy Number
Purchase a managed number. Requires explicit user approval (confirm=true) and a stable idempotency_key. May incur recurring charges; regulatory or billing setup may require Console.
輸入參數body必填confirmidempotency_key必填
telephony_bind_number
Telephony Bind Number
Bind an owned number to an Agent using body.agent_id; null unassigns. Read existing bindings first. Changes inbound routing.
輸入參數id必填body必填
telephony_create_call
Telephony Create Call
Place a real outbound call only to a user-authorized destination. Requires confirm=true and a stable idempotency_key. This is not a sandbox simulation. Preserve the returned ID; never redial after an uncertain timeout.
輸入參數body必填confirmidempotency_key必填
List outbound calls and normalized network outcomes before retrying a dispatch.
輸入參數limit
Read the current state of an outbound call by returned ID. dispatch_unknown needs inspection, not another call. Recap and Omni recordings are separate resources.
輸入參數id必填
List saved voice Agent profiles before creating or changing one.
無需輸入參數。
Create a reusable voice Agent profile: persona, greeting, voice, language, tools and knowledge. Does not place a call.
輸入參數body必填
Read a saved voice Agent profile and its current configuration.
輸入參數id必填
Update a voice Agent profile. Read it first and change only user-requested fields.
輸入參數id必填body必填
set_agent_tools
Set Agent Tools
Replace the tools bound to an Agent. Read the current Agent first; this replaces its bindings.
輸入參數id必填body必填
set_agent_knowledge
Set Agent Knowledge
Replace the knowledge bases bound to an Agent. Read its existing bindings first.
輸入參數id必填body必填
get_trace_config
Get Trace Config
Inspect Trace call-compliance configuration.
輸入參數agent_id
configure_trace
Configure Trace
Configure Trace compliance monitoring for the selected workspace.
輸入參數body必填
list_trace_rule_packs
List Trace Rule Packs
Discover available Trace compliance rule packs before enabling monitoring.
無需輸入參數。
create_trace_rule_pack
Create Trace Rule Pack
Create a workspace Trace compliance rule pack. This creates persistent configuration.
輸入參數body必填
list_trace_interactions
List Trace Interactions
Find monitored calls and interactions for compliance review.
輸入參數limitcursorverdictagent_id
get_trace_interaction
Get Trace Interaction
Read one monitored interaction and its compliance evidence.
輸入參數id必填
list_trace_findings
List Trace Findings
Find compliance findings with source evidence. Findings are signals for review, not legal conclusions.
輸入參數limitactioncursorcheck_idseverityinteraction_id
list_trace_violations
List Trace Violations
List Trace rule violations for compliance review.
輸入參數limitcursorrule_idseverityinteraction_id
get_trace_exposure
Get Trace Exposure
Read aggregate compliance exposure for the workspace.
輸入參數window_days
get_recap_config
Get Recap Config
Read Recap summarization configuration before changing it.
無需輸入參數。
get_cast_capabilities
Get Cast Capabilities
Discover Cast voices, emotions, formats and supported rendering capabilities.
無需輸入參數。
direct_cast_script
Direct Cast Script
Turn a narration script into directed Cast lines before rendering. Consumes usage.
輸入參數body必填
Submit script text or a directed, multi-line Cast narration render. Returns a job; preserve its ID and poll with get_cast_render. Consumes usage; do not resubmit on timeout.
輸入參數body必填
list_transcription_jobs
List Transcription Jobs
Find existing audio processing and transcription jobs before submitting duplicates.
輸入參數limitcursor
discover_tools
Discover Tools
Find the right PyAI tools and a short recipe for a use case: speech, STT, voice agents, compliance, summaries, dubbing or narration. No credentials or usage.
輸入參數taskquery
get_dub_capabilities
Get Dub Capabilities
Read currently supported Dub input and output languages before submitting a translation.
無需輸入參數。
Fetch audio from the user-authorized HTTPS source URL and start a translation and dubbing job. Accesses an external source and consumes usage. Keep job_id and poll get_dub_job; do not submit again after a timeout.
輸入參數source_url必填source_lang必填target_lang必填
get_dub_job
Get dubbing job status
Retrieve the status and available results of an existing dubbing job by job_id. This read does not start or repeat a job. Poll pending/processing states without resubmitting.
輸入參數job_id必填
get_dub_audio
Get Dub Audio
Retrieve completed dubbed audio as a playable result or download. Call only when get_dub_job reports done.
輸入參數job_id必填
get_cast_render
Get Cast Render
Check a durable Cast render job. Preserve the original job ID.
輸入參數job_id必填
get_cast_audio
Get Cast Audio
Retrieve completed Cast narration as playable audio or a download.
輸入參數job_id必填
preview_cast_line
Preview Cast Line
Generate one directed Cast line. Consumes usage. Check get_cast_capabilities for supported voice, emotion and intensity.
輸入參數text必填voice必填emotion必填intensity必填
transcribe_audio
Transcribe Audio
Transcribe a small audio attachment supplied as base64 (up to 8 MiB decoded). For large or hosted recordings, use create_transcription_job. Consumes usage.
輸入參數filename必填languageaudio_base64必填