vapi_server_sdk 0.1.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 (448) hide show
  1. checksums.yaml +4 -4
  2. data/lib/requests.rb +2 -2
  3. data/lib/types_export.rb +287 -62
  4. data/lib/vapi_server_sdk/analytics/client.rb +14 -43
  5. data/lib/vapi_server_sdk/assistants/client.rb +70 -60
  6. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_client_messages_item.rb +1 -0
  7. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_credentials_item.rb +512 -0
  8. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_model.rb +52 -0
  9. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_server_messages_item.rb +1 -0
  10. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_transcriber.rb +40 -1
  11. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_voice.rb +39 -0
  12. data/lib/vapi_server_sdk/blocks/client.rb +7 -166
  13. data/lib/vapi_server_sdk/blocks/types/blocks_update_request.rb +109 -0
  14. data/lib/vapi_server_sdk/calls/client.rb +74 -32
  15. data/lib/vapi_server_sdk/knowledge_bases/client.rb +393 -0
  16. data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_create_request.rb +96 -0
  17. data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_create_response.rb +96 -0
  18. data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_delete_response.rb +96 -0
  19. data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_get_response.rb +96 -0
  20. data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_list_response_item.rb +96 -0
  21. data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_update_request.rb +96 -0
  22. data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_update_response.rb +96 -0
  23. data/lib/vapi_server_sdk/logs/client.rb +94 -6
  24. data/lib/vapi_server_sdk/phone_numbers/client.rb +7 -69
  25. data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_update_request.rb +122 -0
  26. data/lib/vapi_server_sdk/squads/client.rb +64 -32
  27. data/lib/vapi_server_sdk/tools/client.rb +7 -87
  28. data/lib/vapi_server_sdk/tools/types/tools_create_request.rb +39 -0
  29. data/lib/vapi_server_sdk/tools/types/tools_create_response.rb +39 -0
  30. data/lib/vapi_server_sdk/tools/types/tools_delete_response.rb +39 -0
  31. data/lib/vapi_server_sdk/tools/types/tools_get_response.rb +39 -0
  32. data/lib/vapi_server_sdk/tools/types/tools_list_response_item.rb +39 -0
  33. data/lib/vapi_server_sdk/tools/types/tools_update_request.rb +200 -0
  34. data/lib/vapi_server_sdk/tools/types/tools_update_response.rb +39 -0
  35. data/lib/vapi_server_sdk/types/analytics_query_dto.rb +59 -0
  36. data/lib/vapi_server_sdk/types/anthropic_credential.rb +13 -3
  37. data/lib/vapi_server_sdk/types/anthropic_model.rb +21 -13
  38. data/lib/vapi_server_sdk/types/anthropic_model_model.rb +2 -0
  39. data/lib/vapi_server_sdk/types/anyscale_credential.rb +13 -3
  40. data/lib/vapi_server_sdk/types/anyscale_model.rb +21 -13
  41. data/lib/vapi_server_sdk/types/assembly_ai_credential.rb +111 -0
  42. data/lib/vapi_server_sdk/types/assembly_ai_transcriber.rb +97 -0
  43. data/lib/vapi_server_sdk/types/assistant.rb +60 -64
  44. data/lib/vapi_server_sdk/types/assistant_client_messages_item.rb +1 -0
  45. data/lib/vapi_server_sdk/types/assistant_credentials_item.rb +510 -0
  46. data/lib/vapi_server_sdk/types/assistant_custom_endpointing_rule.rb +100 -0
  47. data/lib/vapi_server_sdk/types/assistant_model.rb +52 -0
  48. data/lib/vapi_server_sdk/types/assistant_overrides.rb +75 -65
  49. data/lib/vapi_server_sdk/types/assistant_overrides_client_messages_item.rb +1 -0
  50. data/lib/vapi_server_sdk/types/assistant_overrides_credentials_item.rb +510 -0
  51. data/lib/vapi_server_sdk/types/assistant_overrides_model.rb +52 -0
  52. data/lib/vapi_server_sdk/types/assistant_overrides_server_messages_item.rb +1 -0
  53. data/lib/vapi_server_sdk/types/assistant_overrides_transcriber.rb +40 -1
  54. data/lib/vapi_server_sdk/types/assistant_overrides_voice.rb +39 -0
  55. data/lib/vapi_server_sdk/types/assistant_server_messages_item.rb +1 -0
  56. data/lib/vapi_server_sdk/types/assistant_transcriber.rb +40 -1
  57. data/lib/vapi_server_sdk/types/assistant_voice.rb +39 -0
  58. data/lib/vapi_server_sdk/types/auto_reload_plan.rb +65 -0
  59. data/lib/vapi_server_sdk/types/azure_blob_storage_bucket_plan.rb +88 -0
  60. data/lib/vapi_server_sdk/types/azure_credential.rb +146 -0
  61. data/lib/vapi_server_sdk/types/azure_credential_region.rb +23 -0
  62. data/lib/vapi_server_sdk/types/azure_credential_service.rb +9 -0
  63. data/lib/vapi_server_sdk/types/azure_open_ai_credential.rb +20 -2
  64. data/lib/vapi_server_sdk/types/azure_open_ai_credential_models_item.rb +1 -0
  65. data/lib/vapi_server_sdk/types/azure_open_ai_credential_region.rb +2 -1
  66. data/lib/vapi_server_sdk/types/azure_speech_transcriber.rb +62 -0
  67. data/lib/vapi_server_sdk/types/azure_speech_transcriber_language.rb +152 -0
  68. data/lib/vapi_server_sdk/types/azure_voice.rb +25 -21
  69. data/lib/vapi_server_sdk/types/bash_tool.rb +194 -0
  70. data/lib/vapi_server_sdk/types/bash_tool_messages_item.rb +120 -0
  71. data/lib/vapi_server_sdk/types/block_complete_message.rb +29 -4
  72. data/lib/vapi_server_sdk/types/block_start_message.rb +29 -4
  73. data/lib/vapi_server_sdk/types/both_custom_endpointing_rule.rb +126 -0
  74. data/lib/vapi_server_sdk/types/buy_phone_number_dto.rb +25 -29
  75. data/lib/vapi_server_sdk/types/byo_phone_number.rb +25 -29
  76. data/lib/vapi_server_sdk/types/byo_sip_trunk_credential.rb +29 -9
  77. data/lib/vapi_server_sdk/types/call.rb +15 -1
  78. data/lib/vapi_server_sdk/types/call_ended_reason.rb +83 -43
  79. data/lib/vapi_server_sdk/types/call_log_privileged.rb +88 -0
  80. data/lib/vapi_server_sdk/types/call_log_privileged_level.rb +12 -0
  81. data/lib/vapi_server_sdk/types/call_logs_paginated_response.rb +75 -0
  82. data/lib/vapi_server_sdk/types/cartesia_credential.rb +13 -3
  83. data/lib/vapi_server_sdk/types/cartesia_voice.rb +25 -21
  84. data/lib/vapi_server_sdk/types/cartesia_voice_language.rb +9 -1
  85. data/lib/vapi_server_sdk/types/cartesia_voice_model.rb +2 -0
  86. data/lib/vapi_server_sdk/types/cerebras_credential.rb +111 -0
  87. data/lib/vapi_server_sdk/types/chat_dto.rb +103 -0
  88. data/lib/vapi_server_sdk/types/chat_service_response.rb +47 -0
  89. data/lib/vapi_server_sdk/types/client_inbound_message_add_message.rb +25 -3
  90. data/lib/vapi_server_sdk/types/client_inbound_message_message.rb +13 -0
  91. data/lib/vapi_server_sdk/types/client_inbound_message_transfer.rb +63 -0
  92. data/lib/vapi_server_sdk/types/client_inbound_message_transfer_destination.rb +96 -0
  93. data/lib/vapi_server_sdk/types/{client_message_language_changed.rb → client_message_language_change_detected.rb} +5 -5
  94. data/lib/vapi_server_sdk/types/client_message_message.rb +22 -9
  95. data/lib/vapi_server_sdk/types/client_message_tool_calls_tool_with_tool_call_list_item.rb +77 -77
  96. data/lib/vapi_server_sdk/types/client_message_transfer_update.rb +116 -0
  97. data/lib/vapi_server_sdk/types/client_message_transfer_update_destination.rb +122 -0
  98. data/lib/vapi_server_sdk/types/cloudflare_credential.rb +142 -0
  99. data/lib/vapi_server_sdk/types/cloudflare_r_2_bucket_plan.rb +105 -0
  100. data/lib/vapi_server_sdk/types/computer_tool.rb +218 -0
  101. data/lib/vapi_server_sdk/types/computer_tool_messages_item.rb +120 -0
  102. data/lib/vapi_server_sdk/types/condition.rb +9 -9
  103. data/lib/vapi_server_sdk/types/create_anthropic_credential_dto.rb +11 -9
  104. data/lib/vapi_server_sdk/types/create_anyscale_credential_dto.rb +11 -9
  105. data/lib/vapi_server_sdk/types/create_assembly_ai_credential_dto.rb +67 -0
  106. data/lib/vapi_server_sdk/types/create_assistant_dto.rb +61 -65
  107. data/lib/vapi_server_sdk/types/create_assistant_dto_client_messages_item.rb +1 -0
  108. data/lib/vapi_server_sdk/types/create_assistant_dto_credentials_item.rb +510 -0
  109. data/lib/vapi_server_sdk/types/create_assistant_dto_model.rb +52 -0
  110. data/lib/vapi_server_sdk/types/create_assistant_dto_server_messages_item.rb +1 -0
  111. data/lib/vapi_server_sdk/types/create_assistant_dto_transcriber.rb +40 -1
  112. data/lib/vapi_server_sdk/types/create_assistant_dto_voice.rb +39 -0
  113. data/lib/vapi_server_sdk/types/create_azure_credential_dto.rb +104 -0
  114. data/lib/vapi_server_sdk/types/create_azure_credential_dto_region.rb +23 -0
  115. data/lib/vapi_server_sdk/types/create_azure_credential_dto_service.rb +9 -0
  116. data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto.rb +22 -11
  117. data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto_models_item.rb +1 -0
  118. data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto_region.rb +2 -1
  119. data/lib/vapi_server_sdk/types/create_bash_tool_dto.rb +161 -0
  120. data/lib/vapi_server_sdk/types/create_bash_tool_dto_messages_item.rb +120 -0
  121. data/lib/vapi_server_sdk/types/create_byo_phone_number_dto.rb +25 -29
  122. data/lib/vapi_server_sdk/types/create_byo_sip_trunk_credential_dto.rb +31 -19
  123. data/lib/vapi_server_sdk/types/create_cartesia_credential_dto.rb +11 -9
  124. data/lib/vapi_server_sdk/types/{knowledge_base.rb → create_cerebras_credential_dto.rb} +21 -21
  125. data/lib/vapi_server_sdk/types/create_cloudflare_credential_dto.rb +101 -0
  126. data/lib/vapi_server_sdk/types/create_computer_tool_dto.rb +185 -0
  127. data/lib/vapi_server_sdk/types/create_computer_tool_dto_messages_item.rb +120 -0
  128. data/lib/vapi_server_sdk/types/create_custom_knowledge_base_dto.rb +137 -0
  129. data/lib/vapi_server_sdk/types/create_custom_llm_credential_dto.rb +26 -9
  130. data/lib/vapi_server_sdk/types/create_deep_infra_credential_dto.rb +11 -9
  131. data/lib/vapi_server_sdk/types/create_deep_seek_credential_dto.rb +67 -0
  132. data/lib/vapi_server_sdk/types/create_deepgram_credential_dto.rb +9 -9
  133. data/lib/vapi_server_sdk/types/create_eleven_labs_credential_dto.rb +11 -9
  134. data/lib/vapi_server_sdk/types/create_gcp_credential_dto.rb +9 -21
  135. data/lib/vapi_server_sdk/types/create_gladia_credential_dto.rb +11 -9
  136. data/lib/vapi_server_sdk/types/create_go_high_level_credential_dto.rb +11 -9
  137. data/lib/vapi_server_sdk/types/create_google_credential_dto.rb +76 -0
  138. data/lib/vapi_server_sdk/types/create_groq_credential_dto.rb +11 -9
  139. data/lib/vapi_server_sdk/types/create_inflection_ai_credential_dto.rb +76 -0
  140. data/lib/vapi_server_sdk/types/create_langfuse_credential_dto.rb +83 -0
  141. data/lib/vapi_server_sdk/types/create_lmnt_credential_dto.rb +11 -9
  142. data/lib/vapi_server_sdk/types/create_make_credential_dto.rb +11 -9
  143. data/lib/vapi_server_sdk/types/create_open_ai_credential_dto.rb +11 -9
  144. data/lib/vapi_server_sdk/types/create_open_router_credential_dto.rb +11 -9
  145. data/lib/vapi_server_sdk/types/create_org_dto.rb +45 -26
  146. data/lib/vapi_server_sdk/types/create_org_dto_channel.rb +10 -0
  147. data/lib/vapi_server_sdk/types/create_perplexity_ai_credential_dto.rb +11 -9
  148. data/lib/vapi_server_sdk/types/create_play_ht_credential_dto.rb +11 -9
  149. data/lib/vapi_server_sdk/types/create_rime_ai_credential_dto.rb +11 -9
  150. data/lib/vapi_server_sdk/types/create_runpod_credential_dto.rb +11 -9
  151. data/lib/vapi_server_sdk/types/create_s_3_credential_dto.rb +13 -11
  152. data/lib/vapi_server_sdk/types/create_smallest_ai_credential_dto.rb +67 -0
  153. data/lib/vapi_server_sdk/types/create_tavus_credential_dto.rb +67 -0
  154. data/lib/vapi_server_sdk/types/create_text_editor_tool_dto.rb +161 -0
  155. data/lib/vapi_server_sdk/types/create_text_editor_tool_dto_messages_item.rb +120 -0
  156. data/lib/vapi_server_sdk/types/create_together_ai_credential_dto.rb +11 -9
  157. data/lib/vapi_server_sdk/types/create_trieve_knowledge_base_dto.rb +109 -0
  158. data/lib/vapi_server_sdk/types/create_twilio_credential_dto.rb +11 -9
  159. data/lib/vapi_server_sdk/types/create_twilio_phone_number_dto.rb +25 -29
  160. data/lib/vapi_server_sdk/types/create_vapi_phone_number_dto.rb +44 -30
  161. data/lib/vapi_server_sdk/types/create_vonage_credential_dto.rb +11 -9
  162. data/lib/vapi_server_sdk/types/create_vonage_phone_number_dto.rb +25 -29
  163. data/lib/vapi_server_sdk/types/create_webhook_credential_dto.rb +73 -0
  164. data/lib/vapi_server_sdk/types/create_x_ai_credential_dto.rb +67 -0
  165. data/lib/vapi_server_sdk/types/custom_knowledge_base.rb +154 -0
  166. data/lib/vapi_server_sdk/types/custom_llm_credential.rb +46 -3
  167. data/lib/vapi_server_sdk/types/custom_llm_model.rb +23 -15
  168. data/lib/vapi_server_sdk/types/custom_message.rb +92 -0
  169. data/lib/vapi_server_sdk/types/custom_transcriber.rb +125 -0
  170. data/lib/vapi_server_sdk/types/custom_voice.rb +132 -0
  171. data/lib/vapi_server_sdk/types/customer_custom_endpointing_rule.rb +100 -0
  172. data/lib/vapi_server_sdk/types/deep_infra_credential.rb +13 -3
  173. data/lib/vapi_server_sdk/types/deep_infra_model.rb +21 -13
  174. data/lib/vapi_server_sdk/types/deep_seek_credential.rb +111 -0
  175. data/lib/vapi_server_sdk/types/deep_seek_model.rb +177 -0
  176. data/lib/vapi_server_sdk/types/deep_seek_model_tools_item.rb +159 -0
  177. data/lib/vapi_server_sdk/types/deepgram_credential.rb +9 -1
  178. data/lib/vapi_server_sdk/types/deepgram_transcriber.rb +69 -11
  179. data/lib/vapi_server_sdk/types/deepgram_voice.rb +17 -17
  180. data/lib/vapi_server_sdk/types/eleven_labs_credential.rb +13 -3
  181. data/lib/vapi_server_sdk/types/eleven_labs_voice.rb +28 -24
  182. data/lib/vapi_server_sdk/types/eleven_labs_voice_model.rb +2 -0
  183. data/lib/vapi_server_sdk/types/fallback_azure_voice.rb +100 -0
  184. data/lib/vapi_server_sdk/types/fallback_azure_voice_id.rb +53 -0
  185. data/lib/vapi_server_sdk/types/fallback_azure_voice_voice_id.rb +9 -0
  186. data/lib/vapi_server_sdk/types/fallback_cartesia_voice.rb +100 -0
  187. data/lib/vapi_server_sdk/types/fallback_cartesia_voice_language.rb +23 -0
  188. data/lib/vapi_server_sdk/types/fallback_cartesia_voice_model.rb +12 -0
  189. data/lib/vapi_server_sdk/types/fallback_custom_voice.rb +117 -0
  190. data/lib/vapi_server_sdk/types/fallback_deepgram_voice.rb +81 -0
  191. data/lib/vapi_server_sdk/types/fallback_deepgram_voice_id.rb +53 -0
  192. data/lib/vapi_server_sdk/types/fallback_deepgram_voice_id_enum.rb +18 -0
  193. data/lib/vapi_server_sdk/types/fallback_eleven_labs_voice.rb +164 -0
  194. data/lib/vapi_server_sdk/types/fallback_eleven_labs_voice_id.rb +54 -0
  195. data/lib/vapi_server_sdk/types/fallback_eleven_labs_voice_id_enum.rb +21 -0
  196. data/lib/vapi_server_sdk/types/fallback_eleven_labs_voice_model.rb +14 -0
  197. data/lib/vapi_server_sdk/types/fallback_lmnt_voice.rb +88 -0
  198. data/lib/vapi_server_sdk/types/fallback_lmnt_voice_id.rb +53 -0
  199. data/lib/vapi_server_sdk/types/fallback_lmnt_voice_id_enum.rb +8 -0
  200. data/lib/vapi_server_sdk/types/fallback_neets_voice.rb +81 -0
  201. data/lib/vapi_server_sdk/types/fallback_neets_voice_id.rb +53 -0
  202. data/lib/vapi_server_sdk/types/fallback_neets_voice_id_enum.rb +7 -0
  203. data/lib/vapi_server_sdk/types/fallback_open_ai_voice.rb +87 -0
  204. data/lib/vapi_server_sdk/types/fallback_open_ai_voice_id.rb +20 -0
  205. data/lib/vapi_server_sdk/types/fallback_plan.rb +61 -0
  206. data/lib/vapi_server_sdk/types/fallback_plan_voices_item.rb +224 -0
  207. data/lib/vapi_server_sdk/types/fallback_play_ht_voice.rb +172 -0
  208. data/lib/vapi_server_sdk/types/fallback_play_ht_voice_emotion.rb +19 -0
  209. data/lib/vapi_server_sdk/types/fallback_play_ht_voice_id.rb +53 -0
  210. data/lib/vapi_server_sdk/types/fallback_play_ht_voice_id_enum.rb +16 -0
  211. data/lib/vapi_server_sdk/types/fallback_play_ht_voice_language.rb +44 -0
  212. data/lib/vapi_server_sdk/types/fallback_play_ht_voice_model.rb +10 -0
  213. data/lib/vapi_server_sdk/types/fallback_rime_ai_voice.rb +96 -0
  214. data/lib/vapi_server_sdk/types/fallback_rime_ai_voice_id.rb +53 -0
  215. data/lib/vapi_server_sdk/types/fallback_rime_ai_voice_id_enum.rb +87 -0
  216. data/lib/vapi_server_sdk/types/fallback_rime_ai_voice_model.rb +9 -0
  217. data/lib/vapi_server_sdk/types/fallback_smallest_ai_voice.rb +95 -0
  218. data/lib/vapi_server_sdk/types/fallback_smallest_ai_voice_id.rb +53 -0
  219. data/lib/vapi_server_sdk/types/fallback_smallest_ai_voice_id_enum.rb +31 -0
  220. data/lib/vapi_server_sdk/types/fallback_tavus_voice.rb +147 -0
  221. data/lib/vapi_server_sdk/types/fallback_tavus_voice_voice_id.rb +53 -0
  222. data/lib/vapi_server_sdk/types/format_plan.rb +0 -2
  223. data/lib/vapi_server_sdk/types/function_tool_with_tool_call.rb +10 -1
  224. data/lib/vapi_server_sdk/types/gcp_credential.rb +2 -2
  225. data/lib/vapi_server_sdk/types/gemini_multimodal_live_prebuilt_voice_config.rb +58 -0
  226. data/lib/vapi_server_sdk/types/gemini_multimodal_live_prebuilt_voice_config_voice_name.rb +11 -0
  227. data/lib/vapi_server_sdk/types/gemini_multimodal_live_speech_config.rb +61 -0
  228. data/lib/vapi_server_sdk/types/gemini_multimodal_live_voice_config.rb +61 -0
  229. data/lib/vapi_server_sdk/types/ghl_tool_with_tool_call.rb +9 -1
  230. data/lib/vapi_server_sdk/types/gladia_credential.rb +13 -3
  231. data/lib/vapi_server_sdk/types/go_high_level_credential.rb +13 -3
  232. data/lib/vapi_server_sdk/types/google_credential.rb +113 -0
  233. data/lib/vapi_server_sdk/types/google_model.rb +194 -0
  234. data/lib/vapi_server_sdk/types/google_model_model.rb +14 -0
  235. data/lib/vapi_server_sdk/types/google_model_tools_item.rb +159 -0
  236. data/lib/vapi_server_sdk/types/google_realtime_config.rb +121 -0
  237. data/lib/vapi_server_sdk/types/groq_credential.rb +13 -3
  238. data/lib/vapi_server_sdk/types/groq_model.rb +21 -13
  239. data/lib/vapi_server_sdk/types/groq_model_model.rb +1 -3
  240. data/lib/vapi_server_sdk/types/import_twilio_phone_number_dto.rb +25 -29
  241. data/lib/vapi_server_sdk/types/import_vonage_phone_number_dto.rb +25 -29
  242. data/lib/vapi_server_sdk/types/inflection_ai_credential.rb +113 -0
  243. data/lib/vapi_server_sdk/types/inflection_ai_model.rb +177 -0
  244. data/lib/vapi_server_sdk/types/inflection_ai_model_tools_item.rb +159 -0
  245. data/lib/vapi_server_sdk/types/invite_user_dto.rb +9 -9
  246. data/lib/vapi_server_sdk/types/knowledge_base_response_document.rb +74 -0
  247. data/lib/vapi_server_sdk/types/langfuse_credential.rb +130 -0
  248. data/lib/vapi_server_sdk/types/lmnt_credential.rb +13 -3
  249. data/lib/vapi_server_sdk/types/lmnt_voice.rb +18 -14
  250. data/lib/vapi_server_sdk/types/log.rb +12 -4
  251. data/lib/vapi_server_sdk/types/log_resource.rb +8 -0
  252. data/lib/vapi_server_sdk/types/make_credential.rb +13 -3
  253. data/lib/vapi_server_sdk/types/make_tool_with_tool_call.rb +9 -1
  254. data/lib/vapi_server_sdk/types/neets_voice.rb +17 -17
  255. data/lib/vapi_server_sdk/types/o_auth_2_authentication_plan.rb +79 -0
  256. data/lib/vapi_server_sdk/types/oauth_2_authentication_session.rb +68 -0
  257. data/lib/vapi_server_sdk/types/open_ai_credential.rb +13 -3
  258. data/lib/vapi_server_sdk/types/open_ai_function.rb +30 -4
  259. data/lib/vapi_server_sdk/types/open_ai_model.rb +23 -15
  260. data/lib/vapi_server_sdk/types/open_ai_model_fallback_models_item.rb +8 -0
  261. data/lib/vapi_server_sdk/types/open_ai_model_model.rb +8 -0
  262. data/lib/vapi_server_sdk/types/open_ai_voice.rb +22 -14
  263. data/lib/vapi_server_sdk/types/open_ai_voice_id.rb +7 -0
  264. data/lib/vapi_server_sdk/types/open_router_credential.rb +13 -3
  265. data/lib/vapi_server_sdk/types/open_router_model.rb +21 -13
  266. data/lib/vapi_server_sdk/types/org.rb +59 -26
  267. data/lib/vapi_server_sdk/types/org_channel.rb +10 -0
  268. data/lib/vapi_server_sdk/types/org_with_org_user.rb +262 -0
  269. data/lib/vapi_server_sdk/types/org_with_org_user_channel.rb +10 -0
  270. data/lib/vapi_server_sdk/types/org_with_org_user_role.rb +9 -0
  271. data/lib/vapi_server_sdk/types/perplexity_ai_credential.rb +13 -3
  272. data/lib/vapi_server_sdk/types/perplexity_ai_model.rb +21 -13
  273. data/lib/vapi_server_sdk/types/phone_number_paginated_response.rb +75 -0
  274. data/lib/vapi_server_sdk/types/phone_number_paginated_response_results_item.rb +121 -0
  275. data/lib/vapi_server_sdk/types/play_ht_credential.rb +13 -2
  276. data/lib/vapi_server_sdk/types/play_ht_voice.rb +37 -15
  277. data/lib/vapi_server_sdk/types/play_ht_voice_language.rb +44 -0
  278. data/lib/vapi_server_sdk/types/play_ht_voice_model.rb +10 -0
  279. data/lib/vapi_server_sdk/types/regex_option.rb +2 -2
  280. data/lib/vapi_server_sdk/types/regex_option_type.rb +1 -1
  281. data/lib/vapi_server_sdk/types/regex_replacement.rb +14 -4
  282. data/lib/vapi_server_sdk/types/rime_ai_credential.rb +13 -3
  283. data/lib/vapi_server_sdk/types/rime_ai_voice.rb +18 -14
  284. data/lib/vapi_server_sdk/types/runpod_credential.rb +13 -3
  285. data/lib/vapi_server_sdk/types/s_3_credential.rb +13 -3
  286. data/lib/vapi_server_sdk/types/server.rb +16 -2
  287. data/lib/vapi_server_sdk/types/server_message_end_of_call_report_ended_reason.rb +83 -43
  288. data/lib/vapi_server_sdk/types/server_message_knowledge_base_request.rb +195 -0
  289. data/lib/vapi_server_sdk/types/server_message_knowledge_base_request_messages_item.rb +97 -0
  290. data/lib/vapi_server_sdk/types/{server_message_language_changed_phone_number.rb → server_message_knowledge_base_request_phone_number.rb} +8 -8
  291. data/lib/vapi_server_sdk/types/{server_message_language_changed.rb → server_message_language_change_detected.rb} +10 -10
  292. data/lib/vapi_server_sdk/types/server_message_language_change_detected_phone_number.rb +125 -0
  293. data/lib/vapi_server_sdk/types/server_message_message.rb +22 -9
  294. data/lib/vapi_server_sdk/types/server_message_response_knowledge_base_request.rb +81 -0
  295. data/lib/vapi_server_sdk/types/server_message_response_message_response.rb +14 -0
  296. data/lib/vapi_server_sdk/types/server_message_status_update.rb +11 -1
  297. data/lib/vapi_server_sdk/types/server_message_status_update_ended_reason.rb +83 -43
  298. data/lib/vapi_server_sdk/types/server_message_tool_calls_tool_with_tool_call_list_item.rb +77 -77
  299. data/lib/vapi_server_sdk/types/server_message_transfer_update.rb +18 -2
  300. data/lib/vapi_server_sdk/types/sip_authentication.rb +80 -0
  301. data/lib/vapi_server_sdk/types/smallest_ai_credential.rb +111 -0
  302. data/lib/vapi_server_sdk/types/smallest_ai_voice.rb +117 -0
  303. data/lib/vapi_server_sdk/types/smallest_ai_voice_id.rb +53 -0
  304. data/lib/vapi_server_sdk/types/smallest_ai_voice_id_enum.rb +31 -0
  305. data/lib/vapi_server_sdk/types/start_speaking_plan.rb +54 -10
  306. data/lib/vapi_server_sdk/types/start_speaking_plan_custom_endpointing_rules_item.rb +108 -0
  307. data/lib/vapi_server_sdk/types/structured_data_plan.rb +28 -10
  308. data/lib/vapi_server_sdk/types/subscription.rb +336 -0
  309. data/lib/vapi_server_sdk/types/subscription_status.rb +10 -0
  310. data/lib/vapi_server_sdk/types/subscription_type.rb +10 -0
  311. data/lib/vapi_server_sdk/types/success_evaluation_plan.rb +38 -16
  312. data/lib/vapi_server_sdk/types/summary_plan.rb +26 -8
  313. data/lib/vapi_server_sdk/types/sync_voice_library_dto_providers_item.rb +2 -0
  314. data/lib/vapi_server_sdk/types/tavus_conversation_properties.rb +173 -0
  315. data/lib/vapi_server_sdk/types/tavus_credential.rb +111 -0
  316. data/lib/vapi_server_sdk/types/tavus_voice.rb +163 -0
  317. data/lib/vapi_server_sdk/types/tavus_voice_voice_id.rb +53 -0
  318. data/lib/vapi_server_sdk/types/text_content.rb +73 -0
  319. data/lib/vapi_server_sdk/types/text_content_language.rb +191 -0
  320. data/lib/vapi_server_sdk/types/text_editor_tool.rb +194 -0
  321. data/lib/vapi_server_sdk/types/text_editor_tool_messages_item.rb +120 -0
  322. data/lib/vapi_server_sdk/types/together_ai_credential.rb +13 -3
  323. data/lib/vapi_server_sdk/types/together_ai_model.rb +21 -13
  324. data/lib/vapi_server_sdk/types/tool_message_complete.rb +29 -3
  325. data/lib/vapi_server_sdk/types/tool_message_delayed.rb +30 -3
  326. data/lib/vapi_server_sdk/types/tool_message_failed.rb +30 -3
  327. data/lib/vapi_server_sdk/types/tool_message_start.rb +29 -4
  328. data/lib/vapi_server_sdk/types/transfer_destination_assistant.rb +79 -33
  329. data/lib/vapi_server_sdk/types/transfer_destination_assistant_message.rb +65 -0
  330. data/lib/vapi_server_sdk/types/transfer_destination_number.rb +56 -24
  331. data/lib/vapi_server_sdk/types/transfer_destination_number_message.rb +65 -0
  332. data/lib/vapi_server_sdk/types/transfer_destination_sip.rb +60 -15
  333. data/lib/vapi_server_sdk/types/transfer_destination_sip_message.rb +65 -0
  334. data/lib/vapi_server_sdk/types/transfer_destination_step.rb +28 -14
  335. data/lib/vapi_server_sdk/types/transfer_destination_step_message.rb +65 -0
  336. data/lib/vapi_server_sdk/types/transfer_plan.rb +161 -0
  337. data/lib/vapi_server_sdk/types/transfer_plan_message.rb +59 -0
  338. data/lib/vapi_server_sdk/types/transfer_plan_mode.rb +32 -0
  339. data/lib/vapi_server_sdk/types/transport.rb +70 -0
  340. data/lib/vapi_server_sdk/types/transport_cost.rb +12 -2
  341. data/lib/vapi_server_sdk/types/transport_cost_provider.rb +9 -0
  342. data/lib/vapi_server_sdk/types/transport_provider.rb +11 -0
  343. data/lib/vapi_server_sdk/types/trieve_knowledge_base.rb +125 -0
  344. data/lib/vapi_server_sdk/types/trieve_knowledge_base_vector_store_create_plan.rb +109 -0
  345. data/lib/vapi_server_sdk/types/trieve_knowledge_base_vector_store_search_plan.rb +95 -0
  346. data/lib/vapi_server_sdk/types/trieve_knowledge_base_vector_store_search_plan_search_type.rb +12 -0
  347. data/lib/vapi_server_sdk/types/twilio_credential.rb +12 -2
  348. data/lib/vapi_server_sdk/types/twilio_phone_number.rb +25 -29
  349. data/lib/vapi_server_sdk/types/update_anthropic_credential_dto.rb +13 -11
  350. data/lib/vapi_server_sdk/types/update_anyscale_credential_dto.rb +13 -11
  351. data/lib/vapi_server_sdk/types/update_assembly_ai_credential_dto.rb +67 -0
  352. data/lib/vapi_server_sdk/types/update_azure_credential_dto.rb +105 -0
  353. data/lib/vapi_server_sdk/types/update_azure_credential_dto_region.rb +23 -0
  354. data/lib/vapi_server_sdk/types/update_azure_credential_dto_service.rb +9 -0
  355. data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto.rb +29 -18
  356. data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto_models_item.rb +1 -0
  357. data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto_region.rb +2 -1
  358. data/lib/vapi_server_sdk/types/update_bash_tool_dto.rb +161 -0
  359. data/lib/vapi_server_sdk/types/update_bash_tool_dto_messages_item.rb +120 -0
  360. data/lib/vapi_server_sdk/types/update_byo_phone_number_dto.rb +187 -0
  361. data/lib/vapi_server_sdk/types/update_byo_phone_number_dto_fallback_destination.rb +101 -0
  362. data/lib/vapi_server_sdk/types/update_byo_sip_trunk_credential_dto.rb +30 -18
  363. data/lib/vapi_server_sdk/types/update_cartesia_credential_dto.rb +13 -11
  364. data/lib/vapi_server_sdk/types/update_cerebras_credential_dto.rb +67 -0
  365. data/lib/vapi_server_sdk/types/update_cloudflare_credential_dto.rb +101 -0
  366. data/lib/vapi_server_sdk/types/update_computer_tool_dto.rb +185 -0
  367. data/lib/vapi_server_sdk/types/update_computer_tool_dto_messages_item.rb +120 -0
  368. data/lib/vapi_server_sdk/types/update_conversation_block_dto.rb +206 -0
  369. data/lib/vapi_server_sdk/types/update_conversation_block_dto_messages_item.rb +95 -0
  370. data/lib/vapi_server_sdk/types/update_custom_knowledge_base_dto.rb +139 -0
  371. data/lib/vapi_server_sdk/types/update_custom_llm_credential_dto.rb +28 -11
  372. data/lib/vapi_server_sdk/types/update_deep_infra_credential_dto.rb +13 -11
  373. data/lib/vapi_server_sdk/types/update_deep_seek_credential_dto.rb +67 -0
  374. data/lib/vapi_server_sdk/types/update_deepgram_credential_dto.rb +11 -11
  375. data/lib/vapi_server_sdk/types/update_dtmf_tool_dto.rb +139 -0
  376. data/lib/vapi_server_sdk/types/update_dtmf_tool_dto_messages_item.rb +120 -0
  377. data/lib/vapi_server_sdk/types/update_eleven_labs_credential_dto.rb +20 -11
  378. data/lib/vapi_server_sdk/types/update_end_call_tool_dto.rb +139 -0
  379. data/lib/vapi_server_sdk/types/update_end_call_tool_dto_messages_item.rb +120 -0
  380. data/lib/vapi_server_sdk/types/update_function_tool_dto.rb +139 -0
  381. data/lib/vapi_server_sdk/types/update_function_tool_dto_messages_item.rb +120 -0
  382. data/lib/vapi_server_sdk/types/update_gcp_credential_dto.rb +6 -18
  383. data/lib/vapi_server_sdk/types/update_ghl_tool_dto.rb +159 -0
  384. data/lib/vapi_server_sdk/types/update_ghl_tool_dto_messages_item.rb +120 -0
  385. data/lib/vapi_server_sdk/types/update_gladia_credential_dto.rb +13 -11
  386. data/lib/vapi_server_sdk/types/update_go_high_level_credential_dto.rb +13 -11
  387. data/lib/vapi_server_sdk/types/update_google_credential_dto.rb +67 -0
  388. data/lib/vapi_server_sdk/types/update_groq_credential_dto.rb +13 -11
  389. data/lib/vapi_server_sdk/types/update_inflection_ai_credential_dto.rb +67 -0
  390. data/lib/vapi_server_sdk/types/update_langfuse_credential_dto.rb +83 -0
  391. data/lib/vapi_server_sdk/types/update_lmnt_credential_dto.rb +13 -11
  392. data/lib/vapi_server_sdk/types/update_make_credential_dto.rb +17 -15
  393. data/lib/vapi_server_sdk/types/update_make_tool_dto.rb +159 -0
  394. data/lib/vapi_server_sdk/types/update_make_tool_dto_messages_item.rb +120 -0
  395. data/lib/vapi_server_sdk/types/update_open_ai_credential_dto.rb +13 -11
  396. data/lib/vapi_server_sdk/types/update_open_router_credential_dto.rb +13 -11
  397. data/lib/vapi_server_sdk/types/update_org_dto.rb +45 -26
  398. data/lib/vapi_server_sdk/types/update_org_dto_channel.rb +10 -0
  399. data/lib/vapi_server_sdk/types/update_output_tool_dto.rb +139 -0
  400. data/lib/vapi_server_sdk/types/update_output_tool_dto_messages_item.rb +120 -0
  401. data/lib/vapi_server_sdk/types/update_perplexity_ai_credential_dto.rb +13 -11
  402. data/lib/vapi_server_sdk/types/update_play_ht_credential_dto.rb +15 -13
  403. data/lib/vapi_server_sdk/types/update_rime_ai_credential_dto.rb +13 -11
  404. data/lib/vapi_server_sdk/types/update_runpod_credential_dto.rb +13 -11
  405. data/lib/vapi_server_sdk/types/update_s_3_credential_dto.rb +24 -22
  406. data/lib/vapi_server_sdk/types/update_smallest_ai_credential_dto.rb +67 -0
  407. data/lib/vapi_server_sdk/types/update_tavus_credential_dto.rb +67 -0
  408. data/lib/vapi_server_sdk/types/update_text_editor_tool_dto.rb +161 -0
  409. data/lib/vapi_server_sdk/types/update_text_editor_tool_dto_messages_item.rb +120 -0
  410. data/lib/vapi_server_sdk/types/update_together_ai_credential_dto.rb +13 -11
  411. data/lib/vapi_server_sdk/types/update_token_dto.rb +81 -0
  412. data/lib/vapi_server_sdk/types/update_token_dto_tag.rb +9 -0
  413. data/lib/vapi_server_sdk/types/update_tool_call_block_dto.rb +168 -0
  414. data/lib/vapi_server_sdk/types/update_tool_call_block_dto_messages_item.rb +94 -0
  415. data/lib/vapi_server_sdk/types/update_tool_call_block_dto_tool.rb +161 -0
  416. data/lib/vapi_server_sdk/types/update_transfer_call_tool_dto.rb +161 -0
  417. data/lib/vapi_server_sdk/types/update_transfer_call_tool_dto_destinations_item.rb +121 -0
  418. data/lib/vapi_server_sdk/types/update_transfer_call_tool_dto_messages_item.rb +121 -0
  419. data/lib/vapi_server_sdk/types/update_trieve_knowledge_base_dto.rb +109 -0
  420. data/lib/vapi_server_sdk/types/update_twilio_credential_dto.rb +15 -13
  421. data/lib/vapi_server_sdk/types/update_twilio_phone_number_dto.rb +163 -0
  422. data/lib/vapi_server_sdk/types/update_twilio_phone_number_dto_fallback_destination.rb +101 -0
  423. data/lib/vapi_server_sdk/types/update_vapi_phone_number_dto.rb +169 -0
  424. data/lib/vapi_server_sdk/types/update_vapi_phone_number_dto_fallback_destination.rb +101 -0
  425. data/lib/vapi_server_sdk/types/update_vonage_credential_dto.rb +15 -13
  426. data/lib/vapi_server_sdk/types/update_vonage_phone_number_dto.rb +157 -0
  427. data/lib/vapi_server_sdk/types/update_vonage_phone_number_dto_fallback_destination.rb +101 -0
  428. data/lib/vapi_server_sdk/types/update_workflow_block_dto.rb +154 -0
  429. data/lib/vapi_server_sdk/types/update_workflow_block_dto_messages_item.rb +94 -0
  430. data/lib/vapi_server_sdk/types/update_workflow_block_dto_steps_item.rb +94 -0
  431. data/lib/vapi_server_sdk/types/update_x_ai_credential_dto.rb +67 -0
  432. data/lib/vapi_server_sdk/types/vapi_cost.rb +10 -2
  433. data/lib/vapi_server_sdk/types/vapi_cost_sub_type.rb +9 -0
  434. data/lib/vapi_server_sdk/types/vapi_model.rb +24 -16
  435. data/lib/vapi_server_sdk/types/vapi_phone_number.rb +44 -30
  436. data/lib/vapi_server_sdk/types/vonage_credential.rb +12 -2
  437. data/lib/vapi_server_sdk/types/vonage_phone_number.rb +25 -29
  438. data/lib/vapi_server_sdk/types/webhook_credential.rb +134 -0
  439. data/lib/vapi_server_sdk/types/x_ai_credential.rb +113 -0
  440. data/lib/vapi_server_sdk/types/xai_model.rb +177 -0
  441. data/lib/vapi_server_sdk/types/xai_model_tools_item.rb +159 -0
  442. data/lib/vapi_server_sdk.rb +7 -0
  443. metadata +240 -14
  444. data/lib/vapi_server_sdk/blocks/types/update_block_dto_messages_item.rb +0 -96
  445. data/lib/vapi_server_sdk/blocks/types/update_block_dto_steps_item.rb +0 -96
  446. data/lib/vapi_server_sdk/blocks/types/update_block_dto_tool.rb +0 -163
  447. data/lib/vapi_server_sdk/phone_numbers/types/update_phone_number_dto_fallback_destination.rb +0 -103
  448. data/lib/vapi_server_sdk/tools/types/update_tool_dto_messages_item.rb +0 -122
