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
@@ -8,6 +8,7 @@ require_relative "assistant_overrides_client_messages_item"
8
8
  require_relative "assistant_overrides_server_messages_item"
9
9
  require_relative "assistant_overrides_background_sound"
10
10
  require_relative "transport_configuration_twilio"
11
+ require_relative "assistant_overrides_credentials_item"
11
12
  require_relative "twilio_voicemail_detection"
12
13
  require_relative "analysis_plan"
13
14
  require_relative "artifact_plan"
@@ -79,6 +80,11 @@ module Vapi
79
80
  # different transport providers. For a call, only the configuration matching the
80
81
  # call transport provider is used.
81
82
  attr_reader :transport_configurations
83
+ # @return [Array<Vapi::AssistantOverridesCredentialsItem>] These are dynamic credentials that will be used for the assistant calls. By
84
+ # default, all the credentials are available for use in the call but you can
85
+ # supplement an additional credentials using this. Dynamic credentials override
86
+ # existing credentials.
87
+ attr_reader :credentials
82
88
  # @return [Hash{String => Object}] These are values that will be used to replace the template variables in the
83
89
  # assistant messages and other text-based fields.
84
90
  # This uses LiquidJS syntax. https://liquidjs.com/tutorials/intro-to-liquid.html
@@ -216,6 +222,10 @@ module Vapi
216
222
  # assistant's calls, like Twilio. You can store multiple configurations for
217
223
  # different transport providers. For a call, only the configuration matching the
218
224
  # call transport provider is used.
225
+ # @param credentials [Array<Vapi::AssistantOverridesCredentialsItem>] These are dynamic credentials that will be used for the assistant calls. By
226
+ # default, all the credentials are available for use in the call but you can
227
+ # supplement an additional credentials using this. Dynamic credentials override
228
+ # existing credentials.
219
229
  # @param variable_values [Hash{String => Object}] These are values that will be used to replace the template variables in the
220
230
  # assistant messages and other text-based fields.
221
231
  # This uses LiquidJS syntax. https://liquidjs.com/tutorials/intro-to-liquid.html
@@ -289,7 +299,7 @@ module Vapi
289
299
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
290
300
  # @return [Vapi::AssistantOverrides]
291
301
  def initialize(transcriber: OMIT, model: OMIT, voice: OMIT, first_message: OMIT, first_message_mode: OMIT,
292
- hipaa_enabled: OMIT, client_messages: OMIT, server_messages: OMIT, silence_timeout_seconds: OMIT, max_duration_seconds: OMIT, background_sound: OMIT, background_denoising_enabled: OMIT, model_output_in_messages_enabled: OMIT, transport_configurations: OMIT, variable_values: OMIT, name: OMIT, voicemail_detection: OMIT, voicemail_message: OMIT, end_call_message: OMIT, end_call_phrases: OMIT, metadata: OMIT, analysis_plan: OMIT, artifact_plan: OMIT, message_plan: OMIT, start_speaking_plan: OMIT, stop_speaking_plan: OMIT, monitor_plan: OMIT, credential_ids: OMIT, server: OMIT, additional_properties: nil)
302
+ hipaa_enabled: OMIT, client_messages: OMIT, server_messages: OMIT, silence_timeout_seconds: OMIT, max_duration_seconds: OMIT, background_sound: OMIT, background_denoising_enabled: OMIT, model_output_in_messages_enabled: OMIT, transport_configurations: OMIT, credentials: OMIT, variable_values: OMIT, name: OMIT, voicemail_detection: OMIT, voicemail_message: OMIT, end_call_message: OMIT, end_call_phrases: OMIT, metadata: OMIT, analysis_plan: OMIT, artifact_plan: OMIT, message_plan: OMIT, start_speaking_plan: OMIT, stop_speaking_plan: OMIT, monitor_plan: OMIT, credential_ids: OMIT, server: OMIT, additional_properties: nil)
293
303
  @transcriber = transcriber if transcriber != OMIT
294
304
  @model = model if model != OMIT
295
305
  @voice = voice if voice != OMIT
@@ -304,6 +314,7 @@ module Vapi
304
314
  @background_denoising_enabled = background_denoising_enabled if background_denoising_enabled != OMIT
305
315
  @model_output_in_messages_enabled = model_output_in_messages_enabled if model_output_in_messages_enabled != OMIT
306
316
  @transport_configurations = transport_configurations if transport_configurations != OMIT
317
+ @credentials = credentials if credentials != OMIT
307
318
  @variable_values = variable_values if variable_values != OMIT
308
319
  @name = name if name != OMIT
