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
@@ -2,6 +2,8 @@
2
2
 
3
3
  require_relative "vapi_phone_number_fallback_destination"
4
4
  require "date"
5
+ require_relative "server"
6
+ require_relative "sip_authentication"
5
7
  require "ostruct"
6
8
  require "json"
7
9
 
@@ -34,20 +36,21 @@ module Vapi
34
36
  # to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the
35
37
  # shape of the message and response that is expected.
36
38
  attr_reader :squad_id
37
- # @return [String] This is the server URL where messages will be sent for calls on this number.
38
- # This includes the `assistant-request` message.
39
- # You can see the shape of the messages sent in `ServerMessage`.
40
- # This overrides the `org.serverUrl`. Order of precedence: tool.server.url >
41
- # assistant.serverUrl > phoneNumber.serverUrl > org.serverUrl.
42
- attr_reader :server_url
43
- # @return [String] This is the secret Vapi will send with every message to your server. It's sent
44
- # as a header called x-vapi-secret.
45
- # Same precedence logic as serverUrl.
46
- attr_reader :server_url_secret
39
+ # @return [Vapi::Server] This is where Vapi will send webhooks. You can find all webhooks available along
40
+ # with their shape in ServerMessage schema.
41
+ # The order of precedence is:
42
+ # 1. assistant.server
43
+ # 2. phoneNumber.server
44
+ # 3. org.server
45
+ attr_reader :server
47
46
  # @return [String] This is the SIP URI of the phone number. You can SIP INVITE this. The assistant
48
47
  # attached to this number will answer.
49
48
  # This is case-insensitive.
50
49
  attr_reader :sip_uri
50
+ # @return [Vapi::SipAuthentication] This enables authentication for incoming SIP INVITE requests to the `sipUri`.
51
+ # If not set, any username/password to the 401 challenge of the SIP INVITE will be
52
+ # accepted.
53
+ attr_reader :authentication
51
54
  # @return [OpenStruct] Additional properties unmapped to the current class definition
52
55
  attr_reader :additional_properties
53
56
  # @return [Object]
@@ -75,21 +78,22 @@ module Vapi
75
78
  # If neither `assistantId` nor `squadId` is set, `assistant-request` will be sent
76
79
  # to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the
77
80
  # shape of the message and response that is expected.
78
- # @param server_url [String] This is the server URL where messages will be sent for calls on this number.
79
- # This includes the `assistant-request` message.
80
- # You can see the shape of the messages sent in `ServerMessage`.
81
- # This overrides the `org.serverUrl`. Order of precedence: tool.server.url >
82
- # assistant.serverUrl > phoneNumber.serverUrl > org.serverUrl.
83
- # @param server_url_secret [String] This is the secret Vapi will send with every message to your server. It's sent
84
- # as a header called x-vapi-secret.
85
- # Same precedence logic as serverUrl.
81
+ # @param server [Vapi::Server] This is where Vapi will send webhooks. You can find all webhooks available along
82
+ # with their shape in ServerMessage schema.
83
+ # The order of precedence is:
84
+ # 1. assistant.server
85
+ # 2. phoneNumber.server
86
+ # 3. org.server
86
87
  # @param sip_uri [String] This is the SIP URI of the phone number. You can SIP INVITE this. The assistant
87
88
  # attached to this number will answer.
88
89
  # This is case-insensitive.
90
+ # @param authentication [Vapi::SipAuthentication] This enables authentication for incoming SIP INVITE requests to the `sipUri`.
91
+ # If not set, any username/password to the 401 challenge of the SIP INVITE will be
92
+ # accepted.
89
93
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
90
94
  # @return [Vapi::VapiPhoneNumber]
91
95
  def initialize(id:, org_id:, created_at:, updated_at:, sip_uri:, fallback_destination: OMIT, name: OMIT, assistant_id: OMIT,
92
- squad_id: OMIT, server_url: OMIT, server_url_secret: OMIT, additional_properties: nil)
96
+ squad_id: OMIT, server: OMIT, authentication: OMIT, additional_properties: nil)
93
97
  @fallback_destination = fallback_destination if fallback_destination != OMIT
