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
@@ -5,12 +5,16 @@ require_relative "anyscale_model"
5
5
  require_relative "anthropic_model"
6
6
  require_relative "custom_llm_model"
7
7
  require_relative "deep_infra_model"
8
+ require_relative "google_model"
8
9
  require_relative "groq_model"
10
+ require_relative "inflection_ai_model"
11
+ require_relative "deep_seek_model"
9
12
  require_relative "open_ai_model"
10
13
  require_relative "open_router_model"
11
14
  require_relative "perplexity_ai_model"
12
15
  require_relative "together_ai_model"
13
16
  require_relative "vapi_model"
17
+ require_relative "xai_model"
14
18
 
15
19
  module Vapi
16
20
  # These are the options for the assistant's LLM.
@@ -46,8 +50,14 @@ module Vapi
46
50
  Vapi::CustomLlmModel.from_json(json_object: json_object)
47
51
  when "deepinfra"
48
52
  Vapi::DeepInfraModel.from_json(json_object: json_object)
53
+ when "google"
54
+ Vapi::GoogleModel.from_json(json_object: json_object)
49
55
  when "groq"
50
56
  Vapi::GroqModel.from_json(json_object: json_object)
57
+ when "inflection-ai"
58
+ Vapi::InflectionAiModel.from_json(json_object: json_object)
59
+ when "deep-seek"
60
+ Vapi::DeepSeekModel.from_json(json_object: json_object)
51
61
  when "openai"
52
62
  Vapi::OpenAiModel.from_json(json_object: json_object)
53
63
  when "openrouter"
@@ -58,6 +68,8 @@ module Vapi
58
68
  Vapi::TogetherAiModel.from_json(json_object: json_object)
59
69
  when "vapi"
60
70
  Vapi::VapiModel.from_json(json_object: json_object)
71
+ when "xai"
72
+ Vapi::XaiModel.from_json(json_object: json_object)
61
73
  else
62
74
  Vapi::AnyscaleModel.from_json(json_object: json_object)
63
75
  end
@@ -77,8 +89,14 @@ module Vapi
77
89
  { **@member.to_json, provider: @discriminant }.to_json
78
90
  when "deepinfra"
79
91
  { **@member.to_json, provider: @discriminant }.to_json
92
+ when "google"
93
+ { **@member.to_json, provider: @discriminant }.to_json
80
94
  when "groq"
81
95
  { **@member.to_json, provider: @discriminant }.to_json
96
+ when "inflection-ai"
97
+ { **@member.to_json, provider: @discriminant }.to_json
98
+ when "deep-seek"
99
+ { **@member.to_json, provider: @discriminant }.to_json
82
100
  when "openai"
83
101
  { **@member.to_json, provider: @discriminant }.to_json
84
102
  when "openrouter"
@@ -89,6 +107,8 @@ module Vapi
89
107
  { **@member.to_json, provider: @discriminant }.to_json
90
108
  when "vapi"
91
109
  { **@member.to_json, provider: @discriminant }.to_json
110
+ when "xai"
111
+ { **@member.to_json, provider: @discriminant }.to_json
92
112
  else
93
113
  { "provider": @discriminant, value: @member }.to_json
94
114
  end
@@ -111,8 +131,14 @@ module Vapi
111
131
  Vapi::CustomLlmModel.validate_raw(obj: obj)
112
132
  when "deepinfra"
113
133
  Vapi::DeepInfraModel.validate_raw(obj: obj)
134
+ when "google"
135
+ Vapi::GoogleModel.validate_raw(obj: obj)
114
136
  when "groq"
115
137
  Vapi::GroqModel.validate_raw(obj: obj)
138
+ when "inflection-ai"
139
+ Vapi::InflectionAiModel.validate_raw(obj: obj)
140
+ when "deep-seek"
141
+ Vapi::DeepSeekModel.validate_raw(obj: obj)
116
142
  when "openai"
117
143
  Vapi::OpenAiModel.validate_raw(obj: obj)
118
144
  when "openrouter"
@@ -123,6 +149,8 @@ module Vapi
123
149
  Vapi::TogetherAiModel.validate_raw(obj: obj)
124
150
  when "vapi"
125
151
  Vapi::VapiModel.validate_raw(obj: obj)
152
+ when "xai"
153
+ Vapi::XaiModel.validate_raw(obj: obj)
126
154
  else