309
320
  @voicemail_detection = voicemail_detection if voicemail_detection != OMIT
@@ -335,6 +346,7 @@ module Vapi
335
346
  "backgroundDenoisingEnabled": background_denoising_enabled,
336
347
  "modelOutputInMessagesEnabled": model_output_in_messages_enabled,
337
348
  "transportConfigurations": transport_configurations,
349
+ "credentials": credentials,
338
350
  "variableValues": variable_values,
339
351
  "name": name,
340
352
  "voicemailDetection": voicemail_detection,
@@ -394,6 +406,10 @@ module Vapi
394
406
  item = item.to_json
395
407
  Vapi::TransportConfigurationTwilio.from_json(json_object: item)
396
408
  end
409
+ credentials = parsed_json["credentials"]&.map do |item|
410
+ item = item.to_json
411
+ Vapi::AssistantOverridesCredentialsItem.from_json(json_object: item)
412
+ end
397
413
  variable_values = parsed_json["variableValues"]
398
414
  name = parsed_json["name"]
399
415
  if parsed_json["voicemailDetection"].nil?
@@ -464,6 +480,7 @@ module Vapi
464
480
  background_denoising_enabled: background_denoising_enabled,
465
481
  model_output_in_messages_enabled: model_output_in_messages_enabled,
466
482
  transport_configurations: transport_configurations,
483
+ credentials: credentials,
467
484
  variable_values: variable_values,
468
485
  name: name,
469
486
  voicemail_detection: voicemail_detection,
@@ -511,6 +528,7 @@ module Vapi
511
528
  obj.background_denoising_enabled&.is_a?(Boolean) != false || raise("Passed value for field obj.background_denoising_enabled is not the expected type, validation failed.")
512
529
  obj.model_output_in_messages_enabled&.is_a?(Boolean) != false || raise("Passed value for field obj.model_output_in_messages_enabled is not the expected type, validation failed.")
513
530
  obj.transport_configurations&.is_a?(Array) != false || raise("Passed value for field obj.transport_configurations is not the expected type, validation failed.")
531
+ obj.credentials&.is_a?(Array) != false || raise("Passed value for field obj.credentials is not the expected type, validation failed.")
514
532
  obj.variable_values&.is_a?(Hash) != false || raise("Passed value for field obj.variable_values is not the expected type, validation failed.")
515
533
  obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
516
534
  obj.voicemail_detection.nil? || Vapi::TwilioVoicemailDetection.validate_raw(obj: obj.voicemail_detection)
