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,130 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "date"
4
+ require "ostruct"
5
+ require "json"
6
+
7
+ module Vapi
8
+ class LangfuseCredential
9
+ # @return [String]
10
+ attr_reader :provider
11
+ # @return [String] The public key for Langfuse project. Eg: pk-lf-...
12
+ attr_reader :public_key
13
+ # @return [String] The secret key for Langfuse project. Eg: sk-lf-... .This is not returned in the
14
+ # API.
15
+ attr_reader :api_key
16
+ # @return [String] The host URL for Langfuse project. Eg: https://cloud.langfuse.com
17
+ attr_reader :api_url
18
+ # @return [String] This is the unique identifier for the credential.
19
+ attr_reader :id
20
+ # @return [String] This is the unique identifier for the org that this credential belongs to.
21
+ attr_reader :org_id
22
+ # @return [DateTime] This is the ISO 8601 date-time string of when the credential was created.
23
+ attr_reader :created_at
24
+ # @return [DateTime] This is the ISO 8601 date-time string of when the assistant was last updated.
25
+ attr_reader :updated_at
26
+ # @return [String] This is the name of credential. This is just for your reference.
27
+ attr_reader :name
28
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
29
+ attr_reader :additional_properties
30
+ # @return [Object]
31
+ attr_reader :_field_set
32
+ protected :_field_set
33
+
34
+ OMIT = Object.new
35
+
36
+ # @param provider [String]
37
+ # @param public_key [String] The public key for Langfuse project. Eg: pk-lf-...
38
+ # @param api_key [String] The secret key for Langfuse project. Eg: sk-lf-... .This is not returned in the
39
+ # API.
40
+ # @param api_url [String] The host URL for Langfuse project. Eg: https://cloud.langfuse.com
41
+ # @param id [String] This is the unique identifier for the credential.
42
+ # @param org_id [String] This is the unique identifier for the org that this credential belongs to.
43
+ # @param created_at [DateTime] This is the ISO 8601 date-time string of when the credential was created.
44
+ # @param updated_at [DateTime] This is the ISO 8601 date-time string of when the assistant was last updated.
45
+ # @param name [String] This is the name of credential. This is just for your reference.
46
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
47
+ # @return [Vapi::LangfuseCredential]
48
+ def initialize(provider:, public_key:, api_key:, api_url:, id:, org_id:, created_at:, updated_at:, name: OMIT,
49
+ additional_properties: nil)
50
+ @provider = provider
51
+ @public_key = public_key
52
+ @api_key = api_key
53
+ @api_url = api_url
54
+ @id = id
55
+ @org_id = org_id
56
+ @created_at = created_at
57
+ @updated_at = updated_at
58
+ @name = name if name != OMIT
59
+ @additional_properties = additional_properties
60
+ @_field_set = {
61
+ "provider": provider,
62
+ "publicKey": public_key,
63
+ "apiKey": api_key,
64
+ "apiUrl": api_url,
65
+ "id": id,
66
+ "orgId": org_id,
67
+ "createdAt": created_at,
68
+ "updatedAt": updated_at,
69
+ "name": name
70
+ }.reject do |_k, v|
71
+ v == OMIT
72
+ end
73
+ end
74
+
75
+ # Deserialize a JSON object to an instance of LangfuseCredential
76
+ #
77
+ # @param json_object [String]
78
+ # @return [Vapi::LangfuseCredential]
79
+ def self.from_json(json_object:)
80
+ struct = JSON.parse(json_object, object_class: OpenStruct)
81
+ parsed_json = JSON.parse(json_object)
82
+ provider = parsed_json["provider"]
83
+ public_key = parsed_json["publicKey"]
84
+ api_key = parsed_json["apiKey"]
85
+ api_url = parsed_json["apiUrl"]
86
+ id = parsed_json["id"]
87
+ org_id = parsed_json["orgId"]
88
+ created_at = (DateTime.parse(parsed_json["createdAt"]) unless parsed_json["createdAt"].nil?)
89
+ updated_at = (DateTime.parse(parsed_json["updatedAt"]) unless parsed_json["updatedAt"].nil?)
90
+ name = parsed_json["name"]
91
+ new(
92
+ provider: provider,
93
+ public_key: public_key,
94
+ api_key: api_key,
95
+ api_url: api_url,
96
+ id: id,
97
+ org_id: org_id,
98
+ created_at: created_at,
99
+ updated_at: updated_at,
100
+ name: name,
101
+ additional_properties: struct
102
+ )
103
+ end
104
+
105
+ # Serialize an instance of LangfuseCredential to a JSON object
106
+ #
107
+ # @return [String]
108
+ def to_json(*_args)
109
+ @_field_set&.to_json
110
+ end
111
+
112
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
113
+ # hash and check each fields type against the current object's property
114
+ # definitions.
115
+ #
116
+ # @param obj [Object]
117
+ # @return [Void]
118
+ def self.validate_raw(obj:)
119
+ obj.provider.is_a?(String) != false || raise("Passed value for field obj.provider is not the expected type, validation failed.")
120
+ obj.public_key.is_a?(String) != false || raise("Passed value for field obj.public_key is not the expected type, validation failed.")
121
+ obj.api_key.is_a?(String) != false || raise("Passed value for field obj.api_key is not the expected type, validation failed.")
122
+ obj.api_url.is_a?(String) != false || raise("Passed value for field obj.api_url is not the expected type, validation failed.")
123
+ obj.id.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
124
+ obj.org_id.is_a?(String) != false || raise("Passed value for field obj.org_id is not the expected type, validation failed.")
125
+ obj.created_at.is_a?(DateTime) != false || raise("Passed value for field obj.created_at is not the expected type, validation failed.")
126
+ obj.updated_at.is_a?(DateTime) != false || raise("Passed value for field obj.updated_at is not the expected type, validation failed.")
127
+ obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
128
+ end
129
+ end
130
+ 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::LmntCredential]
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 LmntCredential
@@ -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,15 +2,12 @@
2
2
 