127
155
  raise("Passed value matched no type within the union, validation failed.")
128
156
  end
@@ -160,12 +188,30 @@ module Vapi
160
188
  new(member: member, discriminant: "deepinfra")
161
189
  end
162
190
 
191
+ # @param member [Vapi::GoogleModel]
192
+ # @return [Vapi::AssistantModel]
193
+ def self.google(member:)
194
+ new(member: member, discriminant: "google")
195
+ end
196
+
163
197
  # @param member [Vapi::GroqModel]
164
198
  # @return [Vapi::AssistantModel]
165
199
  def self.groq(member:)
166
200
  new(member: member, discriminant: "groq")
167
201
  end
168
202
 
203
+ # @param member [Vapi::InflectionAiModel]
204
+ # @return [Vapi::AssistantModel]
205
+ def self.inflection_ai(member:)
206
+ new(member: member, discriminant: "inflection-ai")
207
+ end
208
+
209
+ # @param member [Vapi::DeepSeekModel]
210
+ # @return [Vapi::AssistantModel]
211
+ def self.deep_seek(member:)
212
+ new(member: member, discriminant: "deep-seek")
213
+ end
214
+
169
215
  # @param member [Vapi::OpenAiModel]
170
216
  # @return [Vapi::AssistantModel]
171
217
  def self.openai(member:)
@@ -195,5 +241,11 @@ module Vapi
195
241
  def self.vapi(member:)
196
242
  new(member: member, discriminant: "vapi")
197
243
  end
244
+
245
+ # @param member [Vapi::XaiModel]
246
+ # @return [Vapi::AssistantModel]
247
+ def self.xai(member:)
248
+ new(member: member, discriminant: "xai")
249
+ end
198
250
  end
199
251
  end
@@ -8,6 +8,7 @@ require_relative "assistant_overrides_client_messages_item"
8
8
  require_relative "assistant_overrides_server_messages_item"
9
9
  require_relative "assistant_overrides_background_sound"
10
10
  require_relative "transport_configuration_twilio"
11
+ require_relative "assistant_overrides_credentials_item"
11
12
  require_relative "twilio_voicemail_detection"
12
13
  require_relative "analysis_plan"
13
14
  require_relative "artifact_plan"
@@ -15,6 +16,7 @@ require_relative "message_plan"
15
16
  require_relative "start_speaking_plan"
16
17
  require_relative "stop_speaking_plan"
17
18
  require_relative "monitor_plan"
19
+ require_relative "server"
18
20
  require "ostruct"
19
21
  require "json"
20
22
 
@@ -26,6 +28,11 @@ module Vapi
26
28
  attr_reader :model
27
29
  # @return [Vapi::AssistantOverridesVoice] These are the options for the assistant's voice.
28
30
  attr_reader :voice
31
+ # @return [String] This is the first message that the assistant will say. This can also be a URL to
32
+ # a containerized audio file (mp3, wav, etc.).
33
+ # If unspecified, assistant will wait for user to speak and use the model to
34
+ # respond once they speak.
35
+ attr_reader :first_message
29
36
  # @return [Vapi::AssistantOverridesFirstMessageMode] This is the mode for the first message. Default is 'assistant-speaks-first'.
30
37
  # Use:
31
38
  # - 'assistant-speaks-first' to have the assistant speak first.
@@ -42,7 +49,7 @@ module Vapi
42
49
  # store on your server. Defaults to false.
43
50
  attr_reader :hipaa_enabled
44
51
  # @return [Array<Vapi::AssistantOverridesClientMessagesItem>] These are the messages that will be sent to your Client SDKs. Default is
45
- # ,speech-update,status-update,transcript,tool-calls,user-interrupted,voice-input.
52
+ # tatus-update,transfer-update,transcript,tool-calls,user-interrupted,voice-input.
46
53
  # You can check the shape of the messages in ClientMessage schema.
47
54
  attr_reader :client_messages
48
55
  # @return [Array<Vapi::AssistantOverridesServerMessagesItem>] These are the messages that will be sent to your Server URL. Default is
@@ -59,11 +66,6 @@ module Vapi
59
66
  # @return [Vapi::AssistantOverridesBackgroundSound] This is the background sound in the call. Default for phone calls is 'office'
60
67
  # and default for web calls is 'off'.
61
68
  attr_reader :background_sound