94
98
  @id = id
95
99
  @org_id = org_id
@@ -98,9 +102,9 @@ module Vapi
98
102
  @name = name if name != OMIT
99
103
  @assistant_id = assistant_id if assistant_id != OMIT
100
104
  @squad_id = squad_id if squad_id != OMIT
101
- @server_url = server_url if server_url != OMIT
102
- @server_url_secret = server_url_secret if server_url_secret != OMIT
105
+ @server = server if server != OMIT
103
106
  @sip_uri = sip_uri
107
+ @authentication = authentication if authentication != OMIT
104
108
  @additional_properties = additional_properties
105
109
  @_field_set = {
106
110
  "fallbackDestination": fallback_destination,
@@ -111,9 +115,9 @@ module Vapi
111
115
  "name": name,
112
116
  "assistantId": assistant_id,
113
117
  "squadId": squad_id,
114
- "serverUrl": server_url,
115
- "serverUrlSecret": server_url_secret,
116
- "sipUri": sip_uri
118
+ "server": server,
119
+ "sipUri": sip_uri,
120
+ "authentication": authentication
117
121
  }.reject do |_k, v|
118
122
  v == OMIT
119
123
  end
@@ -139,9 +143,19 @@ module Vapi
139
143
  name = parsed_json["name"]
140
144
  assistant_id = parsed_json["assistantId"]
141
145
  squad_id = parsed_json["squadId"]
142
- server_url = parsed_json["serverUrl"]
143
- server_url_secret = parsed_json["serverUrlSecret"]
146
+ if parsed_json["server"].nil?
147
+ server = nil
148
+ else
149
+ server = parsed_json["server"].to_json
150
+ server = Vapi::Server.from_json(json_object: server)
151
+ end
144
152
  sip_uri = parsed_json["sipUri"]
153
+ if parsed_json["authentication"].nil?
154
+ authentication = nil
155
+ else
156
+ authentication = parsed_json["authentication"].to_json
157
+ authentication = Vapi::SipAuthentication.from_json(json_object: authentication)
158
+ end
145
159
  new(
146
160
  fallback_destination: fallback_destination,
147
161
  id: id,
@@ -151,9 +165,9 @@ module Vapi
151
165
  name: name,
152
166
  assistant_id: assistant_id,
153
167
  squad_id: squad_id,
154
- server_url: server_url,
155
- server_url_secret: server_url_secret,
168
+ server: server,
156
169
  sip_uri: sip_uri,
170
+ authentication: authentication,
157
171
  additional_properties: struct
158
172
  )
159
173
  end
@@ -180,9 +194,9 @@ module Vapi
180
194
  obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
181
195
  obj.assistant_id&.is_a?(String) != false || raise("Passed value for field obj.assistant_id is not the expected type, validation failed.")
182
196
  obj.squad_id&.is_a?(String) != false || raise("Passed value for field obj.squad_id is not the expected type, validation failed.")
183
- obj.server_url&.is_a?(String) != false || raise("Passed value for field obj.server_url is not the expected type, validation failed.")
184
- obj.server_url_secret&.is_a?(String) != false || raise("Passed value for field obj.server_url_secret is not the expected type, validation failed.")
197
+ obj.server.nil? || Vapi::Server.validate_raw(obj: obj.server)
185
198
  obj.sip_uri.is_a?(String) != false || raise("Passed value for field obj.sip_uri is not the expected type, validation failed.")
199
+ obj.authentication.nil? || Vapi::SipAuthentication.validate_raw(obj: obj.authentication)
186
200
  end
187
201
  end
188
202
  end
@@ -23,6 +23,8 @@ module Vapi
23
23
  # @return [String] This is the Vonage Application ID for the credential.
24
24
  # Only relevant for Vonage credentials.
25
25
  attr_reader :vonage_application_id
26
+ # @return [String] This is the name of credential. This is just for your reference.
27
+ attr_reader :name
26
28
  # @return [String]
27
29
  attr_reader :api_key
28
30
  # @return [OpenStruct] Additional properties unmapped to the current class definition
@@ -42,11 +44,12 @@ module Vapi
42
44
  # @param updated_at [DateTime] This is the ISO 8601 date-time string of when the assistant was last updated.