@@ -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 AssistantCredentialsItem
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::AssistantCredentialsItem]
52
+ def initialize(member:, discriminant:)
53
+ @member = member
54
+ @discriminant = discriminant
55
+ end
56
+
57
+ # Deserialize a JSON object to an instance of AssistantCredentialsItem
58
+ #
59
+ # @param json_object [String]
60
+ # @return [Vapi::AssistantCredentialsItem]
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::AssistantCredentialsItem]
308
+ def self.anthropic(member:)
309
+ new(member: member, discriminant: "anthropic")
310
+ end
311
+
312
+ # @param member [Vapi::CreateAnyscaleCredentialDto]
313
+ # @return [Vapi::AssistantCredentialsItem]
314
+ def self.anyscale(member:)
315
+ new(member: member, discriminant: "anyscale")
316
+ end
317
+
318
+ # @param member [Vapi::CreateAssemblyAiCredentialDto]
319
+ # @return [Vapi::AssistantCredentialsItem]
320
+ def self.assembly_ai(member:)
321
+ new(member: member, discriminant: "assembly-ai")
322
+ end
323
+
324
+ # @param member [Vapi::CreateAzureOpenAiCredentialDto]
325
+ # @return [Vapi::AssistantCredentialsItem]
326
+ def self.azure_openai(member:)
327
+ new(member: member, discriminant: "azure-openai")
328
+ end
329
+
330
+ # @param member [Vapi::CreateAzureCredentialDto]
331
+ # @return [Vapi::AssistantCredentialsItem]
332
+ def self.azure(member:)
333
+ new(member: member, discriminant: "azure")
334
+ end
335
+
336
+ # @param member [Vapi::CreateByoSipTrunkCredentialDto]
337
+ # @return [Vapi::AssistantCredentialsItem]
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::AssistantCredentialsItem]
344
+ def self.cartesia(member:)
345
+ new(member: member, discriminant: "cartesia")
346
+ end
347
+
348
+ # @param member [Vapi::CreateCloudflareCredentialDto]
349
+ # @return [Vapi::AssistantCredentialsItem]
350
+ def self.cloudflare(member:)
351
+ new(member: member, discriminant: "cloudflare")
352
+ end
353
+
354
+ # @param member [Vapi::CreateCustomLlmCredentialDto]
355
+ # @return [Vapi::AssistantCredentialsItem]
356
+ def self.custom_llm(member:)
357
+ new(member: member, discriminant: "custom-llm")
358
+ end
359
+
360
+ # @param member [Vapi::CreateDeepgramCredentialDto]
361
+ # @return [Vapi::AssistantCredentialsItem]
362
+ def self.deepgram(member:)
363
+ new(member: member, discriminant: "deepgram")
364
+ end
365
+
366
+ # @param member [Vapi::CreateDeepInfraCredentialDto]
367
+ # @return [Vapi::AssistantCredentialsItem]
368
+ def self.deepinfra(member:)
369
+ new(member: member, discriminant: "deepinfra")
370
+ end
371
+
372
+ # @param member [Vapi::CreateDeepSeekCredentialDto]
373
+ # @return [Vapi::AssistantCredentialsItem]
374
+ def self.deep_seek(member:)
375
+ new(member: member, discriminant: "deep-seek")
376
+ end
377
+
378
+ # @param member [Vapi::CreateElevenLabsCredentialDto]
379
+ # @return [Vapi::AssistantCredentialsItem]
380
+ def self._11_labs(member:)
381
+ new(member: member, discriminant: "11labs")
382
+ end
383
+
384
+ # @param member [Vapi::CreateGcpCredentialDto]
385
+ # @return [Vapi::AssistantCredentialsItem]
386
+ def self.gcp(member:)
387
+ new(member: member, discriminant: "gcp")
388
+ end
389
+
390
+ # @param member [Vapi::CreateGladiaCredentialDto]
391
+ # @return [Vapi::AssistantCredentialsItem]
392
+ def self.gladia(member:)
393
+ new(member: member, discriminant: "gladia")
394
+ end
395
+
396
+ # @param member [Vapi::CreateGoHighLevelCredentialDto]
397
+ # @return [Vapi::AssistantCredentialsItem]
398
+ def self.gohighlevel(member:)
399
+ new(member: member, discriminant: "gohighlevel")
400
+ end
401
+
402
+ # @param member [Vapi::CreateGroqCredentialDto]
403
+ # @return [Vapi::AssistantCredentialsItem]
404
+ def self.groq(member:)
405
+ new(member: member, discriminant: "groq")
406
+ end
407
+
408
+ # @param member [Vapi::CreateLangfuseCredentialDto]
409
+ # @return [Vapi::AssistantCredentialsItem]
410
+ def self.langfuse(member:)
411
+ new(member: member, discriminant: "langfuse")
412
+ end
413
+
414
+ # @param member [Vapi::CreateLmntCredentialDto]
415
+ # @return [Vapi::AssistantCredentialsItem]
416
+ def self.lmnt(member:)
417
+ new(member: member, discriminant: "lmnt")
418
+ end
419
+
420
+ # @param member [Vapi::CreateMakeCredentialDto]
421
+ # @return [Vapi::AssistantCredentialsItem]
422
+ def self.make(member:)
423
+ new(member: member, discriminant: "make")
424
+ end
425
+
426
+ # @param member [Vapi::CreateOpenAiCredentialDto]
427
+ # @return [Vapi::AssistantCredentialsItem]
428
+ def self.openai(member:)
429
+ new(member: member, discriminant: "openai")
430
+ end
431
+
432
+ # @param member [Vapi::CreateOpenRouterCredentialDto]
433
+ # @return [Vapi::AssistantCredentialsItem]
434
+ def self.openrouter(member:)
435
+ new(member: member, discriminant: "openrouter")
436
+ end
437
+
438
+ # @param member [Vapi::CreatePerplexityAiCredentialDto]
439
+ # @return [Vapi::AssistantCredentialsItem]
440
+ def self.perplexity_ai(member:)
441
+ new(member: member, discriminant: "perplexity-ai")
442
+ end
443
+
444
+ # @param member [Vapi::CreatePlayHtCredentialDto]
445
+ # @return [Vapi::AssistantCredentialsItem]
446
+ def self.playht(member:)
447
+ new(member: member, discriminant: "playht")
448
+ end
449
+
450
+ # @param member [Vapi::CreateRimeAiCredentialDto]
451
+ # @return [Vapi::AssistantCredentialsItem]
452
+ def self.rime_ai(member:)
453
+ new(member: member, discriminant: "rime-ai")
454
+ end
455
+
456
+ # @param member [Vapi::CreateRunpodCredentialDto]
457
+ # @return [Vapi::AssistantCredentialsItem]
458
+ def self.runpod(member:)
459
+ new(member: member, discriminant: "runpod")
460
+ end
461
+
462
+ # @param member [Vapi::CreateS3CredentialDto]
463
+ # @return [Vapi::AssistantCredentialsItem]
464
+ def self.s_3(member:)
465
+ new(member: member, discriminant: "s3")
466
+ end
467
+
468
+ # @param member [Vapi::CreateSmallestAiCredentialDto]
469
+ # @return [Vapi::AssistantCredentialsItem]
470
+ def self.smallest_ai(member:)
471
+ new(member: member, discriminant: "smallest-ai")
472
+ end
473
+
474
+ # @param member [Vapi::CreateTavusCredentialDto]
475
+ # @return [Vapi::AssistantCredentialsItem]
476
+ def self.tavus(member:)
477
+ new(member: member, discriminant: "tavus")
478
+ end
479
+
480
+ # @param member [Vapi::CreateTogetherAiCredentialDto]
481
+ # @return [Vapi::AssistantCredentialsItem]
482
+ def self.together_ai(member:)
483
+ new(member: member, discriminant: "together-ai")
484
+ end
485
+
486
+ # @param member [Vapi::CreateTwilioCredentialDto]
487
+ # @return [Vapi::AssistantCredentialsItem]
488
+ def self.twilio(member:)
489
+ new(member: member, discriminant: "twilio")
490
+ end
491
+
492
+ # @param member [Vapi::CreateVonageCredentialDto]
493
+ # @return [Vapi::AssistantCredentialsItem]
494
+ def self.vonage(member:)
495
+ new(member: member, discriminant: "vonage")
496
+ end
497
+
498
+ # @param member [Vapi::CreateWebhookCredentialDto]
499
+ # @return [Vapi::AssistantCredentialsItem]
500
+ def self.webhook(member:)
501
+ new(member: member, discriminant: "webhook")
502
+ end
503
+
504
+ # @param member [Vapi::CreateXAiCredentialDto]
505
+ # @return [Vapi::AssistantCredentialsItem]
506
+ def self.xai(member:)
507
+ new(member: member, discriminant: "xai")
508
+ end
509
+ end
510
+ end
@@ -0,0 +1,100 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "regex_option"
4
+ require "ostruct"
5
+ require "json"
6
+
7
+ module Vapi
8
+ class AssistantCustomEndpointingRule
9
+ # @return [String] This is the regex pattern to match.
10
+ # Note:
11
+ # - This works by using the `RegExp.test` method in Node.JS. Eg.
12
+ # `/hello/.test("hello there")` will return `true`.
13
+ # Hot tip:
14
+ # - In JavaScript, escape `\` when sending the regex pattern. Eg. `"hello\sthere"`
15
+ # will be sent over the wire as `"hellosthere"`. Send `"hello\\sthere"` instead.
16
+ # - `RegExp.test` does substring matching, so `/cat/.test("I love cats")` will
17
+ # return `true`. To do full string matching, send "^cat$".
18
+ attr_reader :regex
19
+ # @return [Array<Vapi::RegexOption>] These are the options for the regex match. Defaults to all disabled.
20
+ # @default []
21
+ attr_reader :regex_options
22
+ # @return [Float] This is the endpointing timeout in seconds, if the rule is matched.
23
+ attr_reader :timeout_seconds
24
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
25
+ attr_reader :additional_properties
26
+ # @return [Object]
27
+ attr_reader :_field_set
28
+ protected :_field_set
29
+
30
+ OMIT = Object.new
31
+
32
+ # @param regex [String] This is the regex pattern to match.
33
+ # Note:
34
+ # - This works by using the `RegExp.test` method in Node.JS. Eg.
35
+ # `/hello/.test("hello there")` will return `true`.
36
+ # Hot tip:
37
+ # - In JavaScript, escape `\` when sending the regex pattern. Eg. `"hello\sthere"`
38
+ # will be sent over the wire as `"hellosthere"`. Send `"hello\\sthere"` instead.
39
+ # - `RegExp.test` does substring matching, so `/cat/.test("I love cats")` will
40
+ # return `true`. To do full string matching, send "^cat$".
41
+ # @param regex_options [Array<Vapi::RegexOption>] These are the options for the regex match. Defaults to all disabled.
42
+ # @default []
43
+ # @param timeout_seconds [Float] This is the endpointing timeout in seconds, if the rule is matched.
44
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
45
+ # @return [Vapi::AssistantCustomEndpointingRule]
46
+ def initialize(regex:, timeout_seconds:, regex_options: OMIT, additional_properties: nil)
47
+ @regex = regex
48
+ @regex_options = regex_options if regex_options != OMIT
49
+ @timeout_seconds = timeout_seconds
50
+ @additional_properties = additional_properties
51
+ @_field_set = {
52
+ "regex": regex,
53
+ "regexOptions": regex_options,
54
+ "timeoutSeconds": timeout_seconds
55
+ }.reject do |_k, v|
56
+ v == OMIT
57
+ end
58
+ end
59
+
60
+ # Deserialize a JSON object to an instance of AssistantCustomEndpointingRule
61
+ #
62
+ # @param json_object [String]
63
+ # @return [Vapi::AssistantCustomEndpointingRule]
64
+ def self.from_json(json_object:)
65
+ struct = JSON.parse(json_object, object_class: OpenStruct)
66
+ parsed_json = JSON.parse(json_object)
67
+ regex = parsed_json["regex"]
68
+ regex_options = parsed_json["regexOptions"]&.map do |item|
69
+ item = item.to_json
70
+ Vapi::RegexOption.from_json(json_object: item)
71
+ end
72
+ timeout_seconds = parsed_json["timeoutSeconds"]
73
+ new(
74
+ regex: regex,
75
+ regex_options: regex_options,
76
+ timeout_seconds: timeout_seconds,
77
+ additional_properties: struct
78
+ )
79
+ end
80
+
81
+ # Serialize an instance of AssistantCustomEndpointingRule to a JSON object
82
+ #
83
+ # @return [String]
84
+ def to_json(*_args)
85
+ @_field_set&.to_json
86
+ end
87
+
88
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
89
+ # hash and check each fields type against the current object's property
90
+ # definitions.
91
+ #
92
+ # @param obj [Object]
93
+ # @return [Void]
94
+ def self.validate_raw(obj:)
95
+ obj.regex.is_a?(String) != false || raise("Passed value for field obj.regex is not the expected type, validation failed.")
96
+ obj.regex_options&.is_a?(Array) != false || raise("Passed value for field obj.regex_options is not the expected type, validation failed.")
97
+ obj.timeout_seconds.is_a?(Float) != false || raise("Passed value for field obj.timeout_seconds is not the expected type, validation failed.")
98
+ end
99
+ end
100
+ end