62
- # @return [Boolean] This determines whether the model says 'mhmm', 'ahem' etc. while user is
63
- # speaking.
64
- # Default `false` while in beta.
65
- # @default false
66
- attr_reader :backchanneling_enabled
67
69
  # @return [Boolean] This enables filtering of noise and background speech while the user is talking.
68
70
  # Default `false` while in beta.
69
71
  # @default false
@@ -78,17 +80,24 @@ module Vapi
78
80
  # different transport providers. For a call, only the configuration matching the
79
81
  # call transport provider is used.
80
82
  attr_reader :transport_configurations
83
+ # @return [Array<Vapi::AssistantOverridesCredentialsItem>] These are dynamic credentials that will be used for the assistant calls. By
84
+ # default, all the credentials are available for use in the call but you can
85
+ # supplement an additional credentials using this. Dynamic credentials override
86
+ # existing credentials.
87
+ attr_reader :credentials
81
88
  # @return [Hash{String => Object}] These are values that will be used to replace the template variables in the
82
89
  # assistant messages and other text-based fields.
90
+ # This uses LiquidJS syntax. https://liquidjs.com/tutorials/intro-to-liquid.html
91
+ # So for example, `{{ name }}` will be replaced with the value of `name` in
92
+ # `variableValues`.
93
+ # `{{"now" | date: "%b %d, %Y, %I:%M %p", "America/New_York"}}` will be replaced
94
+ # with the current date and time in New York.
95
+ # Some VAPI reserved defaults:
96
+ # - *customer* - the customer object
83
97
  attr_reader :variable_values
84
98
  # @return [String] This is the name of the assistant.
85
99
  # This is required when you want to transfer between assistants in a call.
86
100
  attr_reader :name
87
- # @return [String] This is the first message that the assistant will say. This can also be a URL to
88
- # a containerized audio file (mp3, wav, etc.).
89
- # If unspecified, assistant will wait for user to speak and use the model to
90
- # respond once they speak.
91
- attr_reader :first_message
92
101
  # @return [Vapi::TwilioVoicemailDetection] These are the settings to configure or disable voicemail detection.
93
102
  # Alternatively, voicemail detection can be configured using the
94
103
  # model.tools=[VoicemailTool].
@@ -109,18 +118,6 @@ module Vapi
109
118
  attr_reader :end_call_phrases
110
119
  # @return [Hash{String => Object}] This is for metadata you want to store on the assistant.
111
120
  attr_reader :metadata
112
- # @return [String] This is the URL Vapi will communicate with via HTTP GET and POST Requests. This
113
- # is used for retrieving context, function calling, and end-of-call reports.
114
- # All requests will be sent with the call object among other things relevant to
115
- # that message. You can find more details in the Server URL documentation.
116
- # This overrides the serverUrl set on the org and the phoneNumber. Order of
117
- # precedence: tool.server.url > assistant.serverUrl > phoneNumber.serverUrl >
118
- # org.serverUrl
119
- attr_reader :server_url
120
- # @return [String] This is the secret you can set that Vapi will send with every request to your
121
- # server. Will be sent as a header called x-vapi-secret.
122
- # Same precedence logic as serverUrl.
123
- attr_reader :server_url_secret
124
121
  # @return [Vapi::AnalysisPlan] This is the plan for analysis of assistant's calls. Stored in `call.analysis`.
125
122
  attr_reader :analysis_plan
126
123
  # @return [Vapi::ArtifactPlan] This is the plan for artifacts generated during assistant's calls. Stored in
@@ -166,6 +163,13 @@ module Vapi
166
163
  # all the credentials are available for use in the call but you can provide a
167
164
  # subset using this.
168
165
  attr_reader :credential_ids
166
+ # @return [Vapi::Server] This is where Vapi will send webhooks. You can find all webhooks available along
167
+ # with their shape in ServerMessage schema.
168
+ # The order of precedence is:
169
+ # 1. assistant.server.url
170
+ # 2. phoneNumber.serverUrl
171
+ # 3. org.serverUrl
172
+ attr_reader :server
169
173
  # @return [OpenStruct] Additional properties unmapped to the current class definition
170
174
  attr_reader :additional_properties
171
175
  # @return [Object]
@@ -177,6 +181,10 @@ module Vapi
177
181
  # @param transcriber [Vapi::AssistantOverridesTranscriber] These are the options for the assistant's transcriber.
