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.
Files changed (233) hide show
  1. checksums.yaml +4 -4
  2. data/lib/requests.rb +2 -2
  3. data/lib/types_export.rb +129 -62
  4. data/lib/vapi_server_sdk/assistants/client.rb +15 -2
  5. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_credentials_item.rb +512 -0
  6. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_model.rb +13 -0
  7. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_transcriber.rb +13 -0
  8. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_voice.rb +13 -0
  9. data/lib/vapi_server_sdk/blocks/client.rb +7 -166
  10. data/lib/vapi_server_sdk/blocks/types/blocks_update_request.rb +109 -0
  11. data/lib/vapi_server_sdk/calls/client.rb +16 -4
  12. data/lib/vapi_server_sdk/knowledge_bases/client.rb +7 -8
  13. data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_update_request.rb +96 -0
  14. data/lib/vapi_server_sdk/logs/client.rb +84 -0
  15. data/lib/vapi_server_sdk/phone_numbers/client.rb +7 -69
  16. data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_update_request.rb +122 -0
  17. data/lib/vapi_server_sdk/squads/client.rb +8 -0
  18. data/lib/vapi_server_sdk/tools/client.rb +7 -91
  19. data/lib/vapi_server_sdk/tools/types/tools_update_request.rb +200 -0
  20. data/lib/vapi_server_sdk/types/assistant.rb +19 -1
  21. data/lib/vapi_server_sdk/types/assistant_credentials_item.rb +510 -0
  22. data/lib/vapi_server_sdk/types/assistant_model.rb +13 -0
  23. data/lib/vapi_server_sdk/types/assistant_overrides.rb +19 -1
  24. data/lib/vapi_server_sdk/types/assistant_overrides_credentials_item.rb +510 -0
  25. data/lib/vapi_server_sdk/types/assistant_overrides_model.rb +13 -0
  26. data/lib/vapi_server_sdk/types/assistant_overrides_transcriber.rb +13 -0
  27. data/lib/vapi_server_sdk/types/assistant_overrides_voice.rb +13 -0
  28. data/lib/vapi_server_sdk/types/assistant_transcriber.rb +13 -0
  29. data/lib/vapi_server_sdk/types/assistant_voice.rb +13 -0
  30. data/lib/vapi_server_sdk/types/azure_blob_storage_bucket_plan.rb +88 -0
  31. data/lib/vapi_server_sdk/types/azure_credential.rb +22 -5
  32. data/lib/vapi_server_sdk/types/azure_credential_region.rb +1 -1
  33. data/lib/vapi_server_sdk/types/azure_credential_service.rb +9 -0
  34. data/lib/vapi_server_sdk/types/azure_open_ai_credential.rb +9 -1
  35. data/lib/vapi_server_sdk/types/azure_open_ai_credential_region.rb +1 -1
  36. data/lib/vapi_server_sdk/types/azure_speech_transcriber.rb +62 -0
  37. data/lib/vapi_server_sdk/types/azure_speech_transcriber_language.rb +152 -0
  38. data/lib/vapi_server_sdk/types/buy_phone_number_dto.rb +25 -29
  39. data/lib/vapi_server_sdk/types/byo_phone_number.rb +25 -29
  40. data/lib/vapi_server_sdk/types/call_ended_reason.rb +44 -29
  41. data/lib/vapi_server_sdk/types/cartesia_voice_model.rb +2 -0
  42. data/lib/vapi_server_sdk/types/cerebras_credential.rb +111 -0
  43. data/lib/vapi_server_sdk/types/chat_dto.rb +103 -0
  44. data/lib/vapi_server_sdk/types/{credits_buy_dto.rb → chat_service_response.rb} +9 -17
  45. data/lib/vapi_server_sdk/types/cloudflare_credential.rb +142 -0
  46. data/lib/vapi_server_sdk/types/cloudflare_r_2_bucket_plan.rb +105 -0
  47. data/lib/vapi_server_sdk/types/create_anthropic_credential_dto.rb +2 -9
  48. data/lib/vapi_server_sdk/types/create_anyscale_credential_dto.rb +2 -9
  49. data/lib/vapi_server_sdk/types/create_assembly_ai_credential_dto.rb +2 -9
  50. data/lib/vapi_server_sdk/types/create_assistant_dto.rb +19 -1
  51. data/lib/vapi_server_sdk/types/create_assistant_dto_credentials_item.rb +510 -0
  52. data/lib/vapi_server_sdk/types/create_assistant_dto_model.rb +13 -0
  53. data/lib/vapi_server_sdk/types/create_assistant_dto_transcriber.rb +13 -0
  54. data/lib/vapi_server_sdk/types/create_assistant_dto_voice.rb +13 -0
  55. data/lib/vapi_server_sdk/types/create_azure_credential_dto.rb +21 -12
  56. data/lib/vapi_server_sdk/types/create_azure_credential_dto_region.rb +1 -1
  57. data/lib/vapi_server_sdk/types/create_azure_credential_dto_service.rb +9 -0
  58. data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto.rb +10 -9
  59. data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto_region.rb +1 -1
  60. data/lib/vapi_server_sdk/types/create_byo_phone_number_dto.rb +25 -29
  61. data/lib/vapi_server_sdk/types/create_byo_sip_trunk_credential_dto.rb +1 -9
  62. data/lib/vapi_server_sdk/types/create_cartesia_credential_dto.rb +2 -9
  63. data/lib/vapi_server_sdk/types/create_cerebras_credential_dto.rb +74 -0
  64. data/lib/vapi_server_sdk/types/create_cloudflare_credential_dto.rb +101 -0
  65. data/lib/vapi_server_sdk/types/create_custom_llm_credential_dto.rb +2 -14
  66. data/lib/vapi_server_sdk/types/create_deep_infra_credential_dto.rb +2 -9
  67. data/lib/vapi_server_sdk/types/create_deep_seek_credential_dto.rb +67 -0
  68. data/lib/vapi_server_sdk/types/create_deepgram_credential_dto.rb +2 -9
  69. data/lib/vapi_server_sdk/types/create_eleven_labs_credential_dto.rb +2 -9
  70. data/lib/vapi_server_sdk/types/create_gcp_credential_dto.rb +2 -14
  71. data/lib/vapi_server_sdk/types/create_gladia_credential_dto.rb +2 -9
  72. data/lib/vapi_server_sdk/types/create_go_high_level_credential_dto.rb +2 -9
  73. data/lib/vapi_server_sdk/types/create_groq_credential_dto.rb +2 -9
  74. data/lib/vapi_server_sdk/types/create_langfuse_credential_dto.rb +2 -15
  75. data/lib/vapi_server_sdk/types/create_lmnt_credential_dto.rb +2 -9
  76. data/lib/vapi_server_sdk/types/create_make_credential_dto.rb +2 -15
  77. data/lib/vapi_server_sdk/types/create_open_ai_credential_dto.rb +2 -9
  78. data/lib/vapi_server_sdk/types/create_open_router_credential_dto.rb +2 -9
  79. data/lib/vapi_server_sdk/types/create_org_dto.rb +25 -25
  80. data/lib/vapi_server_sdk/types/create_perplexity_ai_credential_dto.rb +2 -9
  81. data/lib/vapi_server_sdk/types/create_play_ht_credential_dto.rb +2 -9
  82. data/lib/vapi_server_sdk/types/create_rime_ai_credential_dto.rb +2 -9
  83. data/lib/vapi_server_sdk/types/create_runpod_credential_dto.rb +2 -9
  84. data/lib/vapi_server_sdk/types/create_s_3_credential_dto.rb +2 -10
  85. data/lib/vapi_server_sdk/types/create_smallest_ai_credential_dto.rb +67 -0
  86. data/lib/vapi_server_sdk/types/create_tavus_credential_dto.rb +2 -9
  87. data/lib/vapi_server_sdk/types/create_together_ai_credential_dto.rb +2 -9
  88. data/lib/vapi_server_sdk/types/create_twilio_credential_dto.rb +2 -14
  89. data/lib/vapi_server_sdk/types/create_twilio_phone_number_dto.rb +25 -29
  90. data/lib/vapi_server_sdk/types/create_vapi_phone_number_dto.rb +25 -29
  91. data/lib/vapi_server_sdk/types/create_vonage_credential_dto.rb +2 -14
  92. data/lib/vapi_server_sdk/types/create_vonage_phone_number_dto.rb +25 -29
  93. data/lib/vapi_server_sdk/types/create_webhook_credential_dto.rb +2 -13
  94. data/lib/vapi_server_sdk/types/create_x_ai_credential_dto.rb +2 -11
  95. data/lib/vapi_server_sdk/types/deep_seek_credential.rb +111 -0
  96. data/lib/vapi_server_sdk/types/deep_seek_model.rb +177 -0
  97. data/lib/vapi_server_sdk/types/deep_seek_model_tools_item.rb +159 -0
  98. data/lib/vapi_server_sdk/types/eleven_labs_voice_model.rb +2 -0
  99. data/lib/vapi_server_sdk/types/fallback_cartesia_voice_model.rb +2 -0
  100. data/lib/vapi_server_sdk/types/fallback_eleven_labs_voice_model.rb +2 -0
  101. data/lib/vapi_server_sdk/types/fallback_open_ai_voice.rb +4 -4
  102. data/lib/vapi_server_sdk/types/fallback_open_ai_voice_id.rb +2 -2
  103. data/lib/vapi_server_sdk/types/fallback_plan_voices_item.rb +13 -0
  104. data/lib/vapi_server_sdk/types/fallback_smallest_ai_voice.rb +95 -0
  105. data/lib/vapi_server_sdk/types/fallback_smallest_ai_voice_id.rb +53 -0
  106. data/lib/vapi_server_sdk/types/fallback_smallest_ai_voice_id_enum.rb +31 -0
  107. data/lib/vapi_server_sdk/types/gemini_multimodal_live_prebuilt_voice_config.rb +58 -0
  108. data/lib/vapi_server_sdk/types/gemini_multimodal_live_prebuilt_voice_config_voice_name.rb +11 -0
  109. data/lib/vapi_server_sdk/types/gemini_multimodal_live_speech_config.rb +61 -0
  110. data/lib/vapi_server_sdk/types/gemini_multimodal_live_voice_config.rb +61 -0
  111. data/lib/vapi_server_sdk/types/google_model.rb +17 -1
  112. data/lib/vapi_server_sdk/types/google_model_model.rb +2 -0
  113. data/lib/vapi_server_sdk/types/google_realtime_config.rb +121 -0
  114. data/lib/vapi_server_sdk/types/groq_model_model.rb +1 -3
  115. data/lib/vapi_server_sdk/types/import_twilio_phone_number_dto.rb +25 -29
  116. data/lib/vapi_server_sdk/types/import_vonage_phone_number_dto.rb +25 -29
  117. data/lib/vapi_server_sdk/types/open_ai_model_fallback_models_item.rb +6 -0
  118. data/lib/vapi_server_sdk/types/open_ai_model_model.rb +6 -0
  119. data/lib/vapi_server_sdk/types/open_ai_voice.rb +4 -4
  120. data/lib/vapi_server_sdk/types/open_ai_voice_id.rb +2 -2
  121. data/lib/vapi_server_sdk/types/org.rb +25 -25
  122. data/lib/vapi_server_sdk/types/org_with_org_user.rb +25 -25
  123. data/lib/vapi_server_sdk/types/server_message_end_of_call_report_ended_reason.rb +44 -29
  124. data/lib/vapi_server_sdk/types/server_message_status_update.rb +11 -1
  125. data/lib/vapi_server_sdk/types/server_message_status_update_ended_reason.rb +44 -29
  126. data/lib/vapi_server_sdk/types/smallest_ai_credential.rb +111 -0
  127. data/lib/vapi_server_sdk/types/smallest_ai_voice.rb +117 -0
  128. data/lib/vapi_server_sdk/types/smallest_ai_voice_id.rb +53 -0
  129. data/lib/vapi_server_sdk/types/smallest_ai_voice_id_enum.rb +31 -0
  130. data/lib/vapi_server_sdk/types/subscription.rb +2 -2
  131. data/lib/vapi_server_sdk/types/sync_voice_library_dto_providers_item.rb +1 -0
  132. data/lib/vapi_server_sdk/types/transfer_plan.rb +26 -6
  133. data/lib/vapi_server_sdk/types/transfer_plan_message.rb +2 -1
  134. data/lib/vapi_server_sdk/types/twilio_phone_number.rb +25 -29
  135. data/lib/vapi_server_sdk/types/update_anthropic_credential_dto.rb +4 -11
  136. data/lib/vapi_server_sdk/types/update_anyscale_credential_dto.rb +4 -11
  137. data/lib/vapi_server_sdk/types/update_assembly_ai_credential_dto.rb +4 -11
  138. data/lib/vapi_server_sdk/types/update_azure_credential_dto.rb +24 -14
  139. data/lib/vapi_server_sdk/types/update_azure_credential_dto_region.rb +1 -1
  140. data/lib/vapi_server_sdk/types/update_azure_credential_dto_service.rb +9 -0
  141. data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto.rb +25 -24
  142. data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto_region.rb +1 -1
  143. data/lib/vapi_server_sdk/types/update_bash_tool_dto.rb +161 -0
  144. data/lib/vapi_server_sdk/types/update_bash_tool_dto_messages_item.rb +120 -0
  145. data/lib/vapi_server_sdk/types/update_byo_phone_number_dto.rb +187 -0
  146. data/lib/vapi_server_sdk/types/update_byo_phone_number_dto_fallback_destination.rb +101 -0
  147. data/lib/vapi_server_sdk/types/update_byo_sip_trunk_credential_dto.rb +13 -21
  148. data/lib/vapi_server_sdk/types/update_cartesia_credential_dto.rb +4 -11
  149. data/lib/vapi_server_sdk/types/update_cerebras_credential_dto.rb +67 -0
  150. data/lib/vapi_server_sdk/types/update_cloudflare_credential_dto.rb +101 -0
  151. data/lib/vapi_server_sdk/types/update_computer_tool_dto.rb +185 -0
  152. data/lib/vapi_server_sdk/types/update_computer_tool_dto_messages_item.rb +120 -0
  153. data/lib/vapi_server_sdk/types/update_conversation_block_dto.rb +206 -0
  154. data/lib/vapi_server_sdk/types/update_conversation_block_dto_messages_item.rb +95 -0
  155. data/lib/vapi_server_sdk/types/update_custom_knowledge_base_dto.rb +139 -0
  156. data/lib/vapi_server_sdk/types/update_custom_llm_credential_dto.rb +4 -16
  157. data/lib/vapi_server_sdk/types/update_deep_infra_credential_dto.rb +4 -11
  158. data/lib/vapi_server_sdk/types/update_deep_seek_credential_dto.rb +67 -0
  159. data/lib/vapi_server_sdk/types/update_deepgram_credential_dto.rb +11 -18
  160. data/lib/vapi_server_sdk/types/update_dtmf_tool_dto.rb +139 -0
  161. data/lib/vapi_server_sdk/types/update_dtmf_tool_dto_messages_item.rb +120 -0
  162. data/lib/vapi_server_sdk/types/update_eleven_labs_credential_dto.rb +11 -11
  163. data/lib/vapi_server_sdk/types/update_end_call_tool_dto.rb +139 -0
  164. data/lib/vapi_server_sdk/types/update_end_call_tool_dto_messages_item.rb +120 -0
  165. data/lib/vapi_server_sdk/types/update_function_tool_dto.rb +139 -0
  166. data/lib/vapi_server_sdk/types/update_function_tool_dto_messages_item.rb +120 -0
  167. data/lib/vapi_server_sdk/types/update_gcp_credential_dto.rb +11 -23
  168. data/lib/vapi_server_sdk/types/update_ghl_tool_dto.rb +159 -0
  169. data/lib/vapi_server_sdk/types/update_ghl_tool_dto_messages_item.rb +120 -0
  170. data/lib/vapi_server_sdk/types/update_gladia_credential_dto.rb +4 -11
  171. data/lib/vapi_server_sdk/types/update_go_high_level_credential_dto.rb +4 -11
  172. data/lib/vapi_server_sdk/types/update_google_credential_dto.rb +4 -13
  173. data/lib/vapi_server_sdk/types/update_groq_credential_dto.rb +4 -11
  174. data/lib/vapi_server_sdk/types/update_inflection_ai_credential_dto.rb +4 -13
  175. data/lib/vapi_server_sdk/types/update_langfuse_credential_dto.rb +8 -21
  176. data/lib/vapi_server_sdk/types/update_lmnt_credential_dto.rb +4 -11
  177. data/lib/vapi_server_sdk/types/update_make_credential_dto.rb +8 -21
  178. data/lib/vapi_server_sdk/types/update_make_tool_dto.rb +159 -0
  179. data/lib/vapi_server_sdk/types/update_make_tool_dto_messages_item.rb +120 -0
  180. data/lib/vapi_server_sdk/types/update_open_ai_credential_dto.rb +4 -11
  181. data/lib/vapi_server_sdk/types/update_open_router_credential_dto.rb +4 -11
  182. data/lib/vapi_server_sdk/types/update_org_dto.rb +25 -25
  183. data/lib/vapi_server_sdk/types/update_output_tool_dto.rb +139 -0
  184. data/lib/vapi_server_sdk/types/update_output_tool_dto_messages_item.rb +120 -0
  185. data/lib/vapi_server_sdk/types/update_perplexity_ai_credential_dto.rb +4 -11
  186. data/lib/vapi_server_sdk/types/update_play_ht_credential_dto.rb +11 -18
  187. data/lib/vapi_server_sdk/types/update_rime_ai_credential_dto.rb +4 -11
  188. data/lib/vapi_server_sdk/types/update_runpod_credential_dto.rb +4 -11
  189. data/lib/vapi_server_sdk/types/update_s_3_credential_dto.rb +12 -20
  190. data/lib/vapi_server_sdk/types/update_smallest_ai_credential_dto.rb +67 -0
  191. data/lib/vapi_server_sdk/types/update_tavus_credential_dto.rb +4 -11
  192. data/lib/vapi_server_sdk/types/update_text_editor_tool_dto.rb +161 -0
  193. data/lib/vapi_server_sdk/types/update_text_editor_tool_dto_messages_item.rb +120 -0
  194. data/lib/vapi_server_sdk/types/update_together_ai_credential_dto.rb +4 -11
  195. data/lib/vapi_server_sdk/types/update_token_dto.rb +81 -0
  196. data/lib/vapi_server_sdk/types/update_token_dto_tag.rb +9 -0
  197. data/lib/vapi_server_sdk/types/update_tool_call_block_dto.rb +168 -0
  198. data/lib/vapi_server_sdk/types/update_tool_call_block_dto_messages_item.rb +94 -0
  199. data/lib/vapi_server_sdk/types/update_tool_call_block_dto_tool.rb +161 -0
  200. data/lib/vapi_server_sdk/types/update_transfer_call_tool_dto.rb +161 -0
  201. data/lib/vapi_server_sdk/types/update_transfer_call_tool_dto_destinations_item.rb +121 -0
  202. data/lib/vapi_server_sdk/types/update_transfer_call_tool_dto_messages_item.rb +121 -0
  203. data/lib/vapi_server_sdk/types/update_trieve_knowledge_base_dto.rb +109 -0
  204. data/lib/vapi_server_sdk/types/update_twilio_credential_dto.rb +11 -23
  205. data/lib/vapi_server_sdk/types/update_twilio_phone_number_dto.rb +163 -0
  206. data/lib/vapi_server_sdk/types/update_twilio_phone_number_dto_fallback_destination.rb +101 -0
  207. data/lib/vapi_server_sdk/types/update_vapi_phone_number_dto.rb +169 -0
  208. data/lib/vapi_server_sdk/types/update_vapi_phone_number_dto_fallback_destination.rb +101 -0
  209. data/lib/vapi_server_sdk/types/update_vonage_credential_dto.rb +11 -23
  210. data/lib/vapi_server_sdk/types/update_vonage_phone_number_dto.rb +157 -0
  211. data/lib/vapi_server_sdk/types/update_vonage_phone_number_dto_fallback_destination.rb +101 -0
  212. data/lib/vapi_server_sdk/types/update_workflow_block_dto.rb +154 -0
  213. data/lib/vapi_server_sdk/types/update_workflow_block_dto_messages_item.rb +94 -0
  214. data/lib/vapi_server_sdk/types/update_workflow_block_dto_steps_item.rb +94 -0
  215. data/lib/vapi_server_sdk/types/update_x_ai_credential_dto.rb +4 -13
  216. data/lib/vapi_server_sdk/types/vapi_phone_number.rb +25 -29
  217. data/lib/vapi_server_sdk/types/vonage_phone_number.rb +25 -29
  218. metadata +88 -21
  219. data/lib/vapi_server_sdk/blocks/types/update_block_dto_messages_item.rb +0 -96
  220. data/lib/vapi_server_sdk/blocks/types/update_block_dto_steps_item.rb +0 -96
  221. data/lib/vapi_server_sdk/blocks/types/update_block_dto_tool.rb +0 -163
  222. data/lib/vapi_server_sdk/phone_numbers/types/update_phone_number_dto_fallback_destination.rb +0 -103
  223. data/lib/vapi_server_sdk/tools/types/update_tool_dto_messages_item.rb +0 -122
  224. data/lib/vapi_server_sdk/types/auto_reload_plan_dto.rb +0 -65
  225. data/lib/vapi_server_sdk/types/hipaa_buy_dto.rb +0 -65
  226. data/lib/vapi_server_sdk/types/payment.rb +0 -167
  227. data/lib/vapi_server_sdk/types/payment_retry_dto.rb +0 -55
  228. data/lib/vapi_server_sdk/types/payment_status.rb +0 -11
  229. data/lib/vapi_server_sdk/types/payments_paginated_response.rb +0 -75
  230. data/lib/vapi_server_sdk/types/subscription_concurrency_line_buy_dto.rb +0 -55
  231. data/lib/vapi_server_sdk/types/subscription_concurrency_line_remove_dto.rb +0 -55
  232. data/lib/vapi_server_sdk/types/subscription_coupon_add_dto.rb +0 -67
  233. data/lib/vapi_server_sdk/types/subscription_monthly_charge.rb +0 -65
