vapi_server_sdk 0.1.0 → 0.2.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 (356) hide show
  1. checksums.yaml +4 -4
  2. data/lib/requests.rb +2 -2
  3. data/lib/types_export.rb +184 -26
  4. data/lib/vapi_server_sdk/analytics/client.rb +14 -43
  5. data/lib/vapi_server_sdk/assistants/client.rb +57 -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_model.rb +39 -0
  8. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_server_messages_item.rb +1 -0
  9. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_transcriber.rb +27 -1
  10. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_voice.rb +26 -0
  11. data/lib/vapi_server_sdk/calls/client.rb +58 -28
  12. data/lib/vapi_server_sdk/knowledge_bases/client.rb +394 -0
  13. data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_create_request.rb +96 -0
  14. data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_create_response.rb +96 -0
  15. data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_delete_response.rb +96 -0
  16. data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_get_response.rb +96 -0
  17. data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_list_response_item.rb +96 -0
  18. data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_update_response.rb +96 -0
  19. data/lib/vapi_server_sdk/logs/client.rb +10 -6
  20. data/lib/vapi_server_sdk/squads/client.rb +56 -32
  21. data/lib/vapi_server_sdk/tools/client.rb +4 -0
  22. data/lib/vapi_server_sdk/tools/types/tools_create_request.rb +39 -0
  23. data/lib/vapi_server_sdk/tools/types/tools_create_response.rb +39 -0
  24. data/lib/vapi_server_sdk/tools/types/tools_delete_response.rb +39 -0
  25. data/lib/vapi_server_sdk/tools/types/tools_get_response.rb +39 -0
  26. data/lib/vapi_server_sdk/tools/types/tools_list_response_item.rb +39 -0
  27. data/lib/vapi_server_sdk/tools/types/tools_update_response.rb +39 -0
  28. data/lib/vapi_server_sdk/types/analytics_query_dto.rb +59 -0
  29. data/lib/vapi_server_sdk/types/anthropic_credential.rb +13 -3
  30. data/lib/vapi_server_sdk/types/anthropic_model.rb +21 -13
  31. data/lib/vapi_server_sdk/types/anthropic_model_model.rb +2 -0
  32. data/lib/vapi_server_sdk/types/anyscale_credential.rb +13 -3
  33. data/lib/vapi_server_sdk/types/anyscale_model.rb +21 -13
  34. data/lib/vapi_server_sdk/types/assembly_ai_credential.rb +111 -0
  35. data/lib/vapi_server_sdk/types/assembly_ai_transcriber.rb +97 -0
  36. data/lib/vapi_server_sdk/types/assistant.rb +42 -64
  37. data/lib/vapi_server_sdk/types/assistant_client_messages_item.rb +1 -0
  38. data/lib/vapi_server_sdk/types/assistant_custom_endpointing_rule.rb +100 -0
  39. data/lib/vapi_server_sdk/types/assistant_model.rb +39 -0
  40. data/lib/vapi_server_sdk/types/assistant_overrides.rb +57 -65
  41. data/lib/vapi_server_sdk/types/assistant_overrides_client_messages_item.rb +1 -0
  42. data/lib/vapi_server_sdk/types/assistant_overrides_model.rb +39 -0
  43. data/lib/vapi_server_sdk/types/assistant_overrides_server_messages_item.rb +1 -0
  44. data/lib/vapi_server_sdk/types/assistant_overrides_transcriber.rb +27 -1
  45. data/lib/vapi_server_sdk/types/assistant_overrides_voice.rb +26 -0
  46. data/lib/vapi_server_sdk/types/assistant_server_messages_item.rb +1 -0
  47. data/lib/vapi_server_sdk/types/assistant_transcriber.rb +27 -1
  48. data/lib/vapi_server_sdk/types/assistant_voice.rb +26 -0
  49. data/lib/vapi_server_sdk/types/auto_reload_plan.rb +65 -0
  50. data/lib/vapi_server_sdk/types/auto_reload_plan_dto.rb +65 -0
  51. data/lib/vapi_server_sdk/types/azure_credential.rb +129 -0
  52. data/lib/vapi_server_sdk/types/azure_credential_region.rb +23 -0
  53. data/lib/vapi_server_sdk/types/azure_open_ai_credential.rb +12 -2
  54. data/lib/vapi_server_sdk/types/azure_open_ai_credential_models_item.rb +1 -0
  55. data/lib/vapi_server_sdk/types/azure_open_ai_credential_region.rb +1 -0
  56. data/lib/vapi_server_sdk/types/azure_voice.rb +25 -21
  57. data/lib/vapi_server_sdk/types/bash_tool.rb +194 -0
  58. data/lib/vapi_server_sdk/types/bash_tool_messages_item.rb +120 -0
  59. data/lib/vapi_server_sdk/types/block_complete_message.rb +29 -4
  60. data/lib/vapi_server_sdk/types/block_start_message.rb +29 -4
  61. data/lib/vapi_server_sdk/types/both_custom_endpointing_rule.rb +126 -0
  62. data/lib/vapi_server_sdk/types/byo_sip_trunk_credential.rb +29 -9
  63. data/lib/vapi_server_sdk/types/call.rb +15 -1
  64. data/lib/vapi_server_sdk/types/call_ended_reason.rb +49 -24
  65. data/lib/vapi_server_sdk/types/call_log_privileged.rb +88 -0
  66. data/lib/vapi_server_sdk/types/call_log_privileged_level.rb +12 -0
  67. data/lib/vapi_server_sdk/types/call_logs_paginated_response.rb +75 -0
  68. data/lib/vapi_server_sdk/types/cartesia_credential.rb +13 -3
  69. data/lib/vapi_server_sdk/types/cartesia_voice.rb +25 -21
  70. data/lib/vapi_server_sdk/types/cartesia_voice_language.rb +9 -1
  71. data/lib/vapi_server_sdk/types/client_inbound_message_add_message.rb +25 -3
  72. data/lib/vapi_server_sdk/types/client_inbound_message_message.rb +13 -0
  73. data/lib/vapi_server_sdk/types/client_inbound_message_transfer.rb +63 -0
  74. data/lib/vapi_server_sdk/types/client_inbound_message_transfer_destination.rb +96 -0
  75. data/lib/vapi_server_sdk/types/{client_message_language_changed.rb → client_message_language_change_detected.rb} +5 -5
  76. data/lib/vapi_server_sdk/types/client_message_message.rb +22 -9
  77. data/lib/vapi_server_sdk/types/client_message_tool_calls_tool_with_tool_call_list_item.rb +77 -77
  78. data/lib/vapi_server_sdk/types/client_message_transfer_update.rb +116 -0
  79. data/lib/vapi_server_sdk/types/client_message_transfer_update_destination.rb +122 -0
  80. data/lib/vapi_server_sdk/types/computer_tool.rb +218 -0
  81. data/lib/vapi_server_sdk/types/computer_tool_messages_item.rb +120 -0
  82. data/lib/vapi_server_sdk/types/condition.rb +9 -9
  83. data/lib/vapi_server_sdk/types/create_anthropic_credential_dto.rb +11 -2
  84. data/lib/vapi_server_sdk/types/create_anyscale_credential_dto.rb +11 -2
  85. data/lib/vapi_server_sdk/types/create_assembly_ai_credential_dto.rb +74 -0
  86. data/lib/vapi_server_sdk/types/create_assistant_dto.rb +43 -65
  87. data/lib/vapi_server_sdk/types/create_assistant_dto_client_messages_item.rb +1 -0
  88. data/lib/vapi_server_sdk/types/create_assistant_dto_model.rb +39 -0
  89. data/lib/vapi_server_sdk/types/create_assistant_dto_server_messages_item.rb +1 -0
  90. data/lib/vapi_server_sdk/types/create_assistant_dto_transcriber.rb +27 -1
  91. data/lib/vapi_server_sdk/types/create_assistant_dto_voice.rb +26 -0
  92. data/lib/vapi_server_sdk/types/create_azure_credential_dto.rb +95 -0
  93. data/lib/vapi_server_sdk/types/create_azure_credential_dto_region.rb +23 -0
  94. data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto.rb +13 -3
  95. data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto_models_item.rb +1 -0
  96. data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto_region.rb +1 -0
  97. data/lib/vapi_server_sdk/types/create_bash_tool_dto.rb +161 -0
  98. data/lib/vapi_server_sdk/types/create_bash_tool_dto_messages_item.rb +120 -0
  99. data/lib/vapi_server_sdk/types/create_byo_sip_trunk_credential_dto.rb +31 -11
  100. data/lib/vapi_server_sdk/types/create_cartesia_credential_dto.rb +11 -2
  101. data/lib/vapi_server_sdk/types/create_computer_tool_dto.rb +185 -0
  102. data/lib/vapi_server_sdk/types/create_computer_tool_dto_messages_item.rb +120 -0
  103. data/lib/vapi_server_sdk/types/create_custom_knowledge_base_dto.rb +137 -0
  104. data/lib/vapi_server_sdk/types/create_custom_llm_credential_dto.rb +31 -2
  105. data/lib/vapi_server_sdk/types/create_deep_infra_credential_dto.rb +11 -2
  106. data/lib/vapi_server_sdk/types/create_deepgram_credential_dto.rb +9 -2
  107. data/lib/vapi_server_sdk/types/create_eleven_labs_credential_dto.rb +11 -2
  108. data/lib/vapi_server_sdk/types/create_gcp_credential_dto.rb +10 -10
  109. data/lib/vapi_server_sdk/types/create_gladia_credential_dto.rb +11 -2
  110. data/lib/vapi_server_sdk/types/create_go_high_level_credential_dto.rb +11 -2
  111. data/lib/vapi_server_sdk/types/create_google_credential_dto.rb +76 -0
  112. data/lib/vapi_server_sdk/types/create_groq_credential_dto.rb +11 -2
  113. data/lib/vapi_server_sdk/types/create_inflection_ai_credential_dto.rb +76 -0
  114. data/lib/vapi_server_sdk/types/create_langfuse_credential_dto.rb +96 -0
  115. data/lib/vapi_server_sdk/types/create_lmnt_credential_dto.rb +11 -2
  116. data/lib/vapi_server_sdk/types/create_make_credential_dto.rb +17 -2
  117. data/lib/vapi_server_sdk/types/create_open_ai_credential_dto.rb +11 -2
  118. data/lib/vapi_server_sdk/types/create_open_router_credential_dto.rb +11 -2
  119. data/lib/vapi_server_sdk/types/create_org_dto.rb +21 -2
  120. data/lib/vapi_server_sdk/types/create_org_dto_channel.rb +10 -0
  121. data/lib/vapi_server_sdk/types/create_perplexity_ai_credential_dto.rb +11 -2
  122. data/lib/vapi_server_sdk/types/create_play_ht_credential_dto.rb +11 -2
  123. data/lib/vapi_server_sdk/types/create_rime_ai_credential_dto.rb +11 -2
  124. data/lib/vapi_server_sdk/types/create_runpod_credential_dto.rb +11 -2
  125. data/lib/vapi_server_sdk/types/create_s_3_credential_dto.rb +13 -3
  126. data/lib/vapi_server_sdk/types/{knowledge_base.rb → create_tavus_credential_dto.rb} +21 -21
  127. data/lib/vapi_server_sdk/types/create_text_editor_tool_dto.rb +161 -0
  128. data/lib/vapi_server_sdk/types/create_text_editor_tool_dto_messages_item.rb +120 -0
  129. data/lib/vapi_server_sdk/types/create_together_ai_credential_dto.rb +11 -2
  130. data/lib/vapi_server_sdk/types/create_trieve_knowledge_base_dto.rb +109 -0
  131. data/lib/vapi_server_sdk/types/create_twilio_credential_dto.rb +16 -2
  132. data/lib/vapi_server_sdk/types/create_vapi_phone_number_dto.rb +20 -2
  133. data/lib/vapi_server_sdk/types/create_vonage_credential_dto.rb +16 -2
  134. data/lib/vapi_server_sdk/types/create_webhook_credential_dto.rb +84 -0
  135. data/lib/vapi_server_sdk/types/create_x_ai_credential_dto.rb +76 -0
  136. data/lib/vapi_server_sdk/types/credits_buy_dto.rb +55 -0
  137. data/lib/vapi_server_sdk/types/custom_knowledge_base.rb +154 -0
  138. data/lib/vapi_server_sdk/types/custom_llm_credential.rb +46 -3
  139. data/lib/vapi_server_sdk/types/custom_llm_model.rb +23 -15
  140. data/lib/vapi_server_sdk/types/custom_message.rb +92 -0
  141. data/lib/vapi_server_sdk/types/custom_transcriber.rb +125 -0
  142. data/lib/vapi_server_sdk/types/custom_voice.rb +132 -0
  143. data/lib/vapi_server_sdk/types/customer_custom_endpointing_rule.rb +100 -0
  144. data/lib/vapi_server_sdk/types/deep_infra_credential.rb +13 -3
  145. data/lib/vapi_server_sdk/types/deep_infra_model.rb +21 -13
  146. data/lib/vapi_server_sdk/types/deepgram_credential.rb +9 -1
  147. data/lib/vapi_server_sdk/types/deepgram_transcriber.rb +69 -11
  148. data/lib/vapi_server_sdk/types/deepgram_voice.rb +17 -17
  149. data/lib/vapi_server_sdk/types/eleven_labs_credential.rb +13 -3
  150. data/lib/vapi_server_sdk/types/eleven_labs_voice.rb +28 -24
  151. data/lib/vapi_server_sdk/types/fallback_azure_voice.rb +100 -0
  152. data/lib/vapi_server_sdk/types/fallback_azure_voice_id.rb +53 -0
  153. data/lib/vapi_server_sdk/types/fallback_azure_voice_voice_id.rb +9 -0
  154. data/lib/vapi_server_sdk/types/fallback_cartesia_voice.rb +100 -0
  155. data/lib/vapi_server_sdk/types/fallback_cartesia_voice_language.rb +23 -0
  156. data/lib/vapi_server_sdk/types/fallback_cartesia_voice_model.rb +10 -0
  157. data/lib/vapi_server_sdk/types/fallback_custom_voice.rb +117 -0
  158. data/lib/vapi_server_sdk/types/fallback_deepgram_voice.rb +81 -0
  159. data/lib/vapi_server_sdk/types/fallback_deepgram_voice_id.rb +53 -0
  160. data/lib/vapi_server_sdk/types/fallback_deepgram_voice_id_enum.rb +18 -0
  161. data/lib/vapi_server_sdk/types/fallback_eleven_labs_voice.rb +164 -0
  162. data/lib/vapi_server_sdk/types/fallback_eleven_labs_voice_id.rb +54 -0
  163. data/lib/vapi_server_sdk/types/fallback_eleven_labs_voice_id_enum.rb +21 -0
  164. data/lib/vapi_server_sdk/types/fallback_eleven_labs_voice_model.rb +12 -0
  165. data/lib/vapi_server_sdk/types/fallback_lmnt_voice.rb +88 -0
  166. data/lib/vapi_server_sdk/types/fallback_lmnt_voice_id.rb +53 -0
  167. data/lib/vapi_server_sdk/types/fallback_lmnt_voice_id_enum.rb +8 -0
  168. data/lib/vapi_server_sdk/types/fallback_neets_voice.rb +81 -0
  169. data/lib/vapi_server_sdk/types/fallback_neets_voice_id.rb +53 -0
  170. data/lib/vapi_server_sdk/types/fallback_neets_voice_id_enum.rb +7 -0
  171. data/lib/vapi_server_sdk/types/fallback_open_ai_voice.rb +87 -0
  172. data/lib/vapi_server_sdk/types/fallback_open_ai_voice_id.rb +20 -0
  173. data/lib/vapi_server_sdk/types/fallback_plan.rb +61 -0
  174. data/lib/vapi_server_sdk/types/fallback_plan_voices_item.rb +211 -0
  175. data/lib/vapi_server_sdk/types/fallback_play_ht_voice.rb +172 -0
  176. data/lib/vapi_server_sdk/types/fallback_play_ht_voice_emotion.rb +19 -0
  177. data/lib/vapi_server_sdk/types/fallback_play_ht_voice_id.rb +53 -0
  178. data/lib/vapi_server_sdk/types/fallback_play_ht_voice_id_enum.rb +16 -0
  179. data/lib/vapi_server_sdk/types/fallback_play_ht_voice_language.rb +44 -0
  180. data/lib/vapi_server_sdk/types/fallback_play_ht_voice_model.rb +10 -0
  181. data/lib/vapi_server_sdk/types/fallback_rime_ai_voice.rb +96 -0
  182. data/lib/vapi_server_sdk/types/fallback_rime_ai_voice_id.rb +53 -0
  183. data/lib/vapi_server_sdk/types/fallback_rime_ai_voice_id_enum.rb +87 -0
  184. data/lib/vapi_server_sdk/types/fallback_rime_ai_voice_model.rb +9 -0
  185. data/lib/vapi_server_sdk/types/fallback_tavus_voice.rb +147 -0
  186. data/lib/vapi_server_sdk/types/fallback_tavus_voice_voice_id.rb +53 -0
  187. data/lib/vapi_server_sdk/types/format_plan.rb +0 -2
  188. data/lib/vapi_server_sdk/types/function_tool_with_tool_call.rb +10 -1
  189. data/lib/vapi_server_sdk/types/gcp_credential.rb +2 -2
  190. data/lib/vapi_server_sdk/types/ghl_tool_with_tool_call.rb +9 -1
  191. data/lib/vapi_server_sdk/types/gladia_credential.rb +13 -3
  192. data/lib/vapi_server_sdk/types/go_high_level_credential.rb +13 -3
  193. data/lib/vapi_server_sdk/types/google_credential.rb +113 -0
  194. data/lib/vapi_server_sdk/types/google_model.rb +178 -0
  195. data/lib/vapi_server_sdk/types/google_model_model.rb +12 -0
  196. data/lib/vapi_server_sdk/types/google_model_tools_item.rb +159 -0
  197. data/lib/vapi_server_sdk/types/groq_credential.rb +13 -3
  198. data/lib/vapi_server_sdk/types/groq_model.rb +21 -13
  199. data/lib/vapi_server_sdk/types/hipaa_buy_dto.rb +65 -0
  200. data/lib/vapi_server_sdk/types/inflection_ai_credential.rb +113 -0
  201. data/lib/vapi_server_sdk/types/inflection_ai_model.rb +177 -0
  202. data/lib/vapi_server_sdk/types/inflection_ai_model_tools_item.rb +159 -0
  203. data/lib/vapi_server_sdk/types/invite_user_dto.rb +9 -9
  204. data/lib/vapi_server_sdk/types/knowledge_base_response_document.rb +74 -0
  205. data/lib/vapi_server_sdk/types/langfuse_credential.rb +130 -0
  206. data/lib/vapi_server_sdk/types/lmnt_credential.rb +13 -3
  207. data/lib/vapi_server_sdk/types/lmnt_voice.rb +18 -14
  208. data/lib/vapi_server_sdk/types/log.rb +12 -4
  209. data/lib/vapi_server_sdk/types/log_resource.rb +8 -0
  210. data/lib/vapi_server_sdk/types/make_credential.rb +13 -3
  211. data/lib/vapi_server_sdk/types/make_tool_with_tool_call.rb +9 -1
  212. data/lib/vapi_server_sdk/types/neets_voice.rb +17 -17
  213. data/lib/vapi_server_sdk/types/o_auth_2_authentication_plan.rb +79 -0
  214. data/lib/vapi_server_sdk/types/oauth_2_authentication_session.rb +68 -0
  215. data/lib/vapi_server_sdk/types/open_ai_credential.rb +13 -3
  216. data/lib/vapi_server_sdk/types/open_ai_function.rb +30 -4
  217. data/lib/vapi_server_sdk/types/open_ai_model.rb +23 -15
  218. data/lib/vapi_server_sdk/types/open_ai_model_fallback_models_item.rb +2 -0
  219. data/lib/vapi_server_sdk/types/open_ai_model_model.rb +2 -0
  220. data/lib/vapi_server_sdk/types/open_ai_voice.rb +22 -14
  221. data/lib/vapi_server_sdk/types/open_ai_voice_id.rb +7 -0
  222. data/lib/vapi_server_sdk/types/open_router_credential.rb +13 -3
  223. data/lib/vapi_server_sdk/types/open_router_model.rb +21 -13
  224. data/lib/vapi_server_sdk/types/org.rb +35 -2
  225. data/lib/vapi_server_sdk/types/org_channel.rb +10 -0
  226. data/lib/vapi_server_sdk/types/org_with_org_user.rb +262 -0
  227. data/lib/vapi_server_sdk/types/org_with_org_user_channel.rb +10 -0
  228. data/lib/vapi_server_sdk/types/org_with_org_user_role.rb +9 -0
  229. data/lib/vapi_server_sdk/types/payment.rb +167 -0
  230. data/lib/vapi_server_sdk/types/payment_retry_dto.rb +55 -0
  231. data/lib/vapi_server_sdk/types/payment_status.rb +11 -0
  232. data/lib/vapi_server_sdk/types/payments_paginated_response.rb +75 -0
  233. data/lib/vapi_server_sdk/types/perplexity_ai_credential.rb +13 -3
  234. data/lib/vapi_server_sdk/types/perplexity_ai_model.rb +21 -13
  235. data/lib/vapi_server_sdk/types/phone_number_paginated_response.rb +75 -0
  236. data/lib/vapi_server_sdk/types/phone_number_paginated_response_results_item.rb +121 -0
  237. data/lib/vapi_server_sdk/types/play_ht_credential.rb +13 -2
  238. data/lib/vapi_server_sdk/types/play_ht_voice.rb +37 -15
  239. data/lib/vapi_server_sdk/types/play_ht_voice_language.rb +44 -0
  240. data/lib/vapi_server_sdk/types/play_ht_voice_model.rb +10 -0
  241. data/lib/vapi_server_sdk/types/regex_option.rb +2 -2
  242. data/lib/vapi_server_sdk/types/regex_option_type.rb +1 -1
  243. data/lib/vapi_server_sdk/types/regex_replacement.rb +14 -4
  244. data/lib/vapi_server_sdk/types/rime_ai_credential.rb +13 -3
  245. data/lib/vapi_server_sdk/types/rime_ai_voice.rb +18 -14
  246. data/lib/vapi_server_sdk/types/runpod_credential.rb +13 -3
  247. data/lib/vapi_server_sdk/types/s_3_credential.rb +13 -3
  248. data/lib/vapi_server_sdk/types/server.rb +16 -2
  249. data/lib/vapi_server_sdk/types/server_message_end_of_call_report_ended_reason.rb +49 -24
  250. data/lib/vapi_server_sdk/types/server_message_knowledge_base_request.rb +195 -0
  251. data/lib/vapi_server_sdk/types/server_message_knowledge_base_request_messages_item.rb +97 -0
  252. data/lib/vapi_server_sdk/types/{server_message_language_changed_phone_number.rb → server_message_knowledge_base_request_phone_number.rb} +8 -8
  253. data/lib/vapi_server_sdk/types/{server_message_language_changed.rb → server_message_language_change_detected.rb} +10 -10
  254. data/lib/vapi_server_sdk/types/server_message_language_change_detected_phone_number.rb +125 -0
  255. data/lib/vapi_server_sdk/types/server_message_message.rb +22 -9
  256. data/lib/vapi_server_sdk/types/server_message_response_knowledge_base_request.rb +81 -0
  257. data/lib/vapi_server_sdk/types/server_message_response_message_response.rb +14 -0
  258. data/lib/vapi_server_sdk/types/server_message_status_update_ended_reason.rb +49 -24
  259. data/lib/vapi_server_sdk/types/server_message_tool_calls_tool_with_tool_call_list_item.rb +77 -77
  260. data/lib/vapi_server_sdk/types/server_message_transfer_update.rb +18 -2
  261. data/lib/vapi_server_sdk/types/sip_authentication.rb +80 -0
  262. data/lib/vapi_server_sdk/types/start_speaking_plan.rb +54 -10
  263. data/lib/vapi_server_sdk/types/start_speaking_plan_custom_endpointing_rules_item.rb +108 -0
  264. data/lib/vapi_server_sdk/types/structured_data_plan.rb +28 -10
  265. data/lib/vapi_server_sdk/types/subscription.rb +336 -0
  266. data/lib/vapi_server_sdk/types/subscription_concurrency_line_buy_dto.rb +55 -0
  267. data/lib/vapi_server_sdk/types/subscription_concurrency_line_remove_dto.rb +55 -0
  268. data/lib/vapi_server_sdk/types/subscription_coupon_add_dto.rb +67 -0
  269. data/lib/vapi_server_sdk/types/subscription_monthly_charge.rb +65 -0
  270. data/lib/vapi_server_sdk/types/subscription_status.rb +10 -0
  271. data/lib/vapi_server_sdk/types/subscription_type.rb +10 -0
  272. data/lib/vapi_server_sdk/types/success_evaluation_plan.rb +38 -16
  273. data/lib/vapi_server_sdk/types/summary_plan.rb +26 -8
  274. data/lib/vapi_server_sdk/types/sync_voice_library_dto_providers_item.rb +1 -0
  275. data/lib/vapi_server_sdk/types/tavus_conversation_properties.rb +173 -0
  276. data/lib/vapi_server_sdk/types/tavus_credential.rb +111 -0
  277. data/lib/vapi_server_sdk/types/tavus_voice.rb +163 -0
  278. data/lib/vapi_server_sdk/types/tavus_voice_voice_id.rb +53 -0
  279. data/lib/vapi_server_sdk/types/text_content.rb +73 -0
  280. data/lib/vapi_server_sdk/types/text_content_language.rb +191 -0
  281. data/lib/vapi_server_sdk/types/text_editor_tool.rb +194 -0
  282. data/lib/vapi_server_sdk/types/text_editor_tool_messages_item.rb +120 -0
  283. data/lib/vapi_server_sdk/types/together_ai_credential.rb +13 -3
  284. data/lib/vapi_server_sdk/types/together_ai_model.rb +21 -13
  285. data/lib/vapi_server_sdk/types/tool_message_complete.rb +29 -3
  286. data/lib/vapi_server_sdk/types/tool_message_delayed.rb +30 -3
  287. data/lib/vapi_server_sdk/types/tool_message_failed.rb +30 -3
  288. data/lib/vapi_server_sdk/types/tool_message_start.rb +29 -4
  289. data/lib/vapi_server_sdk/types/transfer_destination_assistant.rb +79 -33
  290. data/lib/vapi_server_sdk/types/transfer_destination_assistant_message.rb +65 -0
  291. data/lib/vapi_server_sdk/types/transfer_destination_number.rb +56 -24
  292. data/lib/vapi_server_sdk/types/transfer_destination_number_message.rb +65 -0
  293. data/lib/vapi_server_sdk/types/transfer_destination_sip.rb +60 -15
  294. data/lib/vapi_server_sdk/types/transfer_destination_sip_message.rb +65 -0
  295. data/lib/vapi_server_sdk/types/transfer_destination_step.rb +28 -14
  296. data/lib/vapi_server_sdk/types/transfer_destination_step_message.rb +65 -0
  297. data/lib/vapi_server_sdk/types/transfer_plan.rb +141 -0
  298. data/lib/vapi_server_sdk/types/transfer_plan_message.rb +58 -0
  299. data/lib/vapi_server_sdk/types/transfer_plan_mode.rb +32 -0
  300. data/lib/vapi_server_sdk/types/transport.rb +70 -0
  301. data/lib/vapi_server_sdk/types/transport_cost.rb +12 -2
  302. data/lib/vapi_server_sdk/types/transport_cost_provider.rb +9 -0
  303. data/lib/vapi_server_sdk/types/transport_provider.rb +11 -0
  304. data/lib/vapi_server_sdk/types/trieve_knowledge_base.rb +125 -0
  305. data/lib/vapi_server_sdk/types/trieve_knowledge_base_vector_store_create_plan.rb +109 -0
  306. data/lib/vapi_server_sdk/types/trieve_knowledge_base_vector_store_search_plan.rb +95 -0
  307. data/lib/vapi_server_sdk/types/trieve_knowledge_base_vector_store_search_plan_search_type.rb +12 -0
  308. data/lib/vapi_server_sdk/types/twilio_credential.rb +12 -2
  309. data/lib/vapi_server_sdk/types/update_anthropic_credential_dto.rb +11 -2
  310. data/lib/vapi_server_sdk/types/update_anyscale_credential_dto.rb +11 -2
  311. data/lib/vapi_server_sdk/types/update_assembly_ai_credential_dto.rb +74 -0
  312. data/lib/vapi_server_sdk/types/update_azure_credential_dto.rb +95 -0
  313. data/lib/vapi_server_sdk/types/update_azure_credential_dto_region.rb +23 -0
  314. data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto.rb +13 -3
  315. data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto_models_item.rb +1 -0
  316. data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto_region.rb +1 -0
  317. data/lib/vapi_server_sdk/types/update_byo_sip_trunk_credential_dto.rb +31 -11
  318. data/lib/vapi_server_sdk/types/update_cartesia_credential_dto.rb +11 -2
  319. data/lib/vapi_server_sdk/types/update_custom_llm_credential_dto.rb +31 -2
  320. data/lib/vapi_server_sdk/types/update_deep_infra_credential_dto.rb +11 -2
  321. data/lib/vapi_server_sdk/types/update_deepgram_credential_dto.rb +9 -2
  322. data/lib/vapi_server_sdk/types/update_eleven_labs_credential_dto.rb +11 -2
  323. data/lib/vapi_server_sdk/types/update_gcp_credential_dto.rb +10 -10
  324. data/lib/vapi_server_sdk/types/update_gladia_credential_dto.rb +11 -2
  325. data/lib/vapi_server_sdk/types/update_go_high_level_credential_dto.rb +11 -2
  326. data/lib/vapi_server_sdk/types/update_google_credential_dto.rb +76 -0
  327. data/lib/vapi_server_sdk/types/update_groq_credential_dto.rb +11 -2
  328. data/lib/vapi_server_sdk/types/update_inflection_ai_credential_dto.rb +76 -0
  329. data/lib/vapi_server_sdk/types/update_langfuse_credential_dto.rb +96 -0
  330. data/lib/vapi_server_sdk/types/update_lmnt_credential_dto.rb +11 -2
  331. data/lib/vapi_server_sdk/types/update_make_credential_dto.rb +17 -2
  332. data/lib/vapi_server_sdk/types/update_open_ai_credential_dto.rb +11 -2
  333. data/lib/vapi_server_sdk/types/update_open_router_credential_dto.rb +11 -2
  334. data/lib/vapi_server_sdk/types/update_org_dto.rb +21 -2
  335. data/lib/vapi_server_sdk/types/update_org_dto_channel.rb +10 -0
  336. data/lib/vapi_server_sdk/types/update_perplexity_ai_credential_dto.rb +11 -2
  337. data/lib/vapi_server_sdk/types/update_play_ht_credential_dto.rb +11 -2
  338. data/lib/vapi_server_sdk/types/update_rime_ai_credential_dto.rb +11 -2
  339. data/lib/vapi_server_sdk/types/update_runpod_credential_dto.rb +11 -2
  340. data/lib/vapi_server_sdk/types/update_s_3_credential_dto.rb +13 -3
  341. data/lib/vapi_server_sdk/types/update_tavus_credential_dto.rb +74 -0
  342. data/lib/vapi_server_sdk/types/update_together_ai_credential_dto.rb +11 -2
  343. data/lib/vapi_server_sdk/types/update_twilio_credential_dto.rb +16 -2
  344. data/lib/vapi_server_sdk/types/update_vonage_credential_dto.rb +16 -2
  345. data/lib/vapi_server_sdk/types/update_x_ai_credential_dto.rb +76 -0
  346. data/lib/vapi_server_sdk/types/vapi_cost.rb +10 -2
  347. data/lib/vapi_server_sdk/types/vapi_cost_sub_type.rb +9 -0
  348. data/lib/vapi_server_sdk/types/vapi_model.rb +24 -16
  349. data/lib/vapi_server_sdk/types/vapi_phone_number.rb +20 -2
  350. data/lib/vapi_server_sdk/types/vonage_credential.rb +12 -2
  351. data/lib/vapi_server_sdk/types/webhook_credential.rb +134 -0
  352. data/lib/vapi_server_sdk/types/x_ai_credential.rb +113 -0
  353. data/lib/vapi_server_sdk/types/xai_model.rb +177 -0
  354. data/lib/vapi_server_sdk/types/xai_model_tools_item.rb +159 -0
  355. data/lib/vapi_server_sdk.rb +7 -0
  356. metadata +165 -6