178
182
  # @param model [Vapi::AssistantOverridesModel] These are the options for the assistant's LLM.
179
183
  # @param voice [Vapi::AssistantOverridesVoice] These are the options for the assistant's voice.
184
+ # @param first_message [String] This is the first message that the assistant will say. This can also be a URL to
185
+ # a containerized audio file (mp3, wav, etc.).
186
+ # If unspecified, assistant will wait for user to speak and use the model to
187
+ # respond once they speak.
180
188
  # @param first_message_mode [Vapi::AssistantOverridesFirstMessageMode] This is the mode for the first message. Default is 'assistant-speaks-first'.
181
189
  # Use:
182
190
  # - 'assistant-speaks-first' to have the assistant speak first.
@@ -191,7 +199,7 @@ module Vapi
191
199
  # the end of the call, you will still receive an end-of-call-report message to
192
200
  # store on your server. Defaults to false.
193
201
  # @param client_messages [Array<Vapi::AssistantOverridesClientMessagesItem>] These are the messages that will be sent to your Client SDKs. Default is
194
- # ,speech-update,status-update,transcript,tool-calls,user-interrupted,voice-input.
202
+ # tatus-update,transfer-update,transcript,tool-calls,user-interrupted,voice-input.
195
203
  # You can check the shape of the messages in ClientMessage schema.
196
204
  # @param server_messages [Array<Vapi::AssistantOverridesServerMessagesItem>] These are the messages that will be sent to your Server URL. Default is
197
205
  # h-update,status-update,tool-calls,transfer-destination-request,user-interrupted.
@@ -203,10 +211,6 @@ module Vapi
203
211
  # @default 600 (10 minutes)
204
212
  # @param background_sound [Vapi::AssistantOverridesBackgroundSound] This is the background sound in the call. Default for phone calls is 'office'
205
213
  # and default for web calls is 'off'.
206
- # @param backchanneling_enabled [Boolean] This determines whether the model says 'mhmm', 'ahem' etc. while user is
207
- # speaking.
208
- # Default `false` while in beta.
209
- # @default false
210
214
  # @param background_denoising_enabled [Boolean] This enables filtering of noise and background speech while the user is talking.
211
215
  # Default `false` while in beta.
212
216
  # @default false
@@ -218,14 +222,21 @@ module Vapi
218
222
  # assistant's calls, like Twilio. You can store multiple configurations for
219
223
  # different transport providers. For a call, only the configuration matching the
220
224
  # call transport provider is used.
225
+ # @param credentials [Array<Vapi::AssistantOverridesCredentialsItem>] These are dynamic credentials that will be used for the assistant calls. By
226
+ # default, all the credentials are available for use in the call but you can
227
+ # supplement an additional credentials using this. Dynamic credentials override
228
+ # existing credentials.
221
229
  # @param variable_values [Hash{String => Object}] These are values that will be used to replace the template variables in the
222
230
  # assistant messages and other text-based fields.
231
+ # This uses LiquidJS syntax. https://liquidjs.com/tutorials/intro-to-liquid.html
232
+ # So for example, `{{ name }}` will be replaced with the value of `name` in
233
+ # `variableValues`.
234
+ # `{{"now" | date: "%b %d, %Y, %I:%M %p", "America/New_York"}}` will be replaced
235
+ # with the current date and time in New York.
236
+ # Some VAPI reserved defaults:
237
+ # - *customer* - the customer object
223
238
  # @param name [String] This is the name of the assistant.
224
239
  # This is required when you want to transfer between assistants in a call.
225
- # @param first_message [String] This is the first message that the assistant will say. This can also be a URL to
226
- # a containerized audio file (mp3, wav, etc.).
227
- # If unspecified, assistant will wait for user to speak and use the model to
228
- # respond once they speak.
229
240
  # @param voicemail_detection [Vapi::TwilioVoicemailDetection] These are the settings to configure or disable voicemail detection.
230
241
  # Alternatively, voicemail detection can be configured using the
231
242
  # model.tools=[VoicemailTool].
@@ -241,16 +252,6 @@ module Vapi
241
252
  # @param end_call_phrases [Array<String>] This list contains phrases that, if spoken by the assistant, will trigger the
242
253
  # call to be hung up. Case insensitive.
243
254
  # @param metadata [Hash{String => Object}] This is for metadata you want to store on the assistant.