@@ -5,12 +5,12 @@ require "json"
5
5
 
6
6
  module Vapi
7
7
  class UpdateElevenLabsCredentialDto
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.
13
11
  attr_reader :name
12
+ # @return [String]
13
+ attr_reader :provider
14
14
  # @return [OpenStruct] Additional properties unmapped to the current class definition
15
15
  attr_reader :additional_properties
16
16
  # @return [Object]
@@ -19,17 +19,17 @@ module Vapi
19
19
 
20
20
  OMIT = Object.new
21
21
 
22
- # @param provider [String]
23
22
  # @param api_key [String] This is not returned in the API.
24
23
  # @param name [String] This is the name of credential. This is just for your reference.
24
+ # @param provider [String]
25
25
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
26
26
  # @return [Vapi::UpdateElevenLabsCredentialDto]
27
- def initialize(provider:, api_key:, name: OMIT, additional_properties: nil)
28
- @provider = provider
29
- @api_key = api_key
27
+ def initialize(api_key: OMIT, name: OMIT, provider: OMIT, additional_properties: nil)
28
+ @api_key = api_key if api_key != OMIT
30
29
  @name = name if name != OMIT
30
+ @provider = provider if provider != OMIT
31
31
  @additional_properties = additional_properties
32
- @_field_set = { "provider": provider, "apiKey": api_key, "name": name }.reject do |_k, v|
32
+ @_field_set = { "apiKey": api_key, "name": name, "provider": provider }.reject do |_k, v|
33
33
  v == OMIT
