vapi_server_sdk 0.0.0.pre.alpha7 → 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 -10
  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 +167 -8
@@ -0,0 +1,132 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "chunk_plan"
4
+ require_relative "server"
5
+ require_relative "fallback_plan"
6
+ require "ostruct"
7
+ require "json"
8
+
9
+ module Vapi
10
+ class CustomVoice
11
+ # @return [Vapi::ChunkPlan] This is the plan for chunking the model output before it is sent to the voice
12
+ # provider.
13
+ attr_reader :chunk_plan
14
+ # @return [Vapi::Server] This is where the voice request will be sent.
15
+ # Request Example:
16
+ # POST https://{server.url}
17
+ # Content-Type: application/json
18
+ # {
19
+ # "message": {
20
+ # "type": "voice-request",
21
+ # "text": "Hello, world!",
22
+ # "sampleRate": 24000,
23
+ # ...other metadata about the call...
24
+ # }
25
+ # }
26
+ # Response Expected: 1-channel 16-bit raw PCM audio at the sample rate specified
27
+ # in the request. Here is how the response will be piped to the transport:
28
+ # ```
29
+ # response.on('data', (chunk: Buffer) => {
30
+ # outputStream.write(chunk);
31
+ # });
32
+ # ```
33
+ attr_reader :server
34
+ # @return [Vapi::FallbackPlan] This is the plan for voice provider fallbacks in the event that the primary
35
+ # voice provider fails.
36
+ attr_reader :fallback_plan
37
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
38
+ attr_reader :additional_properties
39
+ # @return [Object]
40
+ attr_reader :_field_set
41
+ protected :_field_set
42
+
43
+ OMIT = Object.new
44
+
45
+ # @param chunk_plan [Vapi::ChunkPlan] This is the plan for chunking the model output before it is sent to the voice
46
+ # provider.
47
+ # @param server [Vapi::Server] This is where the voice request will be sent.
48
+ # Request Example:
49
+ # POST https://{server.url}
50
+ # Content-Type: application/json
51
+ # {
52
+ # "message": {
53
+ # "type": "voice-request",
54
+ # "text": "Hello, world!",
55
+ # "sampleRate": 24000,
56
+ # ...other metadata about the call...
57
+ # }
58
+ # }
59
+ # Response Expected: 1-channel 16-bit raw PCM audio at the sample rate specified
60
+ # in the request. Here is how the response will be piped to the transport:
61
+ # ```
62
+ # response.on('data', (chunk: Buffer) => {
63
+ # outputStream.write(chunk);
64
+ # });
65
+ # ```
66
+ # @param fallback_plan [Vapi::FallbackPlan] This is the plan for voice provider fallbacks in the event that the primary
67
+ # voice provider fails.
68
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
69
+ # @return [Vapi::CustomVoice]
70
+ def initialize(server:, chunk_plan: OMIT, fallback_plan: OMIT, additional_properties: nil)
71
+ @chunk_plan = chunk_plan if chunk_plan != OMIT
72
+ @server = server
73
+ @fallback_plan = fallback_plan if fallback_plan != OMIT
74
+ @additional_properties = additional_properties
75
+ @_field_set = { "chunkPlan": chunk_plan, "server": server, "fallbackPlan": fallback_plan }.reject do |_k, v|
76
+ v == OMIT
77
+ end
78
+ end
79
+
80
+ # Deserialize a JSON object to an instance of CustomVoice
81
+ #
82
+ # @param json_object [String]
83
+ # @return [Vapi::CustomVoice]
84
+ def self.from_json(json_object:)
85
+ struct = JSON.parse(json_object, object_class: OpenStruct)
86
+ parsed_json = JSON.parse(json_object)
87
+ if parsed_json["chunkPlan"].nil?
88
+ chunk_plan = nil
89
+ else
90
+ chunk_plan = parsed_json["chunkPlan"].to_json
91
+ chunk_plan = Vapi::ChunkPlan.from_json(json_object: chunk_plan)
92
+ end
93
+ if parsed_json["server"].nil?
94
+ server = nil
95
+ else
96
+ server = parsed_json["server"].to_json
97
+ server = Vapi::Server.from_json(json_object: server)
98
+ end
99
+ if parsed_json["fallbackPlan"].nil?
100
+ fallback_plan = nil
101
+ else
102
+ fallback_plan = parsed_json["fallbackPlan"].to_json
103
+ fallback_plan = Vapi::FallbackPlan.from_json(json_object: fallback_plan)
104
+ end
105
+ new(
106
+ chunk_plan: chunk_plan,
107
+ server: server,
108
+ fallback_plan: fallback_plan,
109
+ additional_properties: struct
110
+ )
111
+ end
112
+
113
+ # Serialize an instance of CustomVoice to a JSON object
114
+ #
115
+ # @return [String]
116
+ def to_json(*_args)
117
+ @_field_set&.to_json
118
+ end
119
+
120
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
121
+ # hash and check each fields type against the current object's property
122
+ # definitions.
123
+ #
124
+ # @param obj [Object]
125
+ # @return [Void]
126
+ def self.validate_raw(obj:)
127
+ obj.chunk_plan.nil? || Vapi::ChunkPlan.validate_raw(obj: obj.chunk_plan)
128
+ Vapi::Server.validate_raw(obj: obj.server)
129
+ obj.fallback_plan.nil? || Vapi::FallbackPlan.validate_raw(obj: obj.fallback_plan)
130
+ end
131
+ end
132
+ end
@@ -0,0 +1,100 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "regex_option"
4
+ require "ostruct"
5
+ require "json"
6
+
7
+ module Vapi
8
+ class CustomerCustomEndpointingRule
9
+ # @return [String] This is the regex pattern to match.
10
+ # Note:
11
+ # - This works by using the `RegExp.test` method in Node.JS. Eg.
12
+ # `/hello/.test("hello there")` will return `true`.
13
+ # Hot tip:
14
+ # - In JavaScript, escape `\` when sending the regex pattern. Eg. `"hello\sthere"`
15
+ # will be sent over the wire as `"hellosthere"`. Send `"hello\\sthere"` instead.
16
+ # - `RegExp.test` does substring matching, so `/cat/.test("I love cats")` will
17
+ # return `true`. To do full string matching, send "^cat$".
18
+ attr_reader :regex
19
+ # @return [Array<Vapi::RegexOption>] These are the options for the regex match. Defaults to all disabled.
20
+ # @default []
21
+ attr_reader :regex_options
22
+ # @return [Float] This is the endpointing timeout in seconds, if the rule is matched.
23
+ attr_reader :timeout_seconds
24
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
25
+ attr_reader :additional_properties
26
+ # @return [Object]
27
+ attr_reader :_field_set
28
+ protected :_field_set
29
+
30
+ OMIT = Object.new
31
+
32
+ # @param regex [String] This is the regex pattern to match.
33
+ # Note:
34
+ # - This works by using the `RegExp.test` method in Node.JS. Eg.
35
+ # `/hello/.test("hello there")` will return `true`.
36
+ # Hot tip:
37
+ # - In JavaScript, escape `\` when sending the regex pattern. Eg. `"hello\sthere"`
38
+ # will be sent over the wire as `"hellosthere"`. Send `"hello\\sthere"` instead.
39
+ # - `RegExp.test` does substring matching, so `/cat/.test("I love cats")` will
40
+ # return `true`. To do full string matching, send "^cat$".
41
+ # @param regex_options [Array<Vapi::RegexOption>] These are the options for the regex match. Defaults to all disabled.
42
+ # @default []
43
+ # @param timeout_seconds [Float] This is the endpointing timeout in seconds, if the rule is matched.
44
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
45
+ # @return [Vapi::CustomerCustomEndpointingRule]
46
+ def initialize(regex:, timeout_seconds:, regex_options: OMIT, additional_properties: nil)
47
+ @regex = regex
48
+ @regex_options = regex_options if regex_options != OMIT
49
+ @timeout_seconds = timeout_seconds
50
+ @additional_properties = additional_properties
51
+ @_field_set = {
52
+ "regex": regex,
53
+ "regexOptions": regex_options,
54
+ "timeoutSeconds": timeout_seconds
55
+ }.reject do |_k, v|
56
+ v == OMIT
57
+ end
58
+ end
59
+
60
+ # Deserialize a JSON object to an instance of CustomerCustomEndpointingRule
61
+ #
62
+ # @param json_object [String]
63
+ # @return [Vapi::CustomerCustomEndpointingRule]
64
+ def self.from_json(json_object:)
65
+ struct = JSON.parse(json_object, object_class: OpenStruct)
66
+ parsed_json = JSON.parse(json_object)
67
+ regex = parsed_json["regex"]
68
+ regex_options = parsed_json["regexOptions"]&.map do |item|
69
+ item = item.to_json
70
+ Vapi::RegexOption.from_json(json_object: item)
71
+ end
72
+ timeout_seconds = parsed_json["timeoutSeconds"]
73
+ new(
74
+ regex: regex,
75
+ regex_options: regex_options,
76
+ timeout_seconds: timeout_seconds,
77
+ additional_properties: struct
78
+ )
79
+ end
80
+
81
+ # Serialize an instance of CustomerCustomEndpointingRule to a JSON object
82
+ #
83
+ # @return [String]
84
+ def to_json(*_args)
85
+ @_field_set&.to_json
86
+ end
87
+
88
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
89
+ # hash and check each fields type against the current object's property
90
+ # definitions.
91
+ #
92
+ # @param obj [Object]
93
+ # @return [Void]
94
+ def self.validate_raw(obj:)
95
+ obj.regex.is_a?(String) != false || raise("Passed value for field obj.regex is not the expected type, validation failed.")
96
+ obj.regex_options&.is_a?(Array) != false || raise("Passed value for field obj.regex_options is not the expected type, validation failed.")
97
+ obj.timeout_seconds.is_a?(Float) != false || raise("Passed value for field obj.timeout_seconds is not the expected type, validation failed.")
98
+ end
99
+ end
100
+ end
@@ -18,6 +18,8 @@ module Vapi
18
18
  attr_reader :created_at