244
- # @param server_url [String] This is the URL Vapi will communicate with via HTTP GET and POST Requests. This
245
- # is used for retrieving context, function calling, and end-of-call reports.
246
- # All requests will be sent with the call object among other things relevant to
247
- # that message. You can find more details in the Server URL documentation.
248
- # This overrides the serverUrl set on the org and the phoneNumber. Order of
249
- # precedence: tool.server.url > assistant.serverUrl > phoneNumber.serverUrl >
250
- # org.serverUrl
251
- # @param server_url_secret [String] This is the secret you can set that Vapi will send with every request to your
252
- # server. Will be sent as a header called x-vapi-secret.
253
- # Same precedence logic as serverUrl.
254
255
  # @param analysis_plan [Vapi::AnalysisPlan] This is the plan for analysis of assistant's calls. Stored in `call.analysis`.
255
256
  # @param artifact_plan [Vapi::ArtifactPlan] This is the plan for artifacts generated during assistant's calls. Stored in
256
257
  # `call.artifact`.
@@ -289,13 +290,20 @@ module Vapi
289
290
  # @param credential_ids [Array<String>] These are the credentials that will be used for the assistant calls. By default,
290
291
  # all the credentials are available for use in the call but you can provide a
291
292
  # subset using this.
293
+ # @param server [Vapi::Server] This is where Vapi will send webhooks. You can find all webhooks available along
294
+ # with their shape in ServerMessage schema.
295
+ # The order of precedence is:
296
+ # 1. assistant.server.url
297
+ # 2. phoneNumber.serverUrl
298
+ # 3. org.serverUrl
292
299
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
293
300
  # @return [Vapi::AssistantOverrides]
294
- def initialize(transcriber: OMIT, model: OMIT, voice: OMIT, first_message_mode: OMIT, hipaa_enabled: OMIT,
295
- client_messages: OMIT, server_messages: OMIT, silence_timeout_seconds: OMIT, max_duration_seconds: OMIT, background_sound: OMIT, backchanneling_enabled: OMIT, background_denoising_enabled: OMIT, model_output_in_messages_enabled: OMIT, transport_configurations: OMIT, variable_values: OMIT, name: OMIT, first_message: OMIT, voicemail_detection: OMIT, voicemail_message: OMIT, end_call_message: OMIT, end_call_phrases: OMIT, metadata: OMIT, server_url: OMIT, server_url_secret: OMIT, analysis_plan: OMIT, artifact_plan: OMIT, message_plan: OMIT, start_speaking_plan: OMIT, stop_speaking_plan: OMIT, monitor_plan: OMIT, credential_ids: OMIT, additional_properties: nil)
301
+ def initialize(transcriber: OMIT, model: OMIT, voice: OMIT, first_message: OMIT, first_message_mode: OMIT,
302
+ hipaa_enabled: OMIT, client_messages: OMIT, server_messages: OMIT, silence_timeout_seconds: OMIT, max_duration_seconds: OMIT, background_sound: OMIT, background_denoising_enabled: OMIT, model_output_in_messages_enabled: OMIT, transport_configurations: OMIT, credentials: OMIT, variable_values: OMIT, name: OMIT, voicemail_detection: OMIT, voicemail_message: OMIT, end_call_message: OMIT, end_call_phrases: OMIT, metadata: OMIT, analysis_plan: OMIT, artifact_plan: OMIT, message_plan: OMIT, start_speaking_plan: OMIT, stop_speaking_plan: OMIT, monitor_plan: OMIT, credential_ids: OMIT, server: OMIT, additional_properties: nil)
296
303
  @transcriber = transcriber if transcriber != OMIT
297
304
  @model = model if model != OMIT
298
305
  @voice = voice if voice != OMIT
306
+ @first_message = first_message if first_message != OMIT
299
307
  @first_message_mode = first_message_mode if first_message_mode != OMIT
300
308
  @hipaa_enabled = hipaa_enabled if hipaa_enabled != OMIT
301
309
  @client_messages = client_messages if client_messages != OMIT
@@ -303,20 +311,17 @@ module Vapi
303
311
  @silence_timeout_seconds = silence_timeout_seconds if silence_timeout_seconds != OMIT
304
312
  @max_duration_seconds = max_duration_seconds if max_duration_seconds != OMIT
305
313
  @background_sound = background_sound if background_sound != OMIT