34
34
  end
35
35
  end
@@ -41,13 +41,13 @@ module Vapi
41
41
  def self.from_json(json_object:)
42
42
  struct = JSON.parse(json_object, object_class: OpenStruct)
43
43
  parsed_json = JSON.parse(json_object)
44
- provider = parsed_json["provider"]
45
44
  api_key = parsed_json["apiKey"]
46
45
  name = parsed_json["name"]
46
+ provider = parsed_json["provider"]
47
47
  new(
48
- provider: provider,
49
48
  api_key: api_key,
50
49
  name: name,
50
+ provider: provider,
51
51
  additional_properties: struct
52
52
  )
53
53
  end
@@ -66,9 +66,9 @@ module Vapi
66
66
  # @param obj [Object]
67
67
  # @return [Void]
68
68
  def self.validate_raw(obj:)
69
- obj.provider.is_a?(String) != false || raise("Passed value for field obj.provider is not the expected type, validation failed.")
70
- obj.api_key.is_a?(String) != false || raise("Passed value for field obj.api_key is not the expected type, validation failed.")
69
+ obj.api_key&.is_a?(String) != false || raise("Passed value for field obj.api_key is not the expected type, validation failed.")
71
70
  obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
71
+ obj.provider&.is_a?(String) != false || raise("Passed value for field obj.provider is not the expected type, validation failed.")
72
72
  end