@@ -0,0 +1,510 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "json"
4
+ require_relative "create_anthropic_credential_dto"
5
+ require_relative "create_anyscale_credential_dto"
6
+ require_relative "create_assembly_ai_credential_dto"
7
+ require_relative "create_azure_open_ai_credential_dto"
8
+ require_relative "create_azure_credential_dto"
9
+ require_relative "create_byo_sip_trunk_credential_dto"
10
+ require_relative "create_cartesia_credential_dto"
11
+ require_relative "create_cloudflare_credential_dto"
12
+ require_relative "create_custom_llm_credential_dto"
13
+ require_relative "create_deepgram_credential_dto"
14
+ require_relative "create_deep_infra_credential_dto"
15
+ require_relative "create_deep_seek_credential_dto"
16
+ require_relative "create_eleven_labs_credential_dto"
17
+ require_relative "create_gcp_credential_dto"
18
+ require_relative "create_gladia_credential_dto"
19
+ require_relative "create_go_high_level_credential_dto"
20
+ require_relative "create_groq_credential_dto"
21
+ require_relative "create_langfuse_credential_dto"
22
+ require_relative "create_lmnt_credential_dto"
23
+ require_relative "create_make_credential_dto"
24
+ require_relative "create_open_ai_credential_dto"
25
+ require_relative "create_open_router_credential_dto"
26
+ require_relative "create_perplexity_ai_credential_dto"
27
+ require_relative "create_play_ht_credential_dto"
28
+ require_relative "create_rime_ai_credential_dto"
29
+ require_relative "create_runpod_credential_dto"
30
+ require_relative "create_s_3_credential_dto"
31
+ require_relative "create_smallest_ai_credential_dto"
32
+ require_relative "create_tavus_credential_dto"
33
+ require_relative "create_together_ai_credential_dto"
34
+ require_relative "create_twilio_credential_dto"
35
+ require_relative "create_vonage_credential_dto"
36
+ require_relative "create_webhook_credential_dto"
37
+ require_relative "create_x_ai_credential_dto"
38
+
39
+ module Vapi
40
+ class AssistantOverridesCredentialsItem
41
+ # @return [Object]
42
+ attr_reader :member
43
+ # @return [String]
44
+ attr_reader :discriminant
45
+
46
+ private_class_method :new
47
+ alias kind_of? is_a?
48
+
49
+ # @param member [Object]
50
+ # @param discriminant [String]
51
+ # @return [Vapi::AssistantOverridesCredentialsItem]
52
+ def initialize(member:, discriminant:)
53
+ @member = member
54
+ @discriminant = discriminant
55
+ end
56
+
57
+ # Deserialize a JSON object to an instance of AssistantOverridesCredentialsItem
58
+ #
59
+ # @param json_object [String]
60
+ # @return [Vapi::AssistantOverridesCredentialsItem]
61
+ def self.from_json(json_object:)
62
+ struct = JSON.parse(json_object, object_class: OpenStruct)
63
+ member = case struct.provider
64
+ when "anthropic"
65
+ Vapi::CreateAnthropicCredentialDto.from_json(json_object: json_object)
66
+ when "anyscale"
67
+ Vapi::CreateAnyscaleCredentialDto.from_json(json_object: json_object)
68
+ when "assembly-ai"
69
+ Vapi::CreateAssemblyAiCredentialDto.from_json(json_object: json_object)
70
+ when "azure-openai"
71
+ Vapi::CreateAzureOpenAiCredentialDto.from_json(json_object: json_object)
72
+ when "azure"
73
+ Vapi::CreateAzureCredentialDto.from_json(json_object: json_object)
74
+ when "byo-sip-trunk"
75
+ Vapi::CreateByoSipTrunkCredentialDto.from_json(json_object: json_object)
76
+ when "cartesia"
77
+ Vapi::CreateCartesiaCredentialDto.from_json(json_object: json_object)
78
+ when "cloudflare"
79
+ Vapi::CreateCloudflareCredentialDto.from_json(json_object: json_object)
80
+ when "custom-llm"
81
+ Vapi::CreateCustomLlmCredentialDto.from_json(json_object: json_object)
82
+ when "deepgram"
83
+ Vapi::CreateDeepgramCredentialDto.from_json(json_object: json_object)
84
+ when "deepinfra"
85
+ Vapi::CreateDeepInfraCredentialDto.from_json(json_object: json_object)
86
+ when "deep-seek"
87
+ Vapi::CreateDeepSeekCredentialDto.from_json(json_object: json_object)
88
+ when "11labs"
89
+ Vapi::CreateElevenLabsCredentialDto.from_json(json_object: json_object)
90
+ when "gcp"
91
+ Vapi::CreateGcpCredentialDto.from_json(json_object: json_object)
92
+ when "gladia"
93
+ Vapi::CreateGladiaCredentialDto.from_json(json_object: json_object)
94
+ when "gohighlevel"
95
+ Vapi::CreateGoHighLevelCredentialDto.from_json(json_object: json_object)
96
+ when "groq"
97
+ Vapi::CreateGroqCredentialDto.from_json(json_object: json_object)
98
+ when "langfuse"
99
+ Vapi::CreateLangfuseCredentialDto.from_json(json_object: json_object)
100
+ when "lmnt"
101
+ Vapi::CreateLmntCredentialDto.from_json(json_object: json_object)
102
+ when "make"
103
+ Vapi::CreateMakeCredentialDto.from_json(json_object: json_object)
104
+ when "openai"
105
+ Vapi::CreateOpenAiCredentialDto.from_json(json_object: json_object)
106
+ when "openrouter"
107
+ Vapi::CreateOpenRouterCredentialDto.from_json(json_object: json_object)
108
+ when "perplexity-ai"
109
+ Vapi::CreatePerplexityAiCredentialDto.from_json(json_object: json_object)
110
+ when "playht"
111
+ Vapi::CreatePlayHtCredentialDto.from_json(json_object: json_object)
112
+ when "rime-ai"
113
+ Vapi::CreateRimeAiCredentialDto.from_json(json_object: json_object)
114
+ when "runpod"
115
+ Vapi::CreateRunpodCredentialDto.from_json(json_object: json_object)
116
+ when "s3"
117
+ Vapi::CreateS3CredentialDto.from_json(json_object: json_object)
118
+ when "smallest-ai"
119
+ Vapi::CreateSmallestAiCredentialDto.from_json(json_object: json_object)
120
+ when "tavus"
121
+ Vapi::CreateTavusCredentialDto.from_json(json_object: json_object)
122
+ when "together-ai"
123
+ Vapi::CreateTogetherAiCredentialDto.from_json(json_object: json_object)
124
+ when "twilio"
125
+ Vapi::CreateTwilioCredentialDto.from_json(json_object: json_object)
126
+ when "vonage"
127
+ Vapi::CreateVonageCredentialDto.from_json(json_object: json_object)
128
+ when "webhook"
129
+ Vapi::CreateWebhookCredentialDto.from_json(json_object: json_object)
130
+ when "xai"
131
+ Vapi::CreateXAiCredentialDto.from_json(json_object: json_object)
132
+ else
133
+ Vapi::CreateAnthropicCredentialDto.from_json(json_object: json_object)
134
+ end
135
+ new(member: member, discriminant: struct.provider)
136
+ end
137
+
138
+ # For Union Types, to_json functionality is delegated to the wrapped member.
139
+ #
140
+ # @return [String]
141
+ def to_json(*_args)
142
+ case @discriminant
143
+ when "anthropic"
144
+ { **@member.to_json, provider: @discriminant }.to_json
145
+ when "anyscale"
146
+ { **@member.to_json, provider: @discriminant }.to_json
147
+ when "assembly-ai"
148
+ { **@member.to_json, provider: @discriminant }.to_json
149
+ when "azure-openai"
150
+ { **@member.to_json, provider: @discriminant }.to_json
151
+ when "azure"
152
+ { **@member.to_json, provider: @discriminant }.to_json
153
+ when "byo-sip-trunk"
154
+ { **@member.to_json, provider: @discriminant }.to_json
155
+ when "cartesia"
156
+ { **@member.to_json, provider: @discriminant }.to_json
157
+ when "cloudflare"
158
+ { **@member.to_json, provider: @discriminant }.to_json
159
+ when "custom-llm"
160
+ { **@member.to_json, provider: @discriminant }.to_json
161
+ when "deepgram"
162
+ { **@member.to_json, provider: @discriminant }.to_json
163
+ when "deepinfra"
164
+ { **@member.to_json, provider: @discriminant }.to_json
165
+ when "deep-seek"
166
+ { **@member.to_json, provider: @discriminant }.to_json
167
+ when "11labs"
168
+ { **@member.to_json, provider: @discriminant }.to_json
169
+ when "gcp"
170
+ { **@member.to_json, provider: @discriminant }.to_json
171
+ when "gladia"
172
+ { **@member.to_json, provider: @discriminant }.to_json
173
+ when "gohighlevel"
174
+ { **@member.to_json, provider: @discriminant }.to_json
175
+ when "groq"
176
+ { **@member.to_json, provider: @discriminant }.to_json
177
+ when "langfuse"
178
+ { **@member.to_json, provider: @discriminant }.to_json
179
+ when "lmnt"
180
+ { **@member.to_json, provider: @discriminant }.to_json
181
+ when "make"
182
+ { **@member.to_json, provider: @discriminant }.to_json
183
+ when "openai"
184
+ { **@member.to_json, provider: @discriminant }.to_json
185
+ when "openrouter"
186
+ { **@member.to_json, provider: @discriminant }.to_json
187
+ when "perplexity-ai"
188
+ { **@member.to_json, provider: @discriminant }.to_json
189
+ when "playht"
190
+ { **@member.to_json, provider: @discriminant }.to_json
191
+ when "rime-ai"
192
+ { **@member.to_json, provider: @discriminant }.to_json
193
+ when "runpod"
194
+ { **@member.to_json, provider: @discriminant }.to_json
195
+ when "s3"
196
+ { **@member.to_json, provider: @discriminant }.to_json
197
+ when "smallest-ai"
198
+ { **@member.to_json, provider: @discriminant }.to_json
199
+ when "tavus"
200
+ { **@member.to_json, provider: @discriminant }.to_json
201
+ when "together-ai"
202
+ { **@member.to_json, provider: @discriminant }.to_json
203
+ when "twilio"
204
+ { **@member.to_json, provider: @discriminant }.to_json
205
+ when "vonage"
206
+ { **@member.to_json, provider: @discriminant }.to_json
207
+ when "webhook"
208
+ { **@member.to_json, provider: @discriminant }.to_json
209
+ when "xai"
210
+ { **@member.to_json, provider: @discriminant }.to_json
211
+ else
212
+ { "provider": @discriminant, value: @member }.to_json
213
+ end
214
+ @member.to_json
215
+ end
216
+
217
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
218
+ # hash and check each fields type against the current object's property
219
+ # definitions.
220
+ #
221
+ # @param obj [Object]
222
+ # @return [Void]
223
+ def self.validate_raw(obj:)
224
+ case obj.provider
225
+ when "anthropic"
226
+ Vapi::CreateAnthropicCredentialDto.validate_raw(obj: obj)
227
+ when "anyscale"
228
+ Vapi::CreateAnyscaleCredentialDto.validate_raw(obj: obj)
229
+ when "assembly-ai"
230
+ Vapi::CreateAssemblyAiCredentialDto.validate_raw(obj: obj)
231
+ when "azure-openai"
232
+ Vapi::CreateAzureOpenAiCredentialDto.validate_raw(obj: obj)
233
+ when "azure"
234
+ Vapi::CreateAzureCredentialDto.validate_raw(obj: obj)
235
+ when "byo-sip-trunk"
236
+ Vapi::CreateByoSipTrunkCredentialDto.validate_raw(obj: obj)
237
+ when "cartesia"
238
+ Vapi::CreateCartesiaCredentialDto.validate_raw(obj: obj)
239
+ when "cloudflare"
240
+ Vapi::CreateCloudflareCredentialDto.validate_raw(obj: obj)
241
+ when "custom-llm"
242
+ Vapi::CreateCustomLlmCredentialDto.validate_raw(obj: obj)
243
+ when "deepgram"
244
+ Vapi::CreateDeepgramCredentialDto.validate_raw(obj: obj)
245
+ when "deepinfra"
246
+ Vapi::CreateDeepInfraCredentialDto.validate_raw(obj: obj)
247
+ when "deep-seek"
248
+ Vapi::CreateDeepSeekCredentialDto.validate_raw(obj: obj)
249
+ when "11labs"
250
+ Vapi::CreateElevenLabsCredentialDto.validate_raw(obj: obj)
251
+ when "gcp"
252
+ Vapi::CreateGcpCredentialDto.validate_raw(obj: obj)
253
+ when "gladia"
254
+ Vapi::CreateGladiaCredentialDto.validate_raw(obj: obj)
255
+ when "gohighlevel"
256
+ Vapi::CreateGoHighLevelCredentialDto.validate_raw(obj: obj)
257
+ when "groq"
258
+ Vapi::CreateGroqCredentialDto.validate_raw(obj: obj)
259
+ when "langfuse"
260
+ Vapi::CreateLangfuseCredentialDto.validate_raw(obj: obj)
261
+ when "lmnt"
262
+ Vapi::CreateLmntCredentialDto.validate_raw(obj: obj)
263
+ when "make"
264
+ Vapi::CreateMakeCredentialDto.validate_raw(obj: obj)
265
+ when "openai"
266
+ Vapi::CreateOpenAiCredentialDto.validate_raw(obj: obj)
267
+ when "openrouter"
268
+ Vapi::CreateOpenRouterCredentialDto.validate_raw(obj: obj)
269
+ when "perplexity-ai"
270
+ Vapi::CreatePerplexityAiCredentialDto.validate_raw(obj: obj)
271
+ when "playht"
272
+ Vapi::CreatePlayHtCredentialDto.validate_raw(obj: obj)
273
+ when "rime-ai"
274
+ Vapi::CreateRimeAiCredentialDto.validate_raw(obj: obj)
275
+ when "runpod"
276
+ Vapi::CreateRunpodCredentialDto.validate_raw(obj: obj)
277
+ when "s3"
278
+ Vapi::CreateS3CredentialDto.validate_raw(obj: obj)
279
+ when "smallest-ai"
280
+ Vapi::CreateSmallestAiCredentialDto.validate_raw(obj: obj)
281
+ when "tavus"
282
+ Vapi::CreateTavusCredentialDto.validate_raw(obj: obj)
283
+ when "together-ai"
284
+ Vapi::CreateTogetherAiCredentialDto.validate_raw(obj: obj)
285
+ when "twilio"
286
+ Vapi::CreateTwilioCredentialDto.validate_raw(obj: obj)
287
+ when "vonage"
288
+ Vapi::CreateVonageCredentialDto.validate_raw(obj: obj)
289
+ when "webhook"
290
+ Vapi::CreateWebhookCredentialDto.validate_raw(obj: obj)
291
+ when "xai"
292
+ Vapi::CreateXAiCredentialDto.validate_raw(obj: obj)
293
+ else
294
+ raise("Passed value matched no type within the union, validation failed.")
295
+ end
296
+ end
297
+
298
+ # For Union Types, is_a? functionality is delegated to the wrapped member.
299
+ #
300
+ # @param obj [Object]
301
+ # @return [Boolean]
302
+ def is_a?(obj)
303
+ @member.is_a?(obj)
304
+ end
305
+
306
+ # @param member [Vapi::CreateAnthropicCredentialDto]
307
+ # @return [Vapi::AssistantOverridesCredentialsItem]
308
+ def self.anthropic(member:)
309
+ new(member: member, discriminant: "anthropic")
310
+ end
311
+
312
+ # @param member [Vapi::CreateAnyscaleCredentialDto]
313
+ # @return [Vapi::AssistantOverridesCredentialsItem]
314
+ def self.anyscale(member:)
315
+ new(member: member, discriminant: "anyscale")
316
+ end
317
+
318
+ # @param member [Vapi::CreateAssemblyAiCredentialDto]
319
+ # @return [Vapi::AssistantOverridesCredentialsItem]
320
+ def self.assembly_ai(member:)
321
+ new(member: member, discriminant: "assembly-ai")
322
+ end
323
+
324
+ # @param member [Vapi::CreateAzureOpenAiCredentialDto]
325
+ # @return [Vapi::AssistantOverridesCredentialsItem]
326
+ def self.azure_openai(member:)
327
+ new(member: member, discriminant: "azure-openai")
328
+ end
329
+
330
+ # @param member [Vapi::CreateAzureCredentialDto]
331
+ # @return [Vapi::AssistantOverridesCredentialsItem]
332
+ def self.azure(member:)
333
+ new(member: member, discriminant: "azure")
334
+ end
335
+
336
+ # @param member [Vapi::CreateByoSipTrunkCredentialDto]
337
+ # @return [Vapi::AssistantOverridesCredentialsItem]
338
+ def self.byo_sip_trunk(member:)
339
+ new(member: member, discriminant: "byo-sip-trunk")
340
+ end
341
+
342
+ # @param member [Vapi::CreateCartesiaCredentialDto]
343
+ # @return [Vapi::AssistantOverridesCredentialsItem]
344
+ def self.cartesia(member:)
345
+ new(member: member, discriminant: "cartesia")
346
+ end
347
+
348
+ # @param member [Vapi::CreateCloudflareCredentialDto]
349
+ # @return [Vapi::AssistantOverridesCredentialsItem]
350
+ def self.cloudflare(member:)
351
+ new(member: member, discriminant: "cloudflare")
352
+ end
353
+
354
+ # @param member [Vapi::CreateCustomLlmCredentialDto]
355
+ # @return [Vapi::AssistantOverridesCredentialsItem]
356
+ def self.custom_llm(member:)
357
+ new(member: member, discriminant: "custom-llm")
358
+ end
359
+
360
+ # @param member [Vapi::CreateDeepgramCredentialDto]
361
+ # @return [Vapi::AssistantOverridesCredentialsItem]
362
+ def self.deepgram(member:)
363
+ new(member: member, discriminant: "deepgram")
364
+ end
365
+
366
+ # @param member [Vapi::CreateDeepInfraCredentialDto]
367
+ # @return [Vapi::AssistantOverridesCredentialsItem]
368
+ def self.deepinfra(member:)
369
+ new(member: member, discriminant: "deepinfra")
370
+ end
371
+
372
+ # @param member [Vapi::CreateDeepSeekCredentialDto]
373
+ # @return [Vapi::AssistantOverridesCredentialsItem]
374
+ def self.deep_seek(member:)
375
+ new(member: member, discriminant: "deep-seek")
376
+ end
377
+
378
+ # @param member [Vapi::CreateElevenLabsCredentialDto]
379
+ # @return [Vapi::AssistantOverridesCredentialsItem]
380
+ def self._11_labs(member:)
381
+ new(member: member, discriminant: "11labs")
382
+ end
383
+
384
+ # @param member [Vapi::CreateGcpCredentialDto]
385
+ # @return [Vapi::AssistantOverridesCredentialsItem]
386
+ def self.gcp(member:)
387
+ new(member: member, discriminant: "gcp")
388
+ end
389
+
390
+ # @param member [Vapi::CreateGladiaCredentialDto]
391
+ # @return [Vapi::AssistantOverridesCredentialsItem]
392
+ def self.gladia(member:)
393
+ new(member: member, discriminant: "gladia")
394
+ end
395
+
396
+ # @param member [Vapi::CreateGoHighLevelCredentialDto]
397
+ # @return [Vapi::AssistantOverridesCredentialsItem]
398
+ def self.gohighlevel(member:)
399
+ new(member: member, discriminant: "gohighlevel")
400
+ end
401
+
402
+ # @param member [Vapi::CreateGroqCredentialDto]
403
+ # @return [Vapi::AssistantOverridesCredentialsItem]
404
+ def self.groq(member:)
405
+ new(member: member, discriminant: "groq")
406
+ end
407
+
408
+ # @param member [Vapi::CreateLangfuseCredentialDto]
409
+ # @return [Vapi::AssistantOverridesCredentialsItem]
410
+ def self.langfuse(member:)
411
+ new(member: member, discriminant: "langfuse")
412
+ end
413
+
414
+ # @param member [Vapi::CreateLmntCredentialDto]
415
+ # @return [Vapi::AssistantOverridesCredentialsItem]
416
+ def self.lmnt(member:)
417
+ new(member: member, discriminant: "lmnt")
418
+ end
419
+
420
+ # @param member [Vapi::CreateMakeCredentialDto]
421
+ # @return [Vapi::AssistantOverridesCredentialsItem]
422
+ def self.make(member:)
423
+ new(member: member, discriminant: "make")
424
+ end
425
+
426
+ # @param member [Vapi::CreateOpenAiCredentialDto]
427
+ # @return [Vapi::AssistantOverridesCredentialsItem]
428
+ def self.openai(member:)
429
+ new(member: member, discriminant: "openai")
430
+ end
431
+
432
+ # @param member [Vapi::CreateOpenRouterCredentialDto]
433
+ # @return [Vapi::AssistantOverridesCredentialsItem]
434
+ def self.openrouter(member:)
435
+ new(member: member, discriminant: "openrouter")
436
+ end
437
+
438
+ # @param member [Vapi::CreatePerplexityAiCredentialDto]
439
+ # @return [Vapi::AssistantOverridesCredentialsItem]
440
+ def self.perplexity_ai(member:)
441
+ new(member: member, discriminant: "perplexity-ai")
442
+ end
443
+
444
+ # @param member [Vapi::CreatePlayHtCredentialDto]
445
+ # @return [Vapi::AssistantOverridesCredentialsItem]
446
+ def self.playht(member:)
447
+ new(member: member, discriminant: "playht")
448
+ end
449
+
450
+ # @param member [Vapi::CreateRimeAiCredentialDto]
451
+ # @return [Vapi::AssistantOverridesCredentialsItem]
452
+ def self.rime_ai(member:)
453
+ new(member: member, discriminant: "rime-ai")
454
+ end
455
+
456
+ # @param member [Vapi::CreateRunpodCredentialDto]
457
+ # @return [Vapi::AssistantOverridesCredentialsItem]
458
+ def self.runpod(member:)
459
+ new(member: member, discriminant: "runpod")
460
+ end
461
+
462
+ # @param member [Vapi::CreateS3CredentialDto]
463
+ # @return [Vapi::AssistantOverridesCredentialsItem]
464
+ def self.s_3(member:)
465
+ new(member: member, discriminant: "s3")
466
+ end
467
+
468
+ # @param member [Vapi::CreateSmallestAiCredentialDto]
469
+ # @return [Vapi::AssistantOverridesCredentialsItem]
470
+ def self.smallest_ai(member:)
471
+ new(member: member, discriminant: "smallest-ai")
472
+ end
473
+
474
+ # @param member [Vapi::CreateTavusCredentialDto]
475
+ # @return [Vapi::AssistantOverridesCredentialsItem]
476
+ def self.tavus(member:)
477
+ new(member: member, discriminant: "tavus")
478
+ end
479
+
480
+ # @param member [Vapi::CreateTogetherAiCredentialDto]
481
+ # @return [Vapi::AssistantOverridesCredentialsItem]
482
+ def self.together_ai(member:)
483
+ new(member: member, discriminant: "together-ai")
484
+ end
485
+
486
+ # @param member [Vapi::CreateTwilioCredentialDto]
487
+ # @return [Vapi::AssistantOverridesCredentialsItem]
488
+ def self.twilio(member:)
489
+ new(member: member, discriminant: "twilio")
490
+ end
491
+
492
+ # @param member [Vapi::CreateVonageCredentialDto]
493
+ # @return [Vapi::AssistantOverridesCredentialsItem]
494
+ def self.vonage(member:)
495
+ new(member: member, discriminant: "vonage")
496
+ end
497
+
498
+ # @param member [Vapi::CreateWebhookCredentialDto]
499
+ # @return [Vapi::AssistantOverridesCredentialsItem]
500
+ def self.webhook(member:)
501
+ new(member: member, discriminant: "webhook")
502
+ end
503
+
504
+ # @param member [Vapi::CreateXAiCredentialDto]
505
+ # @return [Vapi::AssistantOverridesCredentialsItem]
506
+ def self.xai(member:)
507
+ new(member: member, discriminant: "xai")
508
+ end
509
+ end
510
+ end
@@ -8,6 +8,7 @@ require_relative "deep_infra_model"
8
8
  require_relative "google_model"