306
- @backchanneling_enabled = backchanneling_enabled if backchanneling_enabled != OMIT
307
314
  @background_denoising_enabled = background_denoising_enabled if background_denoising_enabled != OMIT
308
315
  @model_output_in_messages_enabled = model_output_in_messages_enabled if model_output_in_messages_enabled != OMIT
309
316
  @transport_configurations = transport_configurations if transport_configurations != OMIT
317
+ @credentials = credentials if credentials != OMIT
310
318
  @variable_values = variable_values if variable_values != OMIT
311
319
  @name = name if name != OMIT
312
- @first_message = first_message if first_message != OMIT
313
320
  @voicemail_detection = voicemail_detection if voicemail_detection != OMIT
314
321
  @voicemail_message = voicemail_message if voicemail_message != OMIT
315
322
  @end_call_message = end_call_message if end_call_message != OMIT
316
323
  @end_call_phrases = end_call_phrases if end_call_phrases != OMIT
317
324
  @metadata = metadata if metadata != OMIT
318
- @server_url = server_url if server_url != OMIT
319
- @server_url_secret = server_url_secret if server_url_secret != OMIT
320
325
  @analysis_plan = analysis_plan if analysis_plan != OMIT
321
326
  @artifact_plan = artifact_plan if artifact_plan != OMIT
322
327
  @message_plan = message_plan if message_plan != OMIT
@@ -324,11 +329,13 @@ module Vapi
324
329
  @stop_speaking_plan = stop_speaking_plan if stop_speaking_plan != OMIT
325
330
  @monitor_plan = monitor_plan if monitor_plan != OMIT
326
331
  @credential_ids = credential_ids if credential_ids != OMIT
332
+ @server = server if server != OMIT
327
333
  @additional_properties = additional_properties
328
334
  @_field_set = {
329
335
  "transcriber": transcriber,
330
336
  "model": model,
331
337
  "voice": voice,
338
+ "firstMessage": first_message,
332
339
  "firstMessageMode": first_message_mode,
333
340
  "hipaaEnabled": hipaa_enabled,
334
341
  "clientMessages": client_messages,
@@ -336,27 +343,25 @@ module Vapi
336
343
  "silenceTimeoutSeconds": silence_timeout_seconds,
337
344
  "maxDurationSeconds": max_duration_seconds,
338
345
  "backgroundSound": background_sound,
339
- "backchannelingEnabled": backchanneling_enabled,
340
346
  "backgroundDenoisingEnabled": background_denoising_enabled,
341
347
  "modelOutputInMessagesEnabled": model_output_in_messages_enabled,
342
348
  "transportConfigurations": transport_configurations,
349
+ "credentials": credentials,
343
350
  "variableValues": variable_values,
344
351
  "name": name,
345
- "firstMessage": first_message,
346
352
  "voicemailDetection": voicemail_detection,
347
353
  "voicemailMessage": voicemail_message,
348
354
  "endCallMessage": end_call_message,
349
355
  "endCallPhrases": end_call_phrases,
350
356
  "metadata": metadata,
351
- "serverUrl": server_url,
352
- "serverUrlSecret": server_url_secret,
353
357
  "analysisPlan": analysis_plan,
354
358
  "artifactPlan": artifact_plan,
355
359
  "messagePlan": message_plan,
356
360
  "startSpeakingPlan": start_speaking_plan,
357
361
  "stopSpeakingPlan": stop_speaking_plan,
358
362
  "monitorPlan": monitor_plan,
359
- "credentialIds": credential_ids
363
+ "credentialIds": credential_ids,
364
+ "server": server
360
365
  }.reject do |_k, v|
361
366
  v == OMIT
362
367
  end
@@ -387,6 +392,7 @@ module Vapi
387
392
  voice = parsed_json["voice"].to_json
388
393
  voice = Vapi::AssistantOverridesVoice.from_json(json_object: voice)
389
394
  end
395
+ first_message = parsed_json["firstMessage"]
390
396
  first_message_mode = parsed_json["firstMessageMode"]
391
397
  hipaa_enabled = parsed_json["hipaaEnabled"]
392
398
  client_messages = parsed_json["clientMessages"]
@@ -394,16 +400,18 @@ module Vapi
394
400
  silence_timeout_seconds = parsed_json["silenceTimeoutSeconds"]
395
401
  max_duration_seconds = parsed_json["maxDurationSeconds"]
396
402
  background_sound = parsed_json["backgroundSound"]