73
73
  end
74
74
  end
@@ -0,0 +1,139 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "update_end_call_tool_dto_messages_item"
4
+ require_relative "open_ai_function"
5
+ require_relative "server"
6
+ require "ostruct"
7
+ require "json"
8
+
9
+ module Vapi
10
+ class UpdateEndCallToolDto
11
+ # @return [Boolean] This determines if the tool is async.
12
+ # If async, the assistant will move forward without waiting for your server to
13
+ # respond. This is useful if you just want to trigger something on your server.
14
+ # If sync, the assistant will wait for your server to respond. This is useful if
15
+ # want assistant to respond with the result from your server.
16
+ # Defaults to synchronous (`false`).
17
+ attr_reader :async
18
+ # @return [Array<Vapi::UpdateEndCallToolDtoMessagesItem>] These are the messages that will be spoken to the user as the tool is running.
19
+ # For some tools, this is auto-filled based on special fields like
20
+ # `tool.destinations`. For others like the function tool, these can be custom
21
+ # configured.
22
+ attr_reader :messages
23
+ # @return [Vapi::OpenAiFunction] This is the function definition of the tool.
24
+ # For `endCall`, `transferCall`, and `dtmf` tools, this is auto-filled based on
25
+ # tool-specific fields like `tool.destinations`. But, even in those cases, you can
26
+ # provide a custom function definition for advanced use cases.
27
+ # An example of an advanced use case is if you want to customize the message
28
+ # that's spoken for `endCall` tool. You can specify a function where it returns an
29
+ # argument "reason". Then, in `messages` array, you can have many
30
+ # "request-complete" messages. One of these messages will be triggered if the
31
+ # `messages[].conditions` matches the "reason" argument.
32
+ attr_reader :function
33
+ # @return [Vapi::Server] This is the server that will be hit when this tool is requested by the model.
34
+ # All requests will be sent with the call object among other things. You can find
35
+ # more details in the Server URL documentation.
36
+ # This overrides the serverUrl set on the org and the phoneNumber. Order of
37
+ # precedence: highest tool.server.url, then assistant.serverUrl, then
38
+ # phoneNumber.serverUrl, then org.serverUrl.
39
+ attr_reader :server
40
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
41
+ attr_reader :additional_properties
42
+ # @return [Object]
43
+ attr_reader :_field_set
44
+ protected :_field_set
45
+
46
+ OMIT = Object.new
47
+
48
+ # @param async [Boolean] This determines if the tool is async.
49
+ # If async, the assistant will move forward without waiting for your server to
50
+ # respond. This is useful if you just want to trigger something on your server.
51
+ # If sync, the assistant will wait for your server to respond. This is useful if
52
+ # want assistant to respond with the result from your server.
53
+ # Defaults to synchronous (`false`).
54
+ # @param messages [Array<Vapi::UpdateEndCallToolDtoMessagesItem>] These are the messages that will be spoken to the user as the tool is running.
55
+ # For some tools, this is auto-filled based on special fields like
56
+ # `tool.destinations`. For others like the function tool, these can be custom
57
+ # configured.
58
+ # @param function [Vapi::OpenAiFunction] This is the function definition of the tool.
59
+ # For `endCall`, `transferCall`, and `dtmf` tools, this is auto-filled based on
60
+ # tool-specific fields like `tool.destinations`. But, even in those cases, you can
61
+ # provide a custom function definition for advanced use cases.
62
+ # An example of an advanced use case is if you want to customize the message
63
+ # that's spoken for `endCall` tool. You can specify a function where it returns an
64
+ # argument "reason". Then, in `messages` array, you can have many
65
+ # "request-complete" messages. One of these messages will be triggered if the
66
+ # `messages[].conditions` matches the "reason" argument.
67
+ # @param server [Vapi::Server] This is the server that will be hit when this tool is requested by the model.
68
+ # All requests will be sent with the call object among other things. You can find
69
+ # more details in the Server URL documentation.
70
+ # This overrides the serverUrl set on the org and the phoneNumber. Order of
71
+ # precedence: highest tool.server.url, then assistant.serverUrl, then
72
+ # phoneNumber.serverUrl, then org.serverUrl.
73
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
74
+ # @return [Vapi::UpdateEndCallToolDto]
75
+ def initialize(async: OMIT, messages: OMIT, function: OMIT, server: OMIT, additional_properties: nil)
76
+ @async = async if async != OMIT
77
+ @messages = messages if messages != OMIT
78
+ @function = function if function != OMIT
79
+ @server = server if server != OMIT
80
+ @additional_properties = additional_properties
81
+ @_field_set = { "async": async, "messages": messages, "function": function, "server": server }.reject do |_k, v|
82
+ v == OMIT
83
+ end
84
+ end
85
+
86
+ # Deserialize a JSON object to an instance of UpdateEndCallToolDto
87
+ #
88
+ # @param json_object [String]
89
+ # @return [Vapi::UpdateEndCallToolDto]
90
+ def self.from_json(json_object:)
91
+ struct = JSON.parse(json_object, object_class: OpenStruct)
92
+ parsed_json = JSON.parse(json_object)
93
+ async = parsed_json["async"]
94
+ messages = parsed_json["messages"]&.map do |item|
95
+ item = item.to_json
96
+ Vapi::UpdateEndCallToolDtoMessagesItem.from_json(json_object: item)
97
+ end
98
+ if parsed_json["function"].nil?
99
+ function = nil
100
+ else
101
+ function = parsed_json["function"].to_json
102
+ function = Vapi::OpenAiFunction.from_json(json_object: function)
103
+ end
104
+ if parsed_json["server"].nil?
105
+ server = nil
106
+ else
107
+ server = parsed_json["server"].to_json
108
+ server = Vapi::Server.from_json(json_object: server)
109
+ end
110
+ new(
111
+ async: async,
112
+ messages: messages,
113
+ function: function,
114
+ server: server,
115
+ additional_properties: struct
116
+ )
117
+ end
118
+
119
+ # Serialize an instance of UpdateEndCallToolDto to a JSON object
120
+ #
121
+ # @return [String]
122
+ def to_json(*_args)
123
+ @_field_set&.to_json
124
+ end
125
+
126
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
127
+ # hash and check each fields type against the current object's property
128
+ # definitions.
129
+ #
130
+ # @param obj [Object]
131
+ # @return [Void]
132
+ def self.validate_raw(obj:)
133
+ obj.async&.is_a?(Boolean) != false || raise("Passed value for field obj.async is not the expected type, validation failed.")
134
+ obj.messages&.is_a?(Array) != false || raise("Passed value for field obj.messages is not the expected type, validation failed.")
135
+ obj.function.nil? || Vapi::OpenAiFunction.validate_raw(obj: obj.function)
136
+ obj.server.nil? || Vapi::Server.validate_raw(obj: obj.server)
137
+ end
138
+ end
139
+ end
@@ -0,0 +1,120 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "json"
4
+ require_relative "tool_message_start"
5
+ require_relative "tool_message_complete"
6
+ require_relative "tool_message_failed"
7
+ require_relative "tool_message_delayed"
8
+
9
+ module Vapi
10
+ class UpdateEndCallToolDtoMessagesItem
11
+ # @return [Object]
12
+ attr_reader :member
13
+ # @return [String]
14
+ attr_reader :discriminant
15
+
16
+ private_class_method :new
17
+ alias kind_of? is_a?
18
+
19
+ # @param member [Object]
20
+ # @param discriminant [String]
21
+ # @return [Vapi::UpdateEndCallToolDtoMessagesItem]
22
+ def initialize(member:, discriminant:)
23
+ @member = member
24
+ @discriminant = discriminant
25
+ end
26
+
27
+ # Deserialize a JSON object to an instance of UpdateEndCallToolDtoMessagesItem
28
+ #
29
+ # @param json_object [String]
30
+ # @return [Vapi::UpdateEndCallToolDtoMessagesItem]
31
+ def self.from_json(json_object:)
32
+ struct = JSON.parse(json_object, object_class: OpenStruct)
33
+ member = case struct.type
34
+ when "request-start"
35
+ Vapi::ToolMessageStart.from_json(json_object: json_object)
36
+ when "request-complete"
37
+ Vapi::ToolMessageComplete.from_json(json_object: json_object)
38
+ when "request-failed"
39
+ Vapi::ToolMessageFailed.from_json(json_object: json_object)
40
+ when "request-response-delayed"
41
+ Vapi::ToolMessageDelayed.from_json(json_object: json_object)
42
+ else
43
+ Vapi::ToolMessageStart.from_json(json_object: json_object)
44
+ end
45
+ new(member: member, discriminant: struct.type)
46
+ end
47
+
48
+ # For Union Types, to_json functionality is delegated to the wrapped member.
49
+ #
50
+ # @return [String]
51
+ def to_json(*_args)
52
+ case @discriminant
53
+ when "request-start"
54
+ { **@member.to_json, type: @discriminant }.to_json
55
+ when "request-complete"
56
+ { **@member.to_json, type: @discriminant }.to_json
57
+ when "request-failed"
58
+ { **@member.to_json, type: @discriminant }.to_json
59
+ when "request-response-delayed"
60
+ { **@member.to_json, type: @discriminant }.to_json
61
+ else
62
+ { "type": @discriminant, value: @member }.to_json
63
+ end
64
+ @member.to_json
65
+ end
66
+
67
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
68
+ # hash and check each fields type against the current object's property
69
+ # definitions.
70
+ #
71
+ # @param obj [Object]
72
+ # @return [Void]
73
+ def self.validate_raw(obj:)
74
+ case obj.type
75
+ when "request-start"
76
+ Vapi::ToolMessageStart.validate_raw(obj: obj)
77
+ when "request-complete"
78
+ Vapi::ToolMessageComplete.validate_raw(obj: obj)
79
+ when "request-failed"
80
+ Vapi::ToolMessageFailed.validate_raw(obj: obj)
81
+ when "request-response-delayed"
82
+ Vapi::ToolMessageDelayed.validate_raw(obj: obj)
83
+ else
84
+ raise("Passed value matched no type within the union, validation failed.")
85
+ end
86
+ end
87
+
88
+ # For Union Types, is_a? functionality is delegated to the wrapped member.
89
+ #
90
+ # @param obj [Object]
91
+ # @return [Boolean]
92
+ def is_a?(obj)
93
+ @member.is_a?(obj)
94
+ end
95
+
96
+ # @param member [Vapi::ToolMessageStart]
97
+ # @return [Vapi::UpdateEndCallToolDtoMessagesItem]
98
+ def self.request_start(member:)
99
+ new(member: member, discriminant: "request-start")
100
+ end
101
+
102
+ # @param member [Vapi::ToolMessageComplete]
103
+ # @return [Vapi::UpdateEndCallToolDtoMessagesItem]
104
+ def self.request_complete(member:)
105
+ new(member: member, discriminant: "request-complete")
106
+ end
107
+
108
+ # @param member [Vapi::ToolMessageFailed]
109
+ # @return [Vapi::UpdateEndCallToolDtoMessagesItem]
110
+ def self.request_failed(member:)
111
+ new(member: member, discriminant: "request-failed")
112
+ end
113
+
114
+ # @param member [Vapi::ToolMessageDelayed]
115
+ # @return [Vapi::UpdateEndCallToolDtoMessagesItem]
116
+ def self.request_response_delayed(member:)
117
+ new(member: member, discriminant: "request-response-delayed")
118
+ end
119
+ end
120
+ end
@@ -0,0 +1,139 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "update_function_tool_dto_messages_item"
4
+ require_relative "open_ai_function"
5
+ require_relative "server"
6
+ require "ostruct"
7
+ require "json"
8
+
9
+ module Vapi
10
+ class UpdateFunctionToolDto
11
+ # @return [Boolean] This determines if the tool is async.
12
+ # If async, the assistant will move forward without waiting for your server to
13
+ # respond. This is useful if you just want to trigger something on your server.
14
+ # If sync, the assistant will wait for your server to respond. This is useful if
15
+ # want assistant to respond with the result from your server.
16
+ # Defaults to synchronous (`false`).
17
+ attr_reader :async
18
+ # @return [Array<Vapi::UpdateFunctionToolDtoMessagesItem>] These are the messages that will be spoken to the user as the tool is running.
19
+ # For some tools, this is auto-filled based on special fields like
20
+ # `tool.destinations`. For others like the function tool, these can be custom
21
+ # configured.
22
+ attr_reader :messages
23
+ # @return [Vapi::OpenAiFunction] This is the function definition of the tool.
24
+ # For `endCall`, `transferCall`, and `dtmf` tools, this is auto-filled based on
25
+ # tool-specific fields like `tool.destinations`. But, even in those cases, you can
26
+ # provide a custom function definition for advanced use cases.
27
+ # An example of an advanced use case is if you want to customize the message
28
+ # that's spoken for `endCall` tool. You can specify a function where it returns an
29
+ # argument "reason". Then, in `messages` array, you can have many
30
+ # "request-complete" messages. One of these messages will be triggered if the
31
+ # `messages[].conditions` matches the "reason" argument.
32
+ attr_reader :function
33
+ # @return [Vapi::Server] This is the server that will be hit when this tool is requested by the model.
34
+ # All requests will be sent with the call object among other things. You can find
35
+ # more details in the Server URL documentation.
36
+ # This overrides the serverUrl set on the org and the phoneNumber. Order of
37
+ # precedence: highest tool.server.url, then assistant.serverUrl, then
38
+ # phoneNumber.serverUrl, then org.serverUrl.
39
+ attr_reader :server
40
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
41
+ attr_reader :additional_properties
42
+ # @return [Object]
43
+ attr_reader :_field_set
44
+ protected :_field_set
45
+
46
+ OMIT = Object.new
47
+
48
+ # @param async [Boolean] This determines if the tool is async.
49
+ # If async, the assistant will move forward without waiting for your server to
50
+ # respond. This is useful if you just want to trigger something on your server.
51
+ # If sync, the assistant will wait for your server to respond. This is useful if
52
+ # want assistant to respond with the result from your server.
53
+ # Defaults to synchronous (`false`).
54
+ # @param messages [Array<Vapi::UpdateFunctionToolDtoMessagesItem>] These are the messages that will be spoken to the user as the tool is running.
55
+ # For some tools, this is auto-filled based on special fields like
56
+ # `tool.destinations`. For others like the function tool, these can be custom
57
+ # configured.
58
+ # @param function [Vapi::OpenAiFunction] This is the function definition of the tool.
59
+ # For `endCall`, `transferCall`, and `dtmf` tools, this is auto-filled based on
60
+ # tool-specific fields like `tool.destinations`. But, even in those cases, you can
61
+ # provide a custom function definition for advanced use cases.
62
+ # An example of an advanced use case is if you want to customize the message
63
+ # that's spoken for `endCall` tool. You can specify a function where it returns an
64
+ # argument "reason". Then, in `messages` array, you can have many
65
+ # "request-complete" messages. One of these messages will be triggered if the
66
+ # `messages[].conditions` matches the "reason" argument.
67
+ # @param server [Vapi::Server] This is the server that will be hit when this tool is requested by the model.
68
+ # All requests will be sent with the call object among other things. You can find
69
+ # more details in the Server URL documentation.
70
+ # This overrides the serverUrl set on the org and the phoneNumber. Order of
71
+ # precedence: highest tool.server.url, then assistant.serverUrl, then
72
+ # phoneNumber.serverUrl, then org.serverUrl.
73
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
74
+ # @return [Vapi::UpdateFunctionToolDto]
75
+ def initialize(async: OMIT, messages: OMIT, function: OMIT, server: OMIT, additional_properties: nil)
76
+ @async = async if async != OMIT
77
+ @messages = messages if messages != OMIT
78
+ @function = function if function != OMIT
79
+ @server = server if server != OMIT
80
+ @additional_properties = additional_properties
81
+ @_field_set = { "async": async, "messages": messages, "function": function, "server": server }.reject do |_k, v|
82
+ v == OMIT
83
+ end
84
+ end
85
+
86
+ # Deserialize a JSON object to an instance of UpdateFunctionToolDto
87
+ #
88
+ # @param json_object [String]
89
+ # @return [Vapi::UpdateFunctionToolDto]
90
+ def self.from_json(json_object:)
91
+ struct = JSON.parse(json_object, object_class: OpenStruct)
92
+ parsed_json = JSON.parse(json_object)
93
+ async = parsed_json["async"]
94
+ messages = parsed_json["messages"]&.map do |item|
95
+ item = item.to_json
96
+ Vapi::UpdateFunctionToolDtoMessagesItem.from_json(json_object: item)
97
+ end
98
+ if parsed_json["function"].nil?
99
+ function = nil
100
+ else
101
+ function = parsed_json["function"].to_json
102
+ function = Vapi::OpenAiFunction.from_json(json_object: function)
103
+ end
104
+ if parsed_json["server"].nil?
105
+ server = nil
106
+ else
107
+ server = parsed_json["server"].to_json
108
+ server = Vapi::Server.from_json(json_object: server)
109
+ end
110
+ new(
111
+ async: async,
112
+ messages: messages,
113
+ function: function,
114
+ server: server,
115
+ additional_properties: struct
116
+ )
117
+ end
118
+
119
+ # Serialize an instance of UpdateFunctionToolDto to a JSON object
120
+ #
121
+ # @return [String]
122
+ def to_json(*_args)
123
+ @_field_set&.to_json
124
+ end
125
+
126
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
127
+ # hash and check each fields type against the current object's property
128
+ # definitions.
129
+ #
130
+ # @param obj [Object]
131
+ # @return [Void]
132
+ def self.validate_raw(obj:)
133
+ obj.async&.is_a?(Boolean) != false || raise("Passed value for field obj.async is not the expected type, validation failed.")
134
+ obj.messages&.is_a?(Array) != false || raise("Passed value for field obj.messages is not the expected type, validation failed.")
135
+ obj.function.nil? || Vapi::OpenAiFunction.validate_raw(obj: obj.function)
136
+ obj.server.nil? || Vapi::Server.validate_raw(obj: obj.server)
137
+ end
138
+ end
139
+ end
@@ -0,0 +1,120 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "json"
4
+ require_relative "tool_message_start"
5
+ require_relative "tool_message_complete"
6
+ require_relative "tool_message_failed"
7
+ require_relative "tool_message_delayed"
8
+
9
+ module Vapi
10
+ class UpdateFunctionToolDtoMessagesItem
11
+ # @return [Object]
12
+ attr_reader :member
13
+ # @return [String]
14
+ attr_reader :discriminant
15
+
16
+ private_class_method :new
17
+ alias kind_of? is_a?
18
+
19
+ # @param member [Object]
20
+ # @param discriminant [String]
21
+ # @return [Vapi::UpdateFunctionToolDtoMessagesItem]
22
+ def initialize(member:, discriminant:)
23
+ @member = member
24
+ @discriminant = discriminant
25
+ end
26
+
27
+ # Deserialize a JSON object to an instance of UpdateFunctionToolDtoMessagesItem
28
+ #
29
+ # @param json_object [String]
30
+ # @return [Vapi::UpdateFunctionToolDtoMessagesItem]
31
+ def self.from_json(json_object:)
32
+ struct = JSON.parse(json_object, object_class: OpenStruct)
33
+ member = case struct.type
34
+ when "request-start"
35
+ Vapi::ToolMessageStart.from_json(json_object: json_object)
36
+ when "request-complete"
37
+ Vapi::ToolMessageComplete.from_json(json_object: json_object)
38
+ when "request-failed"
39
+ Vapi::ToolMessageFailed.from_json(json_object: json_object)
40
+ when "request-response-delayed"
41
+ Vapi::ToolMessageDelayed.from_json(json_object: json_object)
42
+ else
43
+ Vapi::ToolMessageStart.from_json(json_object: json_object)
44
+ end
45
+ new(member: member, discriminant: struct.type)
46
+ end
47
+
48
+ # For Union Types, to_json functionality is delegated to the wrapped member.
49
+ #
50
+ # @return [String]
51
+ def to_json(*_args)
52
+ case @discriminant
53
+ when "request-start"
54
+ { **@member.to_json, type: @discriminant }.to_json
55
+ when "request-complete"
56
+ { **@member.to_json, type: @discriminant }.to_json
57
+ when "request-failed"
58
+ { **@member.to_json, type: @discriminant }.to_json
59
+ when "request-response-delayed"
60
+ { **@member.to_json, type: @discriminant }.to_json
61
+ else
62
+ { "type": @discriminant, value: @member }.to_json
63
+ end
64
+ @member.to_json
65
+ end
66
+
67
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
68
+ # hash and check each fields type against the current object's property
69
+ # definitions.
70
+ #
71
+ # @param obj [Object]
72
+ # @return [Void]
73
+ def self.validate_raw(obj:)
74
+ case obj.type
75
+ when "request-start"
76
+ Vapi::ToolMessageStart.validate_raw(obj: obj)
77
+ when "request-complete"
78
+ Vapi::ToolMessageComplete.validate_raw(obj: obj)
79
+ when "request-failed"
80
+ Vapi::ToolMessageFailed.validate_raw(obj: obj)
81
+ when "request-response-delayed"
82
+ Vapi::ToolMessageDelayed.validate_raw(obj: obj)
83
+ else
84
+ raise("Passed value matched no type within the union, validation failed.")
85
+ end
86
+ end
87
+
88
+ # For Union Types, is_a? functionality is delegated to the wrapped member.
89
+ #
90
+ # @param obj [Object]
91
+ # @return [Boolean]
92
+ def is_a?(obj)
93
+ @member.is_a?(obj)
94
+ end
95
+
96
+ # @param member [Vapi::ToolMessageStart]
97
+ # @return [Vapi::UpdateFunctionToolDtoMessagesItem]
98
+ def self.request_start(member:)
99
+ new(member: member, discriminant: "request-start")
100
+ end
101
+
102
+ # @param member [Vapi::ToolMessageComplete]
103
+ # @return [Vapi::UpdateFunctionToolDtoMessagesItem]
104
+ def self.request_complete(member:)
105
+ new(member: member, discriminant: "request-complete")
106
+ end
107
+
108
+ # @param member [Vapi::ToolMessageFailed]
109
+ # @return [Vapi::UpdateFunctionToolDtoMessagesItem]
110
+ def self.request_failed(member:)
111
+ new(member: member, discriminant: "request-failed")
112
+ end
113
+
114
+ # @param member [Vapi::ToolMessageDelayed]
115
+ # @return [Vapi::UpdateFunctionToolDtoMessagesItem]
116
+ def self.request_response_delayed(member:)
117
+ new(member: member, discriminant: "request-response-delayed")
118
+ end
119
+ end
120
+ end
@@ -7,8 +7,8 @@ require "json"
7
7
 