3
3
  require_relative "lmnt_voice_id"
4
4
  require_relative "chunk_plan"
5
+ require_relative "fallback_plan"
5
6
  require "ostruct"
6
7
  require "json"
7
8
 
8
9
  module Vapi
9
10
  class LmntVoice
10
- # @return [Boolean] This determines whether fillers are injected into the model output before
11
- # inputting it into the voice provider.
12
- # Default `false` because you can achieve better results with prompting the model.
13
- attr_reader :filler_injection_enabled
14
11
  # @return [Vapi::LmntVoiceId] This is the provider-specific ID that will be used.
15
12
  attr_reader :voice_id
16
13
  # @return [Float] This is the speed multiplier that will be used.
@@ -18,6 +15,9 @@ module Vapi
18
15
  # @return [Vapi::ChunkPlan] This is the plan for chunking the model output before it is sent to the voice
19
16
  # provider.
20
17
  attr_reader :chunk_plan
18
+ # @return [Vapi::FallbackPlan] This is the plan for voice provider fallbacks in the event that the primary
19
+ # voice provider fails.
20
+ attr_reader :fallback_plan
21
21
  # @return [OpenStruct] Additional properties unmapped to the current class definition
22
22
  attr_reader :additional_properties
23
23
  # @return [Object]
@@ -26,26 +26,25 @@ module Vapi
26
26
 
27
27
  OMIT = Object.new
28
28
 
29
- # @param filler_injection_enabled [Boolean] This determines whether fillers are injected into the model output before
30
- # inputting it into the voice provider.
31
- # Default `false` because you can achieve better results with prompting the model.
32
29
  # @param voice_id [Vapi::LmntVoiceId] This is the provider-specific ID that will be used.
33
30
  # @param speed [Float] This is the speed multiplier that will be used.
34
31
  # @param chunk_plan [Vapi::ChunkPlan] This is the plan for chunking the model output before it is sent to the voice
35
32
  # provider.
33
+ # @param fallback_plan [Vapi::FallbackPlan] This is the plan for voice provider fallbacks in the event that the primary
34
+ # voice provider fails.
36
35
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
37
36
  # @return [Vapi::LmntVoice]
