vapi_server_sdk 0.2.0 → 0.3.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 +129 -62
- data/lib/vapi_server_sdk/assistants/client.rb +15 -2
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_credentials_item.rb +512 -0
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_model.rb +13 -0
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_transcriber.rb +13 -0
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_voice.rb +13 -0
- data/lib/vapi_server_sdk/blocks/client.rb +7 -166
- data/lib/vapi_server_sdk/blocks/types/blocks_update_request.rb +109 -0
- data/lib/vapi_server_sdk/calls/client.rb +16 -4
- data/lib/vapi_server_sdk/knowledge_bases/client.rb +7 -8
- data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_update_request.rb +96 -0
- data/lib/vapi_server_sdk/logs/client.rb +84 -0
- data/lib/vapi_server_sdk/phone_numbers/client.rb +7 -69
- data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_update_request.rb +122 -0
- data/lib/vapi_server_sdk/squads/client.rb +8 -0
- data/lib/vapi_server_sdk/tools/client.rb +7 -91
- data/lib/vapi_server_sdk/tools/types/tools_update_request.rb +200 -0
- data/lib/vapi_server_sdk/types/assistant.rb +19 -1
- data/lib/vapi_server_sdk/types/assistant_credentials_item.rb +510 -0
- data/lib/vapi_server_sdk/types/assistant_model.rb +13 -0
- data/lib/vapi_server_sdk/types/assistant_overrides.rb +19 -1
- data/lib/vapi_server_sdk/types/assistant_overrides_credentials_item.rb +510 -0
- data/lib/vapi_server_sdk/types/assistant_overrides_model.rb +13 -0
- data/lib/vapi_server_sdk/types/assistant_overrides_transcriber.rb +13 -0
- data/lib/vapi_server_sdk/types/assistant_overrides_voice.rb +13 -0
- data/lib/vapi_server_sdk/types/assistant_transcriber.rb +13 -0
- data/lib/vapi_server_sdk/types/assistant_voice.rb +13 -0
- data/lib/vapi_server_sdk/types/azure_blob_storage_bucket_plan.rb +88 -0
- data/lib/vapi_server_sdk/types/azure_credential.rb +22 -5
- data/lib/vapi_server_sdk/types/azure_credential_region.rb +1 -1
- data/lib/vapi_server_sdk/types/azure_credential_service.rb +9 -0
- data/lib/vapi_server_sdk/types/azure_open_ai_credential.rb +9 -1
- data/lib/vapi_server_sdk/types/azure_open_ai_credential_region.rb +1 -1
- data/lib/vapi_server_sdk/types/azure_speech_transcriber.rb +62 -0
- data/lib/vapi_server_sdk/types/azure_speech_transcriber_language.rb +152 -0
- data/lib/vapi_server_sdk/types/buy_phone_number_dto.rb +25 -29
- data/lib/vapi_server_sdk/types/byo_phone_number.rb +25 -29
- data/lib/vapi_server_sdk/types/call_ended_reason.rb +44 -29
- data/lib/vapi_server_sdk/types/cartesia_voice_model.rb +2 -0
- data/lib/vapi_server_sdk/types/cerebras_credential.rb +111 -0
- data/lib/vapi_server_sdk/types/chat_dto.rb +103 -0
- data/lib/vapi_server_sdk/types/{credits_buy_dto.rb → chat_service_response.rb} +9 -17
- data/lib/vapi_server_sdk/types/cloudflare_credential.rb +142 -0
- data/lib/vapi_server_sdk/types/cloudflare_r_2_bucket_plan.rb +105 -0
- data/lib/vapi_server_sdk/types/create_anthropic_credential_dto.rb +2 -9
- data/lib/vapi_server_sdk/types/create_anyscale_credential_dto.rb +2 -9
- data/lib/vapi_server_sdk/types/create_assembly_ai_credential_dto.rb +2 -9
- data/lib/vapi_server_sdk/types/create_assistant_dto.rb +19 -1
- data/lib/vapi_server_sdk/types/create_assistant_dto_credentials_item.rb +510 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto_model.rb +13 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto_transcriber.rb +13 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto_voice.rb +13 -0
- data/lib/vapi_server_sdk/types/create_azure_credential_dto.rb +21 -12
- data/lib/vapi_server_sdk/types/create_azure_credential_dto_region.rb +1 -1
- data/lib/vapi_server_sdk/types/create_azure_credential_dto_service.rb +9 -0
- data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto.rb +10 -9
- data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto_region.rb +1 -1
- data/lib/vapi_server_sdk/types/create_byo_phone_number_dto.rb +25 -29
- data/lib/vapi_server_sdk/types/create_byo_sip_trunk_credential_dto.rb +1 -9
- data/lib/vapi_server_sdk/types/create_cartesia_credential_dto.rb +2 -9
- data/lib/vapi_server_sdk/types/create_cerebras_credential_dto.rb +74 -0
- data/lib/vapi_server_sdk/types/create_cloudflare_credential_dto.rb +101 -0
- data/lib/vapi_server_sdk/types/create_custom_llm_credential_dto.rb +2 -14
- data/lib/vapi_server_sdk/types/create_deep_infra_credential_dto.rb +2 -9
- data/lib/vapi_server_sdk/types/create_deep_seek_credential_dto.rb +67 -0
- data/lib/vapi_server_sdk/types/create_deepgram_credential_dto.rb +2 -9
- data/lib/vapi_server_sdk/types/create_eleven_labs_credential_dto.rb +2 -9
- data/lib/vapi_server_sdk/types/create_gcp_credential_dto.rb +2 -14
- data/lib/vapi_server_sdk/types/create_gladia_credential_dto.rb +2 -9
- data/lib/vapi_server_sdk/types/create_go_high_level_credential_dto.rb +2 -9
- data/lib/vapi_server_sdk/types/create_groq_credential_dto.rb +2 -9
- data/lib/vapi_server_sdk/types/create_langfuse_credential_dto.rb +2 -15
- data/lib/vapi_server_sdk/types/create_lmnt_credential_dto.rb +2 -9
- data/lib/vapi_server_sdk/types/create_make_credential_dto.rb +2 -15
- data/lib/vapi_server_sdk/types/create_open_ai_credential_dto.rb +2 -9
- data/lib/vapi_server_sdk/types/create_open_router_credential_dto.rb +2 -9
- data/lib/vapi_server_sdk/types/create_org_dto.rb +25 -25
- data/lib/vapi_server_sdk/types/create_perplexity_ai_credential_dto.rb +2 -9
- data/lib/vapi_server_sdk/types/create_play_ht_credential_dto.rb +2 -9
- data/lib/vapi_server_sdk/types/create_rime_ai_credential_dto.rb +2 -9
- data/lib/vapi_server_sdk/types/create_runpod_credential_dto.rb +2 -9
- data/lib/vapi_server_sdk/types/create_s_3_credential_dto.rb +2 -10
- data/lib/vapi_server_sdk/types/create_smallest_ai_credential_dto.rb +67 -0
- data/lib/vapi_server_sdk/types/create_tavus_credential_dto.rb +2 -9
- data/lib/vapi_server_sdk/types/create_together_ai_credential_dto.rb +2 -9
- data/lib/vapi_server_sdk/types/create_twilio_credential_dto.rb +2 -14
- data/lib/vapi_server_sdk/types/create_twilio_phone_number_dto.rb +25 -29
- data/lib/vapi_server_sdk/types/create_vapi_phone_number_dto.rb +25 -29
- data/lib/vapi_server_sdk/types/create_vonage_credential_dto.rb +2 -14
- data/lib/vapi_server_sdk/types/create_vonage_phone_number_dto.rb +25 -29
- data/lib/vapi_server_sdk/types/create_webhook_credential_dto.rb +2 -13
- data/lib/vapi_server_sdk/types/create_x_ai_credential_dto.rb +2 -11
- data/lib/vapi_server_sdk/types/deep_seek_credential.rb +111 -0
- data/lib/vapi_server_sdk/types/deep_seek_model.rb +177 -0
- data/lib/vapi_server_sdk/types/deep_seek_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/eleven_labs_voice_model.rb +2 -0
- data/lib/vapi_server_sdk/types/fallback_cartesia_voice_model.rb +2 -0
- data/lib/vapi_server_sdk/types/fallback_eleven_labs_voice_model.rb +2 -0
- data/lib/vapi_server_sdk/types/fallback_open_ai_voice.rb +4 -4
- data/lib/vapi_server_sdk/types/fallback_open_ai_voice_id.rb +2 -2
- data/lib/vapi_server_sdk/types/fallback_plan_voices_item.rb +13 -0
- data/lib/vapi_server_sdk/types/fallback_smallest_ai_voice.rb +95 -0
- data/lib/vapi_server_sdk/types/fallback_smallest_ai_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/fallback_smallest_ai_voice_id_enum.rb +31 -0
- data/lib/vapi_server_sdk/types/gemini_multimodal_live_prebuilt_voice_config.rb +58 -0
- data/lib/vapi_server_sdk/types/gemini_multimodal_live_prebuilt_voice_config_voice_name.rb +11 -0
- data/lib/vapi_server_sdk/types/gemini_multimodal_live_speech_config.rb +61 -0
- data/lib/vapi_server_sdk/types/gemini_multimodal_live_voice_config.rb +61 -0
- data/lib/vapi_server_sdk/types/google_model.rb +17 -1
- data/lib/vapi_server_sdk/types/google_model_model.rb +2 -0
- data/lib/vapi_server_sdk/types/google_realtime_config.rb +121 -0
- data/lib/vapi_server_sdk/types/groq_model_model.rb +1 -3
- data/lib/vapi_server_sdk/types/import_twilio_phone_number_dto.rb +25 -29
- data/lib/vapi_server_sdk/types/import_vonage_phone_number_dto.rb +25 -29
- data/lib/vapi_server_sdk/types/open_ai_model_fallback_models_item.rb +6 -0
- data/lib/vapi_server_sdk/types/open_ai_model_model.rb +6 -0
- data/lib/vapi_server_sdk/types/open_ai_voice.rb +4 -4
- data/lib/vapi_server_sdk/types/open_ai_voice_id.rb +2 -2
- data/lib/vapi_server_sdk/types/org.rb +25 -25
- data/lib/vapi_server_sdk/types/org_with_org_user.rb +25 -25
- data/lib/vapi_server_sdk/types/server_message_end_of_call_report_ended_reason.rb +44 -29
- data/lib/vapi_server_sdk/types/server_message_status_update.rb +11 -1
- data/lib/vapi_server_sdk/types/server_message_status_update_ended_reason.rb +44 -29
- data/lib/vapi_server_sdk/types/smallest_ai_credential.rb +111 -0
- data/lib/vapi_server_sdk/types/smallest_ai_voice.rb +117 -0
- data/lib/vapi_server_sdk/types/smallest_ai_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/smallest_ai_voice_id_enum.rb +31 -0
- data/lib/vapi_server_sdk/types/subscription.rb +2 -2
- data/lib/vapi_server_sdk/types/sync_voice_library_dto_providers_item.rb +1 -0
- data/lib/vapi_server_sdk/types/transfer_plan.rb +26 -6
- data/lib/vapi_server_sdk/types/transfer_plan_message.rb +2 -1
- data/lib/vapi_server_sdk/types/twilio_phone_number.rb +25 -29
- data/lib/vapi_server_sdk/types/update_anthropic_credential_dto.rb +4 -11
- data/lib/vapi_server_sdk/types/update_anyscale_credential_dto.rb +4 -11
- data/lib/vapi_server_sdk/types/update_assembly_ai_credential_dto.rb +4 -11
- data/lib/vapi_server_sdk/types/update_azure_credential_dto.rb +24 -14
- data/lib/vapi_server_sdk/types/update_azure_credential_dto_region.rb +1 -1
- data/lib/vapi_server_sdk/types/update_azure_credential_dto_service.rb +9 -0
- data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto.rb +25 -24
- data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto_region.rb +1 -1
- data/lib/vapi_server_sdk/types/update_bash_tool_dto.rb +161 -0
- data/lib/vapi_server_sdk/types/update_bash_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/update_byo_phone_number_dto.rb +187 -0
- data/lib/vapi_server_sdk/types/update_byo_phone_number_dto_fallback_destination.rb +101 -0
- data/lib/vapi_server_sdk/types/update_byo_sip_trunk_credential_dto.rb +13 -21
- data/lib/vapi_server_sdk/types/update_cartesia_credential_dto.rb +4 -11
- data/lib/vapi_server_sdk/types/update_cerebras_credential_dto.rb +67 -0
- data/lib/vapi_server_sdk/types/update_cloudflare_credential_dto.rb +101 -0
- data/lib/vapi_server_sdk/types/update_computer_tool_dto.rb +185 -0
- data/lib/vapi_server_sdk/types/update_computer_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/update_conversation_block_dto.rb +206 -0
- data/lib/vapi_server_sdk/types/update_conversation_block_dto_messages_item.rb +95 -0
- data/lib/vapi_server_sdk/types/update_custom_knowledge_base_dto.rb +139 -0
- data/lib/vapi_server_sdk/types/update_custom_llm_credential_dto.rb +4 -16
- data/lib/vapi_server_sdk/types/update_deep_infra_credential_dto.rb +4 -11
- data/lib/vapi_server_sdk/types/update_deep_seek_credential_dto.rb +67 -0
- data/lib/vapi_server_sdk/types/update_deepgram_credential_dto.rb +11 -18
- data/lib/vapi_server_sdk/types/update_dtmf_tool_dto.rb +139 -0
- data/lib/vapi_server_sdk/types/update_dtmf_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/update_eleven_labs_credential_dto.rb +11 -11
- data/lib/vapi_server_sdk/types/update_end_call_tool_dto.rb +139 -0
- data/lib/vapi_server_sdk/types/update_end_call_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/update_function_tool_dto.rb +139 -0
- data/lib/vapi_server_sdk/types/update_function_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/update_gcp_credential_dto.rb +11 -23
- data/lib/vapi_server_sdk/types/update_ghl_tool_dto.rb +159 -0
- data/lib/vapi_server_sdk/types/update_ghl_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/update_gladia_credential_dto.rb +4 -11
- data/lib/vapi_server_sdk/types/update_go_high_level_credential_dto.rb +4 -11
- data/lib/vapi_server_sdk/types/update_google_credential_dto.rb +4 -13
- data/lib/vapi_server_sdk/types/update_groq_credential_dto.rb +4 -11
- data/lib/vapi_server_sdk/types/update_inflection_ai_credential_dto.rb +4 -13
- data/lib/vapi_server_sdk/types/update_langfuse_credential_dto.rb +8 -21
- data/lib/vapi_server_sdk/types/update_lmnt_credential_dto.rb +4 -11
- data/lib/vapi_server_sdk/types/update_make_credential_dto.rb +8 -21
- data/lib/vapi_server_sdk/types/update_make_tool_dto.rb +159 -0
- data/lib/vapi_server_sdk/types/update_make_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/update_open_ai_credential_dto.rb +4 -11
- data/lib/vapi_server_sdk/types/update_open_router_credential_dto.rb +4 -11
- data/lib/vapi_server_sdk/types/update_org_dto.rb +25 -25
- data/lib/vapi_server_sdk/types/update_output_tool_dto.rb +139 -0
- data/lib/vapi_server_sdk/types/update_output_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/update_perplexity_ai_credential_dto.rb +4 -11
- data/lib/vapi_server_sdk/types/update_play_ht_credential_dto.rb +11 -18
- data/lib/vapi_server_sdk/types/update_rime_ai_credential_dto.rb +4 -11
- data/lib/vapi_server_sdk/types/update_runpod_credential_dto.rb +4 -11
- data/lib/vapi_server_sdk/types/update_s_3_credential_dto.rb +12 -20
- data/lib/vapi_server_sdk/types/update_smallest_ai_credential_dto.rb +67 -0
- data/lib/vapi_server_sdk/types/update_tavus_credential_dto.rb +4 -11
- data/lib/vapi_server_sdk/types/update_text_editor_tool_dto.rb +161 -0
- data/lib/vapi_server_sdk/types/update_text_editor_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/update_together_ai_credential_dto.rb +4 -11
- data/lib/vapi_server_sdk/types/update_token_dto.rb +81 -0
- data/lib/vapi_server_sdk/types/update_token_dto_tag.rb +9 -0
- data/lib/vapi_server_sdk/types/update_tool_call_block_dto.rb +168 -0
- data/lib/vapi_server_sdk/types/update_tool_call_block_dto_messages_item.rb +94 -0
- data/lib/vapi_server_sdk/types/update_tool_call_block_dto_tool.rb +161 -0
- data/lib/vapi_server_sdk/types/update_transfer_call_tool_dto.rb +161 -0
- data/lib/vapi_server_sdk/types/update_transfer_call_tool_dto_destinations_item.rb +121 -0
- data/lib/vapi_server_sdk/types/update_transfer_call_tool_dto_messages_item.rb +121 -0
- data/lib/vapi_server_sdk/types/update_trieve_knowledge_base_dto.rb +109 -0
- data/lib/vapi_server_sdk/types/update_twilio_credential_dto.rb +11 -23
- data/lib/vapi_server_sdk/types/update_twilio_phone_number_dto.rb +163 -0
- data/lib/vapi_server_sdk/types/update_twilio_phone_number_dto_fallback_destination.rb +101 -0
- data/lib/vapi_server_sdk/types/update_vapi_phone_number_dto.rb +169 -0
- data/lib/vapi_server_sdk/types/update_vapi_phone_number_dto_fallback_destination.rb +101 -0
- data/lib/vapi_server_sdk/types/update_vonage_credential_dto.rb +11 -23
- data/lib/vapi_server_sdk/types/update_vonage_phone_number_dto.rb +157 -0
- data/lib/vapi_server_sdk/types/update_vonage_phone_number_dto_fallback_destination.rb +101 -0
- data/lib/vapi_server_sdk/types/update_workflow_block_dto.rb +154 -0
- data/lib/vapi_server_sdk/types/update_workflow_block_dto_messages_item.rb +94 -0
- data/lib/vapi_server_sdk/types/update_workflow_block_dto_steps_item.rb +94 -0
- data/lib/vapi_server_sdk/types/update_x_ai_credential_dto.rb +4 -13
- data/lib/vapi_server_sdk/types/vapi_phone_number.rb +25 -29
- data/lib/vapi_server_sdk/types/vonage_phone_number.rb +25 -29
- metadata +88 -21
- data/lib/vapi_server_sdk/blocks/types/update_block_dto_messages_item.rb +0 -96
- data/lib/vapi_server_sdk/blocks/types/update_block_dto_steps_item.rb +0 -96
- data/lib/vapi_server_sdk/blocks/types/update_block_dto_tool.rb +0 -163
- data/lib/vapi_server_sdk/phone_numbers/types/update_phone_number_dto_fallback_destination.rb +0 -103
- data/lib/vapi_server_sdk/tools/types/update_tool_dto_messages_item.rb +0 -122
- data/lib/vapi_server_sdk/types/auto_reload_plan_dto.rb +0 -65
- data/lib/vapi_server_sdk/types/hipaa_buy_dto.rb +0 -65
- data/lib/vapi_server_sdk/types/payment.rb +0 -167
- data/lib/vapi_server_sdk/types/payment_retry_dto.rb +0 -55
- data/lib/vapi_server_sdk/types/payment_status.rb +0 -11
- data/lib/vapi_server_sdk/types/payments_paginated_response.rb +0 -75
- data/lib/vapi_server_sdk/types/subscription_concurrency_line_buy_dto.rb +0 -55
- data/lib/vapi_server_sdk/types/subscription_concurrency_line_remove_dto.rb +0 -55
- data/lib/vapi_server_sdk/types/subscription_coupon_add_dto.rb +0 -67
- data/lib/vapi_server_sdk/types/subscription_monthly_charge.rb +0 -65
@@ -0,0 +1,187 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "update_byo_phone_number_dto_fallback_destination"
|
4
|
+
require_relative "server"
|
5
|
+
require "ostruct"
|
6
|
+
require "json"
|
7
|
+
|
8
|
+
module Vapi
|
9
|
+
class UpdateByoPhoneNumberDto
|
10
|
+
# @return [Vapi::UpdateByoPhoneNumberDtoFallbackDestination] This is the fallback destination an inbound call will be transferred to if:
|
11
|
+
# 1. `assistantId` is not set
|
12
|
+
# 2. `squadId` is not set
|
13
|
+
# 3. and, `assistant-request` message to the `serverUrl` fails
|
14
|
+
# If this is not set and above conditions are met, the inbound call is hung up
|
15
|
+
# with an error message.
|
16
|
+
attr_reader :fallback_destination
|
17
|
+
# @return [Boolean] This is the flag to toggle the E164 check for the `number` field. This is an
|
18
|
+
# advanced property which should be used if you know your use case requires it.
|
19
|
+
# Use cases:
|
20
|
+
# - `false`: To allow non-E164 numbers like `+001234567890`, `1234`, or `abc`.
|
21
|
+
# This is useful for dialing out to non-E164 numbers on your SIP trunks.
|
22
|
+
# - `true` (default): To allow only E164 numbers like `+14155551234`. This is
|
23
|
+
# standard for PSTN calls.
|
24
|
+
# If `false`, the `number` is still required to only contain alphanumeric
|
25
|
+
# characters (regex: `/^\+?[a-zA-Z0-9]+$/`).
|
26
|
+
# @default true (E164 check is enabled)
|
27
|
+
attr_reader :number_e_164_check_enabled
|
28
|
+
# @return [String] This is the name of the phone number. This is just for your own reference.
|
29
|
+
attr_reader :name
|
30
|
+
# @return [String] This is the assistant that will be used for incoming calls to this phone number.
|
31
|
+
# If neither `assistantId` nor `squadId` is set, `assistant-request` will be sent
|
32
|
+
# to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the
|
33
|
+
# shape of the message and response that is expected.
|
34
|
+
attr_reader :assistant_id
|
35
|
+
# @return [String] This is the squad that will be used for incoming calls to this phone number.
|
36
|
+
# If neither `assistantId` nor `squadId` is set, `assistant-request` will be sent
|
37
|
+
# to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the
|
38
|
+
# shape of the message and response that is expected.
|
39
|
+
attr_reader :squad_id
|
40
|
+
# @return [Vapi::Server] This is where Vapi will send webhooks. You can find all webhooks available along
|
41
|
+
# with their shape in ServerMessage schema.
|
42
|
+
# The order of precedence is:
|
43
|
+
# 1. assistant.server
|
44
|
+
# 2. phoneNumber.server
|
45
|
+
# 3. org.server
|
46
|
+
attr_reader :server
|
47
|
+
# @return [String] This is the number of the customer.
|
48
|
+
attr_reader :number
|
49
|
+
# @return [String] This is the credential of your own SIP trunk or Carrier (type `byo-sip-trunk`)
|
50
|
+
# which can be used to make calls to this phone number.
|
51
|
+
# You can add the SIP trunk or Carrier credential in the Provider Credentials page
|
52
|
+
# on the Dashboard to get the credentialId.
|
53
|
+
attr_reader :credential_id
|
54
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
55
|
+
attr_reader :additional_properties
|
56
|
+
# @return [Object]
|
57
|
+
attr_reader :_field_set
|
58
|
+
protected :_field_set
|
59
|
+
|
60
|
+
OMIT = Object.new
|
61
|
+
|
62
|
+
# @param fallback_destination [Vapi::UpdateByoPhoneNumberDtoFallbackDestination] This is the fallback destination an inbound call will be transferred to if:
|
63
|
+
# 1. `assistantId` is not set
|
64
|
+
# 2. `squadId` is not set
|
65
|
+
# 3. and, `assistant-request` message to the `serverUrl` fails
|
66
|
+
# If this is not set and above conditions are met, the inbound call is hung up
|
67
|
+
# with an error message.
|
68
|
+
# @param number_e_164_check_enabled [Boolean] This is the flag to toggle the E164 check for the `number` field. This is an
|
69
|
+
# advanced property which should be used if you know your use case requires it.
|
70
|
+
# Use cases:
|
71
|
+
# - `false`: To allow non-E164 numbers like `+001234567890`, `1234`, or `abc`.
|
72
|
+
# This is useful for dialing out to non-E164 numbers on your SIP trunks.
|
73
|
+
# - `true` (default): To allow only E164 numbers like `+14155551234`. This is
|
74
|
+
# standard for PSTN calls.
|
75
|
+
# If `false`, the `number` is still required to only contain alphanumeric
|
76
|
+
# characters (regex: `/^\+?[a-zA-Z0-9]+$/`).
|
77
|
+
# @default true (E164 check is enabled)
|
78
|
+
# @param name [String] This is the name of the phone number. This is just for your own reference.
|
79
|
+
# @param assistant_id [String] This is the assistant that will be used for incoming calls to this phone number.
|
80
|
+
# If neither `assistantId` nor `squadId` is set, `assistant-request` will be sent
|
81
|
+
# to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the
|
82
|
+
# shape of the message and response that is expected.
|
83
|
+
# @param squad_id [String] This is the squad that will be used for incoming calls to this phone number.
|
84
|
+
# If neither `assistantId` nor `squadId` is set, `assistant-request` will be sent
|
85
|
+
# to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the
|
86
|
+
# shape of the message and response that is expected.
|
87
|
+
# @param server [Vapi::Server] This is where Vapi will send webhooks. You can find all webhooks available along
|
88
|
+
# with their shape in ServerMessage schema.
|
89
|
+
# The order of precedence is:
|
90
|
+
# 1. assistant.server
|
91
|
+
# 2. phoneNumber.server
|
92
|
+
# 3. org.server
|
93
|
+
# @param number [String] This is the number of the customer.
|
94
|
+
# @param credential_id [String] This is the credential of your own SIP trunk or Carrier (type `byo-sip-trunk`)
|
95
|
+
# which can be used to make calls to this phone number.
|
96
|
+
# You can add the SIP trunk or Carrier credential in the Provider Credentials page
|
97
|
+
# on the Dashboard to get the credentialId.
|
98
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
99
|
+
# @return [Vapi::UpdateByoPhoneNumberDto]
|
100
|
+
def initialize(fallback_destination: OMIT, number_e_164_check_enabled: OMIT, name: OMIT, assistant_id: OMIT,
|
101
|
+
squad_id: OMIT, server: OMIT, number: OMIT, credential_id: OMIT, additional_properties: nil)
|
102
|
+
@fallback_destination = fallback_destination if fallback_destination != OMIT
|
103
|
+
@number_e_164_check_enabled = number_e_164_check_enabled if number_e_164_check_enabled != OMIT
|
104
|
+
@name = name if name != OMIT
|
105
|
+
@assistant_id = assistant_id if assistant_id != OMIT
|
106
|
+
@squad_id = squad_id if squad_id != OMIT
|
107
|
+
@server = server if server != OMIT
|
108
|
+
@number = number if number != OMIT
|
109
|
+
@credential_id = credential_id if credential_id != OMIT
|
110
|
+
@additional_properties = additional_properties
|
111
|
+
@_field_set = {
|
112
|
+
"fallbackDestination": fallback_destination,
|
113
|
+
"numberE164CheckEnabled": number_e_164_check_enabled,
|
114
|
+
"name": name,
|
115
|
+
"assistantId": assistant_id,
|
116
|
+
"squadId": squad_id,
|
117
|
+
"server": server,
|
118
|
+
"number": number,
|
119
|
+
"credentialId": credential_id
|
120
|
+
}.reject do |_k, v|
|
121
|
+
v == OMIT
|
122
|
+
end
|
123
|
+
end
|
124
|
+
|
125
|
+
# Deserialize a JSON object to an instance of UpdateByoPhoneNumberDto
|
126
|
+
#
|
127
|
+
# @param json_object [String]
|
128
|
+
# @return [Vapi::UpdateByoPhoneNumberDto]
|
129
|
+
def self.from_json(json_object:)
|
130
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
131
|
+
parsed_json = JSON.parse(json_object)
|
132
|
+
if parsed_json["fallbackDestination"].nil?
|
133
|
+
fallback_destination = nil
|
134
|
+
else
|
135
|
+
fallback_destination = parsed_json["fallbackDestination"].to_json
|
136
|
+
fallback_destination = Vapi::UpdateByoPhoneNumberDtoFallbackDestination.from_json(json_object: fallback_destination)
|
137
|
+
end
|
138
|
+
number_e_164_check_enabled = parsed_json["numberE164CheckEnabled"]
|
139
|
+
name = parsed_json["name"]
|
140
|
+
assistant_id = parsed_json["assistantId"]
|
141
|
+
squad_id = parsed_json["squadId"]
|
142
|
+
if parsed_json["server"].nil?
|
143
|
+
server = nil
|
144
|
+
else
|
145
|
+
server = parsed_json["server"].to_json
|
146
|
+
server = Vapi::Server.from_json(json_object: server)
|
147
|
+
end
|
148
|
+
number = parsed_json["number"]
|
149
|
+
credential_id = parsed_json["credentialId"]
|
150
|
+
new(
|
151
|
+
fallback_destination: fallback_destination,
|
152
|
+
number_e_164_check_enabled: number_e_164_check_enabled,
|
153
|
+
name: name,
|
154
|
+
assistant_id: assistant_id,
|
155
|
+
squad_id: squad_id,
|
156
|
+
server: server,
|
157
|
+
number: number,
|
158
|
+
credential_id: credential_id,
|
159
|
+
additional_properties: struct
|
160
|
+
)
|
161
|
+
end
|
162
|
+
|
163
|
+
# Serialize an instance of UpdateByoPhoneNumberDto to a JSON object
|
164
|
+
#
|
165
|
+
# @return [String]
|
166
|
+
def to_json(*_args)
|
167
|
+
@_field_set&.to_json
|
168
|
+
end
|
169
|
+
|
170
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
171
|
+
# hash and check each fields type against the current object's property
|
172
|
+
# definitions.
|
173
|
+
#
|
174
|
+
# @param obj [Object]
|
175
|
+
# @return [Void]
|
176
|
+
def self.validate_raw(obj:)
|
177
|
+
obj.fallback_destination.nil? || Vapi::UpdateByoPhoneNumberDtoFallbackDestination.validate_raw(obj: obj.fallback_destination)
|
178
|
+
obj.number_e_164_check_enabled&.is_a?(Boolean) != false || raise("Passed value for field obj.number_e_164_check_enabled is not the expected type, validation failed.")
|
179
|
+
obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
|
180
|
+
obj.assistant_id&.is_a?(String) != false || raise("Passed value for field obj.assistant_id is not the expected type, validation failed.")
|
181
|
+
obj.squad_id&.is_a?(String) != false || raise("Passed value for field obj.squad_id is not the expected type, validation failed.")
|
182
|
+
obj.server.nil? || Vapi::Server.validate_raw(obj: obj.server)
|
183
|
+
obj.number&.is_a?(String) != false || raise("Passed value for field obj.number is not the expected type, validation failed.")
|
184
|
+
obj.credential_id&.is_a?(String) != false || raise("Passed value for field obj.credential_id is not the expected type, validation failed.")
|
185
|
+
end
|
186
|
+
end
|
187
|
+
end
|
@@ -0,0 +1,101 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "json"
|
4
|
+
require_relative "transfer_destination_number"
|
5
|
+
require_relative "transfer_destination_sip"
|
6
|
+
|
7
|
+
module Vapi
|
8
|
+
# This is the fallback destination an inbound call will be transferred to if:
|
9
|
+
# 1. `assistantId` is not set
|
10
|
+
# 2. `squadId` is not set
|
11
|
+
# 3. and, `assistant-request` message to the `serverUrl` fails
|
12
|
+
# If this is not set and above conditions are met, the inbound call is hung up
|
13
|
+
# with an error message.
|
14
|
+
class UpdateByoPhoneNumberDtoFallbackDestination
|
15
|
+
# @return [Object]
|
16
|
+
attr_reader :member
|
17
|
+
# @return [String]
|
18
|
+
attr_reader :discriminant
|
19
|
+
|
20
|
+
private_class_method :new
|
21
|
+
alias kind_of? is_a?
|
22
|
+
|
23
|
+
# @param member [Object]
|
24
|
+
# @param discriminant [String]
|
25
|
+
# @return [Vapi::UpdateByoPhoneNumberDtoFallbackDestination]
|
26
|
+
def initialize(member:, discriminant:)
|
27
|
+
@member = member
|
28
|
+
@discriminant = discriminant
|
29
|
+
end
|
30
|
+
|
31
|
+
# Deserialize a JSON object to an instance of
|
32
|
+
# UpdateByoPhoneNumberDtoFallbackDestination
|
33
|
+
#
|
34
|
+
# @param json_object [String]
|
35
|
+
# @return [Vapi::UpdateByoPhoneNumberDtoFallbackDestination]
|
36
|
+
def self.from_json(json_object:)
|
37
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
38
|
+
member = case struct.type
|
39
|
+
when "number"
|
40
|
+
Vapi::TransferDestinationNumber.from_json(json_object: json_object)
|
41
|
+
when "sip"
|
42
|
+
Vapi::TransferDestinationSip.from_json(json_object: json_object)
|
43
|
+
else
|
44
|
+
Vapi::TransferDestinationNumber.from_json(json_object: json_object)
|
45
|
+
end
|
46
|
+
new(member: member, discriminant: struct.type)
|
47
|
+
end
|
48
|
+
|
49
|
+
# For Union Types, to_json functionality is delegated to the wrapped member.
|
50
|
+
#
|
51
|
+
# @return [String]
|
52
|
+
def to_json(*_args)
|
53
|
+
case @discriminant
|
54
|
+
when "number"
|
55
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
56
|
+
when "sip"
|
57
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
58
|
+
else
|
59
|
+
{ "type": @discriminant, value: @member }.to_json
|
60
|
+
end
|
61
|
+
@member.to_json
|
62
|
+
end
|
63
|
+
|
64
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
65
|
+
# hash and check each fields type against the current object's property
|
66
|
+
# definitions.
|
67
|
+
#
|
68
|
+
# @param obj [Object]
|
69
|
+
# @return [Void]
|
70
|
+
def self.validate_raw(obj:)
|
71
|
+
case obj.type
|
72
|
+
when "number"
|
73
|
+
Vapi::TransferDestinationNumber.validate_raw(obj: obj)
|
74
|
+
when "sip"
|
75
|
+
Vapi::TransferDestinationSip.validate_raw(obj: obj)
|
76
|
+
else
|
77
|
+
raise("Passed value matched no type within the union, validation failed.")
|
78
|
+
end
|
79
|
+
end
|
80
|
+
|
81
|
+
# For Union Types, is_a? functionality is delegated to the wrapped member.
|
82
|
+
#
|
83
|
+
# @param obj [Object]
|
84
|
+
# @return [Boolean]
|
85
|
+
def is_a?(obj)
|
86
|
+
@member.is_a?(obj)
|
87
|
+
end
|
88
|
+
|
89
|
+
# @param member [Vapi::TransferDestinationNumber]
|
90
|
+
# @return [Vapi::UpdateByoPhoneNumberDtoFallbackDestination]
|
91
|
+
def self.number(member:)
|
92
|
+
new(member: member, discriminant: "number")
|
93
|
+
end
|
94
|
+
|
95
|
+
# @param member [Vapi::TransferDestinationSip]
|
96
|
+
# @return [Vapi::UpdateByoPhoneNumberDtoFallbackDestination]
|
97
|
+
def self.sip(member:)
|
98
|
+
new(member: member, discriminant: "sip")
|
99
|
+
end
|
100
|
+
end
|
101
|
+
end
|
@@ -8,8 +8,8 @@ require "json"
|
|
8
8
|
|
9
9
|
module Vapi
|
10
10
|
class UpdateByoSipTrunkCredentialDto
|
11
|
-
# @return [String] This
|
12
|
-
attr_reader :
|
11
|
+
# @return [String] This is the name of credential. This is just for your reference.
|
12
|
+
attr_reader :name
|
13
13
|
# @return [Array<Vapi::SipTrunkGateway>] This is the list of SIP trunk's gateways.
|
14
14
|
attr_reader :gateways
|
15
15
|
# @return [Vapi::SipTrunkOutboundAuthenticationPlan] This can be used to configure the outbound authentication if required by the SIP
|
@@ -31,8 +31,6 @@ module Vapi
|
|
31
31
|
# onprem SBC to trunk into the SIP trunk's `gateways`, rather than the managed SBC
|
32
32
|
# provided by Vapi.
|
33
33
|
attr_reader :sbc_configuration
|
34
|
-
# @return [String] This is the name of credential. This is just for your reference.
|
35
|
-
attr_reader :name
|
36
34
|
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
37
35
|
attr_reader :additional_properties
|
38
36
|
# @return [Object]
|
@@ -41,7 +39,7 @@ module Vapi
|
|
41
39
|
|
42
40
|
OMIT = Object.new
|
43
41
|
|
44
|
-
# @param
|
42
|
+
# @param name [String] This is the name of credential. This is just for your reference.
|
45
43
|
# @param gateways [Array<Vapi::SipTrunkGateway>] This is the list of SIP trunk's gateways.
|
46
44
|
# @param outbound_authentication_plan [Vapi::SipTrunkOutboundAuthenticationPlan] This can be used to configure the outbound authentication if required by the SIP
|
47
45
|
# trunk.
|
@@ -57,29 +55,26 @@ module Vapi
|
|
57
55
|
# @param sbc_configuration [Vapi::SbcConfiguration] This is an advanced configuration for enterprise deployments. This uses the
|
58
56
|
# onprem SBC to trunk into the SIP trunk's `gateways`, rather than the managed SBC
|
59
57
|
# provided by Vapi.
|
60
|
-
# @param name [String] This is the name of credential. This is just for your reference.
|
61
58
|
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
62
59
|
# @return [Vapi::UpdateByoSipTrunkCredentialDto]
|
63
|
-
def initialize(gateways
|
64
|
-
tech_prefix: OMIT, sip_diversion_header: OMIT, sbc_configuration: OMIT,
|
65
|
-
@
|
66
|
-
@gateways = gateways
|
60
|
+
def initialize(name: OMIT, gateways: OMIT, outbound_authentication_plan: OMIT, outbound_leading_plus_enabled: OMIT,
|
61
|
+
tech_prefix: OMIT, sip_diversion_header: OMIT, sbc_configuration: OMIT, additional_properties: nil)
|
62
|
+
@name = name if name != OMIT
|
63
|
+
@gateways = gateways if gateways != OMIT
|
67
64
|
@outbound_authentication_plan = outbound_authentication_plan if outbound_authentication_plan != OMIT
|
68
65
|
@outbound_leading_plus_enabled = outbound_leading_plus_enabled if outbound_leading_plus_enabled != OMIT
|
69
66
|
@tech_prefix = tech_prefix if tech_prefix != OMIT
|
70
67
|
@sip_diversion_header = sip_diversion_header if sip_diversion_header != OMIT
|
71
68
|
@sbc_configuration = sbc_configuration if sbc_configuration != OMIT
|
72
|
-
@name = name if name != OMIT
|
73
69
|
@additional_properties = additional_properties
|
74
70
|
@_field_set = {
|
75
|
-
"
|
71
|
+
"name": name,
|
76
72
|
"gateways": gateways,
|
77
73
|
"outboundAuthenticationPlan": outbound_authentication_plan,
|
78
74
|
"outboundLeadingPlusEnabled": outbound_leading_plus_enabled,
|
79
75
|
"techPrefix": tech_prefix,
|
80
76
|
"sipDiversionHeader": sip_diversion_header,
|
81
|
-
"sbcConfiguration": sbc_configuration
|
82
|
-
"name": name
|
77
|
+
"sbcConfiguration": sbc_configuration
|
83
78
|
}.reject do |_k, v|
|
84
79
|
v == OMIT
|
85
80
|
end
|
@@ -92,7 +87,7 @@ module Vapi
|
|
92
87
|
def self.from_json(json_object:)
|
93
88
|
struct = JSON.parse(json_object, object_class: OpenStruct)
|
94
89
|
parsed_json = JSON.parse(json_object)
|
95
|
-
|
90
|
+
name = parsed_json["name"]
|
96
91
|
gateways = parsed_json["gateways"]&.map do |item|
|
97
92
|
item = item.to_json
|
98
93
|
Vapi::SipTrunkGateway.from_json(json_object: item)
|
@@ -112,16 +107,14 @@ module Vapi
|
|
112
107
|
sbc_configuration = parsed_json["sbcConfiguration"].to_json
|
113
108
|
sbc_configuration = Vapi::SbcConfiguration.from_json(json_object: sbc_configuration)
|
114
109
|
end
|
115
|
-
name = parsed_json["name"]
|
116
110
|
new(
|
117
|
-
|
111
|
+
name: name,
|
118
112
|
gateways: gateways,
|
119
113
|
outbound_authentication_plan: outbound_authentication_plan,
|
120
114
|
outbound_leading_plus_enabled: outbound_leading_plus_enabled,
|
121
115
|
tech_prefix: tech_prefix,
|
122
116
|
sip_diversion_header: sip_diversion_header,
|
123
117
|
sbc_configuration: sbc_configuration,
|
124
|
-
name: name,
|
125
118
|
additional_properties: struct
|
126
119
|
)
|
127
120
|
end
|
@@ -140,14 +133,13 @@ module Vapi
|
|
140
133
|
# @param obj [Object]
|
141
134
|
# @return [Void]
|
142
135
|
def self.validate_raw(obj:)
|
143
|
-
obj.
|
144
|
-
obj.gateways
|
136
|
+
obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
|
137
|
+
obj.gateways&.is_a?(Array) != false || raise("Passed value for field obj.gateways is not the expected type, validation failed.")
|
145
138
|
obj.outbound_authentication_plan.nil? || Vapi::SipTrunkOutboundAuthenticationPlan.validate_raw(obj: obj.outbound_authentication_plan)
|
146
139
|
obj.outbound_leading_plus_enabled&.is_a?(Boolean) != false || raise("Passed value for field obj.outbound_leading_plus_enabled is not the expected type, validation failed.")
|
147
140
|
obj.tech_prefix&.is_a?(String) != false || raise("Passed value for field obj.tech_prefix is not the expected type, validation failed.")
|
148
141
|
obj.sip_diversion_header&.is_a?(String) != false || raise("Passed value for field obj.sip_diversion_header is not the expected type, validation failed.")
|
149
142
|
obj.sbc_configuration.nil? || Vapi::SbcConfiguration.validate_raw(obj: obj.sbc_configuration)
|
150
|
-
obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
|
151
143
|
end
|
152
144
|
end
|
153
145
|
end
|
@@ -5,8 +5,6 @@ require "json"
|
|
5
5
|
|
6
6
|
module Vapi
|
7
7
|
class UpdateCartesiaCredentialDto
|
8
|
-
# @return [String]
|
9
|
-
attr_reader :provider
|
10
8
|
# @return [String] This is not returned in the API.
|
11
9
|
attr_reader :api_key
|
12
10
|
# @return [String] This is the name of credential. This is just for your reference.
|
@@ -19,17 +17,15 @@ module Vapi
|
|
19
17
|
|
20
18
|
OMIT = Object.new
|
21
19
|
|
22
|
-
# @param provider [String]
|
23
20
|
# @param api_key [String] This is not returned in the API.
|
24
21
|
# @param name [String] This is the name of credential. This is just for your reference.
|
25
22
|
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
26
23
|
# @return [Vapi::UpdateCartesiaCredentialDto]
|
27
|
-
def initialize(
|
28
|
-
@
|
29
|
-
@api_key = api_key
|
24
|
+
def initialize(api_key: OMIT, name: OMIT, additional_properties: nil)
|
25
|
+
@api_key = api_key if api_key != OMIT
|
30
26
|
@name = name if name != OMIT
|
31
27
|
@additional_properties = additional_properties
|
32
|
-
@_field_set = { "
|
28
|
+
@_field_set = { "apiKey": api_key, "name": name }.reject do |_k, v|
|
33
29
|
v == OMIT
|
34
30
|
end
|
35
31
|
end
|
@@ -41,11 +37,9 @@ module Vapi
|
|
41
37
|
def self.from_json(json_object:)
|
42
38
|
struct = JSON.parse(json_object, object_class: OpenStruct)
|
43
39
|
parsed_json = JSON.parse(json_object)
|
44
|
-
provider = parsed_json["provider"]
|
45
40
|
api_key = parsed_json["apiKey"]
|
46
41
|
name = parsed_json["name"]
|
47
42
|
new(
|
48
|
-
provider: provider,
|
49
43
|
api_key: api_key,
|
50
44
|
name: name,
|
51
45
|
additional_properties: struct
|
@@ -66,8 +60,7 @@ module Vapi
|
|
66
60
|
# @param obj [Object]
|
67
61
|
# @return [Void]
|
68
62
|
def self.validate_raw(obj:)
|
69
|
-
obj.
|
70
|
-
obj.api_key.is_a?(String) != false || raise("Passed value for field obj.api_key is not the expected type, validation failed.")
|
63
|
+
obj.api_key&.is_a?(String) != false || raise("Passed value for field obj.api_key is not the expected type, validation failed.")
|
71
64
|
obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
|
72
65
|
end
|
73
66
|
end
|
@@ -0,0 +1,67 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "ostruct"
|
4
|
+
require "json"
|
5
|
+
|
6
|
+
module Vapi
|
7
|
+
class UpdateCerebrasCredentialDto
|
8
|
+
# @return [String] This is not returned in the API.
|
9
|
+
attr_reader :api_key
|
10
|
+
# @return [String] This is the name of credential. This is just for your reference.
|
11
|
+
attr_reader :name
|
12
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
13
|
+
attr_reader :additional_properties
|
14
|
+
# @return [Object]
|
15
|
+
attr_reader :_field_set
|
16
|
+
protected :_field_set
|
17
|
+
|
18
|
+
OMIT = Object.new
|
19
|
+
|
20
|
+
# @param api_key [String] This is not returned in the API.
|
21
|
+
# @param name [String] This is the name of credential. This is just for your reference.
|
22
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
23
|
+
# @return [Vapi::UpdateCerebrasCredentialDto]
|
24
|
+
def initialize(api_key: OMIT, name: OMIT, additional_properties: nil)
|
25
|
+
@api_key = api_key if api_key != OMIT
|
26
|
+
@name = name if name != OMIT
|
27
|
+
@additional_properties = additional_properties
|
28
|
+
@_field_set = { "apiKey": api_key, "name": name }.reject do |_k, v|
|
29
|
+
v == OMIT
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
# Deserialize a JSON object to an instance of UpdateCerebrasCredentialDto
|
34
|
+
#
|
35
|
+
# @param json_object [String]
|
36
|
+
# @return [Vapi::UpdateCerebrasCredentialDto]
|
37
|
+
def self.from_json(json_object:)
|
38
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
39
|
+
parsed_json = JSON.parse(json_object)
|
40
|
+
api_key = parsed_json["apiKey"]
|
41
|
+
name = parsed_json["name"]
|
42
|
+
new(
|
43
|
+
api_key: api_key,
|
44
|
+
name: name,
|
45
|
+
additional_properties: struct
|
46
|
+
)
|
47
|
+
end
|
48
|
+
|
49
|
+
# Serialize an instance of UpdateCerebrasCredentialDto to a JSON object
|
50
|
+
#
|
51
|
+
# @return [String]
|
52
|
+
def to_json(*_args)
|
53
|
+
@_field_set&.to_json
|
54
|
+
end
|
55
|
+
|
56
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
57
|
+
# hash and check each fields type against the current object's property
|
58
|
+
# definitions.
|
59
|
+
#
|
60
|
+
# @param obj [Object]
|
61
|
+
# @return [Void]
|
62
|
+
def self.validate_raw(obj:)
|
63
|
+
obj.api_key&.is_a?(String) != false || raise("Passed value for field obj.api_key is not the expected type, validation failed.")
|
64
|
+
obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
@@ -0,0 +1,101 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "cloudflare_r_2_bucket_plan"
|
4
|
+
require "ostruct"
|
5
|
+
require "json"
|
6
|
+
|
7
|
+
module Vapi
|
8
|
+
class UpdateCloudflareCredentialDto
|
9
|
+
# @return [String] Cloudflare Account Id.
|
10
|
+
attr_reader :account_id
|
11
|
+
# @return [String] Cloudflare API Key / Token.
|
12
|
+
attr_reader :api_key
|
13
|
+
# @return [String] Cloudflare Account Email.
|
14
|
+
attr_reader :account_email
|
15
|
+
# @return [String] This is the name of credential. This is just for your reference.
|
16
|
+
attr_reader :name
|
17
|
+
# @return [Vapi::CloudflareR2BucketPlan] This is the bucket plan that can be provided to store call artifacts in R2
|
18
|
+
attr_reader :bucket_plan
|
19
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
20
|
+
attr_reader :additional_properties
|
21
|
+
# @return [Object]
|
22
|
+
attr_reader :_field_set
|
23
|
+
protected :_field_set
|
24
|
+
|
25
|
+
OMIT = Object.new
|
26
|
+
|
27
|
+
# @param account_id [String] Cloudflare Account Id.
|
28
|
+
# @param api_key [String] Cloudflare API Key / Token.
|
29
|
+
# @param account_email [String] Cloudflare Account Email.
|
30
|
+
# @param name [String] This is the name of credential. This is just for your reference.
|
31
|
+
# @param bucket_plan [Vapi::CloudflareR2BucketPlan] This is the bucket plan that can be provided to store call artifacts in R2
|
32
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
33
|
+
# @return [Vapi::UpdateCloudflareCredentialDto]
|
34
|
+
def initialize(account_id: OMIT, api_key: OMIT, account_email: OMIT, name: OMIT, bucket_plan: OMIT,
|
35
|
+
additional_properties: nil)
|
36
|
+
@account_id = account_id if account_id != OMIT
|
37
|
+
@api_key = api_key if api_key != OMIT
|
38
|
+
@account_email = account_email if account_email != OMIT
|
39
|
+
@name = name if name != OMIT
|
40
|
+
@bucket_plan = bucket_plan if bucket_plan != OMIT
|
41
|
+
@additional_properties = additional_properties
|
42
|
+
@_field_set = {
|
43
|
+
"accountId": account_id,
|
44
|
+
"apiKey": api_key,
|
45
|
+
"accountEmail": account_email,
|
46
|
+
"name": name,
|
47
|
+
"bucketPlan": bucket_plan
|
48
|
+
}.reject do |_k, v|
|
49
|
+
v == OMIT
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
# Deserialize a JSON object to an instance of UpdateCloudflareCredentialDto
|
54
|
+
#
|
55
|
+
# @param json_object [String]
|
56
|
+
# @return [Vapi::UpdateCloudflareCredentialDto]
|
57
|
+
def self.from_json(json_object:)
|
58
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
59
|
+
parsed_json = JSON.parse(json_object)
|
60
|
+
account_id = parsed_json["accountId"]
|
61
|
+
api_key = parsed_json["apiKey"]
|
62
|
+
account_email = parsed_json["accountEmail"]
|
63
|
+
name = parsed_json["name"]
|
64
|
+
if parsed_json["bucketPlan"].nil?
|
65
|
+
bucket_plan = nil
|
66
|
+
else
|
67
|
+
bucket_plan = parsed_json["bucketPlan"].to_json
|
68
|
+
bucket_plan = Vapi::CloudflareR2BucketPlan.from_json(json_object: bucket_plan)
|
69
|
+
end
|
70
|
+
new(
|
71
|
+
account_id: account_id,
|
72
|
+
api_key: api_key,
|
73
|
+
account_email: account_email,
|
74
|
+
name: name,
|
75
|
+
bucket_plan: bucket_plan,
|
76
|
+
additional_properties: struct
|
77
|
+
)
|
78
|
+
end
|
79
|
+
|
80
|
+
# Serialize an instance of UpdateCloudflareCredentialDto to a JSON object
|
81
|
+
#
|
82
|
+
# @return [String]
|
83
|
+
def to_json(*_args)
|
84
|
+
@_field_set&.to_json
|
85
|
+
end
|
86
|
+
|
87
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
88
|
+
# hash and check each fields type against the current object's property
|
89
|
+
# definitions.
|
90
|
+
#
|
91
|
+
# @param obj [Object]
|
92
|
+
# @return [Void]
|
93
|
+
def self.validate_raw(obj:)
|
94
|
+
obj.account_id&.is_a?(String) != false || raise("Passed value for field obj.account_id is not the expected type, validation failed.")
|
95
|
+
obj.api_key&.is_a?(String) != false || raise("Passed value for field obj.api_key is not the expected type, validation failed.")
|
96
|
+
obj.account_email&.is_a?(String) != false || raise("Passed value for field obj.account_email is not the expected type, validation failed.")
|
97
|
+
obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
|
98
|
+
obj.bucket_plan.nil? || Vapi::CloudflareR2BucketPlan.validate_raw(obj: obj.bucket_plan)
|
99
|
+
end
|
100
|
+
end
|
101
|
+
end
|