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,74 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "ostruct"
4
+ require "json"
5
+
6
+ module Vapi
7
+ class UpdateTavusCredentialDto
8
+ # @return [String]
9
+ attr_reader :provider
10
+ # @return [String] This is not returned in the API.
11
+ attr_reader :api_key
12
+ # @return [String] This is the name of credential. This is just for your reference.
13
+ attr_reader :name
14
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
15
+ attr_reader :additional_properties
16
+ # @return [Object]
17
+ attr_reader :_field_set
18
+ protected :_field_set
19
+
20
+ OMIT = Object.new
21
+
22
+ # @param provider [String]
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.
25
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
26
+ # @return [Vapi::UpdateTavusCredentialDto]
27
+ def initialize(provider:, api_key:, name: OMIT, additional_properties: nil)
28
+ @provider = provider
29
+ @api_key = api_key
30
+ @name = name if name != OMIT
31
+ @additional_properties = additional_properties
32
+ @_field_set = { "provider": provider, "apiKey": api_key, "name": name }.reject do |_k, v|
33
+ v == OMIT
34
+ end
35
+ end
36
+
37
+ # Deserialize a JSON object to an instance of UpdateTavusCredentialDto
38
+ #
39
+ # @param json_object [String]
40
+ # @return [Vapi::UpdateTavusCredentialDto]
41
+ def self.from_json(json_object:)
42
+ struct = JSON.parse(json_object, object_class: OpenStruct)
43
+ parsed_json = JSON.parse(json_object)
44
+ provider = parsed_json["provider"]
45
+ api_key = parsed_json["apiKey"]
46
+ name = parsed_json["name"]
47
+ new(
48
+ provider: provider,
49
+ api_key: api_key,
50
+ name: name,
51
+ additional_properties: struct
52
+ )
53
+ end
54
+
55
+ # Serialize an instance of UpdateTavusCredentialDto to a JSON object
56
+ #
57
+ # @return [String]
58
+ def to_json(*_args)
59
+ @_field_set&.to_json
60
+ end
61
+
62
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
63
+ # hash and check each fields type against the current object's property
64
+ # definitions.
65
+ #
66
+ # @param obj [Object]
67
+ # @return [Void]
68
+ def self.validate_raw(obj:)
69
+ obj.provider.is_a?(String) != false || raise("Passed value for field obj.provider is not the expected type, validation failed.")
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.")
72
+ end
73
+ end
74
+ 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::UpdateTogetherAiCredentialDto]
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 UpdateTogetherAiCredentialDto
@@ -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
@@ -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::UpdateTwilioCredentialDto]
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 UpdateTwilioCredentialDto
@@ -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
@@ -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::UpdateVonageCredentialDto]
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 UpdateVonageCredentialDto
@@ -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,76 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "ostruct"
4
+ require "json"
5
+
6
+ module Vapi
7
+ class UpdateXAiCredentialDto
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::UpdateXAiCredentialDto]
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 UpdateXAiCredentialDto
40
+ #
41
+ # @param json_object [String]
42
+ # @return [Vapi::UpdateXAiCredentialDto]
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 UpdateXAiCredentialDto 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
@@ -1,10 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require_relative "vapi_cost_sub_type"
3
4
  require "ostruct"
4
5
  require "json"
5
6
 
6
7
  module Vapi
7
8
  class VapiCost
9
+ # @return [Vapi::VapiCostSubType] This is the sub type of the cost.
10
+ attr_reader :sub_type
8
11
  # @return [Float] This is the minutes of Vapi usage. This should match `call.endedAt` -
9
12
  # `call.startedAt`.
10
13
  attr_reader :minutes
@@ -18,16 +21,18 @@ module Vapi
18
21
 
19
22
  OMIT = Object.new
20
23
 
24
+ # @param sub_type [Vapi::VapiCostSubType] This is the sub type of the cost.
21
25
  # @param minutes [Float] This is the minutes of Vapi usage. This should match `call.endedAt` -
22
26
  # `call.startedAt`.
23
27
  # @param cost [Float] This is the cost of the component in USD.
24
28
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
25
29
  # @return [Vapi::VapiCost]
26
- def initialize(minutes:, cost:, additional_properties: nil)
30
+ def initialize(sub_type:, minutes:, cost:, additional_properties: nil)
31
+ @sub_type = sub_type
27
32
  @minutes = minutes
28
33
  @cost = cost
29
34
  @additional_properties = additional_properties
30
- @_field_set = { "minutes": minutes, "cost": cost }
35
+ @_field_set = { "subType": sub_type, "minutes": minutes, "cost": cost }
31
36
  end
32
37
 
33
38
  # Deserialize a JSON object to an instance of VapiCost