38
- def initialize(voice_id:, filler_injection_enabled: OMIT, speed: OMIT, chunk_plan: OMIT, additional_properties: nil)
39
- @filler_injection_enabled = filler_injection_enabled if filler_injection_enabled != OMIT
37
+ def initialize(voice_id:, speed: OMIT, chunk_plan: OMIT, fallback_plan: OMIT, additional_properties: nil)
40
38
  @voice_id = voice_id
41
39
  @speed = speed if speed != OMIT
42
40
  @chunk_plan = chunk_plan if chunk_plan != OMIT
41
+ @fallback_plan = fallback_plan if fallback_plan != OMIT
43
42
  @additional_properties = additional_properties
44
43
  @_field_set = {
45
- "fillerInjectionEnabled": filler_injection_enabled,
46
44
  "voiceId": voice_id,
47
45
  "speed": speed,
48
- "chunkPlan": chunk_plan
46
+ "chunkPlan": chunk_plan,
47
+ "fallbackPlan": fallback_plan
49
48
  }.reject do |_k, v|
50
49
  v == OMIT
51
50
  end
@@ -58,7 +57,6 @@ module Vapi
58
57
  def self.from_json(json_object:)
59
58
  struct = JSON.parse(json_object, object_class: OpenStruct)
60
59
  parsed_json = JSON.parse(json_object)
61
- filler_injection_enabled = parsed_json["fillerInjectionEnabled"]
62
60
  if parsed_json["voiceId"].nil?
63
61
  voice_id = nil
64
62
  else
@@ -72,11 +70,17 @@ module Vapi
72
70
  chunk_plan = parsed_json["chunkPlan"].to_json
73
71
  chunk_plan = Vapi::ChunkPlan.from_json(json_object: chunk_plan)
74
72
  end
73
+ if parsed_json["fallbackPlan"].nil?
74
+ fallback_plan = nil
75
+ else
76
+ fallback_plan = parsed_json["fallbackPlan"].to_json
77
+ fallback_plan = Vapi::FallbackPlan.from_json(json_object: fallback_plan)
78
+ end
75
79
  new(
76
- filler_injection_enabled: filler_injection_enabled,
77
80
  voice_id: voice_id,
78
81
  speed: speed,
79
82
  chunk_plan: chunk_plan,
83
+ fallback_plan: fallback_plan,
80
84
  additional_properties: struct
81
85
  )
82
86
  end
@@ -95,10 +99,10 @@ module Vapi
95
99
  # @param obj [Object]
96
100
  # @return [Void]
97
101
  def self.validate_raw(obj:)
98
- obj.filler_injection_enabled&.is_a?(Boolean) != false || raise("Passed value for field obj.filler_injection_enabled is not the expected type, validation failed.")
99
102
  Vapi::LmntVoiceId.validate_raw(obj: obj.voice_id)
100
103
  obj.speed&.is_a?(Float) != false || raise("Passed value for field obj.speed is not the expected type, validation failed.")
101
104
  obj.chunk_plan.nil? || Vapi::ChunkPlan.validate_raw(obj: obj.chunk_plan)
105
+ obj.fallback_plan.nil? || Vapi::FallbackPlan.validate_raw(obj: obj.fallback_plan)
102
106
  end
103
107
  end
104
108
  end
@@ -9,12 +9,14 @@ require "json"
9
9
 
10
10
  module Vapi
11
11
  class Log
12
- # @return [Float] This is the timestamp at which the log was written.
12
+ # @return [String] This is the timestamp at which the log was written.
13
13
  attr_reader :time
14
14
  # @return [String] This is the unique identifier for the org that this log belongs to.
15
15
  attr_reader :org_id
16
16
  # @return [Vapi::LogType] This is the type of the log.
17
17
  attr_reader :type
18
+ # @return [String] This is the type of the webhook, given the log is from a webhook.
19
+ attr_reader :webhook_type
18
20
  # @return [Vapi::LogResource] This is the specific resource, relevant only to API logs.
19
21
  attr_reader :resource
20
22
  # @return [Float] 'This is how long the request took.
@@ -63,9 +65,10 @@ module Vapi
63
65
 
64
66
  OMIT = Object.new
65
67
 
66
- # @param time [Float] This is the timestamp at which the log was written.
68
+ # @param time [String] This is the timestamp at which the log was written.
67
69
  # @param org_id [String] This is the unique identifier for the org that this log belongs to.