19
19
  # @return [DateTime] This is the ISO 8601 date-time string of when the assistant was last updated.
20
20
  attr_reader :updated_at
21
+ # @return [String] This is the name of credential. This is just for your reference.
22
+ attr_reader :name
21
23
  # @return [OpenStruct] Additional properties unmapped to the current class definition
22
24
  attr_reader :additional_properties
23
25
  # @return [Object]
@@ -32,15 +34,17 @@ module Vapi
32
34
  # @param org_id [String] This is the unique identifier for the org that this credential belongs to.
33
35
  # @param created_at [DateTime] This is the ISO 8601 date-time string of when the credential was created.
34
36
  # @param updated_at [DateTime] This is the ISO 8601 date-time string of when the assistant was last updated.
37
+ # @param name [String] This is the name of credential. This is just for your reference.
35
38
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
36
39
  # @return [Vapi::DeepInfraCredential]
37
- def initialize(provider:, api_key:, id:, org_id:, created_at:, updated_at:, additional_properties: nil)
40
+ def initialize(provider:, api_key:, id:, org_id:, created_at:, updated_at:, name: OMIT, additional_properties: nil)
38
41
  @provider = provider
39
42
  @api_key = api_key
40
43
  @id = id
41
44
  @org_id = org_id
42
45
  @created_at = created_at
