vapi-server-sdk 0.0.0a7__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- vapi/__init__.py +1081 -0
- vapi/analytics/__init__.py +2 -0
- vapi/analytics/client.py +159 -0
- vapi/assistants/__init__.py +21 -0
- vapi/assistants/client.py +1593 -0
- vapi/assistants/types/__init__.py +19 -0
- vapi/assistants/types/update_assistant_dto_background_sound.py +5 -0
- vapi/assistants/types/update_assistant_dto_client_messages_item.py +23 -0
- vapi/assistants/types/update_assistant_dto_first_message_mode.py +10 -0
- vapi/assistants/types/update_assistant_dto_model.py +26 -0
- vapi/assistants/types/update_assistant_dto_server_messages_item.py +24 -0
- vapi/assistants/types/update_assistant_dto_transcriber.py +8 -0
- vapi/assistants/types/update_assistant_dto_voice.py +24 -0
- vapi/blocks/__init__.py +25 -0
- vapi/blocks/client.py +804 -0
- vapi/blocks/types/__init__.py +23 -0
- vapi/blocks/types/blocks_create_request.py +8 -0
- vapi/blocks/types/blocks_create_response.py +8 -0
- vapi/blocks/types/blocks_delete_response.py +8 -0
- vapi/blocks/types/blocks_get_response.py +8 -0
- vapi/blocks/types/blocks_list_response_item.py +8 -0
- vapi/blocks/types/blocks_update_response.py +8 -0
- vapi/blocks/types/update_block_dto_messages_item.py +7 -0
- vapi/blocks/types/update_block_dto_steps_item.py +7 -0
- vapi/blocks/types/update_block_dto_tool.py +20 -0
- vapi/calls/__init__.py +2 -0
- vapi/calls/client.py +776 -0
- vapi/client.py +172 -0
- vapi/core/__init__.py +50 -0
- vapi/core/api_error.py +15 -0
- vapi/core/client_wrapper.py +76 -0
- vapi/core/datetime_utils.py +28 -0
- vapi/core/file.py +62 -0
- vapi/core/http_client.py +487 -0
- vapi/core/jsonable_encoder.py +101 -0
- vapi/core/pagination.py +88 -0
- vapi/core/pydantic_utilities.py +296 -0
- vapi/core/query_encoder.py +58 -0
- vapi/core/remove_none_from_dict.py +11 -0
- vapi/core/request_options.py +32 -0
- vapi/core/serialization.py +272 -0
- vapi/environment.py +7 -0
- vapi/errors/__init__.py +5 -0
- vapi/errors/bad_request_error.py +9 -0
- vapi/files/__init__.py +2 -0
- vapi/files/client.py +544 -0
- vapi/logs/__init__.py +5 -0
- vapi/logs/client.py +367 -0
- vapi/logs/types/__init__.py +6 -0
- vapi/logs/types/logs_get_request_sort_order.py +5 -0
- vapi/logs/types/logs_get_request_type.py +5 -0
- vapi/phone_numbers/__init__.py +21 -0
- vapi/phone_numbers/client.py +735 -0
- vapi/phone_numbers/types/__init__.py +19 -0
- vapi/phone_numbers/types/phone_numbers_create_request.py +11 -0
- vapi/phone_numbers/types/phone_numbers_create_response.py +9 -0
- vapi/phone_numbers/types/phone_numbers_delete_response.py +9 -0
- vapi/phone_numbers/types/phone_numbers_get_response.py +9 -0
- vapi/phone_numbers/types/phone_numbers_list_response_item.py +9 -0
- vapi/phone_numbers/types/phone_numbers_update_response.py +9 -0
- vapi/phone_numbers/types/update_phone_number_dto_fallback_destination.py +7 -0
- vapi/py.typed +0 -0
- vapi/squads/__init__.py +2 -0
- vapi/squads/client.py +723 -0
- vapi/tools/__init__.py +21 -0
- vapi/tools/client.py +717 -0
- vapi/tools/types/__init__.py +19 -0
- vapi/tools/types/tools_create_request.py +20 -0
- vapi/tools/types/tools_create_response.py +12 -0
- vapi/tools/types/tools_delete_response.py +12 -0
- vapi/tools/types/tools_get_response.py +12 -0
- vapi/tools/types/tools_list_response_item.py +14 -0
- vapi/tools/types/tools_update_response.py +12 -0
- vapi/tools/types/update_tool_dto_messages_item.py +9 -0
- vapi/types/__init__.py +993 -0
- vapi/types/add_voice_to_provider_dto.py +34 -0
- vapi/types/analysis.py +38 -0
- vapi/types/analysis_cost.py +52 -0
- vapi/types/analysis_cost_analysis_type.py +5 -0
- vapi/types/analysis_cost_breakdown.py +80 -0
- vapi/types/analysis_plan.py +43 -0
- vapi/types/analytics_operation.py +34 -0
- vapi/types/analytics_operation_column.py +19 -0
- vapi/types/analytics_operation_operation.py +5 -0
- vapi/types/analytics_query.py +51 -0
- vapi/types/analytics_query_group_by_item.py +7 -0
- vapi/types/analytics_query_result.py +42 -0
- vapi/types/anthropic_credential.py +46 -0
- vapi/types/anthropic_model.py +91 -0
- vapi/types/anthropic_model_model.py +10 -0
- vapi/types/anthropic_model_tools_item.py +20 -0
- vapi/types/anyscale_credential.py +46 -0
- vapi/types/anyscale_model.py +90 -0
- vapi/types/anyscale_model_tools_item.py +20 -0
- vapi/types/artifact.py +66 -0
- vapi/types/artifact_messages_item.py +10 -0
- vapi/types/artifact_plan.py +70 -0
- vapi/types/assignment_mutation.py +85 -0
- vapi/types/assignment_mutation_conditions_item.py +7 -0
- vapi/types/assistant.py +330 -0
- vapi/types/assistant_background_sound.py +5 -0
- vapi/types/assistant_client_messages_item.py +23 -0
- vapi/types/assistant_first_message_mode.py +10 -0
- vapi/types/assistant_model.py +26 -0
- vapi/types/assistant_overrides.py +316 -0
- vapi/types/assistant_overrides_background_sound.py +5 -0
- vapi/types/assistant_overrides_client_messages_item.py +23 -0
- vapi/types/assistant_overrides_first_message_mode.py +10 -0
- vapi/types/assistant_overrides_model.py +26 -0
- vapi/types/assistant_overrides_server_messages_item.py +24 -0
- vapi/types/assistant_overrides_transcriber.py +8 -0
- vapi/types/assistant_overrides_voice.py +24 -0
- vapi/types/assistant_server_messages_item.py +24 -0
- vapi/types/assistant_transcriber.py +8 -0
- vapi/types/assistant_voice.py +24 -0
- vapi/types/azure_open_ai_credential.py +52 -0
- vapi/types/azure_open_ai_credential_models_item.py +17 -0
- vapi/types/azure_open_ai_credential_region.py +24 -0
- vapi/types/azure_voice.py +52 -0
- vapi/types/azure_voice_id.py +6 -0
- vapi/types/azure_voice_id_enum.py +5 -0
- vapi/types/block_complete_message.py +33 -0
- vapi/types/block_complete_message_conditions_item.py +7 -0
- vapi/types/block_start_message.py +33 -0
- vapi/types/block_start_message_conditions_item.py +7 -0
- vapi/types/bot_message.py +54 -0
- vapi/types/bucket_plan.py +72 -0
- vapi/types/buy_phone_number_dto.py +81 -0
- vapi/types/buy_phone_number_dto_fallback_destination.py +7 -0
- vapi/types/byo_phone_number.py +126 -0
- vapi/types/byo_phone_number_fallback_destination.py +7 -0
- vapi/types/byo_sip_trunk_credential.py +85 -0
- vapi/types/call.py +241 -0
- vapi/types/call_costs_item.py +11 -0
- vapi/types/call_destination.py +7 -0
- vapi/types/call_ended_reason.py +177 -0
- vapi/types/call_messages_item.py +10 -0
- vapi/types/call_paginated_response.py +32 -0
- vapi/types/call_phone_call_provider.py +5 -0
- vapi/types/call_phone_call_transport.py +5 -0
- vapi/types/call_status.py +5 -0
- vapi/types/call_type.py +5 -0
- vapi/types/callback_step.py +116 -0
- vapi/types/callback_step_block.py +11 -0
- vapi/types/cartesia_credential.py +46 -0
- vapi/types/cartesia_voice.py +58 -0
- vapi/types/cartesia_voice_language.py +5 -0
- vapi/types/cartesia_voice_model.py +5 -0
- vapi/types/chunk_plan.py +70 -0
- vapi/types/client_inbound_message.py +23 -0
- vapi/types/client_inbound_message_add_message.py +28 -0
- vapi/types/client_inbound_message_control.py +32 -0
- vapi/types/client_inbound_message_control_control.py +7 -0
- vapi/types/client_inbound_message_message.py +10 -0
- vapi/types/client_inbound_message_say.py +36 -0
- vapi/types/client_message.py +23 -0
- vapi/types/client_message_conversation_update.py +38 -0
- vapi/types/client_message_conversation_update_messages_item.py +12 -0
- vapi/types/client_message_hang.py +27 -0
- vapi/types/client_message_language_changed.py +27 -0
- vapi/types/client_message_message.py +28 -0
- vapi/types/client_message_metadata.py +27 -0
- vapi/types/client_message_model_output.py +27 -0
- vapi/types/client_message_speech_update.py +34 -0
- vapi/types/client_message_speech_update_role.py +5 -0
- vapi/types/client_message_speech_update_status.py +5 -0
- vapi/types/client_message_tool_calls.py +40 -0
- vapi/types/client_message_tool_calls_result.py +31 -0
- vapi/types/client_message_tool_calls_tool_with_tool_call_list_item.py +10 -0
- vapi/types/client_message_transcript.py +43 -0
- vapi/types/client_message_transcript_role.py +5 -0
- vapi/types/client_message_transcript_transcript_type.py +5 -0
- vapi/types/client_message_user_interrupted.py +22 -0
- vapi/types/client_message_voice_input.py +27 -0
- vapi/types/clone_voice_dto.py +37 -0
- vapi/types/condition.py +33 -0
- vapi/types/condition_operator.py +5 -0
- vapi/types/conversation_block.py +109 -0
- vapi/types/conversation_block_messages_item.py +7 -0
- vapi/types/cost_breakdown.py +78 -0
- vapi/types/create_anthropic_credential_dto.py +25 -0
- vapi/types/create_anyscale_credential_dto.py +25 -0
- vapi/types/create_assistant_dto.py +309 -0
- vapi/types/create_assistant_dto_background_sound.py +5 -0
- vapi/types/create_assistant_dto_client_messages_item.py +23 -0
- vapi/types/create_assistant_dto_first_message_mode.py +10 -0
- vapi/types/create_assistant_dto_model.py +26 -0
- vapi/types/create_assistant_dto_server_messages_item.py +24 -0
- vapi/types/create_assistant_dto_transcriber.py +8 -0
- vapi/types/create_assistant_dto_voice.py +24 -0
- vapi/types/create_azure_open_ai_credential_dto.py +31 -0
- vapi/types/create_azure_open_ai_credential_dto_models_item.py +17 -0
- vapi/types/create_azure_open_ai_credential_dto_region.py +24 -0
- vapi/types/create_byo_phone_number_dto.py +105 -0
- vapi/types/create_byo_phone_number_dto_fallback_destination.py +7 -0
- vapi/types/create_byo_sip_trunk_credential_dto.py +64 -0
- vapi/types/create_cartesia_credential_dto.py +25 -0
- vapi/types/create_conversation_block_dto.py +88 -0
- vapi/types/create_conversation_block_dto_messages_item.py +7 -0
- vapi/types/create_custom_llm_credential_dto.py +25 -0
- vapi/types/create_customer_dto.py +59 -0
- vapi/types/create_deep_infra_credential_dto.py +25 -0
- vapi/types/create_deepgram_credential_dto.py +32 -0
- vapi/types/create_dtmf_tool_dto.py +61 -0
- vapi/types/create_dtmf_tool_dto_messages_item.py +11 -0
- vapi/types/create_eleven_labs_credential_dto.py +25 -0
- vapi/types/create_end_call_tool_dto.py +61 -0
- vapi/types/create_end_call_tool_dto_messages_item.py +11 -0
- vapi/types/create_function_tool_dto.py +61 -0
- vapi/types/create_function_tool_dto_messages_item.py +11 -0
- vapi/types/create_gcp_credential_dto.py +41 -0
- vapi/types/create_ghl_tool_dto.py +63 -0
- vapi/types/create_ghl_tool_dto_messages_item.py +11 -0
- vapi/types/create_gladia_credential_dto.py +25 -0
- vapi/types/create_go_high_level_credential_dto.py +25 -0
- vapi/types/create_groq_credential_dto.py +25 -0
- vapi/types/create_lmnt_credential_dto.py +25 -0
- vapi/types/create_make_credential_dto.py +35 -0
- vapi/types/create_make_tool_dto.py +63 -0
- vapi/types/create_make_tool_dto_messages_item.py +11 -0
- vapi/types/create_open_ai_credential_dto.py +25 -0
- vapi/types/create_open_router_credential_dto.py +25 -0
- vapi/types/create_org_dto.py +63 -0
- vapi/types/create_outbound_call_dto.py +104 -0
- vapi/types/create_output_tool_dto.py +61 -0
- vapi/types/create_output_tool_dto_messages_item.py +11 -0
- vapi/types/create_perplexity_ai_credential_dto.py +25 -0
- vapi/types/create_play_ht_credential_dto.py +27 -0
- vapi/types/create_rime_ai_credential_dto.py +25 -0
- vapi/types/create_runpod_credential_dto.py +25 -0
- vapi/types/create_s_3_credential_dto.py +51 -0
- vapi/types/create_squad_dto.py +52 -0
- vapi/types/create_together_ai_credential_dto.py +25 -0
- vapi/types/create_token_dto.py +34 -0
- vapi/types/create_token_dto_tag.py +5 -0
- vapi/types/create_tool_call_block_dto.py +75 -0
- vapi/types/create_tool_call_block_dto_messages_item.py +7 -0
- vapi/types/create_tool_call_block_dto_tool.py +20 -0
- vapi/types/create_tool_template_dto.py +38 -0
- vapi/types/create_tool_template_dto_details.py +20 -0
- vapi/types/create_tool_template_dto_provider.py +5 -0
- vapi/types/create_tool_template_dto_provider_details.py +10 -0
- vapi/types/create_tool_template_dto_visibility.py +5 -0
- vapi/types/create_transfer_call_tool_dto.py +67 -0
- vapi/types/create_transfer_call_tool_dto_destinations_item.py +11 -0
- vapi/types/create_transfer_call_tool_dto_messages_item.py +11 -0
- vapi/types/create_twilio_credential_dto.py +27 -0
- vapi/types/create_twilio_phone_number_dto.py +92 -0
- vapi/types/create_twilio_phone_number_dto_fallback_destination.py +7 -0
- vapi/types/create_vapi_phone_number_dto.py +84 -0
- vapi/types/create_vapi_phone_number_dto_fallback_destination.py +7 -0
- vapi/types/create_voicemail_tool_dto.py +65 -0
- vapi/types/create_voicemail_tool_dto_messages_item.py +11 -0
- vapi/types/create_vonage_credential_dto.py +27 -0
- vapi/types/create_vonage_phone_number_dto.py +87 -0
- vapi/types/create_vonage_phone_number_dto_fallback_destination.py +7 -0
- vapi/types/create_web_call_dto.py +63 -0
- vapi/types/create_workflow_block_dto.py +78 -0
- vapi/types/create_workflow_block_dto_messages_item.py +7 -0
- vapi/types/create_workflow_block_dto_steps_item.py +10 -0
- vapi/types/custom_llm_credential.py +46 -0
- vapi/types/custom_llm_model.py +115 -0
- vapi/types/custom_llm_model_metadata_send_mode.py +5 -0
- vapi/types/custom_llm_model_tools_item.py +20 -0
- vapi/types/deep_infra_credential.py +46 -0
- vapi/types/deep_infra_model.py +90 -0
- vapi/types/deep_infra_model_tools_item.py +20 -0
- vapi/types/deepgram_credential.py +53 -0
- vapi/types/deepgram_transcriber.py +68 -0
- vapi/types/deepgram_transcriber_language.py +65 -0
- vapi/types/deepgram_transcriber_model.py +37 -0
- vapi/types/deepgram_voice.py +47 -0
- vapi/types/deepgram_voice_id.py +6 -0
- vapi/types/deepgram_voice_id_enum.py +10 -0
- vapi/types/dtmf_tool.py +82 -0
- vapi/types/dtmf_tool_messages_item.py +9 -0
- vapi/types/eleven_labs_credential.py +46 -0
- vapi/types/eleven_labs_voice.py +98 -0
- vapi/types/eleven_labs_voice_id.py +6 -0
- vapi/types/eleven_labs_voice_id_enum.py +24 -0
- vapi/types/eleven_labs_voice_model.py +8 -0
- vapi/types/end_call_tool.py +82 -0
- vapi/types/end_call_tool_messages_item.py +9 -0
- vapi/types/error.py +19 -0
- vapi/types/exact_replacement.py +40 -0
- vapi/types/file.py +57 -0
- vapi/types/file_status.py +5 -0
- vapi/types/format_plan.py +64 -0
- vapi/types/format_plan_replacements_item.py +7 -0
- vapi/types/function_tool.py +82 -0
- vapi/types/function_tool_messages_item.py +9 -0
- vapi/types/function_tool_provider_details.py +35 -0
- vapi/types/function_tool_with_tool_call.py +67 -0
- vapi/types/function_tool_with_tool_call_messages_item.py +11 -0
- vapi/types/gcp_credential.py +62 -0
- vapi/types/gcp_key.py +78 -0
- vapi/types/ghl_tool.py +85 -0
- vapi/types/ghl_tool_messages_item.py +9 -0
- vapi/types/ghl_tool_metadata.py +22 -0
- vapi/types/ghl_tool_provider_details.py +41 -0
- vapi/types/ghl_tool_with_tool_call.py +69 -0
- vapi/types/ghl_tool_with_tool_call_messages_item.py +11 -0
- vapi/types/gladia_credential.py +46 -0
- vapi/types/gladia_transcriber.py +56 -0
- vapi/types/gladia_transcriber_language.py +109 -0
- vapi/types/gladia_transcriber_language_behaviour.py +7 -0
- vapi/types/gladia_transcriber_model.py +5 -0
- vapi/types/go_high_level_credential.py +46 -0
- vapi/types/groq_credential.py +46 -0
- vapi/types/groq_model.py +91 -0
- vapi/types/groq_model_model.py +19 -0
- vapi/types/groq_model_tools_item.py +20 -0
- vapi/types/handoff_step.py +116 -0
- vapi/types/handoff_step_block.py +11 -0
- vapi/types/import_twilio_phone_number_dto.py +91 -0
- vapi/types/import_twilio_phone_number_dto_fallback_destination.py +7 -0
- vapi/types/import_vonage_phone_number_dto.py +88 -0
- vapi/types/import_vonage_phone_number_dto_fallback_destination.py +7 -0
- vapi/types/invite_user_dto.py +21 -0
- vapi/types/invite_user_dto_role.py +5 -0
- vapi/types/json_schema.py +57 -0
- vapi/types/json_schema_type.py +5 -0
- vapi/types/knowledge_base.py +23 -0
- vapi/types/lmnt_credential.py +46 -0
- vapi/types/lmnt_voice.py +52 -0
- vapi/types/lmnt_voice_id.py +6 -0
- vapi/types/lmnt_voice_id_enum.py +5 -0
- vapi/types/log.py +164 -0
- vapi/types/log_request_http_method.py +5 -0
- vapi/types/log_resource.py +7 -0
- vapi/types/log_type.py +5 -0
- vapi/types/logs_paginated_response.py +22 -0
- vapi/types/make_credential.py +56 -0
- vapi/types/make_tool.py +85 -0
- vapi/types/make_tool_messages_item.py +9 -0
- vapi/types/make_tool_metadata.py +22 -0
- vapi/types/make_tool_provider_details.py +40 -0
- vapi/types/make_tool_with_tool_call.py +69 -0
- vapi/types/make_tool_with_tool_call_messages_item.py +11 -0
- vapi/types/message_plan.py +51 -0
- vapi/types/metrics.py +44 -0
- vapi/types/model_based_condition.py +54 -0
- vapi/types/model_cost.py +53 -0
- vapi/types/monitor.py +33 -0
- vapi/types/monitor_plan.py +43 -0
- vapi/types/neets_voice.py +47 -0
- vapi/types/neets_voice_id.py +6 -0
- vapi/types/neets_voice_id_enum.py +5 -0
- vapi/types/open_ai_credential.py +46 -0
- vapi/types/open_ai_function.py +35 -0
- vapi/types/open_ai_function_parameters.py +35 -0
- vapi/types/open_ai_message.py +21 -0
- vapi/types/open_ai_message_role.py +5 -0
- vapi/types/open_ai_model.py +106 -0
- vapi/types/open_ai_model_fallback_models_item.py +26 -0
- vapi/types/open_ai_model_model.py +26 -0
- vapi/types/open_ai_model_tools_item.py +20 -0
- vapi/types/open_ai_voice.py +52 -0
- vapi/types/open_ai_voice_id.py +5 -0
- vapi/types/open_router_credential.py +46 -0
- vapi/types/open_router_model.py +90 -0
- vapi/types/open_router_model_tools_item.py +20 -0
- vapi/types/org.py +120 -0
- vapi/types/org_plan.py +28 -0
- vapi/types/output_tool.py +82 -0
- vapi/types/output_tool_messages_item.py +9 -0
- vapi/types/pagination_meta.py +23 -0
- vapi/types/perplexity_ai_credential.py +46 -0
- vapi/types/perplexity_ai_model.py +90 -0
- vapi/types/perplexity_ai_model_tools_item.py +20 -0
- vapi/types/play_ht_credential.py +48 -0
- vapi/types/play_ht_voice.py +84 -0
- vapi/types/play_ht_voice_emotion.py +21 -0
- vapi/types/play_ht_voice_id.py +6 -0
- vapi/types/play_ht_voice_id_enum.py +8 -0
- vapi/types/punctuation_boundary.py +7 -0
- vapi/types/regex_option.py +34 -0
- vapi/types/regex_option_type.py +5 -0
- vapi/types/regex_replacement.py +48 -0
- vapi/types/rime_ai_credential.py +46 -0
- vapi/types/rime_ai_voice.py +58 -0
- vapi/types/rime_ai_voice_id.py +6 -0
- vapi/types/rime_ai_voice_id_enum.py +90 -0
- vapi/types/rime_ai_voice_model.py +5 -0
- vapi/types/rule_based_condition.py +96 -0
- vapi/types/rule_based_condition_operator.py +5 -0
- vapi/types/runpod_credential.py +46 -0
- vapi/types/s_3_credential.py +72 -0
- vapi/types/sbc_configuration.py +17 -0
- vapi/types/server.py +40 -0
- vapi/types/server_message.py +40 -0
- vapi/types/server_message_assistant_request.py +96 -0
- vapi/types/server_message_assistant_request_phone_number.py +11 -0
- vapi/types/server_message_conversation_update.py +110 -0
- vapi/types/server_message_conversation_update_messages_item.py +12 -0
- vapi/types/server_message_conversation_update_phone_number.py +11 -0
- vapi/types/server_message_end_of_call_report.py +134 -0
- vapi/types/server_message_end_of_call_report_costs_item.py +13 -0
- vapi/types/server_message_end_of_call_report_ended_reason.py +177 -0
- vapi/types/server_message_end_of_call_report_phone_number.py +11 -0
- vapi/types/server_message_hang.py +101 -0
- vapi/types/server_message_hang_phone_number.py +11 -0
- vapi/types/server_message_language_changed.py +101 -0
- vapi/types/server_message_language_changed_phone_number.py +11 -0
- vapi/types/server_message_message.py +38 -0
- vapi/types/server_message_model_output.py +101 -0
- vapi/types/server_message_model_output_phone_number.py +11 -0
- vapi/types/server_message_phone_call_control.py +110 -0
- vapi/types/server_message_phone_call_control_destination.py +7 -0
- vapi/types/server_message_phone_call_control_phone_number.py +11 -0
- vapi/types/server_message_phone_call_control_request.py +5 -0
- vapi/types/server_message_response.py +39 -0
- vapi/types/server_message_response_assistant_request.py +80 -0
- vapi/types/server_message_response_assistant_request_destination.py +7 -0
- vapi/types/server_message_response_message_response.py +14 -0
- vapi/types/server_message_response_tool_calls.py +28 -0
- vapi/types/server_message_response_transfer_destination_request.py +32 -0
- vapi/types/server_message_response_transfer_destination_request_destination.py +11 -0
- vapi/types/server_message_response_voice_request.py +44 -0
- vapi/types/server_message_speech_update.py +108 -0
- vapi/types/server_message_speech_update_phone_number.py +11 -0
- vapi/types/server_message_speech_update_role.py +5 -0
- vapi/types/server_message_speech_update_status.py +5 -0
- vapi/types/server_message_status_update.py +145 -0
- vapi/types/server_message_status_update_destination.py +7 -0
- vapi/types/server_message_status_update_ended_reason.py +177 -0
- vapi/types/server_message_status_update_messages_item.py +12 -0
- vapi/types/server_message_status_update_phone_number.py +11 -0
- vapi/types/server_message_status_update_status.py +7 -0
- vapi/types/server_message_tool_calls.py +112 -0
- vapi/types/server_message_tool_calls_phone_number.py +11 -0
- vapi/types/server_message_tool_calls_tool_with_tool_call_list_item.py +10 -0
- vapi/types/server_message_transcript.py +115 -0
- vapi/types/server_message_transcript_phone_number.py +11 -0
- vapi/types/server_message_transcript_role.py +5 -0
- vapi/types/server_message_transcript_transcript_type.py +5 -0
- vapi/types/server_message_transfer_destination_request.py +98 -0
- vapi/types/server_message_transfer_destination_request_phone_number.py +11 -0
- vapi/types/server_message_transfer_update.py +116 -0
- vapi/types/server_message_transfer_update_destination.py +11 -0
- vapi/types/server_message_transfer_update_phone_number.py +11 -0
- vapi/types/server_message_user_interrupted.py +96 -0
- vapi/types/server_message_user_interrupted_phone_number.py +11 -0
- vapi/types/server_message_voice_input.py +101 -0
- vapi/types/server_message_voice_input_phone_number.py +11 -0
- vapi/types/server_message_voice_request.py +128 -0
- vapi/types/server_message_voice_request_phone_number.py +11 -0
- vapi/types/sip_trunk_gateway.py +79 -0
- vapi/types/sip_trunk_gateway_outbound_protocol.py +5 -0
- vapi/types/sip_trunk_outbound_authentication_plan.py +35 -0
- vapi/types/sip_trunk_outbound_sip_register_plan.py +21 -0
- vapi/types/squad.py +73 -0
- vapi/types/squad_member_dto.py +60 -0
- vapi/types/start_speaking_plan.py +62 -0
- vapi/types/step_destination.py +28 -0
- vapi/types/step_destination_conditions_item.py +7 -0
- vapi/types/stop_speaking_plan.py +65 -0
- vapi/types/structured_data_plan.py +66 -0
- vapi/types/success_evaluation_plan.py +75 -0
- vapi/types/success_evaluation_plan_rubric.py +17 -0
- vapi/types/summary_plan.py +56 -0
- vapi/types/sync_voice_library_dto.py +23 -0
- vapi/types/sync_voice_library_dto_providers_item.py +10 -0
- vapi/types/system_message.py +39 -0
- vapi/types/talkscriber_transcriber.py +33 -0
- vapi/types/talkscriber_transcriber_language.py +109 -0
- vapi/types/template.py +58 -0
- vapi/types/template_details.py +20 -0
- vapi/types/template_provider.py +5 -0
- vapi/types/template_provider_details.py +8 -0
- vapi/types/template_visibility.py +5 -0
- vapi/types/time_range.py +47 -0
- vapi/types/time_range_step.py +8 -0
- vapi/types/together_ai_credential.py +46 -0
- vapi/types/together_ai_model.py +90 -0
- vapi/types/together_ai_model_tools_item.py +20 -0
- vapi/types/token.py +62 -0
- vapi/types/token_restrictions.py +53 -0
- vapi/types/token_tag.py +5 -0
- vapi/types/tool_call.py +33 -0
- vapi/types/tool_call_block.py +96 -0
- vapi/types/tool_call_block_messages_item.py +7 -0
- vapi/types/tool_call_block_tool.py +20 -0
- vapi/types/tool_call_function.py +27 -0
- vapi/types/tool_call_message.py +46 -0
- vapi/types/tool_call_result.py +62 -0
- vapi/types/tool_call_result_message.py +49 -0
- vapi/types/tool_call_result_message_item.py +7 -0
- vapi/types/tool_message_complete.py +74 -0
- vapi/types/tool_message_complete_role.py +5 -0
- vapi/types/tool_message_delayed.py +49 -0
- vapi/types/tool_message_failed.py +50 -0
- vapi/types/tool_message_start.py +37 -0
- vapi/types/tool_template_metadata.py +23 -0
- vapi/types/tool_template_setup.py +24 -0
- vapi/types/transcriber_cost.py +46 -0
- vapi/types/transcript_plan.py +66 -0
- vapi/types/transcription_endpointing_plan.py +52 -0
- vapi/types/transfer_call_tool.py +88 -0
- vapi/types/transfer_call_tool_destinations_item.py +11 -0
- vapi/types/transfer_call_tool_messages_item.py +11 -0
- vapi/types/transfer_destination_assistant.py +90 -0
- vapi/types/transfer_destination_number.py +77 -0
- vapi/types/transfer_destination_sip.py +39 -0
- vapi/types/transfer_destination_step.py +39 -0
- vapi/types/transfer_mode.py +5 -0
- vapi/types/transport_configuration_twilio.py +55 -0
- vapi/types/transport_configuration_twilio_recording_channels.py +5 -0
- vapi/types/transport_cost.py +32 -0
- vapi/types/twilio_credential.py +48 -0
- vapi/types/twilio_phone_number.py +113 -0
- vapi/types/twilio_phone_number_fallback_destination.py +7 -0
- vapi/types/twilio_voicemail_detection.py +107 -0
- vapi/types/twilio_voicemail_detection_voicemail_detection_types_item.py +10 -0
- vapi/types/update_anthropic_credential_dto.py +25 -0
- vapi/types/update_anyscale_credential_dto.py +25 -0
- vapi/types/update_azure_open_ai_credential_dto.py +31 -0
- vapi/types/update_azure_open_ai_credential_dto_models_item.py +17 -0
- vapi/types/update_azure_open_ai_credential_dto_region.py +24 -0
- vapi/types/update_byo_sip_trunk_credential_dto.py +64 -0
- vapi/types/update_cartesia_credential_dto.py +25 -0
- vapi/types/update_custom_llm_credential_dto.py +25 -0
- vapi/types/update_deep_infra_credential_dto.py +25 -0
- vapi/types/update_deepgram_credential_dto.py +32 -0
- vapi/types/update_eleven_labs_credential_dto.py +25 -0
- vapi/types/update_gcp_credential_dto.py +41 -0
- vapi/types/update_gladia_credential_dto.py +25 -0
- vapi/types/update_go_high_level_credential_dto.py +25 -0
- vapi/types/update_groq_credential_dto.py +25 -0
- vapi/types/update_lmnt_credential_dto.py +25 -0
- vapi/types/update_make_credential_dto.py +35 -0
- vapi/types/update_open_ai_credential_dto.py +25 -0
- vapi/types/update_open_router_credential_dto.py +25 -0
- vapi/types/update_org_dto.py +63 -0
- vapi/types/update_perplexity_ai_credential_dto.py +25 -0
- vapi/types/update_play_ht_credential_dto.py +27 -0
- vapi/types/update_rime_ai_credential_dto.py +25 -0
- vapi/types/update_runpod_credential_dto.py +25 -0
- vapi/types/update_s_3_credential_dto.py +51 -0
- vapi/types/update_together_ai_credential_dto.py +25 -0
- vapi/types/update_tool_template_dto.py +38 -0
- vapi/types/update_tool_template_dto_details.py +20 -0
- vapi/types/update_tool_template_dto_provider.py +5 -0
- vapi/types/update_tool_template_dto_provider_details.py +10 -0
- vapi/types/update_tool_template_dto_visibility.py +5 -0
- vapi/types/update_twilio_credential_dto.py +27 -0
- vapi/types/update_user_role_dto.py +23 -0
- vapi/types/update_user_role_dto_role.py +5 -0
- vapi/types/update_vonage_credential_dto.py +27 -0
- vapi/types/user.py +47 -0
- vapi/types/user_message.py +49 -0
- vapi/types/vapi_cost.py +32 -0
- vapi/types/vapi_model.py +102 -0
- vapi/types/vapi_model_steps_item.py +7 -0
- vapi/types/vapi_model_tools_item.py +20 -0
- vapi/types/vapi_phone_number.py +105 -0
- vapi/types/vapi_phone_number_fallback_destination.py +7 -0
- vapi/types/voice_cost.py +46 -0
- vapi/types/voice_library.py +126 -0
- vapi/types/voice_library_gender.py +5 -0
- vapi/types/voice_library_voice_response.py +27 -0
- vapi/types/vonage_credential.py +64 -0
- vapi/types/vonage_phone_number.py +108 -0
- vapi/types/vonage_phone_number_fallback_destination.py +7 -0
- vapi/types/workflow_block.py +99 -0
- vapi/types/workflow_block_messages_item.py +7 -0
- vapi/types/workflow_block_steps_item.py +7 -0
- vapi/version.py +3 -0
- vapi_server_sdk-0.0.0a7.dist-info/METADATA +179 -0
- vapi_server_sdk-0.0.0a7.dist-info/RECORD +571 -0
- vapi_server_sdk-0.0.0a7.dist-info/WHEEL +4 -0
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from ..core.pydantic_utilities import UniversalBaseModel
|
|
5
|
+
from .callback_step import CallbackStep
|
|
6
|
+
from .create_workflow_block_dto import CreateWorkflowBlockDto
|
|
7
|
+
from .handoff_step import HandoffStep
|
|
8
|
+
import typing_extensions
|
|
9
|
+
import typing
|
|
10
|
+
from .server_message_voice_input_phone_number import ServerMessageVoiceInputPhoneNumber
|
|
11
|
+
from ..core.serialization import FieldMetadata
|
|
12
|
+
import pydantic
|
|
13
|
+
from .artifact import Artifact
|
|
14
|
+
from .create_assistant_dto import CreateAssistantDto
|
|
15
|
+
from .create_customer_dto import CreateCustomerDto
|
|
16
|
+
from .call import Call
|
|
17
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
18
|
+
from ..core.pydantic_utilities import update_forward_refs
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class ServerMessageVoiceInput(UniversalBaseModel):
|
|
22
|
+
phone_number: typing_extensions.Annotated[
|
|
23
|
+
typing.Optional[ServerMessageVoiceInputPhoneNumber], FieldMetadata(alias="phoneNumber")
|
|
24
|
+
] = pydantic.Field(default=None)
|
|
25
|
+
"""
|
|
26
|
+
This is the phone number associated with the call.
|
|
27
|
+
|
|
28
|
+
This matches one of the following:
|
|
29
|
+
|
|
30
|
+
- `call.phoneNumber`,
|
|
31
|
+
- `call.phoneNumberId`.
|
|
32
|
+
"""
|
|
33
|
+
|
|
34
|
+
type: typing.Literal["voice-input"] = pydantic.Field(default="voice-input")
|
|
35
|
+
"""
|
|
36
|
+
This is the type of the message. "voice-input" is sent when a generation is requested from voice provider.
|
|
37
|
+
"""
|
|
38
|
+
|
|
39
|
+
timestamp: typing.Optional[str] = pydantic.Field(default=None)
|
|
40
|
+
"""
|
|
41
|
+
This is the ISO-8601 formatted timestamp of when the message was sent.
|
|
42
|
+
"""
|
|
43
|
+
|
|
44
|
+
artifact: typing.Optional[Artifact] = pydantic.Field(default=None)
|
|
45
|
+
"""
|
|
46
|
+
This is a live version of the `call.artifact`.
|
|
47
|
+
|
|
48
|
+
This matches what is stored on `call.artifact` after the call.
|
|
49
|
+
"""
|
|
50
|
+
|
|
51
|
+
assistant: typing.Optional[CreateAssistantDto] = pydantic.Field(default=None)
|
|
52
|
+
"""
|
|
53
|
+
This is the assistant that is currently active. This is provided for convenience.
|
|
54
|
+
|
|
55
|
+
This matches one of the following:
|
|
56
|
+
|
|
57
|
+
- `call.assistant`,
|
|
58
|
+
- `call.assistantId`,
|
|
59
|
+
- `call.squad[n].assistant`,
|
|
60
|
+
- `call.squad[n].assistantId`,
|
|
61
|
+
- `call.squadId->[n].assistant`,
|
|
62
|
+
- `call.squadId->[n].assistantId`.
|
|
63
|
+
"""
|
|
64
|
+
|
|
65
|
+
customer: typing.Optional[CreateCustomerDto] = pydantic.Field(default=None)
|
|
66
|
+
"""
|
|
67
|
+
This is the customer associated with the call.
|
|
68
|
+
|
|
69
|
+
This matches one of the following:
|
|
70
|
+
|
|
71
|
+
- `call.customer`,
|
|
72
|
+
- `call.customerId`.
|
|
73
|
+
"""
|
|
74
|
+
|
|
75
|
+
call: typing.Optional[Call] = pydantic.Field(default=None)
|
|
76
|
+
"""
|
|
77
|
+
This is the call object.
|
|
78
|
+
|
|
79
|
+
This matches what was returned in POST /call.
|
|
80
|
+
|
|
81
|
+
Note: This might get stale during the call. To get the latest call object, especially after the call is ended, use GET /call/:id.
|
|
82
|
+
"""
|
|
83
|
+
|
|
84
|
+
input: str = pydantic.Field()
|
|
85
|
+
"""
|
|
86
|
+
This is the voice input content
|
|
87
|
+
"""
|
|
88
|
+
|
|
89
|
+
if IS_PYDANTIC_V2:
|
|
90
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
91
|
+
else:
|
|
92
|
+
|
|
93
|
+
class Config:
|
|
94
|
+
frozen = True
|
|
95
|
+
smart_union = True
|
|
96
|
+
extra = pydantic.Extra.allow
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
update_forward_refs(CallbackStep, ServerMessageVoiceInput=ServerMessageVoiceInput)
|
|
100
|
+
update_forward_refs(CreateWorkflowBlockDto, ServerMessageVoiceInput=ServerMessageVoiceInput)
|
|
101
|
+
update_forward_refs(HandoffStep, ServerMessageVoiceInput=ServerMessageVoiceInput)
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
from .create_byo_phone_number_dto import CreateByoPhoneNumberDto
|
|
5
|
+
from .create_twilio_phone_number_dto import CreateTwilioPhoneNumberDto
|
|
6
|
+
from .create_vonage_phone_number_dto import CreateVonagePhoneNumberDto
|
|
7
|
+
from .create_vapi_phone_number_dto import CreateVapiPhoneNumberDto
|
|
8
|
+
|
|
9
|
+
ServerMessageVoiceInputPhoneNumber = typing.Union[
|
|
10
|
+
CreateByoPhoneNumberDto, CreateTwilioPhoneNumberDto, CreateVonagePhoneNumberDto, CreateVapiPhoneNumberDto
|
|
11
|
+
]
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from ..core.pydantic_utilities import UniversalBaseModel
|
|
5
|
+
from .callback_step import CallbackStep
|
|
6
|
+
from .create_workflow_block_dto import CreateWorkflowBlockDto
|
|
7
|
+
from .handoff_step import HandoffStep
|
|
8
|
+
import typing_extensions
|
|
9
|
+
import typing
|
|
10
|
+
from .server_message_voice_request_phone_number import ServerMessageVoiceRequestPhoneNumber
|
|
11
|
+
from ..core.serialization import FieldMetadata
|
|
12
|
+
import pydantic
|
|
13
|
+
from .artifact import Artifact
|
|
14
|
+
from .create_assistant_dto import CreateAssistantDto
|
|
15
|
+
from .create_customer_dto import CreateCustomerDto
|
|
16
|
+
from .call import Call
|
|
17
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
18
|
+
from ..core.pydantic_utilities import update_forward_refs
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class ServerMessageVoiceRequest(UniversalBaseModel):
|
|
22
|
+
phone_number: typing_extensions.Annotated[
|
|
23
|
+
typing.Optional[ServerMessageVoiceRequestPhoneNumber], FieldMetadata(alias="phoneNumber")
|
|
24
|
+
] = pydantic.Field(default=None)
|
|
25
|
+
"""
|
|
26
|
+
This is the phone number associated with the call.
|
|
27
|
+
|
|
28
|
+
This matches one of the following:
|
|
29
|
+
|
|
30
|
+
- `call.phoneNumber`,
|
|
31
|
+
- `call.phoneNumberId`.
|
|
32
|
+
"""
|
|
33
|
+
|
|
34
|
+
type: typing.Literal["voice-request"] = pydantic.Field(default="voice-request")
|
|
35
|
+
"""
|
|
36
|
+
This is the type of the message. "voice-request" is sent when using `assistant.voice={ "type": "custom-voice" }`.
|
|
37
|
+
|
|
38
|
+
Here is what the request will look like:
|
|
39
|
+
|
|
40
|
+
POST https://{assistant.voice.server.url}
|
|
41
|
+
Content-Type: application/json
|
|
42
|
+
|
|
43
|
+
{
|
|
44
|
+
"messsage": {
|
|
45
|
+
"type": "voice-request",
|
|
46
|
+
"text": "Hello, world!",
|
|
47
|
+
"sampleRate": 24000,
|
|
48
|
+
...other metadata about the call...
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
The expected response is 1-channel 16-bit raw PCM audio at the sample rate specified in the request. Here is how the response will be piped to the transport:
|
|
53
|
+
|
|
54
|
+
```
|
|
55
|
+
response.on('data', (chunk: Buffer) => {
|
|
56
|
+
outputStream.write(chunk);
|
|
57
|
+
});
|
|
58
|
+
```
|
|
59
|
+
"""
|
|
60
|
+
|
|
61
|
+
timestamp: typing.Optional[str] = pydantic.Field(default=None)
|
|
62
|
+
"""
|
|
63
|
+
This is the ISO-8601 formatted timestamp of when the message was sent.
|
|
64
|
+
"""
|
|
65
|
+
|
|
66
|
+
artifact: typing.Optional[Artifact] = pydantic.Field(default=None)
|
|
67
|
+
"""
|
|
68
|
+
This is a live version of the `call.artifact`.
|
|
69
|
+
|
|
70
|
+
This matches what is stored on `call.artifact` after the call.
|
|
71
|
+
"""
|
|
72
|
+
|
|
73
|
+
assistant: typing.Optional[CreateAssistantDto] = pydantic.Field(default=None)
|
|
74
|
+
"""
|
|
75
|
+
This is the assistant that is currently active. This is provided for convenience.
|
|
76
|
+
|
|
77
|
+
This matches one of the following:
|
|
78
|
+
|
|
79
|
+
- `call.assistant`,
|
|
80
|
+
- `call.assistantId`,
|
|
81
|
+
- `call.squad[n].assistant`,
|
|
82
|
+
- `call.squad[n].assistantId`,
|
|
83
|
+
- `call.squadId->[n].assistant`,
|
|
84
|
+
- `call.squadId->[n].assistantId`.
|
|
85
|
+
"""
|
|
86
|
+
|
|
87
|
+
customer: typing.Optional[CreateCustomerDto] = pydantic.Field(default=None)
|
|
88
|
+
"""
|
|
89
|
+
This is the customer associated with the call.
|
|
90
|
+
|
|
91
|
+
This matches one of the following:
|
|
92
|
+
|
|
93
|
+
- `call.customer`,
|
|
94
|
+
- `call.customerId`.
|
|
95
|
+
"""
|
|
96
|
+
|
|
97
|
+
call: typing.Optional[Call] = pydantic.Field(default=None)
|
|
98
|
+
"""
|
|
99
|
+
This is the call object.
|
|
100
|
+
|
|
101
|
+
This matches what was returned in POST /call.
|
|
102
|
+
|
|
103
|
+
Note: This might get stale during the call. To get the latest call object, especially after the call is ended, use GET /call/:id.
|
|
104
|
+
"""
|
|
105
|
+
|
|
106
|
+
text: str = pydantic.Field()
|
|
107
|
+
"""
|
|
108
|
+
This is the text to be synthesized.
|
|
109
|
+
"""
|
|
110
|
+
|
|
111
|
+
sample_rate: typing_extensions.Annotated[float, FieldMetadata(alias="sampleRate")] = pydantic.Field()
|
|
112
|
+
"""
|
|
113
|
+
This is the sample rate to be synthesized.
|
|
114
|
+
"""
|
|
115
|
+
|
|
116
|
+
if IS_PYDANTIC_V2:
|
|
117
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
118
|
+
else:
|
|
119
|
+
|
|
120
|
+
class Config:
|
|
121
|
+
frozen = True
|
|
122
|
+
smart_union = True
|
|
123
|
+
extra = pydantic.Extra.allow
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
update_forward_refs(CallbackStep, ServerMessageVoiceRequest=ServerMessageVoiceRequest)
|
|
127
|
+
update_forward_refs(CreateWorkflowBlockDto, ServerMessageVoiceRequest=ServerMessageVoiceRequest)
|
|
128
|
+
update_forward_refs(HandoffStep, ServerMessageVoiceRequest=ServerMessageVoiceRequest)
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
from .create_byo_phone_number_dto import CreateByoPhoneNumberDto
|
|
5
|
+
from .create_twilio_phone_number_dto import CreateTwilioPhoneNumberDto
|
|
6
|
+
from .create_vonage_phone_number_dto import CreateVonagePhoneNumberDto
|
|
7
|
+
from .create_vapi_phone_number_dto import CreateVapiPhoneNumberDto
|
|
8
|
+
|
|
9
|
+
ServerMessageVoiceRequestPhoneNumber = typing.Union[
|
|
10
|
+
CreateByoPhoneNumberDto, CreateTwilioPhoneNumberDto, CreateVonagePhoneNumberDto, CreateVapiPhoneNumberDto
|
|
11
|
+
]
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.pydantic_utilities import UniversalBaseModel
|
|
4
|
+
import pydantic
|
|
5
|
+
import typing
|
|
6
|
+
import typing_extensions
|
|
7
|
+
from ..core.serialization import FieldMetadata
|
|
8
|
+
from .sip_trunk_gateway_outbound_protocol import SipTrunkGatewayOutboundProtocol
|
|
9
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class SipTrunkGateway(UniversalBaseModel):
|
|
13
|
+
ip: str = pydantic.Field()
|
|
14
|
+
"""
|
|
15
|
+
This is the address of the gateway. It can be an IPv4 address like 1.1.1.1 or a fully qualified domain name like my-sip-trunk.pstn.twilio.com.
|
|
16
|
+
"""
|
|
17
|
+
|
|
18
|
+
port: typing.Optional[float] = pydantic.Field(default=None)
|
|
19
|
+
"""
|
|
20
|
+
This is the port number of the gateway. Default is 5060.
|
|
21
|
+
|
|
22
|
+
@default 5060
|
|
23
|
+
"""
|
|
24
|
+
|
|
25
|
+
netmask: typing.Optional[float] = pydantic.Field(default=None)
|
|
26
|
+
"""
|
|
27
|
+
This is the netmask of the gateway. Defaults to 32.
|
|
28
|
+
|
|
29
|
+
@default 32
|
|
30
|
+
"""
|
|
31
|
+
|
|
32
|
+
inbound_enabled: typing_extensions.Annotated[typing.Optional[bool], FieldMetadata(alias="inboundEnabled")] = (
|
|
33
|
+
pydantic.Field(default=None)
|
|
34
|
+
)
|
|
35
|
+
"""
|
|
36
|
+
This is whether inbound calls are allowed from this gateway. Default is true.
|
|
37
|
+
|
|
38
|
+
@default true
|
|
39
|
+
"""
|
|
40
|
+
|
|
41
|
+
outbound_enabled: typing_extensions.Annotated[typing.Optional[bool], FieldMetadata(alias="outboundEnabled")] = (
|
|
42
|
+
pydantic.Field(default=None)
|
|
43
|
+
)
|
|
44
|
+
"""
|
|
45
|
+
This is whether outbound calls should be sent to this gateway. Default is true.
|
|
46
|
+
|
|
47
|
+
Note, if netmask is less than 32, it doesn't affect the outbound IPs that are tried. 1 attempt is made to `ip:port`.
|
|
48
|
+
|
|
49
|
+
@default true
|
|
50
|
+
"""
|
|
51
|
+
|
|
52
|
+
outbound_protocol: typing_extensions.Annotated[
|
|
53
|
+
typing.Optional[SipTrunkGatewayOutboundProtocol], FieldMetadata(alias="outboundProtocol")
|
|
54
|
+
] = pydantic.Field(default=None)
|
|
55
|
+
"""
|
|
56
|
+
This is the protocol to use for SIP signaling outbound calls. Default is udp.
|
|
57
|
+
|
|
58
|
+
@default udp
|
|
59
|
+
"""
|
|
60
|
+
|
|
61
|
+
options_ping_enabled: typing_extensions.Annotated[
|
|
62
|
+
typing.Optional[bool], FieldMetadata(alias="optionsPingEnabled")
|
|
63
|
+
] = pydantic.Field(default=None)
|
|
64
|
+
"""
|
|
65
|
+
This is whether to send options ping to the gateway. This can be used to check if the gateway is reachable. Default is false.
|
|
66
|
+
|
|
67
|
+
This is useful for high availability setups where you want to check if the gateway is reachable before routing calls to it. Note, if no gateway for a trunk is reachable, outbound calls will be rejected.
|
|
68
|
+
|
|
69
|
+
@default false
|
|
70
|
+
"""
|
|
71
|
+
|
|
72
|
+
if IS_PYDANTIC_V2:
|
|
73
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
74
|
+
else:
|
|
75
|
+
|
|
76
|
+
class Config:
|
|
77
|
+
frozen = True
|
|
78
|
+
smart_union = True
|
|
79
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.pydantic_utilities import UniversalBaseModel
|
|
4
|
+
import typing_extensions
|
|
5
|
+
import typing
|
|
6
|
+
from ..core.serialization import FieldMetadata
|
|
7
|
+
import pydantic
|
|
8
|
+
from .sip_trunk_outbound_sip_register_plan import SipTrunkOutboundSipRegisterPlan
|
|
9
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class SipTrunkOutboundAuthenticationPlan(UniversalBaseModel):
|
|
13
|
+
auth_password: typing_extensions.Annotated[typing.Optional[str], FieldMetadata(alias="authPassword")] = (
|
|
14
|
+
pydantic.Field(default=None)
|
|
15
|
+
)
|
|
16
|
+
"""
|
|
17
|
+
This is not returned in the API.
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
auth_username: typing_extensions.Annotated[typing.Optional[str], FieldMetadata(alias="authUsername")] = None
|
|
21
|
+
sip_register_plan: typing_extensions.Annotated[
|
|
22
|
+
typing.Optional[SipTrunkOutboundSipRegisterPlan], FieldMetadata(alias="sipRegisterPlan")
|
|
23
|
+
] = pydantic.Field(default=None)
|
|
24
|
+
"""
|
|
25
|
+
This can be used to configure if SIP register is required by the SIP trunk. If not provided, no SIP registration will be attempted.
|
|
26
|
+
"""
|
|
27
|
+
|
|
28
|
+
if IS_PYDANTIC_V2:
|
|
29
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
30
|
+
else:
|
|
31
|
+
|
|
32
|
+
class Config:
|
|
33
|
+
frozen = True
|
|
34
|
+
smart_union = True
|
|
35
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.pydantic_utilities import UniversalBaseModel
|
|
4
|
+
import typing
|
|
5
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
6
|
+
import pydantic
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class SipTrunkOutboundSipRegisterPlan(UniversalBaseModel):
|
|
10
|
+
domain: typing.Optional[str] = None
|
|
11
|
+
username: typing.Optional[str] = None
|
|
12
|
+
realm: typing.Optional[str] = None
|
|
13
|
+
|
|
14
|
+
if IS_PYDANTIC_V2:
|
|
15
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
16
|
+
else:
|
|
17
|
+
|
|
18
|
+
class Config:
|
|
19
|
+
frozen = True
|
|
20
|
+
smart_union = True
|
|
21
|
+
extra = pydantic.Extra.allow
|
vapi/types/squad.py
ADDED
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from ..core.pydantic_utilities import UniversalBaseModel
|
|
5
|
+
from .callback_step import CallbackStep
|
|
6
|
+
from .create_workflow_block_dto import CreateWorkflowBlockDto
|
|
7
|
+
from .handoff_step import HandoffStep
|
|
8
|
+
import typing
|
|
9
|
+
import pydantic
|
|
10
|
+
from .squad_member_dto import SquadMemberDto
|
|
11
|
+
import typing_extensions
|
|
12
|
+
from .assistant_overrides import AssistantOverrides
|
|
13
|
+
from ..core.serialization import FieldMetadata
|
|
14
|
+
import datetime as dt
|
|
15
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
16
|
+
from ..core.pydantic_utilities import update_forward_refs
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
class Squad(UniversalBaseModel):
|
|
20
|
+
name: typing.Optional[str] = pydantic.Field(default=None)
|
|
21
|
+
"""
|
|
22
|
+
This is the name of the squad.
|
|
23
|
+
"""
|
|
24
|
+
|
|
25
|
+
members: typing.List[SquadMemberDto] = pydantic.Field()
|
|
26
|
+
"""
|
|
27
|
+
This is the list of assistants that make up the squad.
|
|
28
|
+
|
|
29
|
+
The call will start with the first assistant in the list.
|
|
30
|
+
"""
|
|
31
|
+
|
|
32
|
+
members_overrides: typing_extensions.Annotated[
|
|
33
|
+
typing.Optional[AssistantOverrides], FieldMetadata(alias="membersOverrides")
|
|
34
|
+
] = pydantic.Field(default=None)
|
|
35
|
+
"""
|
|
36
|
+
This can be used to override all the assistants' settings and provide values for their template variables.
|
|
37
|
+
|
|
38
|
+
Both `membersOverrides` and `members[n].assistantOverrides` can be used together. First, `members[n].assistantOverrides` is applied. Then, `membersOverrides` is applied as a global override.
|
|
39
|
+
"""
|
|
40
|
+
|
|
41
|
+
id: str = pydantic.Field()
|
|
42
|
+
"""
|
|
43
|
+
This is the unique identifier for the squad.
|
|
44
|
+
"""
|
|
45
|
+
|
|
46
|
+
org_id: typing_extensions.Annotated[str, FieldMetadata(alias="orgId")] = pydantic.Field()
|
|
47
|
+
"""
|
|
48
|
+
This is the unique identifier for the org that this squad belongs to.
|
|
49
|
+
"""
|
|
50
|
+
|
|
51
|
+
created_at: typing_extensions.Annotated[dt.datetime, FieldMetadata(alias="createdAt")] = pydantic.Field()
|
|
52
|
+
"""
|
|
53
|
+
This is the ISO 8601 date-time string of when the squad was created.
|
|
54
|
+
"""
|
|
55
|
+
|
|
56
|
+
updated_at: typing_extensions.Annotated[dt.datetime, FieldMetadata(alias="updatedAt")] = pydantic.Field()
|
|
57
|
+
"""
|
|
58
|
+
This is the ISO 8601 date-time string of when the squad was last updated.
|
|
59
|
+
"""
|
|
60
|
+
|
|
61
|
+
if IS_PYDANTIC_V2:
|
|
62
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
63
|
+
else:
|
|
64
|
+
|
|
65
|
+
class Config:
|
|
66
|
+
frozen = True
|
|
67
|
+
smart_union = True
|
|
68
|
+
extra = pydantic.Extra.allow
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
update_forward_refs(CallbackStep, Squad=Squad)
|
|
72
|
+
update_forward_refs(CreateWorkflowBlockDto, Squad=Squad)
|
|
73
|
+
update_forward_refs(HandoffStep, Squad=Squad)
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from ..core.pydantic_utilities import UniversalBaseModel
|
|
5
|
+
from .callback_step import CallbackStep
|
|
6
|
+
from .create_workflow_block_dto import CreateWorkflowBlockDto
|
|
7
|
+
from .handoff_step import HandoffStep
|
|
8
|
+
import typing_extensions
|
|
9
|
+
import typing
|
|
10
|
+
from ..core.serialization import FieldMetadata
|
|
11
|
+
import pydantic
|
|
12
|
+
from .create_assistant_dto import CreateAssistantDto
|
|
13
|
+
from .assistant_overrides import AssistantOverrides
|
|
14
|
+
from .transfer_destination_assistant import TransferDestinationAssistant
|
|
15
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
16
|
+
from ..core.pydantic_utilities import update_forward_refs
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
class SquadMemberDto(UniversalBaseModel):
|
|
20
|
+
assistant_id: typing_extensions.Annotated[typing.Optional[str], FieldMetadata(alias="assistantId")] = (
|
|
21
|
+
pydantic.Field(default=None)
|
|
22
|
+
)
|
|
23
|
+
"""
|
|
24
|
+
This is the assistant that will be used for the call. To use a transient assistant, use `assistant` instead.
|
|
25
|
+
"""
|
|
26
|
+
|
|
27
|
+
assistant: typing.Optional[CreateAssistantDto] = pydantic.Field(default=None)
|
|
28
|
+
"""
|
|
29
|
+
This is the assistant that will be used for the call. To use an existing assistant, use `assistantId` instead.
|
|
30
|
+
"""
|
|
31
|
+
|
|
32
|
+
assistant_overrides: typing_extensions.Annotated[
|
|
33
|
+
typing.Optional[AssistantOverrides], FieldMetadata(alias="assistantOverrides")
|
|
34
|
+
] = pydantic.Field(default=None)
|
|
35
|
+
"""
|
|
36
|
+
This can be used to override the assistant's settings and provide values for it's template variables.
|
|
37
|
+
"""
|
|
38
|
+
|
|
39
|
+
assistant_destinations: typing_extensions.Annotated[
|
|
40
|
+
typing.Optional[typing.List[TransferDestinationAssistant]], FieldMetadata(alias="assistantDestinations")
|
|
41
|
+
] = pydantic.Field(default=None)
|
|
42
|
+
"""
|
|
43
|
+
These are the others assistants that this assistant can transfer to.
|
|
44
|
+
|
|
45
|
+
If the assistant already has transfer call tool, these destinations are just appended to existing ones.
|
|
46
|
+
"""
|
|
47
|
+
|
|
48
|
+
if IS_PYDANTIC_V2:
|
|
49
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
50
|
+
else:
|
|
51
|
+
|
|
52
|
+
class Config:
|
|
53
|
+
frozen = True
|
|
54
|
+
smart_union = True
|
|
55
|
+
extra = pydantic.Extra.allow
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
update_forward_refs(CallbackStep, SquadMemberDto=SquadMemberDto)
|
|
59
|
+
update_forward_refs(CreateWorkflowBlockDto, SquadMemberDto=SquadMemberDto)
|
|
60
|
+
update_forward_refs(HandoffStep, SquadMemberDto=SquadMemberDto)
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.pydantic_utilities import UniversalBaseModel
|
|
4
|
+
import typing_extensions
|
|
5
|
+
import typing
|
|
6
|
+
from ..core.serialization import FieldMetadata
|
|
7
|
+
import pydantic
|
|
8
|
+
from .transcription_endpointing_plan import TranscriptionEndpointingPlan
|
|
9
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class StartSpeakingPlan(UniversalBaseModel):
|
|
13
|
+
wait_seconds: typing_extensions.Annotated[typing.Optional[float], FieldMetadata(alias="waitSeconds")] = (
|
|
14
|
+
pydantic.Field(default=None)
|
|
15
|
+
)
|
|
16
|
+
"""
|
|
17
|
+
This is how long assistant waits before speaking. Defaults to 0.4.
|
|
18
|
+
|
|
19
|
+
This is the minimum it will wait but if there is latency is the pipeline, this minimum will be exceeded. This is really a stopgap in case the pipeline is moving too fast.
|
|
20
|
+
|
|
21
|
+
Example:
|
|
22
|
+
|
|
23
|
+
- If model generates tokens and voice generates bytes within 100ms, the pipeline still waits 300ms before outputting speech.
|
|
24
|
+
|
|
25
|
+
Usage:
|
|
26
|
+
|
|
27
|
+
- If the customer is taking long pauses, set this to a higher value.
|
|
28
|
+
- If the assistant is accidentally jumping in too much, set this to a higher value.
|
|
29
|
+
|
|
30
|
+
@default 0.4
|
|
31
|
+
"""
|
|
32
|
+
|
|
33
|
+
smart_endpointing_enabled: typing_extensions.Annotated[
|
|
34
|
+
typing.Optional[bool], FieldMetadata(alias="smartEndpointingEnabled")
|
|
35
|
+
] = pydantic.Field(default=None)
|
|
36
|
+
"""
|
|
37
|
+
This determines if a customer speech is considered done (endpointing) using the VAP model on customer's speech. This is good for middle-of-thought detection.
|
|
38
|
+
|
|
39
|
+
Once an endpoint is triggered, the request is sent to `assistant.model`.
|
|
40
|
+
|
|
41
|
+
Default `false` since experimental.
|
|
42
|
+
|
|
43
|
+
@default false
|
|
44
|
+
"""
|
|
45
|
+
|
|
46
|
+
transcription_endpointing_plan: typing_extensions.Annotated[
|
|
47
|
+
typing.Optional[TranscriptionEndpointingPlan], FieldMetadata(alias="transcriptionEndpointingPlan")
|
|
48
|
+
] = pydantic.Field(default=None)
|
|
49
|
+
"""
|
|
50
|
+
This determines how a customer speech is considered done (endpointing) using the transcription of customer's speech.
|
|
51
|
+
|
|
52
|
+
Once an endpoint is triggered, the request is sent to `assistant.model`.
|
|
53
|
+
"""
|
|
54
|
+
|
|
55
|
+
if IS_PYDANTIC_V2:
|
|
56
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
57
|
+
else:
|
|
58
|
+
|
|
59
|
+
class Config:
|
|
60
|
+
frozen = True
|
|
61
|
+
smart_union = True
|
|
62
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.pydantic_utilities import UniversalBaseModel
|
|
4
|
+
import typing
|
|
5
|
+
from .step_destination_conditions_item import StepDestinationConditionsItem
|
|
6
|
+
import pydantic
|
|
7
|
+
import typing_extensions
|
|
8
|
+
from ..core.serialization import FieldMetadata
|
|
9
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class StepDestination(UniversalBaseModel):
|
|
13
|
+
type: typing.Literal["step"] = "step"
|
|
14
|
+
conditions: typing.Optional[typing.List[StepDestinationConditionsItem]] = pydantic.Field(default=None)
|
|
15
|
+
"""
|
|
16
|
+
This is an optional array of conditions that must be met for this destination to be triggered. If empty, this is the default destination that the step transfers to.
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
step_name: typing_extensions.Annotated[str, FieldMetadata(alias="stepName")]
|
|
20
|
+
|
|
21
|
+
if IS_PYDANTIC_V2:
|
|
22
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
23
|
+
else:
|
|
24
|
+
|
|
25
|
+
class Config:
|
|
26
|
+
frozen = True
|
|
27
|
+
smart_union = True
|
|
28
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
from .model_based_condition import ModelBasedCondition
|
|
5
|
+
from .rule_based_condition import RuleBasedCondition
|
|
6
|
+
|
|
7
|
+
StepDestinationConditionsItem = typing.Union[ModelBasedCondition, RuleBasedCondition]
|