@@ -0,0 +1,120 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "json"
4
+ require_relative "tool_message_start"
5
+ require_relative "tool_message_complete"
6
+ require_relative "tool_message_failed"
7
+ require_relative "tool_message_delayed"
8
+
9
+ module Vapi
10
+ class CreateTextEditorToolDtoMessagesItem
11
+ # @return [Object]
12
+ attr_reader :member
13
+ # @return [String]
14
+ attr_reader :discriminant
15
+
16
+ private_class_method :new
17
+ alias kind_of? is_a?
18
+
19
+ # @param member [Object]
20
+ # @param discriminant [String]
21
+ # @return [Vapi::CreateTextEditorToolDtoMessagesItem]
22
+ def initialize(member:, discriminant:)
23
+ @member = member
24
+ @discriminant = discriminant
25
+ end
26
+
27
+ # Deserialize a JSON object to an instance of CreateTextEditorToolDtoMessagesItem
28
+ #
29
+ # @param json_object [String]
30
+ # @return [Vapi::CreateTextEditorToolDtoMessagesItem]
31
+ def self.from_json(json_object:)
32
+ struct = JSON.parse(json_object, object_class: OpenStruct)
33
+ member = case struct.type
34
+ when "request-start"
35
+ Vapi::ToolMessageStart.from_json(json_object: json_object)
36
+ when "request-complete"
37
+ Vapi::ToolMessageComplete.from_json(json_object: json_object)
38
+ when "request-failed"
39
+ Vapi::ToolMessageFailed.from_json(json_object: json_object)
40
+ when "request-response-delayed"
41
+ Vapi::ToolMessageDelayed.from_json(json_object: json_object)
42
+ else
43
+ Vapi::ToolMessageStart.from_json(json_object: json_object)
44
+ end
45
+ new(member: member, discriminant: struct.type)
46
+ end
47
+
48
+ # For Union Types, to_json functionality is delegated to the wrapped member.
49
+ #
50
+ # @return [String]
51
+ def to_json(*_args)
52
+ case @discriminant
53
+ when "request-start"
54
+ { **@member.to_json, type: @discriminant }.to_json
55
+ when "request-complete"
56
+ { **@member.to_json, type: @discriminant }.to_json
57
+ when "request-failed"
58
+ { **@member.to_json, type: @discriminant }.to_json
59
+ when "request-response-delayed"
60
+ { **@member.to_json, type: @discriminant }.to_json
61
+ else
62
+ { "type": @discriminant, value: @member }.to_json
63
+ end
64
+ @member.to_json
65
+ end
66
+
67
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
68
+ # hash and check each fields type against the current object's property
69
+ # definitions.
70
+ #
71
+ # @param obj [Object]
72
+ # @return [Void]
73
+ def self.validate_raw(obj:)
74
+ case obj.type
75
+ when "request-start"
76
+ Vapi::ToolMessageStart.validate_raw(obj: obj)
77
+ when "request-complete"
78
+ Vapi::ToolMessageComplete.validate_raw(obj: obj)
79
+ when "request-failed"
80
+ Vapi::ToolMessageFailed.validate_raw(obj: obj)
81
+ when "request-response-delayed"
82
+ Vapi::ToolMessageDelayed.validate_raw(obj: obj)
83
+ else
84
+ raise("Passed value matched no type within the union, validation failed.")
85
+ end
86
+ end
87
+
88
+ # For Union Types, is_a? functionality is delegated to the wrapped member.
89
+ #
90
+ # @param obj [Object]
91
+ # @return [Boolean]
92
+ def is_a?(obj)
93
+ @member.is_a?(obj)
94
+ end
95
+
96
+ # @param member [Vapi::ToolMessageStart]
97
+ # @return [Vapi::CreateTextEditorToolDtoMessagesItem]
98
+ def self.request_start(member:)
99
+ new(member: member, discriminant: "request-start")
100
+ end
101
+
102
+ # @param member [Vapi::ToolMessageComplete]
103
+ # @return [Vapi::CreateTextEditorToolDtoMessagesItem]
104
+ def self.request_complete(member:)
105
+ new(member: member, discriminant: "request-complete")
106
+ end
107
+
108
+ # @param member [Vapi::ToolMessageFailed]
109
+ # @return [Vapi::CreateTextEditorToolDtoMessagesItem]
110
+ def self.request_failed(member:)
111
+ new(member: member, discriminant: "request-failed")
112
+ end
113
+
114
+ # @param member [Vapi::ToolMessageDelayed]
115
+ # @return [Vapi::CreateTextEditorToolDtoMessagesItem]
116
+ def self.request_response_delayed(member:)
117
+ new(member: member, discriminant: "request-response-delayed")
118
+ end
119
+ end
120
+ end
@@ -9,6 +9,8 @@ module Vapi
9
9
  attr_reader :provider
