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,96 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "json"
4
+ require_relative "transfer_destination_number"
5
+ require_relative "transfer_destination_sip"
6
+
7
+ module Vapi
8
+ # This is the destination to transfer the call to.
9
+ class ClientInboundMessageTransferDestination
10
+ # @return [Object]
11
+ attr_reader :member
12
+ # @return [String]
13
+ attr_reader :discriminant
14
+
15
+ private_class_method :new
16
+ alias kind_of? is_a?
17
+
18
+ # @param member [Object]
19
+ # @param discriminant [String]
20
+ # @return [Vapi::ClientInboundMessageTransferDestination]
21
+ def initialize(member:, discriminant:)
22
+ @member = member
23
+ @discriminant = discriminant
24
+ end
25
+
26
+ # Deserialize a JSON object to an instance of
27
+ # ClientInboundMessageTransferDestination
28
+ #
29
+ # @param json_object [String]
30
+ # @return [Vapi::ClientInboundMessageTransferDestination]
31
+ def self.from_json(json_object:)
32
+ struct = JSON.parse(json_object, object_class: OpenStruct)
33
+ member = case struct.type
34
+ when "number"
35
+ Vapi::TransferDestinationNumber.from_json(json_object: json_object)
36
+ when "sip"
37
+ Vapi::TransferDestinationSip.from_json(json_object: json_object)
38
+ else
39
+ Vapi::TransferDestinationNumber.from_json(json_object: json_object)
40
+ end
41
+ new(member: member, discriminant: struct.type)
42
+ end
43
+
44
+ # For Union Types, to_json functionality is delegated to the wrapped member.
45
+ #
46
+ # @return [String]
47
+ def to_json(*_args)
48
+ case @discriminant
49
+ when "number"
50
+ { **@member.to_json, type: @discriminant }.to_json
51
+ when "sip"
52
+ { **@member.to_json, type: @discriminant }.to_json
53
+ else
54
+ { "type": @discriminant, value: @member }.to_json
55
+ end
56
+ @member.to_json
57
+ end
58
+
59
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
60
+ # hash and check each fields type against the current object's property
61
+ # definitions.
62
+ #
63
+ # @param obj [Object]
64
+ # @return [Void]
65
+ def self.validate_raw(obj:)
66
+ case obj.type
67
+ when "number"
68
+ Vapi::TransferDestinationNumber.validate_raw(obj: obj)
69
+ when "sip"
70
+ Vapi::TransferDestinationSip.validate_raw(obj: obj)
71
+ else
72
+ raise("Passed value matched no type within the union, validation failed.")
73
+ end
74
+ end
75
+
76
+ # For Union Types, is_a? functionality is delegated to the wrapped member.
77
+ #
78
+ # @param obj [Object]
79
+ # @return [Boolean]
80
+ def is_a?(obj)
81
+ @member.is_a?(obj)
82
+ end
83
+
84
+ # @param member [Vapi::TransferDestinationNumber]
85
+ # @return [Vapi::ClientInboundMessageTransferDestination]
86
+ def self.number(member:)
87
+ new(member: member, discriminant: "number")
88
+ end
89
+
90
+ # @param member [Vapi::TransferDestinationSip]
91
+ # @return [Vapi::ClientInboundMessageTransferDestination]
92
+ def self.sip(member:)
93
+ new(member: member, discriminant: "sip")
94
+ end
95
+ end
96
+ end
@@ -4,7 +4,7 @@ require "ostruct"
4
4
  require "json"
5
5
 
6
6
  module Vapi
7
- class ClientMessageLanguageChanged
7
+ class ClientMessageLanguageChangeDetected
8
8
  # @return [String] This is the language the transcriber is switched to.
9
9
  attr_reader :language
10
10
  # @return [OpenStruct] Additional properties unmapped to the current class definition
@@ -17,17 +17,17 @@ module Vapi
17
17
 
18
18
  # @param language [String] This is the language the transcriber is switched to.
19
19
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
20
- # @return [Vapi::ClientMessageLanguageChanged]
20
+ # @return [Vapi::ClientMessageLanguageChangeDetected]
21
21
  def initialize(language:, additional_properties: nil)
22
22
  @language = language
23
23
  @additional_properties = additional_properties
24
24
  @_field_set = { "language": language }
25
25
  end
26
26
 
27
- # Deserialize a JSON object to an instance of ClientMessageLanguageChanged
27
+ # Deserialize a JSON object to an instance of ClientMessageLanguageChangeDetected
28
28
  #