9
9
  require_relative "groq_model"
10
10
  require_relative "inflection_ai_model"
11
+ require_relative "deep_seek_model"
11
12
  require_relative "open_ai_model"
12
13
  require_relative "open_router_model"
13
14
  require_relative "perplexity_ai_model"
@@ -55,6 +56,8 @@ module Vapi
55
56
  Vapi::GroqModel.from_json(json_object: json_object)
56
57
  when "inflection-ai"
57
58
  Vapi::InflectionAiModel.from_json(json_object: json_object)
59
+ when "deep-seek"
60
+ Vapi::DeepSeekModel.from_json(json_object: json_object)
58
61
  when "openai"
59
62
  Vapi::OpenAiModel.from_json(json_object: json_object)
60
63
  when "openrouter"
@@ -92,6 +95,8 @@ module Vapi
92
95
  { **@member.to_json, provider: @discriminant }.to_json
93
96
  when "inflection-ai"
94
97
  { **@member.to_json, provider: @discriminant }.to_json
98
+ when "deep-seek"
99
+ { **@member.to_json, provider: @discriminant }.to_json
95
100
  when "openai"
96
101
  { **@member.to_json, provider: @discriminant }.to_json
97
102
  when "openrouter"
@@ -132,6 +137,8 @@ module Vapi
132
137
  Vapi::GroqModel.validate_raw(obj: obj)
