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,46 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.pydantic_utilities import UniversalBaseModel
|
|
4
|
+
import typing
|
|
5
|
+
import typing_extensions
|
|
6
|
+
from ..core.serialization import FieldMetadata
|
|
7
|
+
import pydantic
|
|
8
|
+
import datetime as dt
|
|
9
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class OpenRouterCredential(UniversalBaseModel):
|
|
13
|
+
provider: typing.Literal["openrouter"] = "openrouter"
|
|
14
|
+
api_key: typing_extensions.Annotated[str, FieldMetadata(alias="apiKey")] = pydantic.Field()
|
|
15
|
+
"""
|
|
16
|
+
This is not returned in the API.
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
id: str = pydantic.Field()
|
|
20
|
+
"""
|
|
21
|
+
This is the unique identifier for the credential.
|
|
22
|
+
"""
|
|
23
|
+
|
|
24
|
+
org_id: typing_extensions.Annotated[str, FieldMetadata(alias="orgId")] = pydantic.Field()
|
|
25
|
+
"""
|
|
26
|
+
This is the unique identifier for the org that this credential belongs to.
|
|
27
|
+
"""
|
|
28
|
+
|
|
29
|
+
created_at: typing_extensions.Annotated[dt.datetime, FieldMetadata(alias="createdAt")] = pydantic.Field()
|
|
30
|
+
"""
|
|
31
|
+
This is the ISO 8601 date-time string of when the credential was created.
|
|
32
|
+
"""
|
|
33
|
+
|
|
34
|
+
updated_at: typing_extensions.Annotated[dt.datetime, FieldMetadata(alias="updatedAt")] = pydantic.Field()
|
|
35
|
+
"""
|
|
36
|
+
This is the ISO 8601 date-time string of when the assistant was last updated.
|
|
37
|
+
"""
|
|
38
|
+
|
|
39
|
+
if IS_PYDANTIC_V2:
|
|
40
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
41
|
+
else:
|
|
42
|
+
|
|
43
|
+
class Config:
|
|
44
|
+
frozen = True
|
|
45
|
+
smart_union = True
|
|
46
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,90 @@
|
|
|
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 .open_ai_message import OpenAiMessage
|
|
6
|
+
import pydantic
|
|
7
|
+
from .open_router_model_tools_item import OpenRouterModelToolsItem
|
|
8
|
+
import typing_extensions
|
|
9
|
+
from ..core.serialization import FieldMetadata
|
|
10
|
+
from .knowledge_base import KnowledgeBase
|
|
11
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class OpenRouterModel(UniversalBaseModel):
|
|
15
|
+
messages: typing.Optional[typing.List[OpenAiMessage]] = pydantic.Field(default=None)
|
|
16
|
+
"""
|
|
17
|
+
This is the starting state for the conversation.
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
tools: typing.Optional[typing.List[OpenRouterModelToolsItem]] = pydantic.Field(default=None)
|
|
21
|
+
"""
|
|
22
|
+
These are the tools that the assistant can use during the call. To use existing tools, use `toolIds`.
|
|
23
|
+
|
|
24
|
+
Both `tools` and `toolIds` can be used together.
|
|
25
|
+
"""
|
|
26
|
+
|
|
27
|
+
tool_ids: typing_extensions.Annotated[typing.Optional[typing.List[str]], FieldMetadata(alias="toolIds")] = (
|
|
28
|
+
pydantic.Field(default=None)
|
|
29
|
+
)
|
|
30
|
+
"""
|
|
31
|
+
These are the tools that the assistant can use during the call. To use transient tools, use `tools`.
|
|
32
|
+
|
|
33
|
+
Both `tools` and `toolIds` can be used together.
|
|
34
|
+
"""
|
|
35
|
+
|
|
36
|
+
provider: typing.Literal["openrouter"] = "openrouter"
|
|
37
|
+
model: str = pydantic.Field()
|
|
38
|
+
"""
|
|
39
|
+
This is the name of the model. Ex. cognitivecomputations/dolphin-mixtral-8x7b
|
|
40
|
+
"""
|
|
41
|
+
|
|
42
|
+
temperature: typing.Optional[float] = pydantic.Field(default=None)
|
|
43
|
+
"""
|
|
44
|
+
This is the temperature that will be used for calls. Default is 0 to leverage caching for lower latency.
|
|
45
|
+
"""
|
|
46
|
+
|
|
47
|
+
knowledge_base: typing_extensions.Annotated[
|
|
48
|
+
typing.Optional[KnowledgeBase], FieldMetadata(alias="knowledgeBase")
|
|
49
|
+
] = pydantic.Field(default=None)
|
|
50
|
+
"""
|
|
51
|
+
These are the options for the knowledge base.
|
|
52
|
+
"""
|
|
53
|
+
|
|
54
|
+
max_tokens: typing_extensions.Annotated[typing.Optional[float], FieldMetadata(alias="maxTokens")] = pydantic.Field(
|
|
55
|
+
default=None
|
|
56
|
+
)
|
|
57
|
+
"""
|
|
58
|
+
This is the max number of tokens that the assistant will be allowed to generate in each turn of the conversation. Default is 250.
|
|
59
|
+
"""
|
|
60
|
+
|
|
61
|
+
emotion_recognition_enabled: typing_extensions.Annotated[
|
|
62
|
+
typing.Optional[bool], FieldMetadata(alias="emotionRecognitionEnabled")
|
|
63
|
+
] = pydantic.Field(default=None)
|
|
64
|
+
"""
|
|
65
|
+
This determines whether we detect user's emotion while they speak and send it as an additional info to model.
|
|
66
|
+
|
|
67
|
+
Default `false` because the model is usually are good at understanding the user's emotion from text.
|
|
68
|
+
|
|
69
|
+
@default false
|
|
70
|
+
"""
|
|
71
|
+
|
|
72
|
+
num_fast_turns: typing_extensions.Annotated[typing.Optional[float], FieldMetadata(alias="numFastTurns")] = (
|
|
73
|
+
pydantic.Field(default=None)
|
|
74
|
+
)
|
|
75
|
+
"""
|
|
76
|
+
This sets how many turns at the start of the conversation to use a smaller, faster model from the same provider before switching to the primary model. Example, gpt-3.5-turbo if provider is openai.
|
|
77
|
+
|
|
78
|
+
Default is 0.
|
|
79
|
+
|
|
80
|
+
@default 0
|
|
81
|
+
"""
|
|
82
|
+
|
|
83
|
+
if IS_PYDANTIC_V2:
|
|
84
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
85
|
+
else:
|
|
86
|
+
|
|
87
|
+
class Config:
|
|
88
|
+
frozen = True
|
|
89
|
+
smart_union = True
|
|
90
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
from .create_dtmf_tool_dto import CreateDtmfToolDto
|
|
5
|
+
from .create_end_call_tool_dto import CreateEndCallToolDto
|
|
6
|
+
from .create_voicemail_tool_dto import CreateVoicemailToolDto
|
|
7
|
+
from .create_function_tool_dto import CreateFunctionToolDto
|
|
8
|
+
from .create_ghl_tool_dto import CreateGhlToolDto
|
|
9
|
+
from .create_make_tool_dto import CreateMakeToolDto
|
|
10
|
+
from .create_transfer_call_tool_dto import CreateTransferCallToolDto
|
|
11
|
+
|
|
12
|
+
OpenRouterModelToolsItem = typing.Union[
|
|
13
|
+
CreateDtmfToolDto,
|
|
14
|
+
CreateEndCallToolDto,
|
|
15
|
+
CreateVoicemailToolDto,
|
|
16
|
+
CreateFunctionToolDto,
|
|
17
|
+
CreateGhlToolDto,
|
|
18
|
+
CreateMakeToolDto,
|
|
19
|
+
CreateTransferCallToolDto,
|
|
20
|
+
]
|
vapi/types/org.py
ADDED
|
@@ -0,0 +1,120 @@
|
|
|
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
|
+
import datetime as dt
|
|
9
|
+
from .org_plan import OrgPlan
|
|
10
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class Org(UniversalBaseModel):
|
|
14
|
+
hipaa_enabled: typing_extensions.Annotated[typing.Optional[bool], FieldMetadata(alias="hipaaEnabled")] = (
|
|
15
|
+
pydantic.Field(default=None)
|
|
16
|
+
)
|
|
17
|
+
"""
|
|
18
|
+
When this is enabled, no logs, recordings, or transcriptions will be stored. At the end of the call, you will still receive an end-of-call-report message to store on your server. Defaults to false.
|
|
19
|
+
When HIPAA is enabled, only OpenAI/Custom LLM or Azure Providers will be available for LLM and Voice respectively.
|
|
20
|
+
This is due to the compliance requirements of HIPAA. Other providers may not meet these requirements.
|
|
21
|
+
"""
|
|
22
|
+
|
|
23
|
+
id: str = pydantic.Field()
|
|
24
|
+
"""
|
|
25
|
+
This is the unique identifier for the org.
|
|
26
|
+
"""
|
|
27
|
+
|
|
28
|
+
created_at: typing_extensions.Annotated[dt.datetime, FieldMetadata(alias="createdAt")] = pydantic.Field()
|
|
29
|
+
"""
|
|
30
|
+
This is the ISO 8601 date-time string of when the org was created.
|
|
31
|
+
"""
|
|
32
|
+
|
|
33
|
+
updated_at: typing_extensions.Annotated[dt.datetime, FieldMetadata(alias="updatedAt")] = pydantic.Field()
|
|
34
|
+
"""
|
|
35
|
+
This is the ISO 8601 date-time string of when the org was last updated.
|
|
36
|
+
"""
|
|
37
|
+
|
|
38
|
+
stripe_customer_id: typing_extensions.Annotated[typing.Optional[str], FieldMetadata(alias="stripeCustomerId")] = (
|
|
39
|
+
pydantic.Field(default=None)
|
|
40
|
+
)
|
|
41
|
+
"""
|
|
42
|
+
This is the Stripe customer for the org.
|
|
43
|
+
"""
|
|
44
|
+
|
|
45
|
+
stripe_subscription_id: typing_extensions.Annotated[
|
|
46
|
+
typing.Optional[str], FieldMetadata(alias="stripeSubscriptionId")
|
|
47
|
+
] = pydantic.Field(default=None)
|
|
48
|
+
"""
|
|
49
|
+
This is the subscription for the org.
|
|
50
|
+
"""
|
|
51
|
+
|
|
52
|
+
stripe_subscription_item_id: typing_extensions.Annotated[
|
|
53
|
+
typing.Optional[str], FieldMetadata(alias="stripeSubscriptionItemId")
|
|
54
|
+
] = pydantic.Field(default=None)
|
|
55
|
+
"""
|
|
56
|
+
This is the subscription's subscription item.
|
|
57
|
+
"""
|
|
58
|
+
|
|
59
|
+
stripe_subscription_current_period_start: typing_extensions.Annotated[
|
|
60
|
+
typing.Optional[dt.datetime], FieldMetadata(alias="stripeSubscriptionCurrentPeriodStart")
|
|
61
|
+
] = pydantic.Field(default=None)
|
|
62
|
+
"""
|
|
63
|
+
This is the subscription's current period start.
|
|
64
|
+
"""
|
|
65
|
+
|
|
66
|
+
stripe_subscription_status: typing_extensions.Annotated[
|
|
67
|
+
typing.Optional[str], FieldMetadata(alias="stripeSubscriptionStatus")
|
|
68
|
+
] = pydantic.Field(default=None)
|
|
69
|
+
"""
|
|
70
|
+
This is the subscription's status.
|
|
71
|
+
"""
|
|
72
|
+
|
|
73
|
+
plan: typing.Optional[OrgPlan] = pydantic.Field(default=None)
|
|
74
|
+
"""
|
|
75
|
+
This is the plan for the org.
|
|
76
|
+
"""
|
|
77
|
+
|
|
78
|
+
name: typing.Optional[str] = pydantic.Field(default=None)
|
|
79
|
+
"""
|
|
80
|
+
This is the name of the org. This is just for your own reference.
|
|
81
|
+
"""
|
|
82
|
+
|
|
83
|
+
billing_limit: typing_extensions.Annotated[typing.Optional[float], FieldMetadata(alias="billingLimit")] = (
|
|
84
|
+
pydantic.Field(default=None)
|
|
85
|
+
)
|
|
86
|
+
"""
|
|
87
|
+
This is the monthly billing limit for the org. To go beyond $1000/mo, please contact us at support@vapi.ai.
|
|
88
|
+
"""
|
|
89
|
+
|
|
90
|
+
server_url: typing_extensions.Annotated[typing.Optional[str], FieldMetadata(alias="serverUrl")] = pydantic.Field(
|
|
91
|
+
default=None
|
|
92
|
+
)
|
|
93
|
+
"""
|
|
94
|
+
This is the URL Vapi will communicate with via HTTP GET and POST Requests. This is used for retrieving context, function calling, and end-of-call reports.
|
|
95
|
+
|
|
96
|
+
All requests will be sent with the call object among other things relevant to that message. You can find more details in the Server URL documentation.
|
|
97
|
+
"""
|
|
98
|
+
|
|
99
|
+
server_url_secret: typing_extensions.Annotated[typing.Optional[str], FieldMetadata(alias="serverUrlSecret")] = (
|
|
100
|
+
pydantic.Field(default=None)
|
|
101
|
+
)
|
|
102
|
+
"""
|
|
103
|
+
This is the secret you can set that Vapi will send with every request to your server. Will be sent as a header called x-vapi-secret.
|
|
104
|
+
"""
|
|
105
|
+
|
|
106
|
+
concurrency_limit: typing_extensions.Annotated[typing.Optional[float], FieldMetadata(alias="concurrencyLimit")] = (
|
|
107
|
+
pydantic.Field(default=None)
|
|
108
|
+
)
|
|
109
|
+
"""
|
|
110
|
+
This is the concurrency limit for the org. This is the maximum number of calls that can be active at any given time. To go beyond 10, please contact us at support@vapi.ai.
|
|
111
|
+
"""
|
|
112
|
+
|
|
113
|
+
if IS_PYDANTIC_V2:
|
|
114
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
115
|
+
else:
|
|
116
|
+
|
|
117
|
+
class Config:
|
|
118
|
+
frozen = True
|
|
119
|
+
smart_union = True
|
|
120
|
+
extra = pydantic.Extra.allow
|
vapi/types/org_plan.py
ADDED
|
@@ -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_extensions
|
|
5
|
+
import typing
|
|
6
|
+
from ..core.serialization import FieldMetadata
|
|
7
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
8
|
+
import pydantic
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class OrgPlan(UniversalBaseModel):
|
|
12
|
+
included_providers: typing_extensions.Annotated[
|
|
13
|
+
typing.Optional[typing.List[typing.Dict[str, typing.Optional[typing.Any]]]],
|
|
14
|
+
FieldMetadata(alias="includedProviders"),
|
|
15
|
+
] = None
|
|
16
|
+
included_minutes: typing_extensions.Annotated[typing.Optional[float], FieldMetadata(alias="includedMinutes")] = None
|
|
17
|
+
cost_per_overage_minute: typing_extensions.Annotated[
|
|
18
|
+
typing.Optional[float], FieldMetadata(alias="costPerOverageMinute")
|
|
19
|
+
] = None
|
|
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,82 @@
|
|
|
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 .output_tool_messages_item import OutputToolMessagesItem
|
|
9
|
+
import datetime as dt
|
|
10
|
+
from .open_ai_function import OpenAiFunction
|
|
11
|
+
from .server import Server
|
|
12
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class OutputTool(UniversalBaseModel):
|
|
16
|
+
async_: typing_extensions.Annotated[typing.Optional[bool], FieldMetadata(alias="async")] = pydantic.Field(
|
|
17
|
+
default=None
|
|
18
|
+
)
|
|
19
|
+
"""
|
|
20
|
+
This determines if the tool is async.
|
|
21
|
+
|
|
22
|
+
If async, the assistant will move forward without waiting for your server to respond. This is useful if you just want to trigger something on your server.
|
|
23
|
+
|
|
24
|
+
If sync, the assistant will wait for your server to respond. This is useful if want assistant to respond with the result from your server.
|
|
25
|
+
|
|
26
|
+
Defaults to synchronous (`false`).
|
|
27
|
+
"""
|
|
28
|
+
|
|
29
|
+
messages: typing.Optional[typing.List[OutputToolMessagesItem]] = pydantic.Field(default=None)
|
|
30
|
+
"""
|
|
31
|
+
These are the messages that will be spoken to the user as the tool is running.
|
|
32
|
+
|
|
33
|
+
For some tools, this is auto-filled based on special fields like `tool.destinations`. For others like the function tool, these can be custom configured.
|
|
34
|
+
"""
|
|
35
|
+
|
|
36
|
+
type: typing.Literal["output"] = "output"
|
|
37
|
+
id: str = pydantic.Field()
|
|
38
|
+
"""
|
|
39
|
+
This is the unique identifier for the tool.
|
|
40
|
+
"""
|
|
41
|
+
|
|
42
|
+
org_id: typing_extensions.Annotated[str, FieldMetadata(alias="orgId")] = pydantic.Field()
|
|
43
|
+
"""
|
|
44
|
+
This is the unique identifier for the organization that this tool belongs to.
|
|
45
|
+
"""
|
|
46
|
+
|
|
47
|
+
created_at: typing_extensions.Annotated[dt.datetime, FieldMetadata(alias="createdAt")] = pydantic.Field()
|
|
48
|
+
"""
|
|
49
|
+
This is the ISO 8601 date-time string of when the tool was created.
|
|
50
|
+
"""
|
|
51
|
+
|
|
52
|
+
updated_at: typing_extensions.Annotated[dt.datetime, FieldMetadata(alias="updatedAt")] = pydantic.Field()
|
|
53
|
+
"""
|
|
54
|
+
This is the ISO 8601 date-time string of when the tool was last updated.
|
|
55
|
+
"""
|
|
56
|
+
|
|
57
|
+
function: typing.Optional[OpenAiFunction] = pydantic.Field(default=None)
|
|
58
|
+
"""
|
|
59
|
+
This is the function definition of the tool.
|
|
60
|
+
|
|
61
|
+
For `endCall`, `transferCall`, and `dtmf` tools, this is auto-filled based on tool-specific fields like `tool.destinations`. But, even in those cases, you can provide a custom function definition for advanced use cases.
|
|
62
|
+
|
|
63
|
+
An example of an advanced use case is if you want to customize the message that's spoken for `endCall` tool. You can specify a function where it returns an argument "reason". Then, in `messages` array, you can have many "request-complete" messages. One of these messages will be triggered if the `messages[].conditions` matches the "reason" argument.
|
|
64
|
+
"""
|
|
65
|
+
|
|
66
|
+
server: typing.Optional[Server] = pydantic.Field(default=None)
|
|
67
|
+
"""
|
|
68
|
+
This is the server that will be hit when this tool is requested by the model.
|
|
69
|
+
|
|
70
|
+
All requests will be sent with the call object among other things. You can find more details in the Server URL documentation.
|
|
71
|
+
|
|
72
|
+
This overrides the serverUrl set on the org and the phoneNumber. Order of precedence: highest tool.server.url, then assistant.serverUrl, then phoneNumber.serverUrl, then org.serverUrl.
|
|
73
|
+
"""
|
|
74
|
+
|
|
75
|
+
if IS_PYDANTIC_V2:
|
|
76
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
77
|
+
else:
|
|
78
|
+
|
|
79
|
+
class Config:
|
|
80
|
+
frozen = True
|
|
81
|
+
smart_union = True
|
|
82
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
from .tool_message_start import ToolMessageStart
|
|
5
|
+
from .tool_message_complete import ToolMessageComplete
|
|
6
|
+
from .tool_message_failed import ToolMessageFailed
|
|
7
|
+
from .tool_message_delayed import ToolMessageDelayed
|
|
8
|
+
|
|
9
|
+
OutputToolMessagesItem = typing.Union[ToolMessageStart, ToolMessageComplete, ToolMessageFailed, ToolMessageDelayed]
|
|
@@ -0,0 +1,23 @@
|
|
|
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
|
+
from ..core.serialization import FieldMetadata
|
|
6
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
7
|
+
import typing
|
|
8
|
+
import pydantic
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class PaginationMeta(UniversalBaseModel):
|
|
12
|
+
items_per_page: typing_extensions.Annotated[float, FieldMetadata(alias="itemsPerPage")]
|
|
13
|
+
total_items: typing_extensions.Annotated[float, FieldMetadata(alias="totalItems")]
|
|
14
|
+
current_page: typing_extensions.Annotated[float, FieldMetadata(alias="currentPage")]
|
|
15
|
+
|
|
16
|
+
if IS_PYDANTIC_V2:
|
|
17
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
18
|
+
else:
|
|
19
|
+
|
|
20
|
+
class Config:
|
|
21
|
+
frozen = True
|
|
22
|
+
smart_union = True
|
|
23
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.pydantic_utilities import UniversalBaseModel
|
|
4
|
+
import typing
|
|
5
|
+
import typing_extensions
|
|
6
|
+
from ..core.serialization import FieldMetadata
|
|
7
|
+
import pydantic
|
|
8
|
+
import datetime as dt
|
|
9
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class PerplexityAiCredential(UniversalBaseModel):
|
|
13
|
+
provider: typing.Literal["perplexity-ai"] = "perplexity-ai"
|
|
14
|
+
api_key: typing_extensions.Annotated[str, FieldMetadata(alias="apiKey")] = pydantic.Field()
|
|
15
|
+
"""
|
|
16
|
+
This is not returned in the API.
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
id: str = pydantic.Field()
|
|
20
|
+
"""
|
|
21
|
+
This is the unique identifier for the credential.
|
|
22
|
+
"""
|
|
23
|
+
|
|
24
|
+
org_id: typing_extensions.Annotated[str, FieldMetadata(alias="orgId")] = pydantic.Field()
|
|
25
|
+
"""
|
|
26
|
+
This is the unique identifier for the org that this credential belongs to.
|
|
27
|
+
"""
|
|
28
|
+
|
|
29
|
+
created_at: typing_extensions.Annotated[dt.datetime, FieldMetadata(alias="createdAt")] = pydantic.Field()
|
|
30
|
+
"""
|
|
31
|
+
This is the ISO 8601 date-time string of when the credential was created.
|
|
32
|
+
"""
|
|
33
|
+
|
|
34
|
+
updated_at: typing_extensions.Annotated[dt.datetime, FieldMetadata(alias="updatedAt")] = pydantic.Field()
|
|
35
|
+
"""
|
|
36
|
+
This is the ISO 8601 date-time string of when the assistant was last updated.
|
|
37
|
+
"""
|
|
38
|
+
|
|
39
|
+
if IS_PYDANTIC_V2:
|
|
40
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
41
|
+
else:
|
|
42
|
+
|
|
43
|
+
class Config:
|
|
44
|
+
frozen = True
|
|
45
|
+
smart_union = True
|
|
46
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,90 @@
|
|
|
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 .open_ai_message import OpenAiMessage
|
|
6
|
+
import pydantic
|
|
7
|
+
from .perplexity_ai_model_tools_item import PerplexityAiModelToolsItem
|
|
8
|
+
import typing_extensions
|
|
9
|
+
from ..core.serialization import FieldMetadata
|
|
10
|
+
from .knowledge_base import KnowledgeBase
|
|
11
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class PerplexityAiModel(UniversalBaseModel):
|
|
15
|
+
messages: typing.Optional[typing.List[OpenAiMessage]] = pydantic.Field(default=None)
|
|
16
|
+
"""
|
|
17
|
+
This is the starting state for the conversation.
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
tools: typing.Optional[typing.List[PerplexityAiModelToolsItem]] = pydantic.Field(default=None)
|
|
21
|
+
"""
|
|
22
|
+
These are the tools that the assistant can use during the call. To use existing tools, use `toolIds`.
|
|
23
|
+
|
|
24
|
+
Both `tools` and `toolIds` can be used together.
|
|
25
|
+
"""
|
|
26
|
+
|
|
27
|
+
tool_ids: typing_extensions.Annotated[typing.Optional[typing.List[str]], FieldMetadata(alias="toolIds")] = (
|
|
28
|
+
pydantic.Field(default=None)
|
|
29
|
+
)
|
|
30
|
+
"""
|
|
31
|
+
These are the tools that the assistant can use during the call. To use transient tools, use `tools`.
|
|
32
|
+
|
|
33
|
+
Both `tools` and `toolIds` can be used together.
|
|
34
|
+
"""
|
|
35
|
+
|
|
36
|
+
provider: typing.Literal["perplexity-ai"] = "perplexity-ai"
|
|
37
|
+
model: str = pydantic.Field()
|
|
38
|
+
"""
|
|
39
|
+
This is the name of the model. Ex. cognitivecomputations/dolphin-mixtral-8x7b
|
|
40
|
+
"""
|
|
41
|
+
|
|
42
|
+
temperature: typing.Optional[float] = pydantic.Field(default=None)
|
|
43
|
+
"""
|
|
44
|
+
This is the temperature that will be used for calls. Default is 0 to leverage caching for lower latency.
|
|
45
|
+
"""
|
|
46
|
+
|
|
47
|
+
knowledge_base: typing_extensions.Annotated[
|
|
48
|
+
typing.Optional[KnowledgeBase], FieldMetadata(alias="knowledgeBase")
|
|
49
|
+
] = pydantic.Field(default=None)
|
|
50
|
+
"""
|
|
51
|
+
These are the options for the knowledge base.
|
|
52
|
+
"""
|
|
53
|
+
|
|
54
|
+
max_tokens: typing_extensions.Annotated[typing.Optional[float], FieldMetadata(alias="maxTokens")] = pydantic.Field(
|
|
55
|
+
default=None
|
|
56
|
+
)
|
|
57
|
+
"""
|
|
58
|
+
This is the max number of tokens that the assistant will be allowed to generate in each turn of the conversation. Default is 250.
|
|
59
|
+
"""
|
|
60
|
+
|
|
61
|
+
emotion_recognition_enabled: typing_extensions.Annotated[
|
|
62
|
+
typing.Optional[bool], FieldMetadata(alias="emotionRecognitionEnabled")
|
|
63
|
+
] = pydantic.Field(default=None)
|
|
64
|
+
"""
|
|
65
|
+
This determines whether we detect user's emotion while they speak and send it as an additional info to model.
|
|
66
|
+
|
|
67
|
+
Default `false` because the model is usually are good at understanding the user's emotion from text.
|
|
68
|
+
|
|
69
|
+
@default false
|
|
70
|
+
"""
|
|
71
|
+
|
|
72
|
+
num_fast_turns: typing_extensions.Annotated[typing.Optional[float], FieldMetadata(alias="numFastTurns")] = (
|
|
73
|
+
pydantic.Field(default=None)
|
|
74
|
+
)
|
|
75
|
+
"""
|
|
76
|
+
This sets how many turns at the start of the conversation to use a smaller, faster model from the same provider before switching to the primary model. Example, gpt-3.5-turbo if provider is openai.
|
|
77
|
+
|
|
78
|
+
Default is 0.
|
|
79
|
+
|
|
80
|
+
@default 0
|
|
81
|
+
"""
|
|
82
|
+
|
|
83
|
+
if IS_PYDANTIC_V2:
|
|
84
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
85
|
+
else:
|
|
86
|
+
|
|
87
|
+
class Config:
|
|
88
|
+
frozen = True
|
|
89
|
+
smart_union = True
|
|
90
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
from .create_dtmf_tool_dto import CreateDtmfToolDto
|
|
5
|
+
from .create_end_call_tool_dto import CreateEndCallToolDto
|
|
6
|
+
from .create_voicemail_tool_dto import CreateVoicemailToolDto
|
|
7
|
+
from .create_function_tool_dto import CreateFunctionToolDto
|
|
8
|
+
from .create_ghl_tool_dto import CreateGhlToolDto
|
|
9
|
+
from .create_make_tool_dto import CreateMakeToolDto
|
|
10
|
+
from .create_transfer_call_tool_dto import CreateTransferCallToolDto
|
|
11
|
+
|
|
12
|
+
PerplexityAiModelToolsItem = typing.Union[
|
|
13
|
+
CreateDtmfToolDto,
|
|
14
|
+
CreateEndCallToolDto,
|
|
15
|
+
CreateVoicemailToolDto,
|
|
16
|
+
CreateFunctionToolDto,
|
|
17
|
+
CreateGhlToolDto,
|
|
18
|
+
CreateMakeToolDto,
|
|
19
|
+
CreateTransferCallToolDto,
|
|
20
|
+
]
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.pydantic_utilities import UniversalBaseModel
|
|
4
|
+
import typing
|
|
5
|
+
import typing_extensions
|
|
6
|
+
from ..core.serialization import FieldMetadata
|
|
7
|
+
import pydantic
|
|
8
|
+
import datetime as dt
|
|
9
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class PlayHtCredential(UniversalBaseModel):
|
|
13
|
+
provider: typing.Literal["playht"] = "playht"
|
|
14
|
+
api_key: typing_extensions.Annotated[str, FieldMetadata(alias="apiKey")] = pydantic.Field()
|
|
15
|
+
"""
|
|
16
|
+
This is not returned in the API.
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
id: str = pydantic.Field()
|
|
20
|
+
"""
|
|
21
|
+
This is the unique identifier for the credential.
|
|
22
|
+
"""
|
|
23
|
+
|
|
24
|
+
org_id: typing_extensions.Annotated[str, FieldMetadata(alias="orgId")] = pydantic.Field()
|
|
25
|
+
"""
|
|
26
|
+
This is the unique identifier for the org that this credential belongs to.
|
|
27
|
+
"""
|
|
28
|
+
|
|
29
|
+
created_at: typing_extensions.Annotated[dt.datetime, FieldMetadata(alias="createdAt")] = pydantic.Field()
|
|
30
|
+
"""
|
|
31
|
+
This is the ISO 8601 date-time string of when the credential was created.
|
|
32
|
+
"""
|
|
33
|
+
|
|
34
|
+
updated_at: typing_extensions.Annotated[dt.datetime, FieldMetadata(alias="updatedAt")] = pydantic.Field()
|
|
35
|
+
"""
|
|
36
|
+
This is the ISO 8601 date-time string of when the assistant was last updated.
|
|
37
|
+
"""
|
|
38
|
+
|
|
39
|
+
user_id: typing_extensions.Annotated[str, FieldMetadata(alias="userId")]
|
|
40
|
+
|
|
41
|
+
if IS_PYDANTIC_V2:
|
|
42
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
43
|
+
else:
|
|
44
|
+
|
|
45
|
+
class Config:
|
|
46
|
+
frozen = True
|
|
47
|
+
smart_union = True
|
|
48
|
+
extra = pydantic.Extra.allow
|