29
29
  # @param json_object [String]
30
- # @return [Vapi::ClientMessageLanguageChanged]
30
+ # @return [Vapi::ClientMessageLanguageChangeDetected]
31
31
  def self.from_json(json_object:)
32
32
  struct = JSON.parse(json_object, object_class: OpenStruct)
33
33
  parsed_json = JSON.parse(json_object)
@@ -35,7 +35,7 @@ module Vapi
35
35
  new(language: language, additional_properties: struct)
36
36
  end
37
37
 
38
- # Serialize an instance of ClientMessageLanguageChanged to a JSON object
38
+ # Serialize an instance of ClientMessageLanguageChangeDetected to a JSON object
39
39
  #
40
40
  # @return [String]
41
41
  def to_json(*_args)
@@ -9,8 +9,9 @@ require_relative "client_message_speech_update"
9
9
  require_relative "client_message_transcript"
10
10
  require_relative "client_message_tool_calls"
11
11
  require_relative "client_message_tool_calls_result"
12
+ require_relative "client_message_transfer_update"
12
13
  require_relative "client_message_user_interrupted"
13
- require_relative "client_message_language_changed"
14
+ require_relative "client_message_language_change_detected"
14
15
  require_relative "client_message_voice_input"
15
16
 
16
17
  module Vapi
@@ -57,10 +58,12 @@ module Vapi
57
58
  Vapi::ClientMessageToolCalls.from_json(json_object: json_object)
58
59
  when "tool-calls-result"
59
60
  Vapi::ClientMessageToolCallsResult.from_json(json_object: json_object)
61
+ when "transfer-update"
62
+ Vapi::ClientMessageTransferUpdate.from_json(json_object: json_object)
60
63
  when "user-interrupted"
61
64
  Vapi::ClientMessageUserInterrupted.from_json(json_object: json_object)
62
- when "language-changed"
63
- Vapi::ClientMessageLanguageChanged.from_json(json_object: json_object)
65
+ when "language-change-detected"
66
+ Vapi::ClientMessageLanguageChangeDetected.from_json(json_object: json_object)
64
67
  when "voice-input"
65
68
  Vapi::ClientMessageVoiceInput.from_json(json_object: json_object)
66
69
  else
@@ -90,9 +93,11 @@ module Vapi
90
93
  { **@member.to_json, type: @discriminant }.to_json
91
94
  when "tool-calls-result"
92
95
  { **@member.to_json, type: @discriminant }.to_json
96
+ when "transfer-update"
97
+ { **@member.to_json, type: @discriminant }.to_json
93
98
  when "user-interrupted"
94
99
  { **@member.to_json, type: @discriminant }.to_json
95
- when "language-changed"
100
+ when "language-change-detected"
96
101
  { **@member.to_json, type: @discriminant }.to_json
97
102
  when "voice-input"
98
103
  { **@member.to_json, type: @discriminant }.to_json
@@ -126,10 +131,12 @@ module Vapi
126
131
  Vapi::ClientMessageToolCalls.validate_raw(obj: obj)
127
132
  when "tool-calls-result"
128
133
  Vapi::ClientMessageToolCallsResult.validate_raw(obj: obj)
134
+ when "transfer-update"
135
+ Vapi::ClientMessageTransferUpdate.validate_raw(obj: obj)
129
136
  when "user-interrupted"
130
137
  Vapi::ClientMessageUserInterrupted.validate_raw(obj: obj)
131
- when "language-changed"
132
- Vapi::ClientMessageLanguageChanged.validate_raw(obj: obj)
138
+ when "language-change-detected"
139
+ Vapi::ClientMessageLanguageChangeDetected.validate_raw(obj: obj)
133
140
  when "voice-input"
134
141
  Vapi::ClientMessageVoiceInput.validate_raw(obj: obj)
135
142
  else
@@ -193,16 +200,22 @@ module Vapi
193
200
  new(member: member, discriminant: "tool-calls-result")
194
201
  end
195
202
 
203
+ # @param member [Vapi::ClientMessageTransferUpdate]
204
+ # @return [Vapi::ClientMessageMessage]
205
+ def self.transfer_update(member:)
206
+ new(member: member, discriminant: "transfer-update")
207
+ end
208
+
196
209
  # @param member [Vapi::ClientMessageUserInterrupted]
197
210
  # @return [Vapi::ClientMessageMessage]
198
211
  def self.user_interrupted(member:)