43
46
  @updated_at = updated_at
47
+ @name = name if name != OMIT
44
48
  @additional_properties = additional_properties
45
49
  @_field_set = {
46
50
  "provider": provider,
@@ -48,8 +52,11 @@ module Vapi
48
52
  "id": id,
49
53
  "orgId": org_id,
50
54
  "createdAt": created_at,
51
- "updatedAt": updated_at
52
- }
55
+ "updatedAt": updated_at,
56
+ "name": name
57
+ }.reject do |_k, v|
58
+ v == OMIT
59
+ end
53
60
  end
54
61
 
55
62
  # Deserialize a JSON object to an instance of DeepInfraCredential
@@ -65,6 +72,7 @@ module Vapi
65
72
  org_id = parsed_json["orgId"]
66
73
  created_at = (DateTime.parse(parsed_json["createdAt"]) unless parsed_json["createdAt"].nil?)
67
74
  updated_at = (DateTime.parse(parsed_json["updatedAt"]) unless parsed_json["updatedAt"].nil?)
75
+ name = parsed_json["name"]
68
76
  new(
69
77
  provider: provider,
70
78
  api_key: api_key,
@@ -72,6 +80,7 @@ module Vapi
72
80
  org_id: org_id,
73
81
  created_at: created_at,
74
82
  updated_at: updated_at,
83
+ name: name,
75
84
  additional_properties: struct
76
85
  )