10
10
  # @return [String] This is not returned in the API.
11
11
  attr_reader :api_key
12
+ # @return [String] This is the name of credential. This is just for your reference.
13
+ attr_reader :name
12
14
  # @return [OpenStruct] Additional properties unmapped to the current class definition
13
15
  attr_reader :additional_properties
14
16
  # @return [Object]
@@ -19,13 +21,17 @@ module Vapi
19
21
 
20
22
  # @param provider [String]
21
23
  # @param api_key [String] This is not returned in the API.
24
+ # @param name [String] This is the name of credential. This is just for your reference.
22
25
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
23
26
  # @return [Vapi::CreateTogetherAiCredentialDto]
24
- def initialize(provider:, api_key:, additional_properties: nil)
27
+ def initialize(provider:, api_key:, name: OMIT, additional_properties: nil)
25
28
  @provider = provider
26
29
  @api_key = api_key
30
+ @name = name if name != OMIT
27
31
  @additional_properties = additional_properties
28
- @_field_set = { "provider": provider, "apiKey": api_key }
32
+ @_field_set = { "provider": provider, "apiKey": api_key, "name": name }.reject do |_k, v|
33
+ v == OMIT
34
+ end
29
35
  end
30
36
 
31
37
  # Deserialize a JSON object to an instance of CreateTogetherAiCredentialDto