199
212
  new(member: member, discriminant: "user-interrupted")
200
213
  end
201
214
 
202
- # @param member [Vapi::ClientMessageLanguageChanged]
215
+ # @param member [Vapi::ClientMessageLanguageChangeDetected]
203
216
  # @return [Vapi::ClientMessageMessage]
204
- def self.language_changed(member:)
205
- new(member: member, discriminant: "language-changed")
217
+ def self.language_change_detected(member:)
218
+ new(member: member, discriminant: "language-change-detected")
206
219
  end
207
220
 
208
221
  # @param member [Vapi::ClientMessageVoiceInput]
@@ -7,22 +7,6 @@ require_relative "make_tool_with_tool_call"
7
7
 
8
8
  module Vapi
9
9
  class ClientMessageToolCallsToolWithToolCallListItem
10
- # @return [Object]
11
- attr_reader :member
12
- # @return [String]
13
- attr_reader :discriminant
14
-
15
- private_class_method :new
16
- alias kind_of? is_a?
17
-
18
- # @param member [Object]
19
- # @param discriminant [String]
20
- # @return [Vapi::ClientMessageToolCallsToolWithToolCallListItem]
21
- def initialize(member:, discriminant:)
22
- @member = member
23
- @discriminant = discriminant
24
- end
25
-
26
10
  # Deserialize a JSON object to an instance of
27
11
  # ClientMessageToolCallsToolWithToolCallListItem
28
12
  #
@@ -30,34 +14,55 @@ module Vapi
30
14
  # @return [Vapi::ClientMessageToolCallsToolWithToolCallListItem]
31
15
  def self.from_json(json_object:)
32
16
  struct = JSON.parse(json_object, object_class: OpenStruct)
33
- member = case struct.type
34
- when "function"
35
- Vapi::FunctionToolWithToolCall.from_json(json_object: json_object)
36
- when "ghl"
37
- Vapi::GhlToolWithToolCall.from_json(json_object: json_object)
38
- when "make"
39
- Vapi::MakeToolWithToolCall.from_json(json_object: json_object)
40
- else
41
- Vapi::FunctionToolWithToolCall.from_json(json_object: json_object)
42
- end
43
- new(member: member, discriminant: struct.type)
44
- end
17
+ begin
18
+ Vapi::FunctionToolWithToolCall.validate_raw(obj: struct)
19
+ return Vapi::FunctionToolWithToolCall.from_json(json_object: struct) unless struct.nil?
45
20
 
46
- # For Union Types, to_json functionality is delegated to the wrapped member.
47
- #
48
- # @return [String]
49
- def to_json(*_args)
50
- case @discriminant
51
- when "function"
52
- { **@member.to_json, type: @discriminant }.to_json
53
- when "ghl"
54
- { **@member.to_json, type: @discriminant }.to_json
55
- when "make"
56
- { **@member.to_json, type: @discriminant }.to_json
57
- else
58
- { "type": @discriminant, value: @member }.to_json
21
+ return nil
22
+ rescue StandardError
23
+ # noop
24
+ end
25
+ begin
26
+ Vapi::GhlToolWithToolCall.validate_raw(obj: struct)
27
+ return Vapi::GhlToolWithToolCall.from_json(json_object: struct) unless struct.nil?
28
+
29
+ return nil
30
+ rescue StandardError
31
+ # noop
59
32
  end
60
- @member.to_json
33
+ begin
34
+ Vapi::MakeToolWithToolCall.validate_raw(obj: struct)
35
+ return Vapi::MakeToolWithToolCall.from_json(json_object: struct) unless struct.nil?
36
+
37
+ return nil
38
+ rescue StandardError
39
+ # noop
40
+ end
41
+ begin
42
+ struct.is_a?(Object) != false || raise("Passed value for field struct is not the expected type, validation failed.")
43
+ return struct unless struct.nil?
44
+
45
+ return nil
46
+ rescue StandardError
47
+ # noop
48
+ end
49
+ begin
50
+ struct.is_a?(Object) != false || raise("Passed value for field struct is not the expected type, validation failed.")
51
+ return struct unless struct.nil?
52
+
53
+ return nil
54
+ rescue StandardError
55
+ # noop
56
+ end
57
+ begin
58
+ struct.is_a?(Object) != false || raise("Passed value for field struct is not the expected type, validation failed.")
59
+ return struct unless struct.nil?
60
+
61
+ return nil
62
+ rescue StandardError
63
+ # noop
64
+ end
65
+ struct
61
66
  end