68
70
  # @param type [Vapi::LogType] This is the type of the log.
71
+ # @param webhook_type [String] This is the type of the webhook, given the log is from a webhook.
69
72
  # @param resource [Vapi::LogResource] This is the specific resource, relevant only to API logs.
70
73
  # @param request_duration_seconds [Float] 'This is how long the request took.
71
74
  # @param request_started_at [String] This is the timestamp at which the request began.
@@ -89,10 +92,11 @@ module Vapi
89
92
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
90
93
  # @return [Vapi::Log]
91
94
  def initialize(time:, org_id:, type:, request_duration_seconds:, request_started_at:, request_finished_at:,
92
- request_body:, request_http_method:, request_url:, request_path:, response_http_code:, resource: OMIT, request_query: OMIT, request_ip_address: OMIT, request_origin: OMIT, response_body: OMIT, request_headers: OMIT, error: OMIT, assistant_id: OMIT, phone_number_id: OMIT, customer_id: OMIT, squad_id: OMIT, call_id: OMIT, additional_properties: nil)
95
+ request_body:, request_http_method:, request_url:, request_path:, response_http_code:, webhook_type: OMIT, resource: OMIT, request_query: OMIT, request_ip_address: OMIT, request_origin: OMIT, response_body: OMIT, request_headers: OMIT, error: OMIT, assistant_id: OMIT, phone_number_id: OMIT, customer_id: OMIT, squad_id: OMIT, call_id: OMIT, additional_properties: nil)
93
96
  @time = time
94
97
  @org_id = org_id
95
98
  @type = type
99
+ @webhook_type = webhook_type if webhook_type != OMIT
96
100
  @resource = resource if resource != OMIT
97
101
  @request_duration_seconds = request_duration_seconds
98
102
  @request_started_at = request_started_at
@@ -118,6 +122,7 @@ module Vapi
118
122
  "time": time,
119
123
  "orgId": org_id,
120
124
  "type": type,
125
+ "webhookType": webhook_type,
121
126
  "resource": resource,
122
127
  "requestDurationSeconds": request_duration_seconds,
123
128
  "requestStartedAt": request_started_at,
@@ -153,6 +158,7 @@ module Vapi
153
158
  time = parsed_json["time"]
154
159
  org_id = parsed_json["orgId"]
155
160
  type = parsed_json["type"]
161
+ webhook_type = parsed_json["webhookType"]
156
162
  resource = parsed_json["resource"]
157
163
  request_duration_seconds = parsed_json["requestDurationSeconds"]
158
164
  request_started_at = parsed_json["requestStartedAt"]
@@ -182,6 +188,7 @@ module Vapi
182
188
  time: time,
183
189
  org_id: org_id,
184
190
  type: type,
191
+ webhook_type: webhook_type,
185
192
  resource: resource,
186
193
  request_duration_seconds: request_duration_seconds,
187
194
  request_started_at: request_started_at,
@@ -220,9 +227,10 @@ module Vapi
220
227
  # @param obj [Object]
221
228
  # @return [Void]
222
229
  def self.validate_raw(obj:)
223
- obj.time.is_a?(Float) != false || raise("Passed value for field obj.time is not the expected type, validation failed.")
230
+ obj.time.is_a?(String) != false || raise("Passed value for field obj.time is not the expected type, validation failed.")
224
231
  obj.org_id.is_a?(String) != false || raise("Passed value for field obj.org_id is not the expected type, validation failed.")
225
232
  obj.type.is_a?(Vapi::LogType) != false || raise("Passed value for field obj.type is not the expected type, validation failed.")
233
+ obj.webhook_type&.is_a?(String) != false || raise("Passed value for field obj.webhook_type is not the expected type, validation failed.")
226
234
  obj.resource&.is_a?(Vapi::LogResource) != false || raise("Passed value for field obj.resource is not the expected type, validation failed.")
227
235
  obj.request_duration_seconds.is_a?(Float) != false || raise("Passed value for field obj.request_duration_seconds is not the expected type, validation failed.")
228
236
  obj.request_started_at.is_a?(String) != false || raise("Passed value for field obj.request_started_at is not the expected type, validation failed.")