77
86
  end
@@ -96,6 +105,7 @@ module Vapi
96
105
  obj.org_id.is_a?(String) != false || raise("Passed value for field obj.org_id is not the expected type, validation failed.")
97
106
  obj.created_at.is_a?(DateTime) != false || raise("Passed value for field obj.created_at is not the expected type, validation failed.")
98
107
  obj.updated_at.is_a?(DateTime) != false || raise("Passed value for field obj.updated_at is not the expected type, validation failed.")
108
+ obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
99
109
  end
100
110
  end
101
111
  end
@@ -2,7 +2,7 @@
2
2
 
3
3
  require_relative "open_ai_message"
4
4
  require_relative "deep_infra_model_tools_item"
5
- require_relative "knowledge_base"
5
+ require_relative "create_custom_knowledge_base_dto"
6
6
  require "ostruct"
7
7
  require "json"
8
8
 
@@ -18,13 +18,15 @@ module Vapi
18
18
  # tools, use `tools`.
19
19
  # Both `tools` and `toolIds` can be used together.
20
20
  attr_reader :tool_ids
21
+ # @return [Vapi::CreateCustomKnowledgeBaseDto] These are the options for the knowledge base.
22
+ attr_reader :knowledge_base
23
+ # @return [String] This is the ID of the knowledge base the model will use.
24
+ attr_reader :knowledge_base_id
21
25
  # @return [String] This is the name of the model. Ex. cognitivecomputations/dolphin-mixtral-8x7b
22
26
  attr_reader :model
23
27
  # @return [Float] This is the temperature that will be used for calls. Default is 0 to leverage
24
28
  # caching for lower latency.
25
29
  attr_reader :temperature
26
- # @return [Vapi::KnowledgeBase] These are the options for the knowledge base.
27
- attr_reader :knowledge_base
28
30
  # @return [Float] This is the max number of tokens that the assistant will be allowed to generate
29
31
  # in each turn of the conversation. Default is 250.
30
32
  attr_reader :max_tokens
@@ -55,10 +57,11 @@ module Vapi
55
57
  # @param tool_ids [Array<String>] These are the tools that the assistant can use during the call. To use transient
56
58
  # tools, use `tools`.
57
59
  # Both `tools` and `toolIds` can be used together.
60
+ # @param knowledge_base [Vapi::CreateCustomKnowledgeBaseDto] These are the options for the knowledge base.
61
+ # @param knowledge_base_id [String] This is the ID of the knowledge base the model will use.
58
62
  # @param model [String] This is the name of the model. Ex. cognitivecomputations/dolphin-mixtral-8x7b
59
63
  # @param temperature [Float] This is the temperature that will be used for calls. Default is 0 to leverage
60
64
  # caching for lower latency.
61
- # @param knowledge_base [Vapi::KnowledgeBase] These are the options for the knowledge base.
62
65
  # @param max_tokens [Float] This is the max number of tokens that the assistant will be allowed to generate
63
66
  # in each turn of the conversation. Default is 250.
64
67
  # @param emotion_recognition_enabled [Boolean] This determines whether we detect user's emotion while they speak and send it as
@@ -73,14 +76,15 @@ module Vapi
73
76
  # @default 0