62
67
 
63
68
  # Leveraged for Union-type generation, validate_raw attempts to parse the given
@@ -67,42 +72,37 @@ module Vapi
67
72
  # @param obj [Object]
68
73
  # @return [Void]
69
74
  def self.validate_raw(obj:)
70
- case obj.type
71
- when "function"
72
- Vapi::FunctionToolWithToolCall.validate_raw(obj: obj)
73
- when "ghl"
74
- Vapi::GhlToolWithToolCall.validate_raw(obj: obj)
75
- when "make"
76
- Vapi::MakeToolWithToolCall.validate_raw(obj: obj)
77
- else
78
- raise("Passed value matched no type within the union, validation failed.")
75
+ begin
76
+ return Vapi::FunctionToolWithToolCall.validate_raw(obj: obj)
77
+ rescue StandardError
78
+ # noop
79
79
  end
80
- end
81
-
82
- # For Union Types, is_a? functionality is delegated to the wrapped member.
83
- #
84
- # @param obj [Object]
85
- # @return [Boolean]
86
- def is_a?(obj)
87
- @member.is_a?(obj)
88
- end
89
-
90
- # @param member [Vapi::FunctionToolWithToolCall]
91
- # @return [Vapi::ClientMessageToolCallsToolWithToolCallListItem]
92
- def self.function(member:)
93
- new(member: member, discriminant: "function")
94
- end
95
-
96
- # @param member [Vapi::GhlToolWithToolCall]
97
- # @return [Vapi::ClientMessageToolCallsToolWithToolCallListItem]
98
- def self.ghl(member:)
99
- new(member: member, discriminant: "ghl")
100
- end
101
-
102
- # @param member [Vapi::MakeToolWithToolCall]
103
- # @return [Vapi::ClientMessageToolCallsToolWithToolCallListItem]
104
- def self.make(member:)
105
- new(member: member, discriminant: "make")
80
+ begin
81
+ return Vapi::GhlToolWithToolCall.validate_raw(obj: obj)
82
+ rescue StandardError
83
+ # noop
84
+ end
85
+ begin
86
+ return Vapi::MakeToolWithToolCall.validate_raw(obj: obj)
87
+ rescue StandardError
88
+ # noop
89
+ end
90
+ begin
91
+ return obj.is_a?(Object) != false || raise("Passed value for field obj is not the expected type, validation failed.")
92
+ rescue StandardError
93
+ # noop
94
+ end
95
+ begin
96
+ return obj.is_a?(Object) != false || raise("Passed value for field obj is not the expected type, validation failed.")
97
+ rescue StandardError
98
+ # noop
99
+ end
100
+ begin
101
+ return obj.is_a?(Object) != false || raise("Passed value for field obj is not the expected type, validation failed.")
102
+ rescue StandardError
103
+ # noop
104
+ end
105
+ raise("Passed value matched no type within the union, validation failed.")
106
106
  end
107
107
  end
108
108
  end