@@ -37,9 +43,11 @@ module Vapi
37
43
  parsed_json = JSON.parse(json_object)
38
44
  provider = parsed_json["provider"]
39
45
  api_key = parsed_json["apiKey"]
46
+ name = parsed_json["name"]
40
47
  new(
41
48
  provider: provider,
42
49
  api_key: api_key,
50
+ name: name,
43
51
  additional_properties: struct
44
52
  )
45
53
  end
@@ -60,6 +68,7 @@ module Vapi
60
68
  def self.validate_raw(obj:)
61
69
  obj.provider.is_a?(String) != false || raise("Passed value for field obj.provider is not the expected type, validation failed.")
62
70
  obj.api_key.is_a?(String) != false || raise("Passed value for field obj.api_key is not the expected type, validation failed.")
71
+ obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
63
72
  end
64
73
  end
65
74
  end
@@ -0,0 +1,109 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "trieve_knowledge_base_vector_store_search_plan"
4
+ require_relative "trieve_knowledge_base_vector_store_create_plan"
5
+ require "ostruct"
6
+ require "json"
7
+
8
+ module Vapi
9
+ class CreateTrieveKnowledgeBaseDto
10
+ # @return [String] This is the name of the knowledge base.
11
+ attr_reader :name
12
+ # @return [Vapi::TrieveKnowledgeBaseVectorStoreSearchPlan] This is the plan on how to search the vector store while a call is going on.
13
+ attr_reader :vector_store_search_plan
14
+ # @return [Vapi::TrieveKnowledgeBaseVectorStoreCreatePlan] This is the plan if you want us to create a new vector store on your behalf. To
15
+ # use an existing vector store from your account, use `vectoreStoreProviderId`
16
+ attr_reader :vector_store_create_plan
17
+ # @return [String] This is an vector store that you already have on your account with the provider.
18
+ # To create a new vector store, use vectorStoreCreatePlan.
19
+ # Usage:
20
+ # - To bring your own vector store from Trieve, go to https://trieve.ai
21
+ # - Create a dataset, and use the datasetId here.
22
+ attr_reader :vector_store_provider_id
23
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
24
+ attr_reader :additional_properties
25
+ # @return [Object]
26
+ attr_reader :_field_set
27
+ protected :_field_set
28
+
29
+ OMIT = Object.new
30
+
31
+ # @param name [String] This is the name of the knowledge base.
32
+ # @param vector_store_search_plan [Vapi::TrieveKnowledgeBaseVectorStoreSearchPlan] This is the plan on how to search the vector store while a call is going on.
33
+ # @param vector_store_create_plan [Vapi::TrieveKnowledgeBaseVectorStoreCreatePlan] This is the plan if you want us to create a new vector store on your behalf. To
34
+ # use an existing vector store from your account, use `vectoreStoreProviderId`
35
+ # @param vector_store_provider_id [String] This is an vector store that you already have on your account with the provider.
36
+ # To create a new vector store, use vectorStoreCreatePlan.
37
+ # Usage:
38
+ # - To bring your own vector store from Trieve, go to https://trieve.ai
39
+ # - Create a dataset, and use the datasetId here.
40
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
41
+ # @return [Vapi::CreateTrieveKnowledgeBaseDto]
42
+ def initialize(vector_store_search_plan:, name: OMIT, vector_store_create_plan: OMIT,
43
+ vector_store_provider_id: OMIT, additional_properties: nil)
44
+ @name = name if name != OMIT
45
+ @vector_store_search_plan = vector_store_search_plan
46
+ @vector_store_create_plan = vector_store_create_plan if vector_store_create_plan != OMIT
47
+ @vector_store_provider_id = vector_store_provider_id if vector_store_provider_id != OMIT
48
+ @additional_properties = additional_properties
49
+ @_field_set = {
50
+ "name": name,
51
+ "vectorStoreSearchPlan": vector_store_search_plan,
52
+ "vectorStoreCreatePlan": vector_store_create_plan,
53
+ "vectorStoreProviderId": vector_store_provider_id
54
+ }.reject do |_k, v|
55
+ v == OMIT
56
+ end
57
+ end
58
+
59
+ # Deserialize a JSON object to an instance of CreateTrieveKnowledgeBaseDto
60
+ #
61
+ # @param json_object [String]
62
+ # @return [Vapi::CreateTrieveKnowledgeBaseDto]
63
+ def self.from_json(json_object:)
64
+ struct = JSON.parse(json_object, object_class: OpenStruct)
65
+ parsed_json = JSON.parse(json_object)
66
+ name = parsed_json["name"]
67
+ if parsed_json["vectorStoreSearchPlan"].nil?
68
+ vector_store_search_plan = nil
69
+ else
70
+ vector_store_search_plan = parsed_json["vectorStoreSearchPlan"].to_json
71
+ vector_store_search_plan = Vapi::TrieveKnowledgeBaseVectorStoreSearchPlan.from_json(json_object: vector_store_search_plan)
72
+ end
73
+ if parsed_json["vectorStoreCreatePlan"].nil?
74
+ vector_store_create_plan = nil
75
+ else
76
+ vector_store_create_plan = parsed_json["vectorStoreCreatePlan"].to_json
77
+ vector_store_create_plan = Vapi::TrieveKnowledgeBaseVectorStoreCreatePlan.from_json(json_object: vector_store_create_plan)
78
+ end
79
+ vector_store_provider_id = parsed_json["vectorStoreProviderId"]
80
+ new(
81
+ name: name,
82
+ vector_store_search_plan: vector_store_search_plan,
83
+ vector_store_create_plan: vector_store_create_plan,
84
+ vector_store_provider_id: vector_store_provider_id,
85
+ additional_properties: struct
86
+ )
87
+ end
88
+
89
+ # Serialize an instance of CreateTrieveKnowledgeBaseDto to a JSON object
90
+ #
91
+ # @return [String]
92
+ def to_json(*_args)
93
+ @_field_set&.to_json
94
+ end
95
+
96
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
97
+ # hash and check each fields type against the current object's property
98
+ # definitions.
99
+ #
100
+ # @param obj [Object]
101
+ # @return [Void]
102
+ def self.validate_raw(obj:)
103
+ obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
104
+ Vapi::TrieveKnowledgeBaseVectorStoreSearchPlan.validate_raw(obj: obj.vector_store_search_plan)
105
+ obj.vector_store_create_plan.nil? || Vapi::TrieveKnowledgeBaseVectorStoreCreatePlan.validate_raw(obj: obj.vector_store_create_plan)
106
+ obj.vector_store_provider_id&.is_a?(String) != false || raise("Passed value for field obj.vector_store_provider_id is not the expected type, validation failed.")
107
+ end
108
+ end
109
+ end
@@ -11,6 +11,8 @@ module Vapi
11
11
  attr_reader :auth_token