8
8
  module Vapi
9
9
  class UpdateGcpCredentialDto
10
- # @return [String]
11
- attr_reader :provider
10
+ # @return [String] This is the name of credential. This is just for your reference.
11
+ attr_reader :name
12
12
  # @return [Vapi::GcpKey] This is the GCP key. This is the JSON that can be generated in the Google Cloud
13
13
  # Console at
14
14
  # le.cloud.google.com/iam-admin/serviceaccounts/details/<service-account-id>/keys.
@@ -16,8 +16,6 @@ module Vapi
16
16
  attr_reader :gcp_key
17
17
  # @return [Vapi::BucketPlan] This is the bucket plan that can be provided to store call artifacts in GCP.
18
18
  attr_reader :bucket_plan
19
- # @return [String] This is the name of credential. This is just for your reference.
20
- attr_reader :name
21
19
  # @return [OpenStruct] Additional properties unmapped to the current class definition
22
20
  attr_reader :additional_properties
23
21
  # @return [Object]
@@ -26,27 +24,20 @@ module Vapi
26
24
 
27
25
  OMIT = Object.new
28
26
 
29
- # @param provider [String]
27
+ # @param name [String] This is the name of credential. This is just for your reference.
30
28
  # @param gcp_key [Vapi::GcpKey] This is the GCP key. This is the JSON that can be generated in the Google Cloud