@@ -3,9 +3,17 @@
3
3
  module Vapi
4
4
  # This is the specific resource, relevant only to API logs.
5
5
  class LogResource
6
+ ORG = "org"
6
7
  ASSISTANT = "assistant"
8
+ ANALYTICS = "analytics"
9
+ CREDENTIAL = "credential"
7
10
  PHONE_NUMBER = "phone-number"
11
+ BLOCK = "block"
12
+ VOICE_LIBRARY = "voice-library"
13
+ PROVIDER = "provider"
8
14
  TOOL = "tool"
15
+ TOKEN = "token"
16
+ TEMPLATE = "template"
9
17
  SQUAD = "squad"
10
18
  CALL = "call"
11
19
  FILE = "file"
@@ -22,6 +22,8 @@ module Vapi
22
22
  attr_reader :created_at
23
23
  # @return [DateTime] This is the ISO 8601 date-time string of when the assistant was last updated.
24
24
  attr_reader :updated_at
25
+ # @return [String] This is the name of credential. This is just for your reference.
26
+ attr_reader :name
25
27
  # @return [OpenStruct] Additional properties unmapped to the current class definition
26
28
  attr_reader :additional_properties
27
29
  # @return [Object]
@@ -38,9 +40,10 @@ module Vapi
38
40
  # @param org_id [String] This is the unique identifier for the org that this credential belongs to.
39
41
  # @param created_at [DateTime] This is the ISO 8601 date-time string of when the credential was created.
40
42
  # @param updated_at [DateTime] This is the ISO 8601 date-time string of when the assistant was last updated.
43
+ # @param name [String] This is the name of credential. This is just for your reference.
41
44
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
42
45
  # @return [Vapi::MakeCredential]
43
- def initialize(provider:, team_id:, region:, api_key:, id:, org_id:, created_at:, updated_at:,
46
+ def initialize(provider:, team_id:, region:, api_key:, id:, org_id:, created_at:, updated_at:, name: OMIT,
44
47
  additional_properties: nil)
45
48
  @provider = provider
46
49
  @team_id = team_id
@@ -50,6 +53,7 @@ module Vapi
50
53
  @org_id = org_id
51
54
  @created_at = created_at
52
55
  @updated_at = updated_at
56
+ @name = name if name != OMIT
53
57
  @additional_properties = additional_properties
54
58
  @_field_set = {
55
59
  "provider": provider,
@@ -59,8 +63,11 @@ module Vapi
59
63
  "id": id,
60
64
  "orgId": org_id,
61
65
  "createdAt": created_at,
62
- "updatedAt": updated_at
63
- }
66
+ "updatedAt": updated_at,
67
+ "name": name
68
+ }.reject do |_k, v|
69
+ v == OMIT
70
+ end
64
71
  end
65
72
 
66
73
  # Deserialize a JSON object to an instance of MakeCredential
@@ -78,6 +85,7 @@ module Vapi
78
85
  org_id = parsed_json["orgId"]
79
86
  created_at = (DateTime.parse(parsed_json["createdAt"]) unless parsed_json["createdAt"].nil?)
80
87
  updated_at = (DateTime.parse(parsed_json["updatedAt"]) unless parsed_json["updatedAt"].nil?)
88
+ name = parsed_json["name"]
81
89
  new(
82
90
  provider: provider,
83
91
  team_id: team_id,
@@ -87,6 +95,7 @@ module Vapi
87
95
  org_id: org_id,
88
96
  created_at: created_at,
89
97
  updated_at: updated_at,
98
+ name: name,
90
99
  additional_properties: struct
91
100
  )
92
101
  end
@@ -113,6 +122,7 @@ module Vapi
113
122
  obj.org_id.is_a?(String) != false || raise("Passed value for field obj.org_id is not the expected type, validation failed.")
114
123
  obj.created_at.is_a?(DateTime) != false || raise("Passed value for field obj.created_at is not the expected type, validation failed.")
115
124
  obj.updated_at.is_a?(DateTime) != false || raise("Passed value for field obj.updated_at is not the expected type, validation failed.")
125
+ obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
116
126
  end
117
127
  end
118
128
  end