74
77
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
75
78
  # @return [Vapi::DeepInfraModel]
76
- def initialize(model:, messages: OMIT, tools: OMIT, tool_ids: OMIT, temperature: OMIT, knowledge_base: OMIT,
77
- max_tokens: OMIT, emotion_recognition_enabled: OMIT, num_fast_turns: OMIT, additional_properties: nil)
79
+ def initialize(model:, messages: OMIT, tools: OMIT, tool_ids: OMIT, knowledge_base: OMIT, knowledge_base_id: OMIT,
80
+ temperature: OMIT, max_tokens: OMIT, emotion_recognition_enabled: OMIT, num_fast_turns: OMIT, additional_properties: nil)
78
81
  @messages = messages if messages != OMIT
79
82
  @tools = tools if tools != OMIT
80
83
  @tool_ids = tool_ids if tool_ids != OMIT
84
+ @knowledge_base = knowledge_base if knowledge_base != OMIT
85
+ @knowledge_base_id = knowledge_base_id if knowledge_base_id != OMIT
81
86
  @model = model
82
87
  @temperature = temperature if temperature != OMIT
83
- @knowledge_base = knowledge_base if knowledge_base != OMIT
84
88
  @max_tokens = max_tokens if max_tokens != OMIT
85
89
  @emotion_recognition_enabled = emotion_recognition_enabled if emotion_recognition_enabled != OMIT
86
90
  @num_fast_turns = num_fast_turns if num_fast_turns != OMIT
@@ -89,9 +93,10 @@ module Vapi
89
93
  "messages": messages,
90
94
  "tools": tools,
91
95
  "toolIds": tool_ids,
96
+ "knowledgeBase": knowledge_base,
97
+ "knowledgeBaseId": knowledge_base_id,
92
98
  "model": model,
93
99
  "temperature": temperature,
94
- "knowledgeBase": knowledge_base,
95
100
  "maxTokens": max_tokens,
96
101
  "emotionRecognitionEnabled": emotion_recognition_enabled,
97
102
  "numFastTurns": num_fast_turns
@@ -116,14 +121,15 @@ module Vapi
116
121
  Vapi::DeepInfraModelToolsItem.from_json(json_object: item)
117
122
  end
118
123
  tool_ids = parsed_json["toolIds"]
119
- model = parsed_json["model"]
120
- temperature = parsed_json["temperature"]
121
124
  if parsed_json["knowledgeBase"].nil?
122
125
  knowledge_base = nil
123
126
  else
124
127
  knowledge_base = parsed_json["knowledgeBase"].to_json
125
- knowledge_base = Vapi::KnowledgeBase.from_json(json_object: knowledge_base)
128
+ knowledge_base = Vapi::CreateCustomKnowledgeBaseDto.from_json(json_object: knowledge_base)
126
129
  end
130
+ knowledge_base_id = parsed_json["knowledgeBaseId"]
131
+ model = parsed_json["model"]
132
+ temperature = parsed_json["temperature"]
127
133
  max_tokens = parsed_json["maxTokens"]
128
134
  emotion_recognition_enabled = parsed_json["emotionRecognitionEnabled"]
129
135
  num_fast_turns = parsed_json["numFastTurns"]
@@ -131,9 +137,10 @@ module Vapi
131
137
  messages: messages,
132
138
  tools: tools,
133
139
  tool_ids: tool_ids,
140
+ knowledge_base: knowledge_base,
141
+ knowledge_base_id: knowledge_base_id,
134
142
  model: model,
135
143
  temperature: temperature,
136
- knowledge_base: knowledge_base,
137
144
  max_tokens: max_tokens,
138
145
  emotion_recognition_enabled: emotion_recognition_enabled,
139
146
  num_fast_turns: num_fast_turns,
@@ -158,9 +165,10 @@ module Vapi
158
165
  obj.messages&.is_a?(Array) != false || raise("Passed value for field obj.messages is not the expected type, validation failed.")
159
166
  obj.tools&.is_a?(Array) != false || raise("Passed value for field obj.tools is not the expected type, validation failed.")