31
29
  # Console at
32
30
  # le.cloud.google.com/iam-admin/serviceaccounts/details/<service-account-id>/keys.
33
31
  # The schema is identical to the JSON that GCP outputs.
34
32
  # @param bucket_plan [Vapi::BucketPlan] This is the bucket plan that can be provided to store call artifacts in GCP.
35
- # @param name [String] This is the name of credential. This is just for your reference.
36
33
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
37
34
  # @return [Vapi::UpdateGcpCredentialDto]
38
- def initialize(provider:, gcp_key:, bucket_plan: OMIT, name: OMIT, additional_properties: nil)
39
- @provider = provider
40
- @gcp_key = gcp_key
41
- @bucket_plan = bucket_plan if bucket_plan != OMIT
35
+ def initialize(name: OMIT, gcp_key: OMIT, bucket_plan: OMIT, additional_properties: nil)
42
36
  @name = name if name != OMIT
37
+ @gcp_key = gcp_key if gcp_key != OMIT
38
+ @bucket_plan = bucket_plan if bucket_plan != OMIT
43
39
  @additional_properties = additional_properties
44
- @_field_set = {
45
- "provider": provider,
46
- "gcpKey": gcp_key,
47
- "bucketPlan": bucket_plan,
48
- "name": name
49
- }.reject do |_k, v|
40
+ @_field_set = { "name": name, "gcpKey": gcp_key, "bucketPlan": bucket_plan }.reject do |_k, v|
50
41
  v == OMIT