397
- backchanneling_enabled = parsed_json["backchannelingEnabled"]
398
403
  background_denoising_enabled = parsed_json["backgroundDenoisingEnabled"]
399
404
  model_output_in_messages_enabled = parsed_json["modelOutputInMessagesEnabled"]
400
405
  transport_configurations = parsed_json["transportConfigurations"]&.map do |item|
401
406
  item = item.to_json
402
407
  Vapi::TransportConfigurationTwilio.from_json(json_object: item)
403
408
  end
409
+ credentials = parsed_json["credentials"]&.map do |item|
410
+ item = item.to_json
411
+ Vapi::AssistantOverridesCredentialsItem.from_json(json_object: item)
412
+ end
404
413
  variable_values = parsed_json["variableValues"]
405
414
  name = parsed_json["name"]
406
- first_message = parsed_json["firstMessage"]
407
415
  if parsed_json["voicemailDetection"].nil?
408
416
  voicemail_detection = nil
409
417
  else
@@ -414,8 +422,6 @@ module Vapi
414
422
  end_call_message = parsed_json["endCallMessage"]
415
423
  end_call_phrases = parsed_json["endCallPhrases"]
416
424
  metadata = parsed_json["metadata"]
417
- server_url = parsed_json["serverUrl"]
418
- server_url_secret = parsed_json["serverUrlSecret"]
419
425
  if parsed_json["analysisPlan"].nil?
420
426
  analysis_plan = nil
421
427
  else
@@ -453,10 +459,17 @@ module Vapi
453
459
  monitor_plan = Vapi::MonitorPlan.from_json(json_object: monitor_plan)
454
460
  end
455
461
  credential_ids = parsed_json["credentialIds"]
462
+ if parsed_json["server"].nil?
463
+ server = nil
464
+ else
465
+ server = parsed_json["server"].to_json
466
+ server = Vapi::Server.from_json(json_object: server)
467
+ end
456
468
  new(
457
469
  transcriber: transcriber,
458
470
  model: model,
459
471
  voice: voice,
472
+ first_message: first_message,
460
473
  first_message_mode: first_message_mode,
461
474
  hipaa_enabled: hipaa_enabled,
462
475
  client_messages: client_messages,
@@ -464,20 +477,17 @@ module Vapi
464
477
  silence_timeout_seconds: silence_timeout_seconds,
465
478
  max_duration_seconds: max_duration_seconds,
466
479
  background_sound: background_sound,
467
- backchanneling_enabled: backchanneling_enabled,
468
480
  background_denoising_enabled: background_denoising_enabled,
469
481
  model_output_in_messages_enabled: model_output_in_messages_enabled,
470
482
  transport_configurations: transport_configurations,
483
+ credentials: credentials,
471
484
  variable_values: variable_values,
472
485
  name: name,
473
- first_message: first_message,
474
486
  voicemail_detection: voicemail_detection,
475
487
  voicemail_message: voicemail_message,
476
488
  end_call_message: end_call_message,
477
489
  end_call_phrases: end_call_phrases,
478
490
  metadata: metadata,
479
- server_url: server_url,
480
- server_url_secret: server_url_secret,
481
491
  analysis_plan: analysis_plan,
482
492
  artifact_plan: artifact_plan,
483
493
  message_plan: message_plan,
@@ -485,6 +495,7 @@ module Vapi
485
495
  stop_speaking_plan: stop_speaking_plan,
486
496
  monitor_plan: monitor_plan,
487
497
  credential_ids: credential_ids,
498
+ server: server,
488
499
  additional_properties: struct
489
500
  )
490
501
  end
@@ -506,6 +517,7 @@ module Vapi
506
517
  obj.transcriber.nil? || Vapi::AssistantOverridesTranscriber.validate_raw(obj: obj.transcriber)
507
518
  obj.model.nil? || Vapi::AssistantOverridesModel.validate_raw(obj: obj.model)
508
519
  obj.voice.nil? || Vapi::AssistantOverridesVoice.validate_raw(obj: obj.voice)
520
+ obj.first_message&.is_a?(String) != false || raise("Passed value for field obj.first_message is not the expected type, validation failed.")
509
521
  obj.first_message_mode&.is_a?(Vapi::AssistantOverridesFirstMessageMode) != false || raise("Passed value for field obj.first_message_mode is not the expected type, validation failed.")