160
167
  obj.tool_ids&.is_a?(Array) != false || raise("Passed value for field obj.tool_ids is not the expected type, validation failed.")
168
+ obj.knowledge_base.nil? || Vapi::CreateCustomKnowledgeBaseDto.validate_raw(obj: obj.knowledge_base)
169
+ obj.knowledge_base_id&.is_a?(String) != false || raise("Passed value for field obj.knowledge_base_id is not the expected type, validation failed.")
161
170
  obj.model.is_a?(String) != false || raise("Passed value for field obj.model is not the expected type, validation failed.")
162
171
  obj.temperature&.is_a?(Float) != false || raise("Passed value for field obj.temperature is not the expected type, validation failed.")
163
- obj.knowledge_base.nil? || Vapi::KnowledgeBase.validate_raw(obj: obj.knowledge_base)
164
172
  obj.max_tokens&.is_a?(Float) != false || raise("Passed value for field obj.max_tokens is not the expected type, validation failed.")
165
173
  obj.emotion_recognition_enabled&.is_a?(Boolean) != false || raise("Passed value for field obj.emotion_recognition_enabled is not the expected type, validation failed.")
166
174
  obj.num_fast_turns&.is_a?(Float) != false || raise("Passed value for field obj.num_fast_turns is not the expected type, validation failed.")
@@ -18,6 +18,8 @@ module Vapi
18
18
  attr_reader :created_at
19
19
  # @return [DateTime] This is the ISO 8601 date-time string of when the assistant was last updated.
20
20
  attr_reader :updated_at
21
+ # @return [String] This is the name of credential. This is just for your reference.
22
+ attr_reader :name
21
23
  # @return [String] This can be used to point to an onprem Deepgram instance. Defaults to
22
24
  # api.deepgram.com.
23
25
  attr_reader :api_url
@@ -35,11 +37,12 @@ module Vapi
35
37
  # @param org_id [String] This is the unique identifier for the org that this credential belongs to.
36
38
  # @param created_at [DateTime] This is the ISO 8601 date-time string of when the credential was created.
37
39
  # @param updated_at [DateTime] This is the ISO 8601 date-time string of when the assistant was last updated.
40
+ # @param name [String] This is the name of credential. This is just for your reference.
38
41
  # @param api_url [String] This can be used to point to an onprem Deepgram instance. Defaults to
39
42
  # api.deepgram.com.
40
43
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
41
44
  # @return [Vapi::DeepgramCredential]