@@ -22,6 +22,8 @@ module Vapi
22
22
  # `tool.destinations`. For others like the function tool, these can be custom
23
23
  # configured.
24
24
  attr_reader :messages
25
+ # @return [String] The type of tool. "make" for Make tool.
26
+ attr_reader :type
25
27
  # @return [Vapi::ToolCall]
26
28
  attr_reader :tool_call
27
29
  # @return [Vapi::MakeToolMetadata]
@@ -61,6 +63,7 @@ module Vapi
61
63
  # For some tools, this is auto-filled based on special fields like
62
64
  # `tool.destinations`. For others like the function tool, these can be custom
63
65
  # configured.
66
+ # @param type [String] The type of tool. "make" for Make tool.
64
67
  # @param tool_call [Vapi::ToolCall]
65
68
  # @param metadata [Vapi::MakeToolMetadata]
66
69
  # @param function [Vapi::OpenAiFunction] This is the function definition of the tool.
@@ -80,10 +83,11 @@ module Vapi
80
83
  # phoneNumber.serverUrl, then org.serverUrl.
81
84
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
82
85
  # @return [Vapi::MakeToolWithToolCall]
83
- def initialize(tool_call:, metadata:, async: OMIT, messages: OMIT, function: OMIT, server: OMIT,
86
+ def initialize(type:, tool_call:, metadata:, async: OMIT, messages: OMIT, function: OMIT, server: OMIT,
84
87
  additional_properties: nil)
85
88
  @async = async if async != OMIT
86
89
  @messages = messages if messages != OMIT
90
+ @type = type
87
91
  @tool_call = tool_call
88
92
  @metadata = metadata
89
93
  @function = function if function != OMIT
@@ -92,6 +96,7 @@ module Vapi
92
96
  @_field_set = {
93
97
  "async": async,
94
98
  "messages": messages,
99
+ "type": type,
95
100
  "toolCall": tool_call,
96
101
  "metadata": metadata,
97
102
  "function": function,
@@ -113,6 +118,7 @@ module Vapi
113
118
  item = item.to_json
114
119
  Vapi::MakeToolWithToolCallMessagesItem.from_json(json_object: item)
115
120
  end
121
+ type = parsed_json["type"]
116
122
  if parsed_json["toolCall"].nil?
117
123
  tool_call = nil
118
124
  else
@@ -140,6 +146,7 @@ module Vapi
140
146
  new(
141
147
  async: async,
142
148
  messages: messages,
149
+ type: type,
143
150
  tool_call: tool_call,
144
151
  metadata: metadata,
145
152
  function: function,
@@ -164,6 +171,7 @@ module Vapi
164
171
  def self.validate_raw(obj:)
165
172
  obj.async&.is_a?(Boolean) != false || raise("Passed value for field obj.async is not the expected type, validation failed.")
166
173
  obj.messages&.is_a?(Array) != false || raise("Passed value for field obj.messages is not the expected type, validation failed.")
174
+ obj.type.is_a?(String) != false || raise("Passed value for field obj.type is not the expected type, validation failed.")
167
175
  Vapi::ToolCall.validate_raw(obj: obj.tool_call)
168
176
  Vapi::MakeToolMetadata.validate_raw(obj: obj.metadata)
169
177
  obj.function.nil? || Vapi::OpenAiFunction.validate_raw(obj: obj.function)
@@ -2,20 +2,20 @@
2
2
 
3
3
  require_relative "neets_voice_id"
4
4
  require_relative "chunk_plan"
5
+ require_relative "fallback_plan"
5
6
  require "ostruct"
6
7
  require "json"
7
8
 
8
9
  module Vapi
9
10
  class NeetsVoice
10
- # @return [Boolean] This determines whether fillers are injected into the model output before
11
- # inputting it into the voice provider.
12
- # Default `false` because you can achieve better results with prompting the model.
13
- attr_reader :filler_injection_enabled
14
11
  # @return [Vapi::NeetsVoiceId] This is the provider-specific ID that will be used.
15
12
  attr_reader :voice_id
16
13
  # @return [Vapi::ChunkPlan] This is the plan for chunking the model output before it is sent to the voice
17
14
  # provider.
18
15
  attr_reader :chunk_plan
16
+ # @return [Vapi::FallbackPlan] This is the plan for voice provider fallbacks in the event that the primary
17
+ # voice provider fails.
18
+ attr_reader :fallback_plan
19
19
  # @return [OpenStruct] Additional properties unmapped to the current class definition
20
20
  attr_reader :additional_properties
21
21
  # @return [Object]
@@ -24,24 +24,19 @@ module Vapi
24
24
 
25
25
  OMIT = Object.new
26
26
 
27
- # @param filler_injection_enabled [Boolean] This determines whether fillers are injected into the model output before
28
- # inputting it into the voice provider.
29
- # Default `false` because you can achieve better results with prompting the model.
30
27
  # @param voice_id [Vapi::NeetsVoiceId] This is the provider-specific ID that will be used.
31
28
  # @param chunk_plan [Vapi::ChunkPlan] This is the plan for chunking the model output before it is sent to the voice
32
29
  # provider.
30
+ # @param fallback_plan [Vapi::FallbackPlan] This is the plan for voice provider fallbacks in the event that the primary
31
+ # voice provider fails.
33
32
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
34
33
  # @return [Vapi::NeetsVoice]
35
- def initialize(voice_id:, filler_injection_enabled: OMIT, chunk_plan: OMIT, additional_properties: nil)
36
- @filler_injection_enabled = filler_injection_enabled if filler_injection_enabled != OMIT
34
+ def initialize(voice_id:, chunk_plan: OMIT, fallback_plan: OMIT, additional_properties: nil)
37
35
  @voice_id = voice_id
38
36
  @chunk_plan = chunk_plan if chunk_plan != OMIT
37
+ @fallback_plan = fallback_plan if fallback_plan != OMIT
39
38
  @additional_properties = additional_properties
40
- @_field_set = {
41
- "fillerInjectionEnabled": filler_injection_enabled,
42
- "voiceId": voice_id,
43
- "chunkPlan": chunk_plan
44
- }.reject do |_k, v|
39
+ @_field_set = { "voiceId": voice_id, "chunkPlan": chunk_plan, "fallbackPlan": fallback_plan }.reject do |_k, v|
45
40
  v == OMIT
46
41
  end
47
42
  end
@@ -53,7 +48,6 @@ module Vapi
53
48
  def self.from_json(json_object:)
54
49
  struct = JSON.parse(json_object, object_class: OpenStruct)
55
50
  parsed_json = JSON.parse(json_object)
56
- filler_injection_enabled = parsed_json["fillerInjectionEnabled"]
57
51
  if parsed_json["voiceId"].nil?
58
52
  voice_id = nil
59
53
  else
@@ -66,10 +60,16 @@ module Vapi
66
60
  chunk_plan = parsed_json["chunkPlan"].to_json
67
61
  chunk_plan = Vapi::ChunkPlan.from_json(json_object: chunk_plan)
68
62
  end
63
+ if parsed_json["fallbackPlan"].nil?
64
+ fallback_plan = nil
65
+ else
66
+ fallback_plan = parsed_json["fallbackPlan"].to_json
67
+ fallback_plan = Vapi::FallbackPlan.from_json(json_object: fallback_plan)
68
+ end
69
69
  new(
70
- filler_injection_enabled: filler_injection_enabled,
71
70
  voice_id: voice_id,
72
71
  chunk_plan: chunk_plan,
72
+ fallback_plan: fallback_plan,
73
73
  additional_properties: struct
74
74
  )
75
75
  end
@@ -88,9 +88,9 @@ module Vapi
88
88
  # @param obj [Object]
89
89
  # @return [Void]
90
90
  def self.validate_raw(obj:)
91
- obj.filler_injection_enabled&.is_a?(Boolean) != false || raise("Passed value for field obj.filler_injection_enabled is not the expected type, validation failed.")
92
91
  Vapi::NeetsVoiceId.validate_raw(obj: obj.voice_id)
93
92
  obj.chunk_plan.nil? || Vapi::ChunkPlan.validate_raw(obj: obj.chunk_plan)
93
+ obj.fallback_plan.nil? || Vapi::FallbackPlan.validate_raw(obj: obj.fallback_plan)
94
94
  end
95
95
  end
96
96
  end