510
522
  obj.hipaa_enabled&.is_a?(Boolean) != false || raise("Passed value for field obj.hipaa_enabled is not the expected type, validation failed.")
511
523
  obj.client_messages&.is_a?(Array) != false || raise("Passed value for field obj.client_messages is not the expected type, validation failed.")
@@ -513,20 +525,17 @@ module Vapi
513
525
  obj.silence_timeout_seconds&.is_a?(Float) != false || raise("Passed value for field obj.silence_timeout_seconds is not the expected type, validation failed.")
514
526
  obj.max_duration_seconds&.is_a?(Float) != false || raise("Passed value for field obj.max_duration_seconds is not the expected type, validation failed.")
515
527
  obj.background_sound&.is_a?(Vapi::AssistantOverridesBackgroundSound) != false || raise("Passed value for field obj.background_sound is not the expected type, validation failed.")
516
- obj.backchanneling_enabled&.is_a?(Boolean) != false || raise("Passed value for field obj.backchanneling_enabled is not the expected type, validation failed.")
517
528
  obj.background_denoising_enabled&.is_a?(Boolean) != false || raise("Passed value for field obj.background_denoising_enabled is not the expected type, validation failed.")
518
529
  obj.model_output_in_messages_enabled&.is_a?(Boolean) != false || raise("Passed value for field obj.model_output_in_messages_enabled is not the expected type, validation failed.")
519
530
  obj.transport_configurations&.is_a?(Array) != false || raise("Passed value for field obj.transport_configurations is not the expected type, validation failed.")
531
+ obj.credentials&.is_a?(Array) != false || raise("Passed value for field obj.credentials is not the expected type, validation failed.")
520
532
  obj.variable_values&.is_a?(Hash) != false || raise("Passed value for field obj.variable_values is not the expected type, validation failed.")
521
533
  obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
522
- obj.first_message&.is_a?(String) != false || raise("Passed value for field obj.first_message is not the expected type, validation failed.")
523
534
  obj.voicemail_detection.nil? || Vapi::TwilioVoicemailDetection.validate_raw(obj: obj.voicemail_detection)
524
535
  obj.voicemail_message&.is_a?(String) != false || raise("Passed value for field obj.voicemail_message is not the expected type, validation failed.")
525
536
  obj.end_call_message&.is_a?(String) != false || raise("Passed value for field obj.end_call_message is not the expected type, validation failed.")
526
537
  obj.end_call_phrases&.is_a?(Array) != false || raise("Passed value for field obj.end_call_phrases is not the expected type, validation failed.")
527
538
  obj.metadata&.is_a?(Hash) != false || raise("Passed value for field obj.metadata is not the expected type, validation failed.")
528
- obj.server_url&.is_a?(String) != false || raise("Passed value for field obj.server_url is not the expected type, validation failed.")
529
- obj.server_url_secret&.is_a?(String) != false || raise("Passed value for field obj.server_url_secret is not the expected type, validation failed.")
530
539
  obj.analysis_plan.nil? || Vapi::AnalysisPlan.validate_raw(obj: obj.analysis_plan)
531
540
  obj.artifact_plan.nil? || Vapi::ArtifactPlan.validate_raw(obj: obj.artifact_plan)
532
541
  obj.message_plan.nil? || Vapi::MessagePlan.validate_raw(obj: obj.message_plan)
@@ -534,6 +543,7 @@ module Vapi
534
543
  obj.stop_speaking_plan.nil? || Vapi::StopSpeakingPlan.validate_raw(obj: obj.stop_speaking_plan)
535
544
  obj.monitor_plan.nil? || Vapi::MonitorPlan.validate_raw(obj: obj.monitor_plan)
536
545
  obj.credential_ids&.is_a?(Array) != false || raise("Passed value for field obj.credential_ids is not the expected type, validation failed.")
546
+ obj.server.nil? || Vapi::Server.validate_raw(obj: obj.server)
537
547
  end
538
548
  end
539
549
  end
@@ -14,6 +14,7 @@ module Vapi
14
14
  TRANSCRIPT = "transcript"
15
15
  TOOL_CALLS = "tool-calls"
16
16
  TOOL_CALLS_RESULT = "tool-calls-result"
17
+ TRANSFER_UPDATE = "transfer-update"
17
18
  USER_INTERRUPTED = "user-interrupted"
18
19
  VOICE_INPUT = "voice-input"
19
20
  end