12
12
  # @return [String]
13
13
  attr_reader :account_sid
14
+ # @return [String] This is the name of credential. This is just for your reference.
15
+ attr_reader :name
14
16
  # @return [OpenStruct] Additional properties unmapped to the current class definition
15
17
  attr_reader :additional_properties
16
18
  # @return [Object]
@@ -22,14 +24,23 @@ module Vapi
22
24
  # @param provider [String]
23
25
  # @param auth_token [String] This is not returned in the API.
24
26
  # @param account_sid [String]
27
+ # @param name [String] This is the name of credential. This is just for your reference.
25
28
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
26
29
  # @return [Vapi::CreateTwilioCredentialDto]
27
- def initialize(provider:, auth_token:, account_sid:, additional_properties: nil)
30
+ def initialize(provider:, auth_token:, account_sid:, name: OMIT, additional_properties: nil)
28
31
  @provider = provider
29
32
  @auth_token = auth_token
30
33
  @account_sid = account_sid
34
+ @name = name if name != OMIT
31
35
  @additional_properties = additional_properties
32
- @_field_set = { "provider": provider, "authToken": auth_token, "accountSid": account_sid }
36
+ @_field_set = {
37
+ "provider": provider,
38
+ "authToken": auth_token,
39
+ "accountSid": account_sid,
40
+ "name": name
41
+ }.reject do |_k, v|
42
+ v == OMIT
43
+ end
33
44
  end