42
- def initialize(provider:, api_key:, id:, org_id:, created_at:, updated_at:, api_url: OMIT,
45
+ def initialize(provider:, api_key:, id:, org_id:, created_at:, updated_at:, name: OMIT, api_url: OMIT,
43
46
  additional_properties: nil)
44
47
  @provider = provider
45
48
  @api_key = api_key
@@ -47,6 +50,7 @@ module Vapi
47
50
  @org_id = org_id
48
51
  @created_at = created_at
49
52
  @updated_at = updated_at
53
+ @name = name if name != OMIT
50
54
  @api_url = api_url if api_url != OMIT
51
55
  @additional_properties = additional_properties
52
56
  @_field_set = {
@@ -56,6 +60,7 @@ module Vapi
56
60
  "orgId": org_id,
57
61
  "createdAt": created_at,
58
62
  "updatedAt": updated_at,
63
+ "name": name,
59
64
  "apiUrl": api_url
60
65
  }.reject do |_k, v|
61
66
  v == OMIT
@@ -75,6 +80,7 @@ module Vapi
75
80
  org_id = parsed_json["orgId"]
76
81
  created_at = (DateTime.parse(parsed_json["createdAt"]) unless parsed_json["createdAt"].nil?)
77
82
  updated_at = (DateTime.parse(parsed_json["updatedAt"]) unless parsed_json["updatedAt"].nil?)
83
+ name = parsed_json["name"]
78
84
  api_url = parsed_json["apiUrl"]
79
85
  new(
80
86
  provider: provider,
@@ -83,6 +89,7 @@ module Vapi
83
89
  org_id: org_id,
84
90
  created_at: created_at,
85
91
  updated_at: updated_at,
92
+ name: name,
86
93
  api_url: api_url,
87
94
  additional_properties: struct
88
95
  )
@@ -108,6 +115,7 @@ module Vapi
108
115
  obj.org_id.is_a?(String) != false || raise("Passed value for field obj.org_id is not the expected type, validation failed.")
109
116
  obj.created_at.is_a?(DateTime) != false || raise("Passed value for field obj.created_at is not the expected type, validation failed.")
110
117
  obj.updated_at.is_a?(DateTime) != false || raise("Passed value for field obj.updated_at is not the expected type, validation failed.")
118
+ obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
111
119
  obj.api_url&.is_a?(String) != false || raise("Passed value for field obj.api_url is not the expected type, validation failed.")
112
120
  end
113
121
  end
@@ -17,9 +17,38 @@ module Vapi
17
17
  # @return [Boolean] This will be use smart format option provided by Deepgram. It's default disabled
18
18
  # because it can sometimes format numbers as times but it's getting better.
19
19
  attr_reader :smart_format
20
- # @return [Boolean] This enables or disables language detection. If true, swaps transcribers to
21
- # detected language automatically. Defaults to false.
22
- attr_reader :language_detection_enabled
20
+ # @return [Boolean] This automatically switches the transcriber's language when the customer's
21
+ # language changes. Defaults to false.
22
+ # Usage:
23
+ # - If your customers switch languages mid-call, you can set this to true.
24
+ # Note:
25
+ # - To detect language changes, Vapi uses a custom trained model. Languages
26
+ # supported (X = limited support):
27
+ # 1. Arabic
28
+ # 2. Bengali
29
+ # 3. Cantonese
30
+ # 4. Chinese
31
+ # 5. Chinese Simplified (X)
32
+ # 6. Chinese Traditional (X)
33
+ # 7. English
34
+ # 8. Farsi (X)
35
+ # 9. French
36
+ # 10. German
37
+ # 11. Haitian Creole (X)
38
+ # 12. Hindi
39
+ # 13. Italian
40
+ # 14. Japanese
41
+ # 15. Korean
42
+ # 16. Portuguese
43
+ # 17. Russian
44
+ # 18. Spanish
45
+ # 19. Thai
46
+ # 20. Urdu
47
+ # 21. Vietnamese
48
+ # - To receive `language-change-detected` webhook events, add it to
49
+ # `assistant.serverMessages`.
50
+ # @default false
51
+ attr_reader :code_switching_enabled
23
52
  # @return [Array<String>] These keywords are passed to the transcription model to help it pick up use-case
24
53
  # specific words. Anything that may not be a common word, like your company name,
25
54
  # should be added here.
@@ -53,8 +82,37 @@ module Vapi
53
82
  # https://developers.deepgram.com/docs/models-languages-overview
54
83
  # @param smart_format [Boolean] This will be use smart format option provided by Deepgram. It's default disabled
55
84
  # because it can sometimes format numbers as times but it's getting better.
56
- # @param language_detection_enabled [Boolean] This enables or disables language detection. If true, swaps transcribers to
57
- # detected language automatically. Defaults to false.
85
+ # @param code_switching_enabled [Boolean] This automatically switches the transcriber's language when the customer's
86
+ # language changes. Defaults to false.
87
+ # Usage:
88
+ # - If your customers switch languages mid-call, you can set this to true.
89
+ # Note:
90
+ # - To detect language changes, Vapi uses a custom trained model. Languages
91
+ # supported (X = limited support):
92
+ # 1. Arabic
93
+ # 2. Bengali
94
+ # 3. Cantonese
95
+ # 4. Chinese
96
+ # 5. Chinese Simplified (X)
97
+ # 6. Chinese Traditional (X)
98
+ # 7. English
99
+ # 8. Farsi (X)
100
+ # 9. French
101
+ # 10. German
102
+ # 11. Haitian Creole (X)
103
+ # 12. Hindi
104
+ # 13. Italian
105
+ # 14. Japanese
106
+ # 15. Korean
107
+ # 16. Portuguese
108
+ # 17. Russian
109
+ # 18. Spanish
110
+ # 19. Thai
111
+ # 20. Urdu
112
+ # 21. Vietnamese
113
+ # - To receive `language-change-detected` webhook events, add it to
114
+ # `assistant.serverMessages`.
115
+ # @default false
58
116
  # @param keywords [Array<String>] These keywords are passed to the transcription model to help it pick up use-case
59
117
  # specific words. Anything that may not be a common word, like your company name,
60
118
  # should be added here.
@@ -73,12 +131,12 @@ module Vapi
73
131
  # @default 10
74
132
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
75
133
  # @return [Vapi::DeepgramTranscriber]
76
- def initialize(model: OMIT, language: OMIT, smart_format: OMIT, language_detection_enabled: OMIT, keywords: OMIT,
134
+ def initialize(model: OMIT, language: OMIT, smart_format: OMIT, code_switching_enabled: OMIT, keywords: OMIT,
77
135
  endpointing: OMIT, additional_properties: nil)
78
136
  @model = model if model != OMIT
79
137
  @language = language if language != OMIT
80
138
  @smart_format = smart_format if smart_format != OMIT
81
- @language_detection_enabled = language_detection_enabled if language_detection_enabled != OMIT
139
+ @code_switching_enabled = code_switching_enabled if code_switching_enabled != OMIT
82
140
  @keywords = keywords if keywords != OMIT
83
141
  @endpointing = endpointing if endpointing != OMIT
84
142
  @additional_properties = additional_properties
@@ -86,7 +144,7 @@ module Vapi
86
144
  "model": model,
87
145
  "language": language,
88
146
  "smartFormat": smart_format,
89
- "languageDetectionEnabled": language_detection_enabled,
147
+ "codeSwitchingEnabled": code_switching_enabled,
90
148
  "keywords": keywords,
91
149
  "endpointing": endpointing
92
150
  }.reject do |_k, v|
@@ -104,14 +162,14 @@ module Vapi
104
162
  model = parsed_json["model"]
105
163
  language = parsed_json["language"]
106
164
  smart_format = parsed_json["smartFormat"]
107
- language_detection_enabled = parsed_json["languageDetectionEnabled"]
165
+ code_switching_enabled = parsed_json["codeSwitchingEnabled"]
108
166
  keywords = parsed_json["keywords"]
109
167
  endpointing = parsed_json["endpointing"]
110
168
  new(
111
169
  model: model,
112
170
  language: language,
113
171
  smart_format: smart_format,
114
- language_detection_enabled: language_detection_enabled,
172
+ code_switching_enabled: code_switching_enabled,
115
173
  keywords: keywords,
116
174
  endpointing: endpointing,
117
175
  additional_properties: struct
@@ -135,7 +193,7 @@ module Vapi
135
193
  obj.model&.is_a?(Vapi::DeepgramTranscriberModel) != false || raise("Passed value for field obj.model is not the expected type, validation failed.")
136
194
  obj.language&.is_a?(Vapi::DeepgramTranscriberLanguage) != false || raise("Passed value for field obj.language is not the expected type, validation failed.")
137
195
  obj.smart_format&.is_a?(Boolean) != false || raise("Passed value for field obj.smart_format is not the expected type, validation failed.")
138
- obj.language_detection_enabled&.is_a?(Boolean) != false || raise("Passed value for field obj.language_detection_enabled is not the expected type, validation failed.")
196
+ obj.code_switching_enabled&.is_a?(Boolean) != false || raise("Passed value for field obj.code_switching_enabled is not the expected type, validation failed.")
139
197
  obj.keywords&.is_a?(Array) != false || raise("Passed value for field obj.keywords is not the expected type, validation failed.")
140
198
  obj.endpointing&.is_a?(Float) != false || raise("Passed value for field obj.endpointing is not the expected type, validation failed.")
141
199
  end