@@ -0,0 +1,116 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "client_message_transfer_update_destination"
4
+ require_relative "create_assistant_dto"
5
+ require "ostruct"
6
+ require "json"
7
+
8
+ module Vapi
9
+ class ClientMessageTransferUpdate
10
+ # @return [Vapi::ClientMessageTransferUpdateDestination] This is the destination of the transfer.
11
+ attr_reader :destination
12
+ # @return [Vapi::CreateAssistantDto] This is the assistant that the call is being transferred to. This is only sent
13
+ # if `destination.type` is "assistant".
14
+ attr_reader :to_assistant
15
+ # @return [Vapi::CreateAssistantDto] This is the assistant that the call is being transferred from. This is only sent
16
+ # if `destination.type` is "assistant".
17
+ attr_reader :from_assistant
18
+ # @return [Hash{String => Object}] This is the step that the conversation moved to.
19
+ attr_reader :to_step_record
20
+ # @return [Hash{String => Object}] This is the step that the conversation moved from. =
21
+ attr_reader :from_step_record
22
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
23
+ attr_reader :additional_properties
24
+ # @return [Object]
25
+ attr_reader :_field_set
26
+ protected :_field_set
27
+
28
+ OMIT = Object.new
29
+
30
+ # @param destination [Vapi::ClientMessageTransferUpdateDestination] This is the destination of the transfer.
31
+ # @param to_assistant [Vapi::CreateAssistantDto] This is the assistant that the call is being transferred to. This is only sent
32
+ # if `destination.type` is "assistant".
33
+ # @param from_assistant [Vapi::CreateAssistantDto] This is the assistant that the call is being transferred from. This is only sent
34
+ # if `destination.type` is "assistant".
35
+ # @param to_step_record [Hash{String => Object}] This is the step that the conversation moved to.
36
+ # @param from_step_record [Hash{String => Object}] This is the step that the conversation moved from. =
37
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
38
+ # @return [Vapi::ClientMessageTransferUpdate]
39
+ def initialize(destination: OMIT, to_assistant: OMIT, from_assistant: OMIT, to_step_record: OMIT,
40
+ from_step_record: OMIT, additional_properties: nil)
41
+ @destination = destination if destination != OMIT
42
+ @to_assistant = to_assistant if to_assistant != OMIT
43
+ @from_assistant = from_assistant if from_assistant != OMIT
44
+ @to_step_record = to_step_record if to_step_record != OMIT
45
+ @from_step_record = from_step_record if from_step_record != OMIT
46
+ @additional_properties = additional_properties
47
+ @_field_set = {
48
+ "destination": destination,
49
+ "toAssistant": to_assistant,
50
+ "fromAssistant": from_assistant,
51
+ "toStepRecord": to_step_record,
52
+ "fromStepRecord": from_step_record
53
+ }.reject do |_k, v|
54
+ v == OMIT
55
+ end
56
+ end
57
+
58
+ # Deserialize a JSON object to an instance of ClientMessageTransferUpdate
59
+ #
60
+ # @param json_object [String]
61
+ # @return [Vapi::ClientMessageTransferUpdate]
62
+ def self.from_json(json_object:)
63
+ struct = JSON.parse(json_object, object_class: OpenStruct)
64
+ parsed_json = JSON.parse(json_object)
65
+ if parsed_json["destination"].nil?
66
+ destination = nil
67
+ else
68
+ destination = parsed_json["destination"].to_json
69
+ destination = Vapi::ClientMessageTransferUpdateDestination.from_json(json_object: destination)
70
+ end
71
+ if parsed_json["toAssistant"].nil?
72
+ to_assistant = nil
73
+ else
74
+ to_assistant = parsed_json["toAssistant"].to_json
75
+ to_assistant = Vapi::CreateAssistantDto.from_json(json_object: to_assistant)
76
+ end
77
+ if parsed_json["fromAssistant"].nil?
78
+ from_assistant = nil
79
+ else
80
+ from_assistant = parsed_json["fromAssistant"].to_json
81
+ from_assistant = Vapi::CreateAssistantDto.from_json(json_object: from_assistant)
82
+ end
83
+ to_step_record = parsed_json["toStepRecord"]
84
+ from_step_record = parsed_json["fromStepRecord"]
85
+ new(
86
+ destination: destination,
87
+ to_assistant: to_assistant,
88
+ from_assistant: from_assistant,
89
+ to_step_record: to_step_record,
90
+ from_step_record: from_step_record,
91
+ additional_properties: struct
92
+ )
93
+ end
94
+
95
+ # Serialize an instance of ClientMessageTransferUpdate to a JSON object
96
+ #
97
+ # @return [String]
98
+ def to_json(*_args)
99
+ @_field_set&.to_json
100
+ end
101
+
102
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
103
+ # hash and check each fields type against the current object's property
104
+ # definitions.
105
+ #
106
+ # @param obj [Object]
107
+ # @return [Void]
108
+ def self.validate_raw(obj:)
109
+ obj.destination.nil? || Vapi::ClientMessageTransferUpdateDestination.validate_raw(obj: obj.destination)
110
+ obj.to_assistant.nil? || Vapi::CreateAssistantDto.validate_raw(obj: obj.to_assistant)
111
+ obj.from_assistant.nil? || Vapi::CreateAssistantDto.validate_raw(obj: obj.from_assistant)
112
+ obj.to_step_record&.is_a?(Hash) != false || raise("Passed value for field obj.to_step_record is not the expected type, validation failed.")
113
+ obj.from_step_record&.is_a?(Hash) != false || raise("Passed value for field obj.from_step_record is not the expected type, validation failed.")
114
+ end
115
+ end
116
+ end
@@ -0,0 +1,122 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "json"
4
+ require_relative "transfer_destination_assistant"
5
+ require_relative "transfer_destination_step"
6
+ require_relative "transfer_destination_number"
7
+ require_relative "transfer_destination_sip"
8
+
9
+ module Vapi
10
+ # This is the destination of the transfer.
11
+ class ClientMessageTransferUpdateDestination
12
+ # @return [Object]
13
+ attr_reader :member
14
+ # @return [String]
15
+ attr_reader :discriminant
16
+
17
+ private_class_method :new
18
+ alias kind_of? is_a?
19
+
20
+ # @param member [Object]
21
+ # @param discriminant [String]
22
+ # @return [Vapi::ClientMessageTransferUpdateDestination]
23
+ def initialize(member:, discriminant:)
24
+ @member = member
25
+ @discriminant = discriminant
26
+ end
27
+
28
+ # Deserialize a JSON object to an instance of
29
+ # ClientMessageTransferUpdateDestination
30
+ #
31
+ # @param json_object [String]
32
+ # @return [Vapi::ClientMessageTransferUpdateDestination]
33
+ def self.from_json(json_object:)
34
+ struct = JSON.parse(json_object, object_class: OpenStruct)
35
+ member = case struct.type
36
+ when "assistant"
37
+ Vapi::TransferDestinationAssistant.from_json(json_object: json_object)
38
+ when "step"
39
+ Vapi::TransferDestinationStep.from_json(json_object: json_object)
40
+ when "number"
41
+ Vapi::TransferDestinationNumber.from_json(json_object: json_object)
42
+ when "sip"
43
+ Vapi::TransferDestinationSip.from_json(json_object: json_object)
44
+ else
45
+ Vapi::TransferDestinationAssistant.from_json(json_object: json_object)
46
+ end
47
+ new(member: member, discriminant: struct.type)
48
+ end
49
+
50
+ # For Union Types, to_json functionality is delegated to the wrapped member.
51
+ #
52
+ # @return [String]
53
+ def to_json(*_args)
54
+ case @discriminant
55
+ when "assistant"
56
+ { **@member.to_json, type: @discriminant }.to_json
57
+ when "step"
58
+ { **@member.to_json, type: @discriminant }.to_json
59
+ when "number"
60
+ { **@member.to_json, type: @discriminant }.to_json
61
+ when "sip"
62
+ { **@member.to_json, type: @discriminant }.to_json
63
+ else
64
+ { "type": @discriminant, value: @member }.to_json
65
+ end
66
+ @member.to_json
67
+ end
68
+
69
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
70
+ # hash and check each fields type against the current object's property
71
+ # definitions.
72
+ #
73
+ # @param obj [Object]
74
+ # @return [Void]
75
+ def self.validate_raw(obj:)
76
+ case obj.type
77
+ when "assistant"
78
+ Vapi::TransferDestinationAssistant.validate_raw(obj: obj)
79
+ when "step"
80
+ Vapi::TransferDestinationStep.validate_raw(obj: obj)
81
+ when "number"
82
+ Vapi::TransferDestinationNumber.validate_raw(obj: obj)
83
+ when "sip"
84
+ Vapi::TransferDestinationSip.validate_raw(obj: obj)
85
+ else
86
+ raise("Passed value matched no type within the union, validation failed.")
87
+ end
88
+ end
89
+
90
+ # For Union Types, is_a? functionality is delegated to the wrapped member.
91
+ #
92
+ # @param obj [Object]
93
+ # @return [Boolean]
94
+ def is_a?(obj)
95
+ @member.is_a?(obj)
96
+ end
97
+
98
+ # @param member [Vapi::TransferDestinationAssistant]
99
+ # @return [Vapi::ClientMessageTransferUpdateDestination]
100
+ def self.assistant(member:)
101
+ new(member: member, discriminant: "assistant")
102
+ end
103
+
104
+ # @param member [Vapi::TransferDestinationStep]
105
+ # @return [Vapi::ClientMessageTransferUpdateDestination]
106
+ def self.step(member:)
107
+ new(member: member, discriminant: "step")
108
+ end
109
+
110
+ # @param member [Vapi::TransferDestinationNumber]
111
+ # @return [Vapi::ClientMessageTransferUpdateDestination]
112
+ def self.number(member:)
113
+ new(member: member, discriminant: "number")
114
+ end
115
+
116
+ # @param member [Vapi::TransferDestinationSip]
117
+ # @return [Vapi::ClientMessageTransferUpdateDestination]
118
+ def self.sip(member:)
119
+ new(member: member, discriminant: "sip")
120
+ end
121
+ end
122
+ end