43
45
  # @param vonage_application_id [String] This is the Vonage Application ID for the credential.
44
46
  # Only relevant for Vonage credentials.
47
+ # @param name [String] This is the name of credential. This is just for your reference.
45
48
  # @param api_key [String]
46
49
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
47
50
  # @return [Vapi::VonageCredential]
48
51
  def initialize(vonage_application_private_key:, provider:, api_secret:, id:, org_id:, created_at:, updated_at:,
49
- vonage_application_id:, api_key:, additional_properties: nil)
52
+ vonage_application_id:, api_key:, name: OMIT, additional_properties: nil)
50
53
  @vonage_application_private_key = vonage_application_private_key
51
54
  @provider = provider
52
55
  @api_secret = api_secret
@@ -55,6 +58,7 @@ module Vapi
55
58
  @created_at = created_at
56
59
  @updated_at = updated_at
57
60
  @vonage_application_id = vonage_application_id
61
+ @name = name if name != OMIT
58
62
  @api_key = api_key
59
63
  @additional_properties = additional_properties
60
64
  @_field_set = {
@@ -66,8 +70,11 @@ module Vapi
66
70
  "createdAt": created_at,
67
71
  "updatedAt": updated_at,
68
72
  "vonageApplicationId": vonage_application_id,
73
+ "name": name,
69
74
  "apiKey": api_key
70
- }
75
+ }.reject do |_k, v|
76
+ v == OMIT
77
+ end
71
78
  end
72
79
 
73
80
  # Deserialize a JSON object to an instance of VonageCredential
@@ -85,6 +92,7 @@ module Vapi
85
92
  created_at = (DateTime.parse(parsed_json["createdAt"]) unless parsed_json["createdAt"].nil?)
86
93
  updated_at = (DateTime.parse(parsed_json["updatedAt"]) unless parsed_json["updatedAt"].nil?)
87
94
  vonage_application_id = parsed_json["vonageApplicationId"]
95
+ name = parsed_json["name"]
88
96
  api_key = parsed_json["apiKey"]
89
97
  new(
90
98
  vonage_application_private_key: vonage_application_private_key,
@@ -95,6 +103,7 @@ module Vapi
95
103
  created_at: created_at,
96
104
  updated_at: updated_at,
97
105
  vonage_application_id: vonage_application_id,
106
+ name: name,
98
107
  api_key: api_key,
99
108
  additional_properties: struct
100
109
  )
@@ -122,6 +131,7 @@ module Vapi
122
131
  obj.created_at.is_a?(DateTime) != false || raise("Passed value for field obj.created_at is not the expected type, validation failed.")
123
132
  obj.updated_at.is_a?(DateTime) != false || raise("Passed value for field obj.updated_at is not the expected type, validation failed.")
124
133
  obj.vonage_application_id.is_a?(String) != false || raise("Passed value for field obj.vonage_application_id is not the expected type, validation failed.")
134
+ obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
125
135
  obj.api_key.is_a?(String) != false || raise("Passed value for field obj.api_key is not the expected type, validation failed.")
126
136
  end
127
137
  end
@@ -2,6 +2,7 @@
2
2
 
3
3
  require_relative "vonage_phone_number_fallback_destination"
4
4
  require "date"
5
+ require_relative "server"
5
6
  require "ostruct"
6
7
  require "json"
7
8
 
@@ -34,16 +35,13 @@ module Vapi
34
35
  # to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the
35
36
  # shape of the message and response that is expected.
36
37
  attr_reader :squad_id
37
- # @return [String] This is the server URL where messages will be sent for calls on this number.
38
- # This includes the `assistant-request` message.
39
- # You can see the shape of the messages sent in `ServerMessage`.
40
- # This overrides the `org.serverUrl`. Order of precedence: tool.server.url >
41
- # assistant.serverUrl > phoneNumber.serverUrl > org.serverUrl.
42
- attr_reader :server_url
43
- # @return [String] This is the secret Vapi will send with every message to your server. It's sent
44
- # as a header called x-vapi-secret.
45
- # Same precedence logic as serverUrl.
46
- attr_reader :server_url_secret
38
+ # @return [Vapi::Server] This is where Vapi will send webhooks. You can find all webhooks available along
39
+ # with their shape in ServerMessage schema.
40
+ # The order of precedence is:
41
+ # 1. assistant.server
42
+ # 2. phoneNumber.server
43
+ # 3. org.server
44
+ attr_reader :server
47
45
  # @return [String] These are the digits of the phone number you own on your Vonage.