34
45
 
35
46
  # Deserialize a JSON object to an instance of CreateTwilioCredentialDto
@@ -42,10 +53,12 @@ module Vapi
42
53
  provider = parsed_json["provider"]
43
54
  auth_token = parsed_json["authToken"]
44
55
  account_sid = parsed_json["accountSid"]
56
+ name = parsed_json["name"]
45
57
  new(
46
58
  provider: provider,
47
59
  auth_token: auth_token,
48
60
  account_sid: account_sid,
61
+ name: name,
49
62
  additional_properties: struct
50
63
  )
51
64
  end
@@ -67,6 +80,7 @@ module Vapi
67
80
  obj.provider.is_a?(String) != false || raise("Passed value for field obj.provider is not the expected type, validation failed.")
68
81
  obj.auth_token.is_a?(String) != false || raise("Passed value for field obj.auth_token is not the expected type, validation failed.")
69
82
  obj.account_sid.is_a?(String) != false || raise("Passed value for field obj.account_sid is not the expected type, validation failed.")
83
+ obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
70
84
  end
71
85
  end
72
86
  end
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require_relative "create_vapi_phone_number_dto_fallback_destination"
4
+ require_relative "sip_authentication"
4
5
  require "ostruct"
5
6
  require "json"
6
7
 