@@ -37,9 +42,11 @@ module Vapi
37
42
  def self.from_json(json_object:)
38
43
  struct = JSON.parse(json_object, object_class: OpenStruct)
39
44
  parsed_json = JSON.parse(json_object)
45
+ sub_type = parsed_json["subType"]
40
46
  minutes = parsed_json["minutes"]
41
47
  cost = parsed_json["cost"]
42
48
  new(
49
+ sub_type: sub_type,
43
50
  minutes: minutes,
44
51
  cost: cost,
45
52
  additional_properties: struct
@@ -60,6 +67,7 @@ module Vapi
60
67
  # @param obj [Object]
61
68
  # @return [Void]
62
69
  def self.validate_raw(obj:)
70
+ obj.sub_type.is_a?(Vapi::VapiCostSubType) != false || raise("Passed value for field obj.sub_type is not the expected type, validation failed.")
63
71
  obj.minutes.is_a?(Float) != false || raise("Passed value for field obj.minutes is not the expected type, validation failed.")
64
72
  obj.cost.is_a?(Float) != false || raise("Passed value for field obj.cost is not the expected type, validation failed.")
65
73
  end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Vapi
4
+ # This is the sub type of the cost.
5
+ class VapiCostSubType
6
+ NORMAL = "normal"
7
+ OVERAGE = "overage"
8
+ end
9
+ end
@@ -2,8 +2,8 @@
2
2
 
3
3
  require_relative "open_ai_message"
4
4
  require_relative "vapi_model_tools_item"
5
+ require_relative "create_custom_knowledge_base_dto"
5
6
  require_relative "vapi_model_steps_item"
6
- require_relative "knowledge_base"
7
7
  require "ostruct"
8
8
  require "json"
9
9
 
@@ -19,6 +19,10 @@ module Vapi
19
19
  # tools, use `tools`.
20
20
  # Both `tools` and `toolIds` can be used together.
21
21
  attr_reader :tool_ids
22
+ # @return [Vapi::CreateCustomKnowledgeBaseDto] These are the options for the knowledge base.
23
+ attr_reader :knowledge_base
24
+ # @return [String] This is the ID of the knowledge base the model will use.
25
+ attr_reader :knowledge_base_id
22
26
  # @return [Array<Vapi::VapiModelStepsItem>]
23
27
  attr_reader :steps
24
28
  # @return [String] This is the name of the model. Ex. cognitivecomputations/dolphin-mixtral-8x7b
@@ -26,8 +30,6 @@ module Vapi
26
30
  # @return [Float] This is the temperature that will be used for calls. Default is 0 to leverage
27
31
  # caching for lower latency.
28
32
  attr_reader :temperature
29
- # @return [Vapi::KnowledgeBase] These are the options for the knowledge base.
30
- attr_reader :knowledge_base
31
33
  # @return [Float] This is the max number of tokens that the assistant will be allowed to generate
32
34
  # in each turn of the conversation. Default is 250.
33
35
  attr_reader :max_tokens
@@ -58,11 +60,12 @@ module Vapi
58
60
  # @param tool_ids [Array<String>] These are the tools that the assistant can use during the call. To use transient
59
61
  # tools, use `tools`.
60
62
  # Both `tools` and `toolIds` can be used together.
63
+ # @param knowledge_base [Vapi::CreateCustomKnowledgeBaseDto] These are the options for the knowledge base.
64
+ # @param knowledge_base_id [String] This is the ID of the knowledge base the model will use.
61
65
  # @param steps [Array<Vapi::VapiModelStepsItem>]
62
66
  # @param model [String] This is the name of the model. Ex. cognitivecomputations/dolphin-mixtral-8x7b
63
67
  # @param temperature [Float] This is the temperature that will be used for calls. Default is 0 to leverage
64
68
  # caching for lower latency.
65
- # @param knowledge_base [Vapi::KnowledgeBase] These are the options for the knowledge base.
66
69
  # @param max_tokens [Float] This is the max number of tokens that the assistant will be allowed to generate
67
70
  # in each turn of the conversation. Default is 250.
68
71
  # @param emotion_recognition_enabled [Boolean] This determines whether we detect user's emotion while they speak and send it as
@@ -77,15 +80,16 @@ module Vapi
77
80
  # @default 0
78
81
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
79
82
  # @return [Vapi::VapiModel]
80
- def initialize(model:, messages: OMIT, tools: OMIT, tool_ids: OMIT, steps: OMIT, temperature: OMIT,
81
- knowledge_base: OMIT, max_tokens: OMIT, emotion_recognition_enabled: OMIT, num_fast_turns: OMIT, additional_properties: nil)
83
+ def initialize(model:, messages: OMIT, tools: OMIT, tool_ids: OMIT, knowledge_base: OMIT, knowledge_base_id: OMIT,
84
+ steps: OMIT, temperature: OMIT, max_tokens: OMIT, emotion_recognition_enabled: OMIT, num_fast_turns: OMIT, additional_properties: nil)
82
85
  @messages = messages if messages != OMIT
83
86
  @tools = tools if tools != OMIT
84
87
  @tool_ids = tool_ids if tool_ids != OMIT
88
+ @knowledge_base = knowledge_base if knowledge_base != OMIT
89
+ @knowledge_base_id = knowledge_base_id if knowledge_base_id != OMIT
85
90
  @steps = steps if steps != OMIT
86
91
  @model = model
87
92
  @temperature = temperature if temperature != OMIT
88
- @knowledge_base = knowledge_base if knowledge_base != OMIT
89
93
  @max_tokens = max_tokens if max_tokens != OMIT
90
94
  @emotion_recognition_enabled = emotion_recognition_enabled if emotion_recognition_enabled != OMIT
91
95
  @num_fast_turns = num_fast_turns if num_fast_turns != OMIT
@@ -94,10 +98,11 @@ module Vapi
94
98
  "messages": messages,
95
99
  "tools": tools,
96
100
  "toolIds": tool_ids,
101
+ "knowledgeBase": knowledge_base,
102
+ "knowledgeBaseId": knowledge_base_id,
97
103
  "steps": steps,
98
104
  "model": model,
99
105
  "temperature": temperature,
100
- "knowledgeBase": knowledge_base,
101
106
  "maxTokens": max_tokens,
102
107
  "emotionRecognitionEnabled": emotion_recognition_enabled,
103
108
  "numFastTurns": num_fast_turns
@@ -122,18 +127,19 @@ module Vapi
122
127
  Vapi::VapiModelToolsItem.from_json(json_object: item)
123
128
  end
124
129
  tool_ids = parsed_json["toolIds"]
130
+ if parsed_json["knowledgeBase"].nil?
131
+ knowledge_base = nil
132
+ else
133
+ knowledge_base = parsed_json["knowledgeBase"].to_json
134
+ knowledge_base = Vapi::CreateCustomKnowledgeBaseDto.from_json(json_object: knowledge_base)
135
+ end
136
+ knowledge_base_id = parsed_json["knowledgeBaseId"]
125
137
  steps = parsed_json["steps"]&.map do |item|
126
138
  item = item.to_json
127
139
  Vapi::VapiModelStepsItem.from_json(json_object: item)
128
140
  end
129
141
  model = parsed_json["model"]
130
142
  temperature = parsed_json["temperature"]
131
- if parsed_json["knowledgeBase"].nil?
132
- knowledge_base = nil
133
- else
134
- knowledge_base = parsed_json["knowledgeBase"].to_json
135
- knowledge_base = Vapi::KnowledgeBase.from_json(json_object: knowledge_base)
136
- end
137
143
  max_tokens = parsed_json["maxTokens"]
138
144
  emotion_recognition_enabled = parsed_json["emotionRecognitionEnabled"]
139
145
  num_fast_turns = parsed_json["numFastTurns"]
@@ -141,10 +147,11 @@ module Vapi
141
147
  messages: messages,
142
148
  tools: tools,
143
149
  tool_ids: tool_ids,
150
+ knowledge_base: knowledge_base,
151
+ knowledge_base_id: knowledge_base_id,
144
152
  steps: steps,
145
153
  model: model,
146
154
  temperature: temperature,
147
- knowledge_base: knowledge_base,
148
155
  max_tokens: max_tokens,
149
156
  emotion_recognition_enabled: emotion_recognition_enabled,
150
157
  num_fast_turns: num_fast_turns,
@@ -169,10 +176,11 @@ module Vapi
169
176
  obj.messages&.is_a?(Array) != false || raise("Passed value for field obj.messages is not the expected type, validation failed.")
170
177
  obj.tools&.is_a?(Array) != false || raise("Passed value for field obj.tools is not the expected type, validation failed.")
171
178
  obj.tool_ids&.is_a?(Array) != false || raise("Passed value for field obj.tool_ids is not the expected type, validation failed.")
179
+ obj.knowledge_base.nil? || Vapi::CreateCustomKnowledgeBaseDto.validate_raw(obj: obj.knowledge_base)
180
+ obj.knowledge_base_id&.is_a?(String) != false || raise("Passed value for field obj.knowledge_base_id is not the expected type, validation failed.")
172
181
  obj.steps&.is_a?(Array) != false || raise("Passed value for field obj.steps is not the expected type, validation failed.")
173
182
  obj.model.is_a?(String) != false || raise("Passed value for field obj.model is not the expected type, validation failed.")
174
183
  obj.temperature&.is_a?(Float) != false || raise("Passed value for field obj.temperature is not the expected type, validation failed.")
175
- obj.knowledge_base.nil? || Vapi::KnowledgeBase.validate_raw(obj: obj.knowledge_base)
176
184
  obj.max_tokens&.is_a?(Float) != false || raise("Passed value for field obj.max_tokens is not the expected type, validation failed.")
177
185
  obj.emotion_recognition_enabled&.is_a?(Boolean) != false || raise("Passed value for field obj.emotion_recognition_enabled is not the expected type, validation failed.")
178
186
  obj.num_fast_turns&.is_a?(Float) != false || raise("Passed value for field obj.num_fast_turns is not the expected type, validation failed.")
@@ -2,6 +2,7 @@
2
2
 
3
3
  require_relative "vapi_phone_number_fallback_destination"
4
4
  require "date"
5
+ require_relative "sip_authentication"
5
6
  require "ostruct"
6
7
  require "json"
7
8
 
@@ -48,6 +49,10 @@ module Vapi
48
49
  # attached to this number will answer.
49
50
  # This is case-insensitive.
50
51
  attr_reader :sip_uri
52
+ # @return [Vapi::SipAuthentication] This enables authentication for incoming SIP INVITE requests to the `sipUri`.
53
+ # If not set, any username/password to the 401 challenge of the SIP INVITE will be
54
+ # accepted.
55
+ attr_reader :authentication
51
56
  # @return [OpenStruct] Additional properties unmapped to the current class definition
52
57
  attr_reader :additional_properties
53
58
  # @return [Object]
@@ -86,10 +91,13 @@ module Vapi
86
91
  # @param sip_uri [String] This is the SIP URI of the phone number. You can SIP INVITE this. The assistant
87
92
  # attached to this number will answer.
88
93
  # This is case-insensitive.
94
+ # @param authentication [Vapi::SipAuthentication] This enables authentication for incoming SIP INVITE requests to the `sipUri`.
95
+ # If not set, any username/password to the 401 challenge of the SIP INVITE will be
96
+ # accepted.
89
97
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
90
98
  # @return [Vapi::VapiPhoneNumber]
91
99
  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)