48
46
  attr_reader :number
49
47
  # @return [String] This is the credential that is used to make outgoing calls, and do operations
@@ -76,21 +74,19 @@ module Vapi
76
74
  # If neither `assistantId` nor `squadId` is set, `assistant-request` will be sent
77
75
  # to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the
78
76
  # shape of the message and response that is expected.
79
- # @param server_url [String] This is the server URL where messages will be sent for calls on this number.
80
- # This includes the `assistant-request` message.
81
- # You can see the shape of the messages sent in `ServerMessage`.
82
- # This overrides the `org.serverUrl`. Order of precedence: tool.server.url >
83
- # assistant.serverUrl > phoneNumber.serverUrl > org.serverUrl.
84
- # @param server_url_secret [String] This is the secret Vapi will send with every message to your server. It's sent
85
- # as a header called x-vapi-secret.
86
- # Same precedence logic as serverUrl.
77
+ # @param server [Vapi::Server] This is where Vapi will send webhooks. You can find all webhooks available along
78
+ # with their shape in ServerMessage schema.
79
+ # The order of precedence is:
80
+ # 1. assistant.server
81
+ # 2. phoneNumber.server
82
+ # 3. org.server
87
83
  # @param number [String] These are the digits of the phone number you own on your Vonage.
88
84
  # @param credential_id [String] This is the credential that is used to make outgoing calls, and do operations
89
85
  # like call transfer and hang up.
90
86
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
91
87
  # @return [Vapi::VonagePhoneNumber]
92
88
  def initialize(id:, org_id:, created_at:, updated_at:, number:, credential_id:, fallback_destination: OMIT, name: OMIT, assistant_id: OMIT,
93
- squad_id: OMIT, server_url: OMIT, server_url_secret: OMIT, additional_properties: nil)
89
+ squad_id: OMIT, server: OMIT, additional_properties: nil)
94
90
  @fallback_destination = fallback_destination if fallback_destination != OMIT
95
91
  @id = id
96
92
  @org_id = org_id
@@ -99,8 +95,7 @@ module Vapi
99
95
  @name = name if name != OMIT
100
96
  @assistant_id = assistant_id if assistant_id != OMIT
101
97
  @squad_id = squad_id if squad_id != OMIT
102
- @server_url = server_url if server_url != OMIT
103
- @server_url_secret = server_url_secret if server_url_secret != OMIT
98
+ @server = server if server != OMIT
104
99
  @number = number
105
100
  @credential_id = credential_id
106
101
  @additional_properties = additional_properties
@@ -113,8 +108,7 @@ module Vapi
113
108
  "name": name,
114
109
  "assistantId": assistant_id,
115
110
  "squadId": squad_id,
116
- "serverUrl": server_url,
117
- "serverUrlSecret": server_url_secret,
111
+ "server": server,
118
112
  "number": number,
119
113
  "credentialId": credential_id
120
114
  }.reject do |_k, v|
@@ -142,8 +136,12 @@ module Vapi
142
136
  name = parsed_json["name"]
143
137
  assistant_id = parsed_json["assistantId"]
144
138
  squad_id = parsed_json["squadId"]
145
- server_url = parsed_json["serverUrl"]
146
- server_url_secret = parsed_json["serverUrlSecret"]
139
+ if parsed_json["server"].nil?
140
+ server = nil
141
+ else
142
+ server = parsed_json["server"].to_json
143
+ server = Vapi::Server.from_json(json_object: server)
144
+ end
147
145
  number = parsed_json["number"]
148
146
  credential_id = parsed_json["credentialId"]