133
138
  when "inflection-ai"
134
139
  Vapi::InflectionAiModel.validate_raw(obj: obj)
140
+ when "deep-seek"
141
+ Vapi::DeepSeekModel.validate_raw(obj: obj)
135
142
  when "openai"
136
143
  Vapi::OpenAiModel.validate_raw(obj: obj)
137
144
  when "openrouter"
@@ -199,6 +206,12 @@ module Vapi
199
206
  new(member: member, discriminant: "inflection-ai")
200
207
  end
201
208
 
209
+ # @param member [Vapi::DeepSeekModel]
210
+ # @return [Vapi::AssistantOverridesModel]
211
+ def self.deep_seek(member:)
212
+ new(member: member, discriminant: "deep-seek")
213
+ end
214
+
202
215
  # @param member [Vapi::OpenAiModel]
203
216
  # @return [Vapi::AssistantOverridesModel]
204
217
  def self.openai(member:)
@@ -2,6 +2,7 @@
2
2
 
3
3
  require "json"
4
4
  require_relative "assembly_ai_transcriber"
5
+ require_relative "azure_speech_transcriber"
5
6
  require_relative "custom_transcriber"
6
7
  require_relative "deepgram_transcriber"
7
8
  require_relative "gladia_transcriber"
@@ -35,6 +36,8 @@ module Vapi
35
36
  member = case struct.provider