@@ -17,6 +18,10 @@ module Vapi
17
18
  # attached to this number will answer.
18
19
  # This is case-insensitive.
19
20
  attr_reader :sip_uri
21
+ # @return [Vapi::SipAuthentication] This enables authentication for incoming SIP INVITE requests to the `sipUri`.
22
+ # If not set, any username/password to the 401 challenge of the SIP INVITE will be
23
+ # accepted.
24
+ attr_reader :authentication
20
25
  # @return [String] This is the name of the phone number. This is just for your own reference.
21
26
  attr_reader :name
22
27
  # @return [String] This is the assistant that will be used for incoming calls to this phone number.
@@ -56,6 +61,9 @@ module Vapi
56
61
  # @param sip_uri [String] This is the SIP URI of the phone number. You can SIP INVITE this. The assistant
57
62
  # attached to this number will answer.
58
63
  # This is case-insensitive.
64
+ # @param authentication [Vapi::SipAuthentication] This enables authentication for incoming SIP INVITE requests to the `sipUri`.
65
+ # If not set, any username/password to the 401 challenge of the SIP INVITE will be
66
+ # accepted.
59
67
  # @param name [String] This is the name of the phone number. This is just for your own reference.
60
68
  # @param assistant_id [String] This is the assistant that will be used for incoming calls to this phone number.
61
69
  # If neither `assistantId` nor `squadId` is set, `assistant-request` will be sent
@@ -75,10 +83,11 @@ module Vapi
75
83
  # Same precedence logic as serverUrl.
76
84
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
77
85
  # @return [Vapi::CreateVapiPhoneNumberDto]
78
- def initialize(sip_uri:, fallback_destination: OMIT, name: OMIT, assistant_id: OMIT, squad_id: OMIT,
79
- server_url: OMIT, server_url_secret: OMIT, additional_properties: nil)
86
+ def initialize(sip_uri:, fallback_destination: OMIT, authentication: OMIT, name: OMIT, assistant_id: OMIT,
87
+ squad_id: OMIT, server_url: OMIT, server_url_secret: OMIT, additional_properties: nil)
80
88
  @fallback_destination = fallback_destination if fallback_destination != OMIT
81
89
  @sip_uri = sip_uri
90
+ @authentication = authentication if authentication != OMIT
82
91
  @name = name if name != OMIT
83
92
  @assistant_id = assistant_id if assistant_id != OMIT
84
93
  @squad_id = squad_id if squad_id != OMIT