149
147
  new(
@@ -155,8 +153,7 @@ module Vapi
155
153
  name: name,
156
154
  assistant_id: assistant_id,
157
155
  squad_id: squad_id,
158
- server_url: server_url,
159
- server_url_secret: server_url_secret,
156
+ server: server,
160
157
  number: number,
161
158
  credential_id: credential_id,
162
159
  additional_properties: struct
@@ -185,8 +182,7 @@ module Vapi
185
182
  obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
186
183
  obj.assistant_id&.is_a?(String) != false || raise("Passed value for field obj.assistant_id is not the expected type, validation failed.")
187
184
  obj.squad_id&.is_a?(String) != false || raise("Passed value for field obj.squad_id is not the expected type, validation failed.")
188
- obj.server_url&.is_a?(String) != false || raise("Passed value for field obj.server_url is not the expected type, validation failed.")
189
- obj.server_url_secret&.is_a?(String) != false || raise("Passed value for field obj.server_url_secret is not the expected type, validation failed.")
185
+ obj.server.nil? || Vapi::Server.validate_raw(obj: obj.server)
190
186
  obj.number.is_a?(String) != false || raise("Passed value for field obj.number is not the expected type, validation failed.")
191
187
  obj.credential_id.is_a?(String) != false || raise("Passed value for field obj.credential_id is not the expected type, validation failed.")
192
188
  end
@@ -0,0 +1,134 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "o_auth_2_authentication_plan"
4
+ require "date"
5
+ require_relative "oauth_2_authentication_session"
6
+ require "ostruct"
7
+ require "json"
8
+
9
+ module Vapi
10
+ class WebhookCredential
11
+ # @return [String]
12
+ attr_reader :provider
13
+ # @return [Vapi::OAuth2AuthenticationPlan] This is the authentication plan. Currently supports OAuth2 RFC 6749.
14
+ attr_reader :authentication_plan
15
+ # @return [String] This is the unique identifier for the credential.
16
+ attr_reader :id
17
+ # @return [String] This is the unique identifier for the org that this credential belongs to.
18
+ attr_reader :org_id
19
+ # @return [DateTime] This is the ISO 8601 date-time string of when the credential was created.
20
+ attr_reader :created_at
21
+ # @return [DateTime] This is the ISO 8601 date-time string of when the assistant was last updated.
22
+ attr_reader :updated_at
23
+ # @return [Vapi::Oauth2AuthenticationSession] This is the authentication session for the credential. Available for credentials
24
+ # that have an authentication plan.
25
+ attr_reader :authentication_session
26
+ # @return [String] This is the name of credential. This is just for your reference.
27
+ attr_reader :name
28
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
29
+ attr_reader :additional_properties
30
+ # @return [Object]
31
+ attr_reader :_field_set
32
+ protected :_field_set
33
+
34
+ OMIT = Object.new
35
+
36
+ # @param provider [String]
37
+ # @param authentication_plan [Vapi::OAuth2AuthenticationPlan] This is the authentication plan. Currently supports OAuth2 RFC 6749.
38
+ # @param id [String] This is the unique identifier for the credential.
39
+ # @param org_id [String] This is the unique identifier for the org that this credential belongs to.
40
+ # @param created_at [DateTime] This is the ISO 8601 date-time string of when the credential was created.
41
+ # @param updated_at [DateTime] This is the ISO 8601 date-time string of when the assistant was last updated.
42
+ # @param authentication_session [Vapi::Oauth2AuthenticationSession] This is the authentication session for the credential. Available for credentials
43
+ # that have an authentication plan.
44
+ # @param name [String] This is the name of credential. This is just for your reference.
45
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
46
+ # @return [Vapi::WebhookCredential]
47
+ def initialize(provider:, authentication_plan:, id:, org_id:, created_at:, updated_at:, authentication_session:,
48
+ name: OMIT, additional_properties: nil)
49
+ @provider = provider
50
+ @authentication_plan = authentication_plan
51
+ @id = id
52
+ @org_id = org_id
53
+ @created_at = created_at
54
+ @updated_at = updated_at
55
+ @authentication_session = authentication_session
56
+ @name = name if name != OMIT
57
+ @additional_properties = additional_properties
58
+ @_field_set = {
59
+ "provider": provider,
60
+ "authenticationPlan": authentication_plan,
61
+ "id": id,
62
+ "orgId": org_id,
63
+ "createdAt": created_at,
64
+ "updatedAt": updated_at,
65
+ "authenticationSession": authentication_session,
66
+ "name": name
67
+ }.reject do |_k, v|
68
+ v == OMIT
69
+ end
70
+ end
71
+
72
+ # Deserialize a JSON object to an instance of WebhookCredential
73
+ #
74
+ # @param json_object [String]
75
+ # @return [Vapi::WebhookCredential]
76
+ def self.from_json(json_object:)
77
+ struct = JSON.parse(json_object, object_class: OpenStruct)
78
+ parsed_json = JSON.parse(json_object)
79
+ provider = parsed_json["provider"]
80
+ if parsed_json["authenticationPlan"].nil?
81
+ authentication_plan = nil
82
+ else
83
+ authentication_plan = parsed_json["authenticationPlan"].to_json
84
+ authentication_plan = Vapi::OAuth2AuthenticationPlan.from_json(json_object: authentication_plan)
85
+ end
86
+ id = parsed_json["id"]
87
+ org_id = parsed_json["orgId"]
88
+ created_at = (DateTime.parse(parsed_json["createdAt"]) unless parsed_json["createdAt"].nil?)
89
+ updated_at = (DateTime.parse(parsed_json["updatedAt"]) unless parsed_json["updatedAt"].nil?)
90
+ if parsed_json["authenticationSession"].nil?
91
+ authentication_session = nil
92
+ else
93
+ authentication_session = parsed_json["authenticationSession"].to_json
94
+ authentication_session = Vapi::Oauth2AuthenticationSession.from_json(json_object: authentication_session)
95
+ end
96
+ name = parsed_json["name"]
97
+ new(
98
+ provider: provider,
99
+ authentication_plan: authentication_plan,
100
+ id: id,
101
+ org_id: org_id,
102
+ created_at: created_at,
103
+ updated_at: updated_at,
104
+ authentication_session: authentication_session,
105
+ name: name,
106
+ additional_properties: struct
107
+ )
108
+ end
109
+
110
+ # Serialize an instance of WebhookCredential to a JSON object
111
+ #
112
+ # @return [String]
113
+ def to_json(*_args)
114
+ @_field_set&.to_json
115
+ end
116
+
117
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
118
+ # hash and check each fields type against the current object's property
119
+ # definitions.
120
+ #
121
+ # @param obj [Object]
122
+ # @return [Void]
123
+ def self.validate_raw(obj:)
124
+ obj.provider.is_a?(String) != false || raise("Passed value for field obj.provider is not the expected type, validation failed.")
125
+ Vapi::OAuth2AuthenticationPlan.validate_raw(obj: obj.authentication_plan)
126
+ obj.id.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
127
+ obj.org_id.is_a?(String) != false || raise("Passed value for field obj.org_id is not the expected type, validation failed.")
128
+ obj.created_at.is_a?(DateTime) != false || raise("Passed value for field obj.created_at is not the expected type, validation failed.")
129
+ obj.updated_at.is_a?(DateTime) != false || raise("Passed value for field obj.updated_at is not the expected type, validation failed.")
130
+ Vapi::Oauth2AuthenticationSession.validate_raw(obj: obj.authentication_session)
131
+ obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
132
+ end
133
+ end
134
+ end
@@ -0,0 +1,113 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "date"
4
+ require "ostruct"
5
+ require "json"
6
+
7
+ module Vapi
8
+ class XAiCredential
9
+ # @return [String] This is the api key for Grok in XAi's console. Get it from here:
10
+ # https://console.x.ai
11
+ attr_reader :provider
12
+ # @return [String] This is not returned in the API.
13
+ attr_reader :api_key
14
+ # @return [String] This is the unique identifier for the credential.
15
+ attr_reader :id
16
+ # @return [String] This is the unique identifier for the org that this credential belongs to.
17
+ attr_reader :org_id
18
+ # @return [DateTime] This is the ISO 8601 date-time string of when the credential was created.
19
+ attr_reader :created_at
20
+ # @return [DateTime] This is the ISO 8601 date-time string of when the assistant was last updated.
21
+ attr_reader :updated_at
22
+ # @return [String] This is the name of credential. This is just for your reference.
23
+ attr_reader :name
24
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
25
+ attr_reader :additional_properties
26
+ # @return [Object]
27
+ attr_reader :_field_set
28
+ protected :_field_set
29
+
30
+ OMIT = Object.new
31
+
32
+ # @param provider [String] This is the api key for Grok in XAi's console. Get it from here:
33
+ # https://console.x.ai
34
+ # @param api_key [String] This is not returned in the API.
35
+ # @param id [String] This is the unique identifier for the credential.
36
+ # @param org_id [String] This is the unique identifier for the org that this credential belongs to.
37
+ # @param created_at [DateTime] This is the ISO 8601 date-time string of when the credential was created.
38
+ # @param updated_at [DateTime] This is the ISO 8601 date-time string of when the assistant was last updated.
39
+ # @param name [String] This is the name of credential. This is just for your reference.
40
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
41
+ # @return [Vapi::XAiCredential]
42
+ def initialize(provider:, api_key:, id:, org_id:, created_at:, updated_at:, name: OMIT, additional_properties: nil)
43
+ @provider = provider
44
+ @api_key = api_key
45
+ @id = id
46
+ @org_id = org_id
47
+ @created_at = created_at
48
+ @updated_at = updated_at
49
+ @name = name if name != OMIT
50
+ @additional_properties = additional_properties
51
+ @_field_set = {
52
+ "provider": provider,
53
+ "apiKey": api_key,
54
+ "id": id,
55
+ "orgId": org_id,
56
+ "createdAt": created_at,
57
+ "updatedAt": updated_at,
58
+ "name": name
59
+ }.reject do |_k, v|
60
+ v == OMIT
61
+ end
62
+ end
63
+
64
+ # Deserialize a JSON object to an instance of XAiCredential
65
+ #
66
+ # @param json_object [String]
67
+ # @return [Vapi::XAiCredential]
68
+ def self.from_json(json_object:)
69
+ struct = JSON.parse(json_object, object_class: OpenStruct)
70
+ parsed_json = JSON.parse(json_object)
71
+ provider = parsed_json["provider"]
72
+ api_key = parsed_json["apiKey"]
73
+ id = parsed_json["id"]
74
+ org_id = parsed_json["orgId"]
75
+ created_at = (DateTime.parse(parsed_json["createdAt"]) unless parsed_json["createdAt"].nil?)
76
+ updated_at = (DateTime.parse(parsed_json["updatedAt"]) unless parsed_json["updatedAt"].nil?)
77
+ name = parsed_json["name"]
78
+ new(
79
+ provider: provider,
80
+ api_key: api_key,
81
+ id: id,
82
+ org_id: org_id,
83
+ created_at: created_at,
84
+ updated_at: updated_at,
85
+ name: name,
86
+ additional_properties: struct
87
+ )
88
+ end
89
+
90
+ # Serialize an instance of XAiCredential to a JSON object
91
+ #
92
+ # @return [String]
93
+ def to_json(*_args)
94
+ @_field_set&.to_json
95
+ end
96
+
97
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
98
+ # hash and check each fields type against the current object's property
99
+ # definitions.
100
+ #
101
+ # @param obj [Object]
102
+ # @return [Void]
103
+ def self.validate_raw(obj:)
104
+ obj.provider.is_a?(String) != false || raise("Passed value for field obj.provider is not the expected type, validation failed.")
105
+ obj.api_key.is_a?(String) != false || raise("Passed value for field obj.api_key is not the expected type, validation failed.")
106
+ obj.id.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
107
+ obj.org_id.is_a?(String) != false || raise("Passed value for field obj.org_id is not the expected type, validation failed.")
108
+ obj.created_at.is_a?(DateTime) != false || raise("Passed value for field obj.created_at is not the expected type, validation failed.")
109
+ obj.updated_at.is_a?(DateTime) != false || raise("Passed value for field obj.updated_at is not the expected type, validation failed.")
110
+ obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
111
+ end
112
+ end
113
+ end