100
+ squad_id: OMIT, server_url: OMIT, server_url_secret: OMIT, authentication: OMIT, additional_properties: nil)
93
101
  @fallback_destination = fallback_destination if fallback_destination != OMIT
94
102
  @id = id
95
103
  @org_id = org_id
@@ -101,6 +109,7 @@ module Vapi
101
109
  @server_url = server_url if server_url != OMIT
102
110
  @server_url_secret = server_url_secret if server_url_secret != OMIT
103
111
  @sip_uri = sip_uri
112
+ @authentication = authentication if authentication != OMIT
104
113
  @additional_properties = additional_properties
105
114
  @_field_set = {
106
115
  "fallbackDestination": fallback_destination,
@@ -113,7 +122,8 @@ module Vapi
113
122
  "squadId": squad_id,
114
123
  "serverUrl": server_url,
115
124
  "serverUrlSecret": server_url_secret,
116
- "sipUri": sip_uri
125
+ "sipUri": sip_uri,
126
+ "authentication": authentication
117
127
  }.reject do |_k, v|
118
128
  v == OMIT
119
129
  end
@@ -142,6 +152,12 @@ module Vapi
142
152
  server_url = parsed_json["serverUrl"]
143
153
  server_url_secret = parsed_json["serverUrlSecret"]
144
154
  sip_uri = parsed_json["sipUri"]
155
+ if parsed_json["authentication"].nil?
156
+ authentication = nil
157
+ else
158
+ authentication = parsed_json["authentication"].to_json
159
+ authentication = Vapi::SipAuthentication.from_json(json_object: authentication)
160
+ end
145
161
  new(
146
162
  fallback_destination: fallback_destination,
147
163
  id: id,
@@ -154,6 +170,7 @@ module Vapi
154
170
  server_url: server_url,
155
171
  server_url_secret: server_url_secret,
156
172
  sip_uri: sip_uri,
173
+ authentication: authentication,
157
174
  additional_properties: struct
158
175
  )
159
176
  end
@@ -183,6 +200,7 @@ module Vapi
183
200
  obj.server_url&.is_a?(String) != false || raise("Passed value for field obj.server_url is not the expected type, validation failed.")
184
201
  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
202
  obj.sip_uri.is_a?(String) != false || raise("Passed value for field obj.sip_uri is not the expected type, validation failed.")
203
+ obj.authentication.nil? || Vapi::SipAuthentication.validate_raw(obj: obj.authentication)
186
204
  end
187
205
  end
188
206
  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