@@ -88,6 +97,7 @@ module Vapi
88
97
  @_field_set = {
89
98
  "fallbackDestination": fallback_destination,
90
99
  "sipUri": sip_uri,
100
+ "authentication": authentication,
91
101
  "name": name,
92
102
  "assistantId": assistant_id,
93
103
  "squadId": squad_id,
@@ -112,6 +122,12 @@ module Vapi
112
122
  fallback_destination = Vapi::CreateVapiPhoneNumberDtoFallbackDestination.from_json(json_object: fallback_destination)
113
123
  end
114
124
  sip_uri = parsed_json["sipUri"]
125
+ if parsed_json["authentication"].nil?
126
+ authentication = nil
127
+ else
128
+ authentication = parsed_json["authentication"].to_json
129
+ authentication = Vapi::SipAuthentication.from_json(json_object: authentication)
130
+ end
115
131
  name = parsed_json["name"]
116
132
  assistant_id = parsed_json["assistantId"]
117
133
  squad_id = parsed_json["squadId"]
@@ -120,6 +136,7 @@ module Vapi
120
136
  new(
121
137
  fallback_destination: fallback_destination,
122
138
  sip_uri: sip_uri,
139
+ authentication: authentication,
123
140
  name: name,
124
141
  assistant_id: assistant_id,
125
142
  squad_id: squad_id,
@@ -145,6 +162,7 @@ module Vapi
145
162
  def self.validate_raw(obj:)
146
163
  obj.fallback_destination.nil? || Vapi::CreateVapiPhoneNumberDtoFallbackDestination.validate_raw(obj: obj.fallback_destination)
147
164
  obj.sip_uri.is_a?(String) != false || raise("Passed value for field obj.sip_uri is not the expected type, validation failed.")
165
+ obj.authentication.nil? || Vapi::SipAuthentication.validate_raw(obj: obj.authentication)
148
166
  obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
149
167
  obj.assistant_id&.is_a?(String) != false || raise("Passed value for field obj.assistant_id is not the expected type, validation failed.")
150
168
  obj.squad_id&.is_a?(String) != false || raise("Passed value for field obj.squad_id is not the expected type, validation failed.")
@@ -11,6 +11,8 @@ module Vapi
11
11
  attr_reader :api_secret
12
12
  # @return [String]
13
13
  attr_reader :api_key
14
+ # @return [String] This is the name of credential. This is just for your reference.
15
+ attr_reader :name
14
16
  # @return [OpenStruct] Additional properties unmapped to the current class definition
15
17
  attr_reader :additional_properties
16
18
  # @return [Object]
@@ -22,14 +24,23 @@ module Vapi
22
24
  # @param provider [String]
23
25
  # @param api_secret [String] This is not returned in the API.
24
26
  # @param api_key [String]
27
+ # @param name [String] This is the name of credential. This is just for your reference.
25
28
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
26
29
  # @return [Vapi::CreateVonageCredentialDto]
27
- def initialize(provider:, api_secret:, api_key:, additional_properties: nil)
30
+ def initialize(provider:, api_secret:, api_key:, name: OMIT, additional_properties: nil)
28
31
  @provider = provider
29
32
  @api_secret = api_secret
30
33
  @api_key = api_key
34
+ @name = name if name != OMIT
31
35
  @additional_properties = additional_properties
32
- @_field_set = { "provider": provider, "apiSecret": api_secret, "apiKey": api_key }
36
+ @_field_set = {
37
+ "provider": provider,
38
+ "apiSecret": api_secret,
39
+ "apiKey": api_key,
40
+ "name": name
41
+ }.reject do |_k, v|
42
+ v == OMIT
43
+ end
33
44
  end
34
45
 
35
46
  # Deserialize a JSON object to an instance of CreateVonageCredentialDto
@@ -42,10 +53,12 @@ module Vapi
42
53
  provider = parsed_json["provider"]
43
54
  api_secret = parsed_json["apiSecret"]
44
55
  api_key = parsed_json["apiKey"]
56
+ name = parsed_json["name"]
45
57
  new(
46
58
  provider: provider,
47
59
  api_secret: api_secret,
48
60
  api_key: api_key,
61
+ name: name,
49
62
  additional_properties: struct
50
63
  )
51
64
  end
@@ -67,6 +80,7 @@ module Vapi
67
80
  obj.provider.is_a?(String) != false || raise("Passed value for field obj.provider is not the expected type, validation failed.")
68
81
  obj.api_secret.is_a?(String) != false || raise("Passed value for field obj.api_secret is not the expected type, validation failed.")
69
82
  obj.api_key.is_a?(String) != false || raise("Passed value for field obj.api_key is not the expected type, validation failed.")
83
+ obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
70
84
  end
71
85
  end
72
86
  end
@@ -0,0 +1,84 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "o_auth_2_authentication_plan"
4
+ require "ostruct"
5
+ require "json"
6
+
7
+ module Vapi
8
+ class CreateWebhookCredentialDto
9
+ # @return [String]
10
+ attr_reader :provider
11
+ # @return [Vapi::OAuth2AuthenticationPlan] This is the authentication plan. Currently supports OAuth2 RFC 6749.
12
+ attr_reader :authentication_plan
13
+ # @return [String] This is the name of credential. This is just for your reference.
14
+ attr_reader :name
15
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
16
+ attr_reader :additional_properties
17
+ # @return [Object]
18
+ attr_reader :_field_set
19
+ protected :_field_set
20
+
21
+ OMIT = Object.new
22
+
23
+ # @param provider [String]
24
+ # @param authentication_plan [Vapi::OAuth2AuthenticationPlan] This is the authentication plan. Currently supports OAuth2 RFC 6749.
25
+ # @param name [String] This is the name of credential. This is just for your reference.
26
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
27
+ # @return [Vapi::CreateWebhookCredentialDto]
28
+ def initialize(provider:, authentication_plan:, name: OMIT, additional_properties: nil)
29
+ @provider = provider
30
+ @authentication_plan = authentication_plan
31
+ @name = name if name != OMIT
32
+ @additional_properties = additional_properties
33
+ @_field_set = {
34
+ "provider": provider,
35
+ "authenticationPlan": authentication_plan,
36
+ "name": name
37
+ }.reject do |_k, v|
38
+ v == OMIT
39
+ end
40
+ end
41
+
42
+ # Deserialize a JSON object to an instance of CreateWebhookCredentialDto
43
+ #
44
+ # @param json_object [String]
45
+ # @return [Vapi::CreateWebhookCredentialDto]
46
+ def self.from_json(json_object:)
47
+ struct = JSON.parse(json_object, object_class: OpenStruct)
48
+ parsed_json = JSON.parse(json_object)
49
+ provider = parsed_json["provider"]
50
+ if parsed_json["authenticationPlan"].nil?
51
+ authentication_plan = nil
52
+ else
53
+ authentication_plan = parsed_json["authenticationPlan"].to_json
54
+ authentication_plan = Vapi::OAuth2AuthenticationPlan.from_json(json_object: authentication_plan)
55
+ end
56
+ name = parsed_json["name"]
57
+ new(
58
+ provider: provider,
59
+ authentication_plan: authentication_plan,
60
+ name: name,
61
+ additional_properties: struct
62
+ )
63
+ end
64
+
65
+ # Serialize an instance of CreateWebhookCredentialDto to a JSON object
66
+ #
67
+ # @return [String]
68
+ def to_json(*_args)
69
+ @_field_set&.to_json
70
+ end
71
+
72
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
73
+ # hash and check each fields type against the current object's property
74
+ # definitions.
75
+ #
76
+ # @param obj [Object]
77
+ # @return [Void]
78
+ def self.validate_raw(obj:)
79
+ obj.provider.is_a?(String) != false || raise("Passed value for field obj.provider is not the expected type, validation failed.")
80
+ Vapi::OAuth2AuthenticationPlan.validate_raw(obj: obj.authentication_plan)
81
+ obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
82
+ end
83
+ end
84
+ end
@@ -0,0 +1,76 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "ostruct"
4
+ require "json"
5
+
6
+ module Vapi
7
+ class CreateXAiCredentialDto
8
+ # @return [String] This is the api key for Grok in XAi's console. Get it from here:
9
+ # https://console.x.ai
10
+ attr_reader :provider
11
+ # @return [String] This is not returned in the API.
12
+ attr_reader :api_key
13
+ # @return [String] This is the name of credential. This is just for your reference.
14
+ attr_reader :name
15
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
16
+ attr_reader :additional_properties
17
+ # @return [Object]
18
+ attr_reader :_field_set
19
+ protected :_field_set
20
+
21
+ OMIT = Object.new
22
+
23
+ # @param provider [String] This is the api key for Grok in XAi's console. Get it from here:
24
+ # https://console.x.ai
25
+ # @param api_key [String] This is not returned in the API.
26
+ # @param name [String] This is the name of credential. This is just for your reference.
27
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
28
+ # @return [Vapi::CreateXAiCredentialDto]
29
+ def initialize(provider:, api_key:, name: OMIT, additional_properties: nil)
30
+ @provider = provider
31
+ @api_key = api_key
32
+ @name = name if name != OMIT
33
+ @additional_properties = additional_properties
34
+ @_field_set = { "provider": provider, "apiKey": api_key, "name": name }.reject do |_k, v|
35
+ v == OMIT
36
+ end
37
+ end
38
+
39
+ # Deserialize a JSON object to an instance of CreateXAiCredentialDto
40
+ #
41
+ # @param json_object [String]
42
+ # @return [Vapi::CreateXAiCredentialDto]
43
+ def self.from_json(json_object:)
44
+ struct = JSON.parse(json_object, object_class: OpenStruct)
45
+ parsed_json = JSON.parse(json_object)
46
+ provider = parsed_json["provider"]
47
+ api_key = parsed_json["apiKey"]
48
+ name = parsed_json["name"]
49
+ new(
50
+ provider: provider,
51
+ api_key: api_key,
52
+ name: name,
53
+ additional_properties: struct
54
+ )
55
+ end
56
+
57
+ # Serialize an instance of CreateXAiCredentialDto to a JSON object
58
+ #
59
+ # @return [String]
60
+ def to_json(*_args)
61
+ @_field_set&.to_json
62
+ end
63
+
64
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
65
+ # hash and check each fields type against the current object's property
66
+ # definitions.
67
+ #
68
+ # @param obj [Object]
69
+ # @return [Void]
70
+ def self.validate_raw(obj:)
71
+ obj.provider.is_a?(String) != false || raise("Passed value for field obj.provider is not the expected type, validation failed.")
72
+ obj.api_key.is_a?(String) != false || raise("Passed value for field obj.api_key is not the expected type, validation failed.")
73
+ obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,55 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "ostruct"
4
+ require "json"
5
+
6
+ module Vapi
7
+ class CreditsBuyDto
8
+ # @return [Float] This is the number of credits to add to the subscription.
9
+ attr_reader :credits
10
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
11
+ attr_reader :additional_properties
12
+ # @return [Object]
13
+ attr_reader :_field_set
14
+ protected :_field_set
15
+
16
+ OMIT = Object.new
17
+
18
+ # @param credits [Float] This is the number of credits to add to the subscription.
19
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
20
+ # @return [Vapi::CreditsBuyDto]
21
+ def initialize(credits:, additional_properties: nil)
22
+ @credits = credits
23
+ @additional_properties = additional_properties
24
+ @_field_set = { "credits": credits }
25
+ end
26
+
27
+ # Deserialize a JSON object to an instance of CreditsBuyDto
28
+ #
29
+ # @param json_object [String]
30
+ # @return [Vapi::CreditsBuyDto]
31
+ def self.from_json(json_object:)
32
+ struct = JSON.parse(json_object, object_class: OpenStruct)
33
+ parsed_json = JSON.parse(json_object)
34
+ credits = parsed_json["credits"]
35
+ new(credits: credits, additional_properties: struct)
36
+ end
37
+
38
+ # Serialize an instance of CreditsBuyDto to a JSON object
39
+ #
40
+ # @return [String]
41
+ def to_json(*_args)
42
+ @_field_set&.to_json
43
+ end
44
+
45
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
46
+ # hash and check each fields type against the current object's property
47
+ # definitions.
48
+ #
49
+ # @param obj [Object]
50
+ # @return [Void]
51
+ def self.validate_raw(obj:)
52
+ obj.credits.is_a?(Float) != false || raise("Passed value for field obj.credits is not the expected type, validation failed.")
53
+ end
54
+ end
55
+ end