51
42
  end
52
43
  end
@@ -58,7 +49,7 @@ module Vapi
58
49
  def self.from_json(json_object:)
59
50
  struct = JSON.parse(json_object, object_class: OpenStruct)
60
51
  parsed_json = JSON.parse(json_object)
61
- provider = parsed_json["provider"]
52
+ name = parsed_json["name"]
62
53
  if parsed_json["gcpKey"].nil?
63
54
  gcp_key = nil
64
55
  else
@@ -71,12 +62,10 @@ module Vapi
71
62
  bucket_plan = parsed_json["bucketPlan"].to_json
72
63
  bucket_plan = Vapi::BucketPlan.from_json(json_object: bucket_plan)
73
64
  end
74
- name = parsed_json["name"]
75
65
  new(
76
- provider: provider,
66
+ name: name,
77
67
  gcp_key: gcp_key,
78
68
  bucket_plan: bucket_plan,
79
- name: name,
80
69
  additional_properties: struct
81
70
  )
82
71
  end
@@ -95,10 +84,9 @@ module Vapi
95
84
  # @param obj [Object]
96
85
  # @return [Void]
97
86
  def self.validate_raw(obj:)
98
- obj.provider.is_a?(String) != false || raise("Passed value for field obj.provider is not the expected type, validation failed.")
99
- Vapi::GcpKey.validate_raw(obj: obj.gcp_key)
100
- obj.bucket_plan.nil? || Vapi::BucketPlan.validate_raw(obj: obj.bucket_plan)
101
87
  obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
88
+ obj.gcp_key.nil? || Vapi::GcpKey.validate_raw(obj: obj.gcp_key)
89
+ obj.bucket_plan.nil? || Vapi::BucketPlan.validate_raw(obj: obj.bucket_plan)
102
90
  end
103
91
  end
104
92
  end