vapi_server_sdk 0.1.0 → 0.2.0
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.
- checksums.yaml +4 -4
- data/lib/requests.rb +2 -2
- data/lib/types_export.rb +184 -26
- data/lib/vapi_server_sdk/analytics/client.rb +14 -43
- data/lib/vapi_server_sdk/assistants/client.rb +57 -60
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_client_messages_item.rb +1 -0
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_model.rb +39 -0
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_server_messages_item.rb +1 -0
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_transcriber.rb +27 -1
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_voice.rb +26 -0
- data/lib/vapi_server_sdk/calls/client.rb +58 -28
- data/lib/vapi_server_sdk/knowledge_bases/client.rb +394 -0
- data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_create_request.rb +96 -0
- data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_create_response.rb +96 -0
- data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_delete_response.rb +96 -0
- data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_get_response.rb +96 -0
- data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_list_response_item.rb +96 -0
- data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_update_response.rb +96 -0
- data/lib/vapi_server_sdk/logs/client.rb +10 -6
- data/lib/vapi_server_sdk/squads/client.rb +56 -32
- data/lib/vapi_server_sdk/tools/client.rb +4 -0
- data/lib/vapi_server_sdk/tools/types/tools_create_request.rb +39 -0
- data/lib/vapi_server_sdk/tools/types/tools_create_response.rb +39 -0
- data/lib/vapi_server_sdk/tools/types/tools_delete_response.rb +39 -0
- data/lib/vapi_server_sdk/tools/types/tools_get_response.rb +39 -0
- data/lib/vapi_server_sdk/tools/types/tools_list_response_item.rb +39 -0
- data/lib/vapi_server_sdk/tools/types/tools_update_response.rb +39 -0
- data/lib/vapi_server_sdk/types/analytics_query_dto.rb +59 -0
- data/lib/vapi_server_sdk/types/anthropic_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/anthropic_model.rb +21 -13
- data/lib/vapi_server_sdk/types/anthropic_model_model.rb +2 -0
- data/lib/vapi_server_sdk/types/anyscale_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/anyscale_model.rb +21 -13
- data/lib/vapi_server_sdk/types/assembly_ai_credential.rb +111 -0
- data/lib/vapi_server_sdk/types/assembly_ai_transcriber.rb +97 -0
- data/lib/vapi_server_sdk/types/assistant.rb +42 -64
- data/lib/vapi_server_sdk/types/assistant_client_messages_item.rb +1 -0
- data/lib/vapi_server_sdk/types/assistant_custom_endpointing_rule.rb +100 -0
- data/lib/vapi_server_sdk/types/assistant_model.rb +39 -0
- data/lib/vapi_server_sdk/types/assistant_overrides.rb +57 -65
- data/lib/vapi_server_sdk/types/assistant_overrides_client_messages_item.rb +1 -0
- data/lib/vapi_server_sdk/types/assistant_overrides_model.rb +39 -0
- data/lib/vapi_server_sdk/types/assistant_overrides_server_messages_item.rb +1 -0
- data/lib/vapi_server_sdk/types/assistant_overrides_transcriber.rb +27 -1
- data/lib/vapi_server_sdk/types/assistant_overrides_voice.rb +26 -0
- data/lib/vapi_server_sdk/types/assistant_server_messages_item.rb +1 -0
- data/lib/vapi_server_sdk/types/assistant_transcriber.rb +27 -1
- data/lib/vapi_server_sdk/types/assistant_voice.rb +26 -0
- data/lib/vapi_server_sdk/types/auto_reload_plan.rb +65 -0
- data/lib/vapi_server_sdk/types/auto_reload_plan_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/azure_credential.rb +129 -0
- data/lib/vapi_server_sdk/types/azure_credential_region.rb +23 -0
- data/lib/vapi_server_sdk/types/azure_open_ai_credential.rb +12 -2
- data/lib/vapi_server_sdk/types/azure_open_ai_credential_models_item.rb +1 -0
- data/lib/vapi_server_sdk/types/azure_open_ai_credential_region.rb +1 -0
- data/lib/vapi_server_sdk/types/azure_voice.rb +25 -21
- data/lib/vapi_server_sdk/types/bash_tool.rb +194 -0
- data/lib/vapi_server_sdk/types/bash_tool_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/block_complete_message.rb +29 -4
- data/lib/vapi_server_sdk/types/block_start_message.rb +29 -4
- data/lib/vapi_server_sdk/types/both_custom_endpointing_rule.rb +126 -0
- data/lib/vapi_server_sdk/types/byo_sip_trunk_credential.rb +29 -9
- data/lib/vapi_server_sdk/types/call.rb +15 -1
- data/lib/vapi_server_sdk/types/call_ended_reason.rb +49 -24
- data/lib/vapi_server_sdk/types/call_log_privileged.rb +88 -0
- data/lib/vapi_server_sdk/types/call_log_privileged_level.rb +12 -0
- data/lib/vapi_server_sdk/types/call_logs_paginated_response.rb +75 -0
- data/lib/vapi_server_sdk/types/cartesia_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/cartesia_voice.rb +25 -21
- data/lib/vapi_server_sdk/types/cartesia_voice_language.rb +9 -1
- data/lib/vapi_server_sdk/types/client_inbound_message_add_message.rb +25 -3
- data/lib/vapi_server_sdk/types/client_inbound_message_message.rb +13 -0
- data/lib/vapi_server_sdk/types/client_inbound_message_transfer.rb +63 -0
- data/lib/vapi_server_sdk/types/client_inbound_message_transfer_destination.rb +96 -0
- data/lib/vapi_server_sdk/types/{client_message_language_changed.rb → client_message_language_change_detected.rb} +5 -5
- data/lib/vapi_server_sdk/types/client_message_message.rb +22 -9
- data/lib/vapi_server_sdk/types/client_message_tool_calls_tool_with_tool_call_list_item.rb +77 -77
- data/lib/vapi_server_sdk/types/client_message_transfer_update.rb +116 -0
- data/lib/vapi_server_sdk/types/client_message_transfer_update_destination.rb +122 -0
- data/lib/vapi_server_sdk/types/computer_tool.rb +218 -0
- data/lib/vapi_server_sdk/types/computer_tool_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/condition.rb +9 -9
- data/lib/vapi_server_sdk/types/create_anthropic_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/create_anyscale_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/create_assembly_ai_credential_dto.rb +74 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto.rb +43 -65
- data/lib/vapi_server_sdk/types/create_assistant_dto_client_messages_item.rb +1 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto_model.rb +39 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto_server_messages_item.rb +1 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto_transcriber.rb +27 -1
- data/lib/vapi_server_sdk/types/create_assistant_dto_voice.rb +26 -0
- data/lib/vapi_server_sdk/types/create_azure_credential_dto.rb +95 -0
- data/lib/vapi_server_sdk/types/create_azure_credential_dto_region.rb +23 -0
- data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto.rb +13 -3
- data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto_models_item.rb +1 -0
- data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto_region.rb +1 -0
- data/lib/vapi_server_sdk/types/create_bash_tool_dto.rb +161 -0
- data/lib/vapi_server_sdk/types/create_bash_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/create_byo_sip_trunk_credential_dto.rb +31 -11
- data/lib/vapi_server_sdk/types/create_cartesia_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/create_computer_tool_dto.rb +185 -0
- data/lib/vapi_server_sdk/types/create_computer_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/create_custom_knowledge_base_dto.rb +137 -0
- data/lib/vapi_server_sdk/types/create_custom_llm_credential_dto.rb +31 -2
- data/lib/vapi_server_sdk/types/create_deep_infra_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/create_deepgram_credential_dto.rb +9 -2
- data/lib/vapi_server_sdk/types/create_eleven_labs_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/create_gcp_credential_dto.rb +10 -10
- data/lib/vapi_server_sdk/types/create_gladia_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/create_go_high_level_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/create_google_credential_dto.rb +76 -0
- data/lib/vapi_server_sdk/types/create_groq_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/create_inflection_ai_credential_dto.rb +76 -0
- data/lib/vapi_server_sdk/types/create_langfuse_credential_dto.rb +96 -0
- data/lib/vapi_server_sdk/types/create_lmnt_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/create_make_credential_dto.rb +17 -2
- data/lib/vapi_server_sdk/types/create_open_ai_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/create_open_router_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/create_org_dto.rb +21 -2
- data/lib/vapi_server_sdk/types/create_org_dto_channel.rb +10 -0
- data/lib/vapi_server_sdk/types/create_perplexity_ai_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/create_play_ht_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/create_rime_ai_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/create_runpod_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/create_s_3_credential_dto.rb +13 -3
- data/lib/vapi_server_sdk/types/{knowledge_base.rb → create_tavus_credential_dto.rb} +21 -21
- data/lib/vapi_server_sdk/types/create_text_editor_tool_dto.rb +161 -0
- data/lib/vapi_server_sdk/types/create_text_editor_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/create_together_ai_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/create_trieve_knowledge_base_dto.rb +109 -0
- data/lib/vapi_server_sdk/types/create_twilio_credential_dto.rb +16 -2
- data/lib/vapi_server_sdk/types/create_vapi_phone_number_dto.rb +20 -2
- data/lib/vapi_server_sdk/types/create_vonage_credential_dto.rb +16 -2
- data/lib/vapi_server_sdk/types/create_webhook_credential_dto.rb +84 -0
- data/lib/vapi_server_sdk/types/create_x_ai_credential_dto.rb +76 -0
- data/lib/vapi_server_sdk/types/credits_buy_dto.rb +55 -0
- data/lib/vapi_server_sdk/types/custom_knowledge_base.rb +154 -0
- data/lib/vapi_server_sdk/types/custom_llm_credential.rb +46 -3
- data/lib/vapi_server_sdk/types/custom_llm_model.rb +23 -15
- data/lib/vapi_server_sdk/types/custom_message.rb +92 -0
- data/lib/vapi_server_sdk/types/custom_transcriber.rb +125 -0
- data/lib/vapi_server_sdk/types/custom_voice.rb +132 -0
- data/lib/vapi_server_sdk/types/customer_custom_endpointing_rule.rb +100 -0
- data/lib/vapi_server_sdk/types/deep_infra_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/deep_infra_model.rb +21 -13
- data/lib/vapi_server_sdk/types/deepgram_credential.rb +9 -1
- data/lib/vapi_server_sdk/types/deepgram_transcriber.rb +69 -11
- data/lib/vapi_server_sdk/types/deepgram_voice.rb +17 -17
- data/lib/vapi_server_sdk/types/eleven_labs_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/eleven_labs_voice.rb +28 -24
- data/lib/vapi_server_sdk/types/fallback_azure_voice.rb +100 -0
- data/lib/vapi_server_sdk/types/fallback_azure_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/fallback_azure_voice_voice_id.rb +9 -0
- data/lib/vapi_server_sdk/types/fallback_cartesia_voice.rb +100 -0
- data/lib/vapi_server_sdk/types/fallback_cartesia_voice_language.rb +23 -0
- data/lib/vapi_server_sdk/types/fallback_cartesia_voice_model.rb +10 -0
- data/lib/vapi_server_sdk/types/fallback_custom_voice.rb +117 -0
- data/lib/vapi_server_sdk/types/fallback_deepgram_voice.rb +81 -0
- data/lib/vapi_server_sdk/types/fallback_deepgram_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/fallback_deepgram_voice_id_enum.rb +18 -0
- data/lib/vapi_server_sdk/types/fallback_eleven_labs_voice.rb +164 -0
- data/lib/vapi_server_sdk/types/fallback_eleven_labs_voice_id.rb +54 -0
- data/lib/vapi_server_sdk/types/fallback_eleven_labs_voice_id_enum.rb +21 -0
- data/lib/vapi_server_sdk/types/fallback_eleven_labs_voice_model.rb +12 -0
- data/lib/vapi_server_sdk/types/fallback_lmnt_voice.rb +88 -0
- data/lib/vapi_server_sdk/types/fallback_lmnt_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/fallback_lmnt_voice_id_enum.rb +8 -0
- data/lib/vapi_server_sdk/types/fallback_neets_voice.rb +81 -0
- data/lib/vapi_server_sdk/types/fallback_neets_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/fallback_neets_voice_id_enum.rb +7 -0
- data/lib/vapi_server_sdk/types/fallback_open_ai_voice.rb +87 -0
- data/lib/vapi_server_sdk/types/fallback_open_ai_voice_id.rb +20 -0
- data/lib/vapi_server_sdk/types/fallback_plan.rb +61 -0
- data/lib/vapi_server_sdk/types/fallback_plan_voices_item.rb +211 -0
- data/lib/vapi_server_sdk/types/fallback_play_ht_voice.rb +172 -0
- data/lib/vapi_server_sdk/types/fallback_play_ht_voice_emotion.rb +19 -0
- data/lib/vapi_server_sdk/types/fallback_play_ht_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/fallback_play_ht_voice_id_enum.rb +16 -0
- data/lib/vapi_server_sdk/types/fallback_play_ht_voice_language.rb +44 -0
- data/lib/vapi_server_sdk/types/fallback_play_ht_voice_model.rb +10 -0
- data/lib/vapi_server_sdk/types/fallback_rime_ai_voice.rb +96 -0
- data/lib/vapi_server_sdk/types/fallback_rime_ai_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/fallback_rime_ai_voice_id_enum.rb +87 -0
- data/lib/vapi_server_sdk/types/fallback_rime_ai_voice_model.rb +9 -0
- data/lib/vapi_server_sdk/types/fallback_tavus_voice.rb +147 -0
- data/lib/vapi_server_sdk/types/fallback_tavus_voice_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/format_plan.rb +0 -2
- data/lib/vapi_server_sdk/types/function_tool_with_tool_call.rb +10 -1
- data/lib/vapi_server_sdk/types/gcp_credential.rb +2 -2
- data/lib/vapi_server_sdk/types/ghl_tool_with_tool_call.rb +9 -1
- data/lib/vapi_server_sdk/types/gladia_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/go_high_level_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/google_credential.rb +113 -0
- data/lib/vapi_server_sdk/types/google_model.rb +178 -0
- data/lib/vapi_server_sdk/types/google_model_model.rb +12 -0
- data/lib/vapi_server_sdk/types/google_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/groq_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/groq_model.rb +21 -13
- data/lib/vapi_server_sdk/types/hipaa_buy_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/inflection_ai_credential.rb +113 -0
- data/lib/vapi_server_sdk/types/inflection_ai_model.rb +177 -0
- data/lib/vapi_server_sdk/types/inflection_ai_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/invite_user_dto.rb +9 -9
- data/lib/vapi_server_sdk/types/knowledge_base_response_document.rb +74 -0
- data/lib/vapi_server_sdk/types/langfuse_credential.rb +130 -0
- data/lib/vapi_server_sdk/types/lmnt_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/lmnt_voice.rb +18 -14
- data/lib/vapi_server_sdk/types/log.rb +12 -4
- data/lib/vapi_server_sdk/types/log_resource.rb +8 -0
- data/lib/vapi_server_sdk/types/make_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/make_tool_with_tool_call.rb +9 -1
- data/lib/vapi_server_sdk/types/neets_voice.rb +17 -17
- data/lib/vapi_server_sdk/types/o_auth_2_authentication_plan.rb +79 -0
- data/lib/vapi_server_sdk/types/oauth_2_authentication_session.rb +68 -0
- data/lib/vapi_server_sdk/types/open_ai_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/open_ai_function.rb +30 -4
- data/lib/vapi_server_sdk/types/open_ai_model.rb +23 -15
- data/lib/vapi_server_sdk/types/open_ai_model_fallback_models_item.rb +2 -0
- data/lib/vapi_server_sdk/types/open_ai_model_model.rb +2 -0
- data/lib/vapi_server_sdk/types/open_ai_voice.rb +22 -14
- data/lib/vapi_server_sdk/types/open_ai_voice_id.rb +7 -0
- data/lib/vapi_server_sdk/types/open_router_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/open_router_model.rb +21 -13
- data/lib/vapi_server_sdk/types/org.rb +35 -2
- data/lib/vapi_server_sdk/types/org_channel.rb +10 -0
- data/lib/vapi_server_sdk/types/org_with_org_user.rb +262 -0
- data/lib/vapi_server_sdk/types/org_with_org_user_channel.rb +10 -0
- data/lib/vapi_server_sdk/types/org_with_org_user_role.rb +9 -0
- data/lib/vapi_server_sdk/types/payment.rb +167 -0
- data/lib/vapi_server_sdk/types/payment_retry_dto.rb +55 -0
- data/lib/vapi_server_sdk/types/payment_status.rb +11 -0
- data/lib/vapi_server_sdk/types/payments_paginated_response.rb +75 -0
- data/lib/vapi_server_sdk/types/perplexity_ai_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/perplexity_ai_model.rb +21 -13
- data/lib/vapi_server_sdk/types/phone_number_paginated_response.rb +75 -0
- data/lib/vapi_server_sdk/types/phone_number_paginated_response_results_item.rb +121 -0
- data/lib/vapi_server_sdk/types/play_ht_credential.rb +13 -2
- data/lib/vapi_server_sdk/types/play_ht_voice.rb +37 -15
- data/lib/vapi_server_sdk/types/play_ht_voice_language.rb +44 -0
- data/lib/vapi_server_sdk/types/play_ht_voice_model.rb +10 -0
- data/lib/vapi_server_sdk/types/regex_option.rb +2 -2
- data/lib/vapi_server_sdk/types/regex_option_type.rb +1 -1
- data/lib/vapi_server_sdk/types/regex_replacement.rb +14 -4
- data/lib/vapi_server_sdk/types/rime_ai_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/rime_ai_voice.rb +18 -14
- data/lib/vapi_server_sdk/types/runpod_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/s_3_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/server.rb +16 -2
- data/lib/vapi_server_sdk/types/server_message_end_of_call_report_ended_reason.rb +49 -24
- data/lib/vapi_server_sdk/types/server_message_knowledge_base_request.rb +195 -0
- data/lib/vapi_server_sdk/types/server_message_knowledge_base_request_messages_item.rb +97 -0
- data/lib/vapi_server_sdk/types/{server_message_language_changed_phone_number.rb → server_message_knowledge_base_request_phone_number.rb} +8 -8
- data/lib/vapi_server_sdk/types/{server_message_language_changed.rb → server_message_language_change_detected.rb} +10 -10
- data/lib/vapi_server_sdk/types/server_message_language_change_detected_phone_number.rb +125 -0
- data/lib/vapi_server_sdk/types/server_message_message.rb +22 -9
- data/lib/vapi_server_sdk/types/server_message_response_knowledge_base_request.rb +81 -0
- data/lib/vapi_server_sdk/types/server_message_response_message_response.rb +14 -0
- data/lib/vapi_server_sdk/types/server_message_status_update_ended_reason.rb +49 -24
- data/lib/vapi_server_sdk/types/server_message_tool_calls_tool_with_tool_call_list_item.rb +77 -77
- data/lib/vapi_server_sdk/types/server_message_transfer_update.rb +18 -2
- data/lib/vapi_server_sdk/types/sip_authentication.rb +80 -0
- data/lib/vapi_server_sdk/types/start_speaking_plan.rb +54 -10
- data/lib/vapi_server_sdk/types/start_speaking_plan_custom_endpointing_rules_item.rb +108 -0
- data/lib/vapi_server_sdk/types/structured_data_plan.rb +28 -10
- data/lib/vapi_server_sdk/types/subscription.rb +336 -0
- data/lib/vapi_server_sdk/types/subscription_concurrency_line_buy_dto.rb +55 -0
- data/lib/vapi_server_sdk/types/subscription_concurrency_line_remove_dto.rb +55 -0
- data/lib/vapi_server_sdk/types/subscription_coupon_add_dto.rb +67 -0
- data/lib/vapi_server_sdk/types/subscription_monthly_charge.rb +65 -0
- data/lib/vapi_server_sdk/types/subscription_status.rb +10 -0
- data/lib/vapi_server_sdk/types/subscription_type.rb +10 -0
- data/lib/vapi_server_sdk/types/success_evaluation_plan.rb +38 -16
- data/lib/vapi_server_sdk/types/summary_plan.rb +26 -8
- data/lib/vapi_server_sdk/types/sync_voice_library_dto_providers_item.rb +1 -0
- data/lib/vapi_server_sdk/types/tavus_conversation_properties.rb +173 -0
- data/lib/vapi_server_sdk/types/tavus_credential.rb +111 -0
- data/lib/vapi_server_sdk/types/tavus_voice.rb +163 -0
- data/lib/vapi_server_sdk/types/tavus_voice_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/text_content.rb +73 -0
- data/lib/vapi_server_sdk/types/text_content_language.rb +191 -0
- data/lib/vapi_server_sdk/types/text_editor_tool.rb +194 -0
- data/lib/vapi_server_sdk/types/text_editor_tool_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/together_ai_credential.rb +13 -3
- data/lib/vapi_server_sdk/types/together_ai_model.rb +21 -13
- data/lib/vapi_server_sdk/types/tool_message_complete.rb +29 -3
- data/lib/vapi_server_sdk/types/tool_message_delayed.rb +30 -3
- data/lib/vapi_server_sdk/types/tool_message_failed.rb +30 -3
- data/lib/vapi_server_sdk/types/tool_message_start.rb +29 -4
- data/lib/vapi_server_sdk/types/transfer_destination_assistant.rb +79 -33
- data/lib/vapi_server_sdk/types/transfer_destination_assistant_message.rb +65 -0
- data/lib/vapi_server_sdk/types/transfer_destination_number.rb +56 -24
- data/lib/vapi_server_sdk/types/transfer_destination_number_message.rb +65 -0
- data/lib/vapi_server_sdk/types/transfer_destination_sip.rb +60 -15
- data/lib/vapi_server_sdk/types/transfer_destination_sip_message.rb +65 -0
- data/lib/vapi_server_sdk/types/transfer_destination_step.rb +28 -14
- data/lib/vapi_server_sdk/types/transfer_destination_step_message.rb +65 -0
- data/lib/vapi_server_sdk/types/transfer_plan.rb +141 -0
- data/lib/vapi_server_sdk/types/transfer_plan_message.rb +58 -0
- data/lib/vapi_server_sdk/types/transfer_plan_mode.rb +32 -0
- data/lib/vapi_server_sdk/types/transport.rb +70 -0
- data/lib/vapi_server_sdk/types/transport_cost.rb +12 -2
- data/lib/vapi_server_sdk/types/transport_cost_provider.rb +9 -0
- data/lib/vapi_server_sdk/types/transport_provider.rb +11 -0
- data/lib/vapi_server_sdk/types/trieve_knowledge_base.rb +125 -0
- data/lib/vapi_server_sdk/types/trieve_knowledge_base_vector_store_create_plan.rb +109 -0
- data/lib/vapi_server_sdk/types/trieve_knowledge_base_vector_store_search_plan.rb +95 -0
- data/lib/vapi_server_sdk/types/trieve_knowledge_base_vector_store_search_plan_search_type.rb +12 -0
- data/lib/vapi_server_sdk/types/twilio_credential.rb +12 -2
- data/lib/vapi_server_sdk/types/update_anthropic_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/update_anyscale_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/update_assembly_ai_credential_dto.rb +74 -0
- data/lib/vapi_server_sdk/types/update_azure_credential_dto.rb +95 -0
- data/lib/vapi_server_sdk/types/update_azure_credential_dto_region.rb +23 -0
- data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto.rb +13 -3
- data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto_models_item.rb +1 -0
- data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto_region.rb +1 -0
- data/lib/vapi_server_sdk/types/update_byo_sip_trunk_credential_dto.rb +31 -11
- data/lib/vapi_server_sdk/types/update_cartesia_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/update_custom_llm_credential_dto.rb +31 -2
- data/lib/vapi_server_sdk/types/update_deep_infra_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/update_deepgram_credential_dto.rb +9 -2
- data/lib/vapi_server_sdk/types/update_eleven_labs_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/update_gcp_credential_dto.rb +10 -10
- data/lib/vapi_server_sdk/types/update_gladia_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/update_go_high_level_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/update_google_credential_dto.rb +76 -0
- data/lib/vapi_server_sdk/types/update_groq_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/update_inflection_ai_credential_dto.rb +76 -0
- data/lib/vapi_server_sdk/types/update_langfuse_credential_dto.rb +96 -0
- data/lib/vapi_server_sdk/types/update_lmnt_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/update_make_credential_dto.rb +17 -2
- data/lib/vapi_server_sdk/types/update_open_ai_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/update_open_router_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/update_org_dto.rb +21 -2
- data/lib/vapi_server_sdk/types/update_org_dto_channel.rb +10 -0
- data/lib/vapi_server_sdk/types/update_perplexity_ai_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/update_play_ht_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/update_rime_ai_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/update_runpod_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/update_s_3_credential_dto.rb +13 -3
- data/lib/vapi_server_sdk/types/update_tavus_credential_dto.rb +74 -0
- data/lib/vapi_server_sdk/types/update_together_ai_credential_dto.rb +11 -2
- data/lib/vapi_server_sdk/types/update_twilio_credential_dto.rb +16 -2
- data/lib/vapi_server_sdk/types/update_vonage_credential_dto.rb +16 -2
- data/lib/vapi_server_sdk/types/update_x_ai_credential_dto.rb +76 -0
- data/lib/vapi_server_sdk/types/vapi_cost.rb +10 -2
- data/lib/vapi_server_sdk/types/vapi_cost_sub_type.rb +9 -0
- data/lib/vapi_server_sdk/types/vapi_model.rb +24 -16
- data/lib/vapi_server_sdk/types/vapi_phone_number.rb +20 -2
- data/lib/vapi_server_sdk/types/vonage_credential.rb +12 -2
- data/lib/vapi_server_sdk/types/webhook_credential.rb +134 -0
- data/lib/vapi_server_sdk/types/x_ai_credential.rb +113 -0
- data/lib/vapi_server_sdk/types/xai_model.rb +177 -0
- data/lib/vapi_server_sdk/types/xai_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk.rb +7 -0
- metadata +165 -6
@@ -0,0 +1,79 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "ostruct"
|
4
|
+
require "json"
|
5
|
+
|
6
|
+
module Vapi
|
7
|
+
class OAuth2AuthenticationPlan
|
8
|
+
# @return [String]
|
9
|
+
attr_reader :type
|
10
|
+
# @return [String] This is the OAuth2 URL.
|
11
|
+
attr_reader :url
|
12
|
+
# @return [String] This is the OAuth2 client ID.
|
13
|
+
attr_reader :client_id
|
14
|
+
# @return [String] This is the OAuth2 client secret.
|
15
|
+
attr_reader :client_secret
|
16
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
17
|
+
attr_reader :additional_properties
|
18
|
+
# @return [Object]
|
19
|
+
attr_reader :_field_set
|
20
|
+
protected :_field_set
|
21
|
+
|
22
|
+
OMIT = Object.new
|
23
|
+
|
24
|
+
# @param type [String]
|
25
|
+
# @param url [String] This is the OAuth2 URL.
|
26
|
+
# @param client_id [String] This is the OAuth2 client ID.
|
27
|
+
# @param client_secret [String] This is the OAuth2 client secret.
|
28
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
29
|
+
# @return [Vapi::OAuth2AuthenticationPlan]
|
30
|
+
def initialize(type:, url:, client_id:, client_secret:, additional_properties: nil)
|
31
|
+
@type = type
|
32
|
+
@url = url
|
33
|
+
@client_id = client_id
|
34
|
+
@client_secret = client_secret
|
35
|
+
@additional_properties = additional_properties
|
36
|
+
@_field_set = { "type": type, "url": url, "clientId": client_id, "clientSecret": client_secret }
|
37
|
+
end
|
38
|
+
|
39
|
+
# Deserialize a JSON object to an instance of OAuth2AuthenticationPlan
|
40
|
+
#
|
41
|
+
# @param json_object [String]
|
42
|
+
# @return [Vapi::OAuth2AuthenticationPlan]
|
43
|
+
def self.from_json(json_object:)
|
44
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
45
|
+
parsed_json = JSON.parse(json_object)
|
46
|
+
type = parsed_json["type"]
|
47
|
+
url = parsed_json["url"]
|
48
|
+
client_id = parsed_json["clientId"]
|
49
|
+
client_secret = parsed_json["clientSecret"]
|
50
|
+
new(
|
51
|
+
type: type,
|
52
|
+
url: url,
|
53
|
+
client_id: client_id,
|
54
|
+
client_secret: client_secret,
|
55
|
+
additional_properties: struct
|
56
|
+
)
|
57
|
+
end
|
58
|
+
|
59
|
+
# Serialize an instance of OAuth2AuthenticationPlan to a JSON object
|
60
|
+
#
|
61
|
+
# @return [String]
|
62
|
+
def to_json(*_args)
|
63
|
+
@_field_set&.to_json
|
64
|
+
end
|
65
|
+
|
66
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
67
|
+
# hash and check each fields type against the current object's property
|
68
|
+
# definitions.
|
69
|
+
#
|
70
|
+
# @param obj [Object]
|
71
|
+
# @return [Void]
|
72
|
+
def self.validate_raw(obj:)
|
73
|
+
obj.type.is_a?(String) != false || raise("Passed value for field obj.type is not the expected type, validation failed.")
|
74
|
+
obj.url.is_a?(String) != false || raise("Passed value for field obj.url is not the expected type, validation failed.")
|
75
|
+
obj.client_id.is_a?(String) != false || raise("Passed value for field obj.client_id is not the expected type, validation failed.")
|
76
|
+
obj.client_secret.is_a?(String) != false || raise("Passed value for field obj.client_secret is not the expected type, validation failed.")
|
77
|
+
end
|
78
|
+
end
|
79
|
+
end
|
@@ -0,0 +1,68 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "date"
|
4
|
+
require "ostruct"
|
5
|
+
require "json"
|
6
|
+
|
7
|
+
module Vapi
|
8
|
+
class Oauth2AuthenticationSession
|
9
|
+
# @return [String] This is the OAuth2 access token.
|
10
|
+
attr_reader :access_token
|
11
|
+
# @return [DateTime] This is the OAuth2 access token expiration.
|
12
|
+
attr_reader :expires_at
|
13
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
14
|
+
attr_reader :additional_properties
|
15
|
+
# @return [Object]
|
16
|
+
attr_reader :_field_set
|
17
|
+
protected :_field_set
|
18
|
+
|
19
|
+
OMIT = Object.new
|
20
|
+
|
21
|
+
# @param access_token [String] This is the OAuth2 access token.
|
22
|
+
# @param expires_at [DateTime] This is the OAuth2 access token expiration.
|
23
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
24
|
+
# @return [Vapi::Oauth2AuthenticationSession]
|
25
|
+
def initialize(access_token: OMIT, expires_at: OMIT, additional_properties: nil)
|
26
|
+
@access_token = access_token if access_token != OMIT
|
27
|
+
@expires_at = expires_at if expires_at != OMIT
|
28
|
+
@additional_properties = additional_properties
|
29
|
+
@_field_set = { "accessToken": access_token, "expiresAt": expires_at }.reject do |_k, v|
|
30
|
+
v == OMIT
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
# Deserialize a JSON object to an instance of Oauth2AuthenticationSession
|
35
|
+
#
|
36
|
+
# @param json_object [String]
|
37
|
+
# @return [Vapi::Oauth2AuthenticationSession]
|
38
|
+
def self.from_json(json_object:)
|
39
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
40
|
+
parsed_json = JSON.parse(json_object)
|
41
|
+
access_token = parsed_json["accessToken"]
|
42
|
+
expires_at = (DateTime.parse(parsed_json["expiresAt"]) unless parsed_json["expiresAt"].nil?)
|
43
|
+
new(
|
44
|
+
access_token: access_token,
|
45
|
+
expires_at: expires_at,
|
46
|
+
additional_properties: struct
|
47
|
+
)
|
48
|
+
end
|
49
|
+
|
50
|
+
# Serialize an instance of Oauth2AuthenticationSession to a JSON object
|
51
|
+
#
|
52
|
+
# @return [String]
|
53
|
+
def to_json(*_args)
|
54
|
+
@_field_set&.to_json
|
55
|
+
end
|
56
|
+
|
57
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
58
|
+
# hash and check each fields type against the current object's property
|
59
|
+
# definitions.
|
60
|
+
#
|
61
|
+
# @param obj [Object]
|
62
|
+
# @return [Void]
|
63
|
+
def self.validate_raw(obj:)
|
64
|
+
obj.access_token&.is_a?(String) != false || raise("Passed value for field obj.access_token is not the expected type, validation failed.")
|
65
|
+
obj.expires_at&.is_a?(DateTime) != false || raise("Passed value for field obj.expires_at is not the expected type, validation failed.")
|
66
|
+
end
|
67
|
+
end
|
68
|
+
end
|
@@ -18,6 +18,8 @@ module Vapi
|
|
18
18
|
attr_reader :created_at
|
19
19
|
# @return [DateTime] This is the ISO 8601 date-time string of when the assistant was last updated.
|
20
20
|
attr_reader :updated_at
|
21
|
+
# @return [String] This is the name of credential. This is just for your reference.
|
22
|
+
attr_reader :name
|
21
23
|
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
22
24
|
attr_reader :additional_properties
|
23
25
|
# @return [Object]
|
@@ -32,15 +34,17 @@ module Vapi
|
|
32
34
|
# @param org_id [String] This is the unique identifier for the org that this credential belongs to.
|
33
35
|
# @param created_at [DateTime] This is the ISO 8601 date-time string of when the credential was created.
|
34
36
|
# @param updated_at [DateTime] This is the ISO 8601 date-time string of when the assistant was last updated.
|
37
|
+
# @param name [String] This is the name of credential. This is just for your reference.
|
35
38
|
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
36
39
|
# @return [Vapi::OpenAiCredential]
|
37
|
-
def initialize(provider:, api_key:, id:, org_id:, created_at:, updated_at:, additional_properties: nil)
|
40
|
+
def initialize(provider:, api_key:, id:, org_id:, created_at:, updated_at:, name: OMIT, additional_properties: nil)
|
38
41
|
@provider = provider
|
39
42
|
@api_key = api_key
|
40
43
|
@id = id
|
41
44
|
@org_id = org_id
|
42
45
|
@created_at = created_at
|
43
46
|
@updated_at = updated_at
|
47
|
+
@name = name if name != OMIT
|
44
48
|
@additional_properties = additional_properties
|
45
49
|
@_field_set = {
|
46
50
|
"provider": provider,
|
@@ -48,8 +52,11 @@ module Vapi
|
|
48
52
|
"id": id,
|
49
53
|
"orgId": org_id,
|
50
54
|
"createdAt": created_at,
|
51
|
-
"updatedAt": updated_at
|
52
|
-
|
55
|
+
"updatedAt": updated_at,
|
56
|
+
"name": name
|
57
|
+
}.reject do |_k, v|
|
58
|
+
v == OMIT
|
59
|
+
end
|
53
60
|
end
|
54
61
|
|
55
62
|
# Deserialize a JSON object to an instance of OpenAiCredential
|
@@ -65,6 +72,7 @@ module Vapi
|
|
65
72
|
org_id = parsed_json["orgId"]
|
66
73
|
created_at = (DateTime.parse(parsed_json["createdAt"]) unless parsed_json["createdAt"].nil?)
|
67
74
|
updated_at = (DateTime.parse(parsed_json["updatedAt"]) unless parsed_json["updatedAt"].nil?)
|
75
|
+
name = parsed_json["name"]
|
68
76
|
new(
|
69
77
|
provider: provider,
|
70
78
|
api_key: api_key,
|
@@ -72,6 +80,7 @@ module Vapi
|
|
72
80
|
org_id: org_id,
|
73
81
|
created_at: created_at,
|
74
82
|
updated_at: updated_at,
|
83
|
+
name: name,
|
75
84
|
additional_properties: struct
|
76
85
|
)
|
77
86
|
end
|
@@ -96,6 +105,7 @@ module Vapi
|
|
96
105
|
obj.org_id.is_a?(String) != false || raise("Passed value for field obj.org_id is not the expected type, validation failed.")
|
97
106
|
obj.created_at.is_a?(DateTime) != false || raise("Passed value for field obj.created_at is not the expected type, validation failed.")
|
98
107
|
obj.updated_at.is_a?(DateTime) != false || raise("Passed value for field obj.updated_at is not the expected type, validation failed.")
|
108
|
+
obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
|
99
109
|
end
|
100
110
|
end
|
101
111
|
end
|
@@ -6,11 +6,20 @@ require "json"
|
|
6
6
|
|
7
7
|
module Vapi
|
8
8
|
class OpenAiFunction
|
9
|
+
# @return [Boolean] This is a boolean that controls whether to enable strict schema adherence when
|
10
|
+
# generating the function call. If set to true, the model will follow the exact
|
11
|
+
# schema defined in the parameters field. Only a subset of JSON Schema is
|
12
|
+
# supported when strict is true. Learn more about Structured Outputs in the
|
13
|
+
# [OpenAI
|
14
|
+
# guide](https://openai.com/index/introducing-structured-outputs-in-the-api/).
|
15
|
+
# @default false
|
16
|
+
attr_reader :strict
|
9
17
|
# @return [String] This is the the name of the function to be called.
|
10
18
|
# Must be a-z, A-Z, 0-9, or contain underscores and dashes, with a maximum length
|
11
19
|
# of 64.
|
12
20
|
attr_reader :name
|
13
|
-
# @return [String]
|
21
|
+
# @return [String] This is the description of what the function does, used by the AI to choose when
|
22
|
+
# and how to call the function.
|
14
23
|
attr_reader :description
|
15
24
|
# @return [Vapi::OpenAiFunctionParameters] These are the parameters the functions accepts, described as a JSON Schema
|
16
25
|
# object.
|
@@ -28,10 +37,18 @@ module Vapi
|
|
28
37
|
|
29
38
|
OMIT = Object.new
|
30
39
|
|
40
|
+
# @param strict [Boolean] This is a boolean that controls whether to enable strict schema adherence when
|
41
|
+
# generating the function call. If set to true, the model will follow the exact
|
42
|
+
# schema defined in the parameters field. Only a subset of JSON Schema is
|
43
|
+
# supported when strict is true. Learn more about Structured Outputs in the
|
44
|
+
# [OpenAI
|
45
|
+
# guide](https://openai.com/index/introducing-structured-outputs-in-the-api/).
|
46
|
+
# @default false
|
31
47
|
# @param name [String] This is the the name of the function to be called.
|
32
48
|
# Must be a-z, A-Z, 0-9, or contain underscores and dashes, with a maximum length
|
33
49
|
# of 64.
|
34
|
-
# @param description [String]
|
50
|
+
# @param description [String] This is the description of what the function does, used by the AI to choose when
|
51
|
+
# and how to call the function.
|
35
52
|
# @param parameters [Vapi::OpenAiFunctionParameters] These are the parameters the functions accepts, described as a JSON Schema
|
36
53
|
# object.
|
37
54
|
# See the [OpenAI guide](https://platform.openai.com/docs/guides/function-calling)
|
@@ -41,12 +58,18 @@ module Vapi
|
|
41
58
|
# Omitting parameters defines a function with an empty parameter list.
|
42
59
|
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
43
60
|
# @return [Vapi::OpenAiFunction]
|
44
|
-
def initialize(name:, description: OMIT, parameters: OMIT, additional_properties: nil)
|
61
|
+
def initialize(name:, strict: OMIT, description: OMIT, parameters: OMIT, additional_properties: nil)
|
62
|
+
@strict = strict if strict != OMIT
|
45
63
|
@name = name
|
46
64
|
@description = description if description != OMIT
|
47
65
|
@parameters = parameters if parameters != OMIT
|
48
66
|
@additional_properties = additional_properties
|
49
|
-
@_field_set = {
|
67
|
+
@_field_set = {
|
68
|
+
"strict": strict,
|
69
|
+
"name": name,
|
70
|
+
"description": description,
|
71
|
+
"parameters": parameters
|
72
|
+
}.reject do |_k, v|
|
50
73
|
v == OMIT
|
51
74
|
end
|
52
75
|
end
|
@@ -58,6 +81,7 @@ module Vapi
|
|
58
81
|
def self.from_json(json_object:)
|
59
82
|
struct = JSON.parse(json_object, object_class: OpenStruct)
|
60
83
|
parsed_json = JSON.parse(json_object)
|
84
|
+
strict = parsed_json["strict"]
|
61
85
|
name = parsed_json["name"]
|
62
86
|
description = parsed_json["description"]
|
63
87
|
if parsed_json["parameters"].nil?
|
@@ -67,6 +91,7 @@ module Vapi
|
|
67
91
|
parameters = Vapi::OpenAiFunctionParameters.from_json(json_object: parameters)
|
68
92
|
end
|
69
93
|
new(
|
94
|
+
strict: strict,
|
70
95
|
name: name,
|
71
96
|
description: description,
|
72
97
|
parameters: parameters,
|
@@ -88,6 +113,7 @@ module Vapi
|
|
88
113
|
# @param obj [Object]
|
89
114
|
# @return [Void]
|
90
115
|
def self.validate_raw(obj:)
|
116
|
+
obj.strict&.is_a?(Boolean) != false || raise("Passed value for field obj.strict is not the expected type, validation failed.")
|
91
117
|
obj.name.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
|
92
118
|
obj.description&.is_a?(String) != false || raise("Passed value for field obj.description is not the expected type, validation failed.")
|
93
119
|
obj.parameters.nil? || Vapi::OpenAiFunctionParameters.validate_raw(obj: obj.parameters)
|
@@ -2,9 +2,9 @@
|
|
2
2
|
|
3
3
|
require_relative "open_ai_message"
|
4
4
|
require_relative "open_ai_model_tools_item"
|
5
|
+
require_relative "create_custom_knowledge_base_dto"
|
5
6
|
require_relative "open_ai_model_model"
|
6
7
|
require_relative "open_ai_model_fallback_models_item"
|
7
|
-
require_relative "knowledge_base"
|
8
8
|
require "ostruct"
|
9
9
|
require "json"
|
10
10
|
|
@@ -20,6 +20,10 @@ module Vapi
|
|
20
20
|
# tools, use `tools`.
|
21
21
|
# Both `tools` and `toolIds` can be used together.
|
22
22
|
attr_reader :tool_ids
|
23
|
+
# @return [Vapi::CreateCustomKnowledgeBaseDto] These are the options for the knowledge base.
|
24
|
+
attr_reader :knowledge_base
|
25
|
+
# @return [String] This is the ID of the knowledge base the model will use.
|
26
|
+
attr_reader :knowledge_base_id
|
23
27
|
# @return [Vapi::OpenAiModelModel] This is the OpenAI model that will be used.
|
24
28
|
attr_reader :model
|
25
29
|
# @return [Array<Vapi::OpenAiModelFallbackModelsItem>] These are the fallback models that will be used if the primary model fails. This
|
@@ -31,8 +35,6 @@ module Vapi
|
|
31
35
|
# @return [Float] This is the temperature that will be used for calls. Default is 0 to leverage
|
32
36
|
# caching for lower latency.
|
33
37
|
attr_reader :temperature
|
34
|
-
# @return [Vapi::KnowledgeBase] These are the options for the knowledge base.
|
35
|
-
attr_reader :knowledge_base
|
36
38
|
# @return [Float] This is the max number of tokens that the assistant will be allowed to generate
|
37
39
|
# in each turn of the conversation. Default is 250.
|
38
40
|
attr_reader :max_tokens
|
@@ -63,6 +65,8 @@ module Vapi
|
|
63
65
|
# @param tool_ids [Array<String>] These are the tools that the assistant can use during the call. To use transient
|
64
66
|
# tools, use `tools`.
|
65
67
|
# Both `tools` and `toolIds` can be used together.
|
68
|
+
# @param knowledge_base [Vapi::CreateCustomKnowledgeBaseDto] These are the options for the knowledge base.
|
69
|
+
# @param knowledge_base_id [String] This is the ID of the knowledge base the model will use.
|
66
70
|
# @param model [Vapi::OpenAiModelModel] This is the OpenAI model that will be used.
|
67
71
|
# @param fallback_models [Array<Vapi::OpenAiModelFallbackModelsItem>] These are the fallback models that will be used if the primary model fails. This
|
68
72
|
# shouldn't be specified unless you have a specific reason to do so. Vapi will
|
@@ -70,7 +74,6 @@ module Vapi
|
|
70
74
|
# @param semantic_caching_enabled [Boolean]
|
71
75
|
# @param temperature [Float] This is the temperature that will be used for calls. Default is 0 to leverage
|
72
76
|
# caching for lower latency.
|
73
|
-
# @param knowledge_base [Vapi::KnowledgeBase] These are the options for the knowledge base.
|
74
77
|
# @param max_tokens [Float] This is the max number of tokens that the assistant will be allowed to generate
|
75
78
|
# in each turn of the conversation. Default is 250.
|
76
79
|
# @param emotion_recognition_enabled [Boolean] This determines whether we detect user's emotion while they speak and send it as
|
@@ -85,16 +88,17 @@ module Vapi
|
|
85
88
|
# @default 0
|
86
89
|
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
87
90
|
# @return [Vapi::OpenAiModel]
|
88
|
-
def initialize(model:, messages: OMIT, tools: OMIT, tool_ids: OMIT,
|
89
|
-
|
91
|
+
def initialize(model:, messages: OMIT, tools: OMIT, tool_ids: OMIT, knowledge_base: OMIT, knowledge_base_id: OMIT,
|
92
|
+
fallback_models: OMIT, semantic_caching_enabled: OMIT, temperature: OMIT, max_tokens: OMIT, emotion_recognition_enabled: OMIT, num_fast_turns: OMIT, additional_properties: nil)
|
90
93
|
@messages = messages if messages != OMIT
|
91
94
|
@tools = tools if tools != OMIT
|
92
95
|
@tool_ids = tool_ids if tool_ids != OMIT
|
96
|
+
@knowledge_base = knowledge_base if knowledge_base != OMIT
|
97
|
+
@knowledge_base_id = knowledge_base_id if knowledge_base_id != OMIT
|
93
98
|
@model = model
|
94
99
|
@fallback_models = fallback_models if fallback_models != OMIT
|
95
100
|
@semantic_caching_enabled = semantic_caching_enabled if semantic_caching_enabled != OMIT
|
96
101
|
@temperature = temperature if temperature != OMIT
|
97
|
-
@knowledge_base = knowledge_base if knowledge_base != OMIT
|
98
102
|
@max_tokens = max_tokens if max_tokens != OMIT
|
99
103
|
@emotion_recognition_enabled = emotion_recognition_enabled if emotion_recognition_enabled != OMIT
|
100
104
|
@num_fast_turns = num_fast_turns if num_fast_turns != OMIT
|
@@ -103,11 +107,12 @@ module Vapi
|
|
103
107
|
"messages": messages,
|
104
108
|
"tools": tools,
|
105
109
|
"toolIds": tool_ids,
|
110
|
+
"knowledgeBase": knowledge_base,
|
111
|
+
"knowledgeBaseId": knowledge_base_id,
|
106
112
|
"model": model,
|
107
113
|
"fallbackModels": fallback_models,
|
108
114
|
"semanticCachingEnabled": semantic_caching_enabled,
|
109
115
|
"temperature": temperature,
|
110
|
-
"knowledgeBase": knowledge_base,
|
111
116
|
"maxTokens": max_tokens,
|
112
117
|
"emotionRecognitionEnabled": emotion_recognition_enabled,
|
113
118
|
"numFastTurns": num_fast_turns
|
@@ -132,16 +137,17 @@ module Vapi
|
|
132
137
|
Vapi::OpenAiModelToolsItem.from_json(json_object: item)
|
133
138
|
end
|
134
139
|
tool_ids = parsed_json["toolIds"]
|
135
|
-
model = parsed_json["model"]
|
136
|
-
fallback_models = parsed_json["fallbackModels"]
|
137
|
-
semantic_caching_enabled = parsed_json["semanticCachingEnabled"]
|
138
|
-
temperature = parsed_json["temperature"]
|
139
140
|
if parsed_json["knowledgeBase"].nil?
|
140
141
|
knowledge_base = nil
|
141
142
|
else
|
142
143
|
knowledge_base = parsed_json["knowledgeBase"].to_json
|
143
|
-
knowledge_base = Vapi::
|
144
|
+
knowledge_base = Vapi::CreateCustomKnowledgeBaseDto.from_json(json_object: knowledge_base)
|
144
145
|
end
|
146
|
+
knowledge_base_id = parsed_json["knowledgeBaseId"]
|
147
|
+
model = parsed_json["model"]
|
148
|
+
fallback_models = parsed_json["fallbackModels"]
|
149
|
+
semantic_caching_enabled = parsed_json["semanticCachingEnabled"]
|
150
|
+
temperature = parsed_json["temperature"]
|
145
151
|
max_tokens = parsed_json["maxTokens"]
|
146
152
|
emotion_recognition_enabled = parsed_json["emotionRecognitionEnabled"]
|
147
153
|
num_fast_turns = parsed_json["numFastTurns"]
|
@@ -149,11 +155,12 @@ module Vapi
|
|
149
155
|
messages: messages,
|
150
156
|
tools: tools,
|
151
157
|
tool_ids: tool_ids,
|
158
|
+
knowledge_base: knowledge_base,
|
159
|
+
knowledge_base_id: knowledge_base_id,
|
152
160
|
model: model,
|
153
161
|
fallback_models: fallback_models,
|
154
162
|
semantic_caching_enabled: semantic_caching_enabled,
|
155
163
|
temperature: temperature,
|
156
|
-
knowledge_base: knowledge_base,
|
157
164
|
max_tokens: max_tokens,
|
158
165
|
emotion_recognition_enabled: emotion_recognition_enabled,
|
159
166
|
num_fast_turns: num_fast_turns,
|
@@ -178,11 +185,12 @@ module Vapi
|
|
178
185
|
obj.messages&.is_a?(Array) != false || raise("Passed value for field obj.messages is not the expected type, validation failed.")
|
179
186
|
obj.tools&.is_a?(Array) != false || raise("Passed value for field obj.tools is not the expected type, validation failed.")
|
180
187
|
obj.tool_ids&.is_a?(Array) != false || raise("Passed value for field obj.tool_ids is not the expected type, validation failed.")
|
188
|
+
obj.knowledge_base.nil? || Vapi::CreateCustomKnowledgeBaseDto.validate_raw(obj: obj.knowledge_base)
|
189
|
+
obj.knowledge_base_id&.is_a?(String) != false || raise("Passed value for field obj.knowledge_base_id is not the expected type, validation failed.")
|
181
190
|
obj.model.is_a?(Vapi::OpenAiModelModel) != false || raise("Passed value for field obj.model is not the expected type, validation failed.")
|
182
191
|
obj.fallback_models&.is_a?(Array) != false || raise("Passed value for field obj.fallback_models is not the expected type, validation failed.")
|
183
192
|
obj.semantic_caching_enabled&.is_a?(Boolean) != false || raise("Passed value for field obj.semantic_caching_enabled is not the expected type, validation failed.")
|
184
193
|
obj.temperature&.is_a?(Float) != false || raise("Passed value for field obj.temperature is not the expected type, validation failed.")
|
185
|
-
obj.knowledge_base.nil? || Vapi::KnowledgeBase.validate_raw(obj: obj.knowledge_base)
|
186
194
|
obj.max_tokens&.is_a?(Float) != false || raise("Passed value for field obj.max_tokens is not the expected type, validation failed.")
|
187
195
|
obj.emotion_recognition_enabled&.is_a?(Boolean) != false || raise("Passed value for field obj.emotion_recognition_enabled is not the expected type, validation failed.")
|
188
196
|
obj.num_fast_turns&.is_a?(Float) != false || raise("Passed value for field obj.num_fast_turns is not the expected type, validation failed.")
|
@@ -2,11 +2,13 @@
|
|
2
2
|
|
3
3
|
module Vapi
|
4
4
|
class OpenAiModelFallbackModelsItem
|
5
|
+
GPT_4_O_REALTIME_PREVIEW_20241001 = "gpt-4o-realtime-preview-2024-10-01"
|
5
6
|
GPT_4_O_MINI = "gpt-4o-mini"
|
6
7
|
GPT_4_O_MINI_20240718 = "gpt-4o-mini-2024-07-18"
|
7
8
|
GPT_4_O = "gpt-4o"
|
8
9
|
GPT_4_O_20240513 = "gpt-4o-2024-05-13"
|
9
10
|
GPT_4_O_20240806 = "gpt-4o-2024-08-06"
|
11
|
+
GPT_4_O_20241120 = "gpt-4o-2024-11-20"
|
10
12
|
GPT_4_TURBO = "gpt-4-turbo"
|
11
13
|
GPT_4_TURBO_20240409 = "gpt-4-turbo-2024-04-09"
|
12
14
|
GPT_4_TURBO_PREVIEW = "gpt-4-turbo-preview"
|
@@ -3,11 +3,13 @@
|
|
3
3
|
module Vapi
|
4
4
|
# This is the OpenAI model that will be used.
|
5
5
|
class OpenAiModelModel
|
6
|
+
GPT_4_O_REALTIME_PREVIEW_20241001 = "gpt-4o-realtime-preview-2024-10-01"
|
6
7
|
GPT_4_O_MINI = "gpt-4o-mini"
|
7
8
|
GPT_4_O_MINI_20240718 = "gpt-4o-mini-2024-07-18"
|
8
9
|
GPT_4_O = "gpt-4o"
|
9
10
|
GPT_4_O_20240513 = "gpt-4o-2024-05-13"
|
10
11
|
GPT_4_O_20240806 = "gpt-4o-2024-08-06"
|
12
|
+
GPT_4_O_20241120 = "gpt-4o-2024-11-20"
|
11
13
|
GPT_4_TURBO = "gpt-4-turbo"
|
12
14
|
GPT_4_TURBO_20240409 = "gpt-4-turbo-2024-04-09"
|
13
15
|
GPT_4_TURBO_PREVIEW = "gpt-4-turbo-preview"
|
@@ -2,22 +2,24 @@
|
|
2
2
|
|
3
3
|
require_relative "open_ai_voice_id"
|
4
4
|
require_relative "chunk_plan"
|
5
|
+
require_relative "fallback_plan"
|
5
6
|
require "ostruct"
|
6
7
|
require "json"
|
7
8
|
|
8
9
|
module Vapi
|
9
10
|
class OpenAiVoice
|
10
|
-
# @return [Boolean] This determines whether fillers are injected into the model output before
|
11
|
-
# inputting it into the voice provider.
|
12
|
-
# Default `false` because you can achieve better results with prompting the model.
|
13
|
-
attr_reader :filler_injection_enabled
|
14
11
|
# @return [Vapi::OpenAiVoiceId] This is the provider-specific ID that will be used.
|
12
|
+
# Please note that ash, ballad, coral, sage, and verse may only be used with the
|
13
|
+
# `gpt-4o-realtime-preview-2024-10-01` model.
|
15
14
|
attr_reader :voice_id
|
16
15
|
# @return [Float] This is the speed multiplier that will be used.
|
17
16
|
attr_reader :speed
|
18
17
|
# @return [Vapi::ChunkPlan] This is the plan for chunking the model output before it is sent to the voice
|
19
18
|
# provider.
|
20
19
|
attr_reader :chunk_plan
|
20
|
+
# @return [Vapi::FallbackPlan] This is the plan for voice provider fallbacks in the event that the primary
|
21
|
+
# voice provider fails.
|
22
|
+
attr_reader :fallback_plan
|
21
23
|
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
22
24
|
attr_reader :additional_properties
|
23
25
|
# @return [Object]
|
@@ -26,26 +28,27 @@ module Vapi
|
|
26
28
|
|
27
29
|
OMIT = Object.new
|
28
30
|
|
29
|
-
# @param filler_injection_enabled [Boolean] This determines whether fillers are injected into the model output before
|
30
|
-
# inputting it into the voice provider.
|
31
|
-
# Default `false` because you can achieve better results with prompting the model.
|
32
31
|
# @param voice_id [Vapi::OpenAiVoiceId] This is the provider-specific ID that will be used.
|
32
|
+
# Please note that ash, ballad, coral, sage, and verse may only be used with the
|
33
|
+
# `gpt-4o-realtime-preview-2024-10-01` model.
|
33
34
|
# @param speed [Float] This is the speed multiplier that will be used.
|
34
35
|
# @param chunk_plan [Vapi::ChunkPlan] This is the plan for chunking the model output before it is sent to the voice
|
35
36
|
# provider.
|
37
|
+
# @param fallback_plan [Vapi::FallbackPlan] This is the plan for voice provider fallbacks in the event that the primary
|
38
|
+
# voice provider fails.
|
36
39
|
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
37
40
|
# @return [Vapi::OpenAiVoice]
|
38
|
-
def initialize(voice_id:,
|
39
|
-
@filler_injection_enabled = filler_injection_enabled if filler_injection_enabled != OMIT
|
41
|
+
def initialize(voice_id:, speed: OMIT, chunk_plan: OMIT, fallback_plan: OMIT, additional_properties: nil)
|
40
42
|
@voice_id = voice_id
|
41
43
|
@speed = speed if speed != OMIT
|
42
44
|
@chunk_plan = chunk_plan if chunk_plan != OMIT
|
45
|
+
@fallback_plan = fallback_plan if fallback_plan != OMIT
|
43
46
|
@additional_properties = additional_properties
|
44
47
|
@_field_set = {
|
45
|
-
"fillerInjectionEnabled": filler_injection_enabled,
|
46
48
|
"voiceId": voice_id,
|
47
49
|
"speed": speed,
|
48
|
-
"chunkPlan": chunk_plan
|
50
|
+
"chunkPlan": chunk_plan,
|
51
|
+
"fallbackPlan": fallback_plan
|
49
52
|
}.reject do |_k, v|
|
50
53
|
v == OMIT
|
51
54
|
end
|
@@ -58,7 +61,6 @@ module Vapi
|
|
58
61
|
def self.from_json(json_object:)
|
59
62
|
struct = JSON.parse(json_object, object_class: OpenStruct)
|
60
63
|
parsed_json = JSON.parse(json_object)
|
61
|
-
filler_injection_enabled = parsed_json["fillerInjectionEnabled"]
|
62
64
|
voice_id = parsed_json["voiceId"]
|
63
65
|
speed = parsed_json["speed"]
|
64
66
|
if parsed_json["chunkPlan"].nil?
|
@@ -67,11 +69,17 @@ module Vapi
|
|
67
69
|
chunk_plan = parsed_json["chunkPlan"].to_json
|
68
70
|
chunk_plan = Vapi::ChunkPlan.from_json(json_object: chunk_plan)
|
69
71
|
end
|
72
|
+
if parsed_json["fallbackPlan"].nil?
|
73
|
+
fallback_plan = nil
|
74
|
+
else
|
75
|
+
fallback_plan = parsed_json["fallbackPlan"].to_json
|
76
|
+
fallback_plan = Vapi::FallbackPlan.from_json(json_object: fallback_plan)
|
77
|
+
end
|
70
78
|
new(
|
71
|
-
filler_injection_enabled: filler_injection_enabled,
|
72
79
|
voice_id: voice_id,
|
73
80
|
speed: speed,
|
74
81
|
chunk_plan: chunk_plan,
|
82
|
+
fallback_plan: fallback_plan,
|
75
83
|
additional_properties: struct
|
76
84
|
)
|
77
85
|
end
|
@@ -90,10 +98,10 @@ module Vapi
|
|
90
98
|
# @param obj [Object]
|
91
99
|
# @return [Void]
|
92
100
|
def self.validate_raw(obj:)
|
93
|
-
obj.filler_injection_enabled&.is_a?(Boolean) != false || raise("Passed value for field obj.filler_injection_enabled is not the expected type, validation failed.")
|
94
101
|
obj.voice_id.is_a?(Vapi::OpenAiVoiceId) != false || raise("Passed value for field obj.voice_id is not the expected type, validation failed.")
|
95
102
|
obj.speed&.is_a?(Float) != false || raise("Passed value for field obj.speed is not the expected type, validation failed.")
|
96
103
|
obj.chunk_plan.nil? || Vapi::ChunkPlan.validate_raw(obj: obj.chunk_plan)
|
104
|
+
obj.fallback_plan.nil? || Vapi::FallbackPlan.validate_raw(obj: obj.fallback_plan)
|
97
105
|
end
|
98
106
|
end
|
99
107
|
end
|
@@ -2,6 +2,8 @@
|
|
2
2
|
|
3
3
|
module Vapi
|
4
4
|
# This is the provider-specific ID that will be used.
|
5
|
+
# Please note that ash, ballad, coral, sage, and verse may only be used with the
|
6
|
+
# `gpt-4o-realtime-preview-2024-10-01` model.
|
5
7
|
class OpenAiVoiceId
|
6
8
|
ALLOY = "alloy"
|
7
9
|
ECHO = "echo"
|
@@ -9,5 +11,10 @@ module Vapi
|
|
9
11
|
ONYX = "onyx"
|
10
12
|
NOVA = "nova"
|
11
13
|
SHIMMER = "shimmer"
|
14
|
+
ASH = "ash"
|
15
|
+
BALLAD = "ballad"
|
16
|
+
CORAL = "coral"
|
17
|
+
SAGE = "sage"
|
18
|
+
VERSE = "verse"
|
12
19
|
end
|
13
20
|
end
|
@@ -18,6 +18,8 @@ module Vapi
|
|
18
18
|
attr_reader :created_at
|
19
19
|
# @return [DateTime] This is the ISO 8601 date-time string of when the assistant was last updated.
|
20
20
|
attr_reader :updated_at
|
21
|
+
# @return [String] This is the name of credential. This is just for your reference.
|
22
|
+
attr_reader :name
|
21
23
|
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
22
24
|
attr_reader :additional_properties
|
23
25
|
# @return [Object]
|
@@ -32,15 +34,17 @@ module Vapi
|
|
32
34
|
# @param org_id [String] This is the unique identifier for the org that this credential belongs to.
|
33
35
|
# @param created_at [DateTime] This is the ISO 8601 date-time string of when the credential was created.
|
34
36
|
# @param updated_at [DateTime] This is the ISO 8601 date-time string of when the assistant was last updated.
|
37
|
+
# @param name [String] This is the name of credential. This is just for your reference.
|
35
38
|
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
36
39
|
# @return [Vapi::OpenRouterCredential]
|
37
|
-
def initialize(provider:, api_key:, id:, org_id:, created_at:, updated_at:, additional_properties: nil)
|
40
|
+
def initialize(provider:, api_key:, id:, org_id:, created_at:, updated_at:, name: OMIT, additional_properties: nil)
|
38
41
|
@provider = provider
|
39
42
|
@api_key = api_key
|
40
43
|
@id = id
|
41
44
|
@org_id = org_id
|
42
45
|
@created_at = created_at
|
43
46
|
@updated_at = updated_at
|
47
|
+
@name = name if name != OMIT
|
44
48
|
@additional_properties = additional_properties
|
45
49
|
@_field_set = {
|
46
50
|
"provider": provider,
|
@@ -48,8 +52,11 @@ module Vapi
|
|
48
52
|
"id": id,
|
49
53
|
"orgId": org_id,
|
50
54
|
"createdAt": created_at,
|
51
|
-
"updatedAt": updated_at
|
52
|
-
|
55
|
+
"updatedAt": updated_at,
|
56
|
+
"name": name
|
57
|
+
}.reject do |_k, v|
|
58
|
+
v == OMIT
|
59
|
+
end
|
53
60
|
end
|
54
61
|
|
55
62
|
# Deserialize a JSON object to an instance of OpenRouterCredential
|
@@ -65,6 +72,7 @@ module Vapi
|
|
65
72
|
org_id = parsed_json["orgId"]
|
66
73
|
created_at = (DateTime.parse(parsed_json["createdAt"]) unless parsed_json["createdAt"].nil?)
|
67
74
|
updated_at = (DateTime.parse(parsed_json["updatedAt"]) unless parsed_json["updatedAt"].nil?)
|
75
|
+
name = parsed_json["name"]
|
68
76
|
new(
|
69
77
|
provider: provider,
|
70
78
|
api_key: api_key,
|
@@ -72,6 +80,7 @@ module Vapi
|
|
72
80
|
org_id: org_id,
|
73
81
|
created_at: created_at,
|
74
82
|
updated_at: updated_at,
|
83
|
+
name: name,
|
75
84
|
additional_properties: struct
|
76
85
|
)
|
77
86
|
end
|
@@ -96,6 +105,7 @@ module Vapi
|
|
96
105
|
obj.org_id.is_a?(String) != false || raise("Passed value for field obj.org_id is not the expected type, validation failed.")
|
97
106
|
obj.created_at.is_a?(DateTime) != false || raise("Passed value for field obj.created_at is not the expected type, validation failed.")
|
98
107
|
obj.updated_at.is_a?(DateTime) != false || raise("Passed value for field obj.updated_at is not the expected type, validation failed.")
|
108
|
+
obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
|
99
109
|
end
|
100
110
|
end
|
101
111
|
end
|