36
37
  when "assembly-ai"
37
38
  Vapi::AssemblyAiTranscriber.from_json(json_object: json_object)
39
+ when "azure"
40
+ Vapi::AzureSpeechTranscriber.from_json(json_object: json_object)
38
41
  when "custom-transcriber"
39
42
  Vapi::CustomTranscriber.from_json(json_object: json_object)
40
43
  when "deepgram"
@@ -56,6 +59,8 @@ module Vapi
56
59
  case @discriminant
57
60
  when "assembly-ai"
58
61
  { **@member.to_json, provider: @discriminant }.to_json
62
+ when "azure"
63
+ { **@member.to_json, provider: @discriminant }.to_json
59
64
  when "custom-transcriber"
60
65
  { **@member.to_json, provider: @discriminant }.to_json
61
66
  when "deepgram"
@@ -80,6 +85,8 @@ module Vapi
80
85
  case obj.provider
81
86
  when "assembly-ai"
82
87
  Vapi::AssemblyAiTranscriber.validate_raw(obj: obj)
88
+ when "azure"
89
+ Vapi::AzureSpeechTranscriber.validate_raw(obj: obj)
83
90
  when "custom-transcriber"
84
91
  Vapi::CustomTranscriber.validate_raw(obj: obj)
85
92
  when "deepgram"
@@ -107,6 +114,12 @@ module Vapi
107
114
  new(member: member, discriminant: "assembly-ai")
108
115
  end
109
116
 
117
+ # @param member [Vapi::AzureSpeechTranscriber]
118
+ # @return [Vapi::AssistantOverridesTranscriber]
119
+ def self.azure(member:)
120
+ new(member: member, discriminant: "azure")
121
+ end
122
+
110
123
  # @param member [Vapi::CustomTranscriber]
111
124
  # @return [Vapi::AssistantOverridesTranscriber]
112
125
  def self.custom_transcriber(member:)