vapi_server_sdk 0.2.0 → 0.4.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 (273) hide show
  1. checksums.yaml +4 -4
  2. data/lib/requests.rb +2 -2
  3. data/lib/types_export.rb +160 -68
  4. data/lib/vapi_server_sdk/analytics/client.rb +0 -14
  5. data/lib/vapi_server_sdk/assistants/client.rb +19 -72
  6. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_credentials_item.rb +512 -0
  7. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_model.rb +13 -0
  8. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_transcriber.rb +13 -0
  9. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_voice.rb +13 -0
  10. data/lib/vapi_server_sdk/blocks/client.rb +7 -236
  11. data/lib/vapi_server_sdk/blocks/types/blocks_update_request.rb +109 -0
  12. data/lib/vapi_server_sdk/calls/client.rb +22 -74
  13. data/lib/vapi_server_sdk/files/client.rb +0 -70
  14. data/lib/vapi_server_sdk/knowledge_bases/client.rb +7 -78
  15. data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_update_request.rb +96 -0
  16. data/lib/vapi_server_sdk/logs/client.rb +75 -22
  17. data/lib/vapi_server_sdk/logs/types/logging_controller_logs_delete_query_request_type.rb +12 -0
  18. data/lib/vapi_server_sdk/phone_numbers/client.rb +7 -139
  19. data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_update_request.rb +122 -0
  20. data/lib/vapi_server_sdk/squads/client.rb +16 -70
  21. data/lib/vapi_server_sdk/tools/client.rb +7 -161
  22. data/lib/vapi_server_sdk/tools/types/tools_update_request.rb +200 -0
  23. data/lib/vapi_server_sdk/types/assistant.rb +19 -1
  24. data/lib/vapi_server_sdk/types/assistant_credentials_item.rb +510 -0
  25. data/lib/vapi_server_sdk/types/assistant_model.rb +13 -0
  26. data/lib/vapi_server_sdk/types/assistant_overrides.rb +19 -1
  27. data/lib/vapi_server_sdk/types/assistant_overrides_credentials_item.rb +510 -0
  28. data/lib/vapi_server_sdk/types/assistant_overrides_model.rb +13 -0
  29. data/lib/vapi_server_sdk/types/assistant_overrides_transcriber.rb +13 -0
  30. data/lib/vapi_server_sdk/types/assistant_overrides_voice.rb +13 -0
  31. data/lib/vapi_server_sdk/types/assistant_transcriber.rb +13 -0
  32. data/lib/vapi_server_sdk/types/assistant_voice.rb +13 -0
  33. data/lib/vapi_server_sdk/types/azure_blob_storage_bucket_plan.rb +88 -0
  34. data/lib/vapi_server_sdk/types/azure_credential.rb +22 -5
  35. data/lib/vapi_server_sdk/types/azure_credential_region.rb +5 -3
  36. data/lib/vapi_server_sdk/types/azure_credential_service.rb +9 -0
  37. data/lib/vapi_server_sdk/types/azure_open_ai_credential.rb +9 -1
  38. data/lib/vapi_server_sdk/types/azure_open_ai_credential_region.rb +5 -3
  39. data/lib/vapi_server_sdk/types/azure_speech_transcriber.rb +62 -0
  40. data/lib/vapi_server_sdk/types/azure_speech_transcriber_language.rb +152 -0
  41. data/lib/vapi_server_sdk/types/bash_tool_with_tool_call.rb +175 -0
  42. data/lib/vapi_server_sdk/types/bash_tool_with_tool_call_messages_item.rb +120 -0
  43. data/lib/vapi_server_sdk/types/buy_phone_number_dto.rb +25 -29
  44. data/lib/vapi_server_sdk/types/byo_phone_number.rb +25 -29
  45. data/lib/vapi_server_sdk/types/call_ended_reason.rb +44 -29
  46. data/lib/vapi_server_sdk/types/cartesia_voice_model.rb +2 -0
  47. data/lib/vapi_server_sdk/types/cerebras_credential.rb +111 -0
  48. data/lib/vapi_server_sdk/types/chat_dto.rb +103 -0
  49. data/lib/vapi_server_sdk/types/{credits_buy_dto.rb → chat_service_response.rb} +9 -17
  50. data/lib/vapi_server_sdk/types/client_inbound_message_end_call.rb +47 -0
  51. data/lib/vapi_server_sdk/types/client_inbound_message_message.rb +13 -0
  52. data/lib/vapi_server_sdk/types/client_message_tool_calls_tool_with_tool_call_list_item.rb +116 -77
  53. data/lib/vapi_server_sdk/types/cloudflare_credential.rb +142 -0
  54. data/lib/vapi_server_sdk/types/cloudflare_r_2_bucket_plan.rb +105 -0
  55. data/lib/vapi_server_sdk/types/computer_tool_with_tool_call.rb +199 -0
  56. data/lib/vapi_server_sdk/types/computer_tool_with_tool_call_messages_item.rb +120 -0
  57. data/lib/vapi_server_sdk/types/create_anthropic_credential_dto.rb +2 -9
  58. data/lib/vapi_server_sdk/types/create_anyscale_credential_dto.rb +2 -9
  59. data/lib/vapi_server_sdk/types/create_assembly_ai_credential_dto.rb +2 -9
  60. data/lib/vapi_server_sdk/types/create_assistant_dto.rb +19 -1
  61. data/lib/vapi_server_sdk/types/create_assistant_dto_credentials_item.rb +510 -0
  62. data/lib/vapi_server_sdk/types/create_assistant_dto_model.rb +13 -0
  63. data/lib/vapi_server_sdk/types/create_assistant_dto_transcriber.rb +13 -0
  64. data/lib/vapi_server_sdk/types/create_assistant_dto_voice.rb +13 -0
  65. data/lib/vapi_server_sdk/types/create_azure_credential_dto.rb +21 -12
  66. data/lib/vapi_server_sdk/types/create_azure_credential_dto_region.rb +5 -3
  67. data/lib/vapi_server_sdk/types/create_azure_credential_dto_service.rb +9 -0
  68. data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto.rb +10 -9
  69. data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto_region.rb +5 -3
  70. data/lib/vapi_server_sdk/types/create_byo_phone_number_dto.rb +25 -29
  71. data/lib/vapi_server_sdk/types/create_byo_sip_trunk_credential_dto.rb +1 -9
  72. data/lib/vapi_server_sdk/types/create_cartesia_credential_dto.rb +2 -9
  73. data/lib/vapi_server_sdk/types/create_cerebras_credential_dto.rb +74 -0
  74. data/lib/vapi_server_sdk/types/create_cloudflare_credential_dto.rb +101 -0
  75. data/lib/vapi_server_sdk/types/create_custom_knowledge_base_dto.rb +2 -4
  76. data/lib/vapi_server_sdk/types/create_custom_llm_credential_dto.rb +2 -14
  77. data/lib/vapi_server_sdk/types/create_deep_infra_credential_dto.rb +2 -9
  78. data/lib/vapi_server_sdk/types/create_deep_seek_credential_dto.rb +67 -0
  79. data/lib/vapi_server_sdk/types/create_deepgram_credential_dto.rb +2 -9
  80. data/lib/vapi_server_sdk/types/create_eleven_labs_credential_dto.rb +2 -9
  81. data/lib/vapi_server_sdk/types/create_gcp_credential_dto.rb +2 -14
  82. data/lib/vapi_server_sdk/types/create_gladia_credential_dto.rb +2 -9
  83. data/lib/vapi_server_sdk/types/create_go_high_level_credential_dto.rb +2 -9
  84. data/lib/vapi_server_sdk/types/create_groq_credential_dto.rb +2 -9
  85. data/lib/vapi_server_sdk/types/create_langfuse_credential_dto.rb +2 -15
  86. data/lib/vapi_server_sdk/types/create_lmnt_credential_dto.rb +2 -9
  87. data/lib/vapi_server_sdk/types/create_make_credential_dto.rb +2 -15
  88. data/lib/vapi_server_sdk/types/create_open_ai_credential_dto.rb +2 -9
  89. data/lib/vapi_server_sdk/types/create_open_router_credential_dto.rb +2 -9
  90. data/lib/vapi_server_sdk/types/create_org_dto.rb +25 -25
  91. data/lib/vapi_server_sdk/types/create_perplexity_ai_credential_dto.rb +2 -9
  92. data/lib/vapi_server_sdk/types/create_play_ht_credential_dto.rb +2 -9
  93. data/lib/vapi_server_sdk/types/create_rime_ai_credential_dto.rb +2 -9
  94. data/lib/vapi_server_sdk/types/create_runpod_credential_dto.rb +2 -9
  95. data/lib/vapi_server_sdk/types/create_s_3_credential_dto.rb +2 -10
  96. data/lib/vapi_server_sdk/types/create_smallest_ai_credential_dto.rb +67 -0
  97. data/lib/vapi_server_sdk/types/create_tavus_credential_dto.rb +2 -9
  98. data/lib/vapi_server_sdk/types/create_together_ai_credential_dto.rb +2 -9
  99. data/lib/vapi_server_sdk/types/create_trieve_knowledge_base_dto.rb +34 -47
  100. data/lib/vapi_server_sdk/types/create_trieve_knowledge_base_dto_create_plan.rb +97 -0
  101. data/lib/vapi_server_sdk/types/create_twilio_credential_dto.rb +2 -14
  102. data/lib/vapi_server_sdk/types/create_twilio_phone_number_dto.rb +25 -29
  103. data/lib/vapi_server_sdk/types/create_vapi_phone_number_dto.rb +25 -29
  104. data/lib/vapi_server_sdk/types/create_vonage_credential_dto.rb +2 -14
  105. data/lib/vapi_server_sdk/types/create_vonage_phone_number_dto.rb +25 -29
  106. data/lib/vapi_server_sdk/types/create_webhook_credential_dto.rb +2 -13
  107. data/lib/vapi_server_sdk/types/create_workflow_dto.rb +87 -0
  108. data/lib/vapi_server_sdk/types/create_workflow_dto_nodes_item.rb +81 -0
  109. data/lib/vapi_server_sdk/types/create_x_ai_credential_dto.rb +2 -11
  110. data/lib/vapi_server_sdk/types/custom_knowledge_base.rb +2 -4
  111. data/lib/vapi_server_sdk/types/deep_seek_credential.rb +111 -0
  112. data/lib/vapi_server_sdk/types/deep_seek_model.rb +177 -0
  113. data/lib/vapi_server_sdk/types/deep_seek_model_tools_item.rb +159 -0
  114. data/lib/vapi_server_sdk/types/edge.rb +80 -0
  115. data/lib/vapi_server_sdk/types/edge_condition.rb +94 -0
  116. data/lib/vapi_server_sdk/types/eleven_labs_voice_model.rb +2 -0
  117. data/lib/vapi_server_sdk/types/fallback_cartesia_voice_model.rb +2 -0
  118. data/lib/vapi_server_sdk/types/fallback_eleven_labs_voice_model.rb +2 -0
  119. data/lib/vapi_server_sdk/types/fallback_open_ai_voice.rb +4 -4
  120. data/lib/vapi_server_sdk/types/fallback_open_ai_voice_id.rb +2 -2
  121. data/lib/vapi_server_sdk/types/fallback_plan_voices_item.rb +13 -0
  122. data/lib/vapi_server_sdk/types/fallback_smallest_ai_voice.rb +95 -0
  123. data/lib/vapi_server_sdk/types/fallback_smallest_ai_voice_id.rb +53 -0
  124. data/lib/vapi_server_sdk/types/fallback_smallest_ai_voice_id_enum.rb +31 -0
  125. data/lib/vapi_server_sdk/types/function_tool_with_tool_call.rb +1 -10
  126. data/lib/vapi_server_sdk/types/gather.rb +87 -0
  127. data/lib/vapi_server_sdk/types/gemini_multimodal_live_prebuilt_voice_config.rb +58 -0
  128. data/lib/vapi_server_sdk/types/gemini_multimodal_live_prebuilt_voice_config_voice_name.rb +11 -0
  129. data/lib/vapi_server_sdk/types/gemini_multimodal_live_speech_config.rb +61 -0
  130. data/lib/vapi_server_sdk/types/gemini_multimodal_live_voice_config.rb +61 -0
  131. data/lib/vapi_server_sdk/types/ghl_tool_with_tool_call.rb +1 -9
  132. data/lib/vapi_server_sdk/types/google_model.rb +17 -1
  133. data/lib/vapi_server_sdk/types/google_model_model.rb +2 -0
  134. data/lib/vapi_server_sdk/types/google_realtime_config.rb +121 -0
  135. data/lib/vapi_server_sdk/types/groq_model_model.rb +1 -3
  136. data/lib/vapi_server_sdk/types/import_twilio_phone_number_dto.rb +25 -29
  137. data/lib/vapi_server_sdk/types/import_vonage_phone_number_dto.rb +25 -29
  138. data/lib/vapi_server_sdk/types/json_schema.rb +13 -2
  139. data/lib/vapi_server_sdk/types/log.rb +18 -18
  140. data/lib/vapi_server_sdk/types/make_tool_with_tool_call.rb +1 -9
  141. data/lib/vapi_server_sdk/types/open_ai_model_fallback_models_item.rb +6 -0
  142. data/lib/vapi_server_sdk/types/open_ai_model_model.rb +6 -0
  143. data/lib/vapi_server_sdk/types/open_ai_voice.rb +4 -4
  144. data/lib/vapi_server_sdk/types/open_ai_voice_id.rb +2 -2
  145. data/lib/vapi_server_sdk/types/org.rb +25 -25
  146. data/lib/vapi_server_sdk/types/org_with_org_user.rb +25 -25
  147. data/lib/vapi_server_sdk/types/{subscription_concurrency_line_remove_dto.rb → programmatic_edge_condition.rb} +16 -14
  148. data/lib/vapi_server_sdk/types/say.rb +72 -0
  149. data/lib/vapi_server_sdk/types/{payment_retry_dto.rb → semantic_edge_condition.rb} +16 -14
  150. data/lib/vapi_server_sdk/types/server_message_end_of_call_report_ended_reason.rb +44 -29
  151. data/lib/vapi_server_sdk/types/server_message_status_update.rb +11 -1
  152. data/lib/vapi_server_sdk/types/server_message_status_update_ended_reason.rb +44 -29
  153. data/lib/vapi_server_sdk/types/server_message_tool_calls_tool_with_tool_call_list_item.rb +116 -77
  154. data/lib/vapi_server_sdk/types/smallest_ai_credential.rb +111 -0
  155. data/lib/vapi_server_sdk/types/smallest_ai_voice.rb +117 -0
  156. data/lib/vapi_server_sdk/types/smallest_ai_voice_id.rb +53 -0
  157. data/lib/vapi_server_sdk/types/smallest_ai_voice_id_enum.rb +31 -0
  158. data/lib/vapi_server_sdk/types/subscription.rb +13 -11
  159. data/lib/vapi_server_sdk/types/sync_voice_library_dto_providers_item.rb +1 -0
  160. data/lib/vapi_server_sdk/types/text_editor_tool_with_tool_call.rb +175 -0
  161. data/lib/vapi_server_sdk/types/text_editor_tool_with_tool_call_messages_item.rb +121 -0
  162. data/lib/vapi_server_sdk/types/transfer_plan.rb +26 -6
  163. data/lib/vapi_server_sdk/types/transfer_plan_message.rb +2 -1
  164. data/lib/vapi_server_sdk/types/trieve_knowledge_base.rb +35 -44
  165. data/lib/vapi_server_sdk/types/{trieve_knowledge_base_vector_store_create_plan.rb → trieve_knowledge_base_chunk_plan.rb} +17 -11
  166. data/lib/vapi_server_sdk/types/trieve_knowledge_base_create.rb +59 -0
  167. data/lib/vapi_server_sdk/types/trieve_knowledge_base_create_plan.rb +96 -0
  168. data/lib/vapi_server_sdk/types/{subscription_concurrency_line_buy_dto.rb → trieve_knowledge_base_import.rb} +14 -14
  169. data/lib/vapi_server_sdk/types/{trieve_knowledge_base_vector_store_search_plan.rb → trieve_knowledge_base_search_plan.rb} +9 -11
  170. data/lib/vapi_server_sdk/types/{trieve_knowledge_base_vector_store_search_plan_search_type.rb → trieve_knowledge_base_search_plan_search_type.rb} +1 -1
  171. data/lib/vapi_server_sdk/types/twilio_phone_number.rb +25 -29
  172. data/lib/vapi_server_sdk/types/update_anthropic_credential_dto.rb +4 -11
  173. data/lib/vapi_server_sdk/types/update_anyscale_credential_dto.rb +4 -11
  174. data/lib/vapi_server_sdk/types/update_assembly_ai_credential_dto.rb +4 -11
  175. data/lib/vapi_server_sdk/types/update_azure_credential_dto.rb +24 -14
  176. data/lib/vapi_server_sdk/types/update_azure_credential_dto_region.rb +5 -3
  177. data/lib/vapi_server_sdk/types/update_azure_credential_dto_service.rb +9 -0
  178. data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto.rb +25 -24
  179. data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto_region.rb +5 -3
  180. data/lib/vapi_server_sdk/types/update_bash_tool_dto.rb +161 -0
  181. data/lib/vapi_server_sdk/types/update_bash_tool_dto_messages_item.rb +120 -0
  182. data/lib/vapi_server_sdk/types/update_byo_phone_number_dto.rb +187 -0
  183. data/lib/vapi_server_sdk/types/update_byo_phone_number_dto_fallback_destination.rb +101 -0
  184. data/lib/vapi_server_sdk/types/update_byo_sip_trunk_credential_dto.rb +13 -21
  185. data/lib/vapi_server_sdk/types/update_cartesia_credential_dto.rb +4 -11
  186. data/lib/vapi_server_sdk/types/update_cerebras_credential_dto.rb +67 -0
  187. data/lib/vapi_server_sdk/types/update_cloudflare_credential_dto.rb +101 -0
  188. data/lib/vapi_server_sdk/types/update_computer_tool_dto.rb +185 -0
  189. data/lib/vapi_server_sdk/types/update_computer_tool_dto_messages_item.rb +120 -0
  190. data/lib/vapi_server_sdk/types/update_conversation_block_dto.rb +206 -0
  191. data/lib/vapi_server_sdk/types/update_conversation_block_dto_messages_item.rb +95 -0
  192. data/lib/vapi_server_sdk/types/update_custom_knowledge_base_dto.rb +137 -0
  193. data/lib/vapi_server_sdk/types/update_custom_llm_credential_dto.rb +4 -16
  194. data/lib/vapi_server_sdk/types/update_deep_infra_credential_dto.rb +4 -11
  195. data/lib/vapi_server_sdk/types/update_deep_seek_credential_dto.rb +67 -0
  196. data/lib/vapi_server_sdk/types/update_deepgram_credential_dto.rb +11 -18
  197. data/lib/vapi_server_sdk/types/update_dtmf_tool_dto.rb +139 -0
  198. data/lib/vapi_server_sdk/types/update_dtmf_tool_dto_messages_item.rb +120 -0
  199. data/lib/vapi_server_sdk/types/update_eleven_labs_credential_dto.rb +11 -11
  200. data/lib/vapi_server_sdk/types/update_end_call_tool_dto.rb +139 -0
  201. data/lib/vapi_server_sdk/types/update_end_call_tool_dto_messages_item.rb +120 -0
  202. data/lib/vapi_server_sdk/types/update_function_tool_dto.rb +139 -0
  203. data/lib/vapi_server_sdk/types/update_function_tool_dto_messages_item.rb +120 -0
  204. data/lib/vapi_server_sdk/types/update_gcp_credential_dto.rb +11 -23
  205. data/lib/vapi_server_sdk/types/update_ghl_tool_dto.rb +159 -0
  206. data/lib/vapi_server_sdk/types/update_ghl_tool_dto_messages_item.rb +120 -0
  207. data/lib/vapi_server_sdk/types/update_gladia_credential_dto.rb +4 -11
  208. data/lib/vapi_server_sdk/types/update_go_high_level_credential_dto.rb +4 -11
  209. data/lib/vapi_server_sdk/types/update_google_credential_dto.rb +4 -13
  210. data/lib/vapi_server_sdk/types/update_groq_credential_dto.rb +4 -11
  211. data/lib/vapi_server_sdk/types/update_inflection_ai_credential_dto.rb +4 -13
  212. data/lib/vapi_server_sdk/types/update_langfuse_credential_dto.rb +8 -21
  213. data/lib/vapi_server_sdk/types/update_lmnt_credential_dto.rb +4 -11
  214. data/lib/vapi_server_sdk/types/update_make_credential_dto.rb +8 -21
  215. data/lib/vapi_server_sdk/types/update_make_tool_dto.rb +159 -0
  216. data/lib/vapi_server_sdk/types/update_make_tool_dto_messages_item.rb +120 -0
  217. data/lib/vapi_server_sdk/types/update_open_ai_credential_dto.rb +4 -11
  218. data/lib/vapi_server_sdk/types/update_open_router_credential_dto.rb +4 -11
  219. data/lib/vapi_server_sdk/types/update_org_dto.rb +25 -25
  220. data/lib/vapi_server_sdk/types/update_output_tool_dto.rb +139 -0
  221. data/lib/vapi_server_sdk/types/update_output_tool_dto_messages_item.rb +120 -0
  222. data/lib/vapi_server_sdk/types/update_perplexity_ai_credential_dto.rb +4 -11
  223. data/lib/vapi_server_sdk/types/update_play_ht_credential_dto.rb +11 -18
  224. data/lib/vapi_server_sdk/types/update_rime_ai_credential_dto.rb +4 -11
  225. data/lib/vapi_server_sdk/types/update_runpod_credential_dto.rb +4 -11
  226. data/lib/vapi_server_sdk/types/update_s_3_credential_dto.rb +12 -20
  227. data/lib/vapi_server_sdk/types/update_smallest_ai_credential_dto.rb +67 -0
  228. data/lib/vapi_server_sdk/types/update_tavus_credential_dto.rb +4 -11
  229. data/lib/vapi_server_sdk/types/update_text_editor_tool_dto.rb +161 -0
  230. data/lib/vapi_server_sdk/types/update_text_editor_tool_dto_messages_item.rb +120 -0
  231. data/lib/vapi_server_sdk/types/update_together_ai_credential_dto.rb +4 -11
  232. data/lib/vapi_server_sdk/types/update_token_dto.rb +81 -0
  233. data/lib/vapi_server_sdk/types/update_token_dto_tag.rb +9 -0
  234. data/lib/vapi_server_sdk/types/update_tool_call_block_dto.rb +168 -0
  235. data/lib/vapi_server_sdk/types/update_tool_call_block_dto_messages_item.rb +94 -0
  236. data/lib/vapi_server_sdk/types/update_tool_call_block_dto_tool.rb +161 -0
  237. data/lib/vapi_server_sdk/types/update_transfer_call_tool_dto.rb +161 -0
  238. data/lib/vapi_server_sdk/types/update_transfer_call_tool_dto_destinations_item.rb +121 -0
  239. data/lib/vapi_server_sdk/types/update_transfer_call_tool_dto_messages_item.rb +121 -0
  240. data/lib/vapi_server_sdk/types/update_trieve_knowledge_base_dto.rb +96 -0
  241. data/lib/vapi_server_sdk/types/update_trieve_knowledge_base_dto_create_plan.rb +97 -0
  242. data/lib/vapi_server_sdk/types/update_twilio_credential_dto.rb +11 -23
  243. data/lib/vapi_server_sdk/types/update_twilio_phone_number_dto.rb +163 -0
  244. data/lib/vapi_server_sdk/types/update_twilio_phone_number_dto_fallback_destination.rb +101 -0
  245. data/lib/vapi_server_sdk/types/update_vapi_phone_number_dto.rb +169 -0
  246. data/lib/vapi_server_sdk/types/update_vapi_phone_number_dto_fallback_destination.rb +101 -0
  247. data/lib/vapi_server_sdk/types/update_vonage_credential_dto.rb +11 -23
  248. data/lib/vapi_server_sdk/types/update_vonage_phone_number_dto.rb +157 -0
  249. data/lib/vapi_server_sdk/types/update_vonage_phone_number_dto_fallback_destination.rb +101 -0
  250. data/lib/vapi_server_sdk/types/update_workflow_block_dto.rb +154 -0
  251. data/lib/vapi_server_sdk/types/update_workflow_block_dto_messages_item.rb +94 -0
  252. data/lib/vapi_server_sdk/types/update_workflow_block_dto_steps_item.rb +94 -0
  253. data/lib/vapi_server_sdk/types/update_workflow_dto.rb +82 -0
  254. data/lib/vapi_server_sdk/types/update_workflow_dto_nodes_item.rb +81 -0
  255. data/lib/vapi_server_sdk/types/update_x_ai_credential_dto.rb +4 -13
  256. data/lib/vapi_server_sdk/types/vapi_model.rb +27 -1
  257. data/lib/vapi_server_sdk/types/vapi_phone_number.rb +25 -29
  258. data/lib/vapi_server_sdk/types/vonage_phone_number.rb +25 -29
  259. data/lib/vapi_server_sdk/types/workflow.rb +125 -0
  260. data/lib/vapi_server_sdk/types/workflow_nodes_item.rb +81 -0
  261. metadata +116 -24
  262. data/lib/vapi_server_sdk/blocks/types/update_block_dto_messages_item.rb +0 -96
  263. data/lib/vapi_server_sdk/blocks/types/update_block_dto_steps_item.rb +0 -96
  264. data/lib/vapi_server_sdk/blocks/types/update_block_dto_tool.rb +0 -163
  265. data/lib/vapi_server_sdk/phone_numbers/types/update_phone_number_dto_fallback_destination.rb +0 -103
  266. data/lib/vapi_server_sdk/tools/types/update_tool_dto_messages_item.rb +0 -122
  267. data/lib/vapi_server_sdk/types/auto_reload_plan_dto.rb +0 -65
  268. data/lib/vapi_server_sdk/types/hipaa_buy_dto.rb +0 -65
  269. data/lib/vapi_server_sdk/types/payment.rb +0 -167
  270. data/lib/vapi_server_sdk/types/payment_status.rb +0 -11
  271. data/lib/vapi_server_sdk/types/payments_paginated_response.rb +0 -75
  272. data/lib/vapi_server_sdk/types/subscription_coupon_add_dto.rb +0 -67
  273. data/lib/vapi_server_sdk/types/subscription_monthly_charge.rb +0 -65
@@ -0,0 +1,177 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "open_ai_message"
4
+ require_relative "deep_seek_model_tools_item"
5
+ require_relative "create_custom_knowledge_base_dto"
6
+ require "ostruct"
7
+ require "json"
8
+
9
+ module Vapi
10
+ class DeepSeekModel
11
+ # @return [Array<Vapi::OpenAiMessage>] This is the starting state for the conversation.
12
+ attr_reader :messages
13
+ # @return [Array<Vapi::DeepSeekModelToolsItem>] These are the tools that the assistant can use during the call. To use existing
14
+ # tools, use `toolIds`.
15
+ # Both `tools` and `toolIds` can be used together.
16
+ attr_reader :tools
17
+ # @return [Array<String>] These are the tools that the assistant can use during the call. To use transient
18
+ # tools, use `tools`.
19
+ # Both `tools` and `toolIds` can be used together.
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
25
+ # @return [String] This is the name of the model. Ex. cognitivecomputations/dolphin-mixtral-8x7b
26
+ attr_reader :model
27
+ # @return [Float] This is the temperature that will be used for calls. Default is 0 to leverage
28
+ # caching for lower latency.
29
+ attr_reader :temperature
30
+ # @return [Float] This is the max number of tokens that the assistant will be allowed to generate
31
+ # in each turn of the conversation. Default is 250.
32
+ attr_reader :max_tokens
33
+ # @return [Boolean] This determines whether we detect user's emotion while they speak and send it as
34
+ # an additional info to model.
35
+ # Default `false` because the model is usually are good at understanding the
36
+ # user's emotion from text.
37
+ # @default false
38
+ attr_reader :emotion_recognition_enabled
39
+ # @return [Float] This sets how many turns at the start of the conversation to use a smaller,
40
+ # faster model from the same provider before switching to the primary model.
41
+ # Example, gpt-3.5-turbo if provider is openai.
42
+ # Default is 0.
43
+ # @default 0
44
+ attr_reader :num_fast_turns
45
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
46
+ attr_reader :additional_properties
47
+ # @return [Object]
48
+ attr_reader :_field_set
49
+ protected :_field_set
50
+
51
+ OMIT = Object.new
52
+
53
+ # @param messages [Array<Vapi::OpenAiMessage>] This is the starting state for the conversation.
54
+ # @param tools [Array<Vapi::DeepSeekModelToolsItem>] These are the tools that the assistant can use during the call. To use existing
55
+ # tools, use `toolIds`.
56
+ # Both `tools` and `toolIds` can be used together.
57
+ # @param tool_ids [Array<String>] These are the tools that the assistant can use during the call. To use transient
58
+ # tools, use `tools`.
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.
62
+ # @param model [String] This is the name of the model. Ex. cognitivecomputations/dolphin-mixtral-8x7b
63
+ # @param temperature [Float] This is the temperature that will be used for calls. Default is 0 to leverage
64
+ # caching for lower latency.
65
+ # @param max_tokens [Float] This is the max number of tokens that the assistant will be allowed to generate
66
+ # in each turn of the conversation. Default is 250.
67
+ # @param emotion_recognition_enabled [Boolean] This determines whether we detect user's emotion while they speak and send it as
68
+ # an additional info to model.
69
+ # Default `false` because the model is usually are good at understanding the
70
+ # user's emotion from text.
71
+ # @default false
72
+ # @param num_fast_turns [Float] This sets how many turns at the start of the conversation to use a smaller,
73
+ # faster model from the same provider before switching to the primary model.
74
+ # Example, gpt-3.5-turbo if provider is openai.
75
+ # Default is 0.
76
+ # @default 0
77
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
78
+ # @return [Vapi::DeepSeekModel]
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)
81
+ @messages = messages if messages != OMIT
82
+ @tools = tools if tools != OMIT
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
86
+ @model = model
87
+ @temperature = temperature if temperature != OMIT
88
+ @max_tokens = max_tokens if max_tokens != OMIT
89
+ @emotion_recognition_enabled = emotion_recognition_enabled if emotion_recognition_enabled != OMIT
90
+ @num_fast_turns = num_fast_turns if num_fast_turns != OMIT
91
+ @additional_properties = additional_properties
92
+ @_field_set = {
93
+ "messages": messages,
94
+ "tools": tools,
95
+ "toolIds": tool_ids,
96
+ "knowledgeBase": knowledge_base,
97
+ "knowledgeBaseId": knowledge_base_id,
98
+ "model": model,
99
+ "temperature": temperature,
100
+ "maxTokens": max_tokens,
101
+ "emotionRecognitionEnabled": emotion_recognition_enabled,
102
+ "numFastTurns": num_fast_turns
103
+ }.reject do |_k, v|
104
+ v == OMIT
105
+ end
106
+ end
107
+
108
+ # Deserialize a JSON object to an instance of DeepSeekModel
109
+ #
110
+ # @param json_object [String]
111
+ # @return [Vapi::DeepSeekModel]
112
+ def self.from_json(json_object:)
113
+ struct = JSON.parse(json_object, object_class: OpenStruct)
114
+ parsed_json = JSON.parse(json_object)
115
+ messages = parsed_json["messages"]&.map do |item|
116
+ item = item.to_json
117
+ Vapi::OpenAiMessage.from_json(json_object: item)
118
+ end
119
+ tools = parsed_json["tools"]&.map do |item|
120
+ item = item.to_json
121
+ Vapi::DeepSeekModelToolsItem.from_json(json_object: item)
122
+ end
123
+ tool_ids = parsed_json["toolIds"]
124
+ if parsed_json["knowledgeBase"].nil?
125
+ knowledge_base = nil
126
+ else
127
+ knowledge_base = parsed_json["knowledgeBase"].to_json
128
+ knowledge_base = Vapi::CreateCustomKnowledgeBaseDto.from_json(json_object: knowledge_base)
129
+ end
130
+ knowledge_base_id = parsed_json["knowledgeBaseId"]
131
+ model = parsed_json["model"]
132
+ temperature = parsed_json["temperature"]
133
+ max_tokens = parsed_json["maxTokens"]
134
+ emotion_recognition_enabled = parsed_json["emotionRecognitionEnabled"]
135
+ num_fast_turns = parsed_json["numFastTurns"]
136
+ new(
137
+ messages: messages,
138
+ tools: tools,
139
+ tool_ids: tool_ids,
140
+ knowledge_base: knowledge_base,
141
+ knowledge_base_id: knowledge_base_id,
142
+ model: model,
143
+ temperature: temperature,
144
+ max_tokens: max_tokens,
145
+ emotion_recognition_enabled: emotion_recognition_enabled,
146
+ num_fast_turns: num_fast_turns,
147
+ additional_properties: struct
148
+ )
149
+ end
150
+
151
+ # Serialize an instance of DeepSeekModel to a JSON object
152
+ #
153
+ # @return [String]
154
+ def to_json(*_args)
155
+ @_field_set&.to_json
156
+ end
157
+
158
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
159
+ # hash and check each fields type against the current object's property
160
+ # definitions.
161
+ #
162
+ # @param obj [Object]
163
+ # @return [Void]
164
+ def self.validate_raw(obj:)
165
+ obj.messages&.is_a?(Array) != false || raise("Passed value for field obj.messages is not the expected type, validation failed.")
166
+ obj.tools&.is_a?(Array) != false || raise("Passed value for field obj.tools is not the expected type, validation failed.")
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.")
170
+ obj.model.is_a?(String) != false || raise("Passed value for field obj.model is not the expected type, validation failed.")
171
+ obj.temperature&.is_a?(Float) != false || raise("Passed value for field obj.temperature is not the expected type, validation failed.")
172
+ obj.max_tokens&.is_a?(Float) != false || raise("Passed value for field obj.max_tokens is not the expected type, validation failed.")
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.")
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.")
175
+ end
176
+ end
177
+ end
@@ -0,0 +1,159 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "json"
4
+ require_relative "create_dtmf_tool_dto"
5
+ require_relative "create_end_call_tool_dto"
6
+ require_relative "create_voicemail_tool_dto"
7
+ require_relative "create_function_tool_dto"
8
+ require_relative "create_ghl_tool_dto"
9
+ require_relative "create_make_tool_dto"
10
+ require_relative "create_transfer_call_tool_dto"
11
+
12
+ module Vapi
13
+ class DeepSeekModelToolsItem
14
+ # @return [Object]
15
+ attr_reader :member
16
+ # @return [String]
17
+ attr_reader :discriminant
18
+
19
+ private_class_method :new
20
+ alias kind_of? is_a?
21
+
22
+ # @param member [Object]
23
+ # @param discriminant [String]
24
+ # @return [Vapi::DeepSeekModelToolsItem]
25
+ def initialize(member:, discriminant:)
26
+ @member = member
27
+ @discriminant = discriminant
28
+ end
29
+
30
+ # Deserialize a JSON object to an instance of DeepSeekModelToolsItem
31
+ #
32
+ # @param json_object [String]
33
+ # @return [Vapi::DeepSeekModelToolsItem]
34
+ def self.from_json(json_object:)
35
+ struct = JSON.parse(json_object, object_class: OpenStruct)
36
+ member = case struct.type
37
+ when "dtmf"
38
+ Vapi::CreateDtmfToolDto.from_json(json_object: json_object)
39
+ when "endCall"
40
+ Vapi::CreateEndCallToolDto.from_json(json_object: json_object)
41
+ when "voicemail"
42
+ Vapi::CreateVoicemailToolDto.from_json(json_object: json_object)
43
+ when "function"
44
+ Vapi::CreateFunctionToolDto.from_json(json_object: json_object)
45
+ when "ghl"
46
+ Vapi::CreateGhlToolDto.from_json(json_object: json_object)
47
+ when "make"
48
+ Vapi::CreateMakeToolDto.from_json(json_object: json_object)
49
+ when "transferCall"
50
+ Vapi::CreateTransferCallToolDto.from_json(json_object: json_object)
51
+ else
52
+ Vapi::CreateDtmfToolDto.from_json(json_object: json_object)
53
+ end
54
+ new(member: member, discriminant: struct.type)
55
+ end
56
+
57
+ # For Union Types, to_json functionality is delegated to the wrapped member.
58
+ #
59
+ # @return [String]
60
+ def to_json(*_args)
61
+ case @discriminant
62
+ when "dtmf"
63
+ { **@member.to_json, type: @discriminant }.to_json
64
+ when "endCall"
65
+ { **@member.to_json, type: @discriminant }.to_json
66
+ when "voicemail"
67
+ { **@member.to_json, type: @discriminant }.to_json
68
+ when "function"
69
+ { **@member.to_json, type: @discriminant }.to_json
70
+ when "ghl"
71
+ { **@member.to_json, type: @discriminant }.to_json
72
+ when "make"
73
+ { **@member.to_json, type: @discriminant }.to_json
74
+ when "transferCall"
75
+ { **@member.to_json, type: @discriminant }.to_json
76
+ else
77
+ { "type": @discriminant, value: @member }.to_json
78
+ end
79
+ @member.to_json
80
+ end
81
+
82
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
83
+ # hash and check each fields type against the current object's property
84
+ # definitions.
85
+ #
86
+ # @param obj [Object]
87
+ # @return [Void]
88
+ def self.validate_raw(obj:)
89
+ case obj.type
90
+ when "dtmf"
91
+ Vapi::CreateDtmfToolDto.validate_raw(obj: obj)
92
+ when "endCall"
93
+ Vapi::CreateEndCallToolDto.validate_raw(obj: obj)
94
+ when "voicemail"
95
+ Vapi::CreateVoicemailToolDto.validate_raw(obj: obj)
96
+ when "function"
97
+ Vapi::CreateFunctionToolDto.validate_raw(obj: obj)
98
+ when "ghl"
99
+ Vapi::CreateGhlToolDto.validate_raw(obj: obj)
100
+ when "make"
101
+ Vapi::CreateMakeToolDto.validate_raw(obj: obj)
102
+ when "transferCall"
103
+ Vapi::CreateTransferCallToolDto.validate_raw(obj: obj)
104
+ else
105
+ raise("Passed value matched no type within the union, validation failed.")
106
+ end
107
+ end
108
+
109
+ # For Union Types, is_a? functionality is delegated to the wrapped member.
110
+ #
111
+ # @param obj [Object]
112
+ # @return [Boolean]
113
+ def is_a?(obj)
114
+ @member.is_a?(obj)
115
+ end
116
+
117
+ # @param member [Vapi::CreateDtmfToolDto]
118
+ # @return [Vapi::DeepSeekModelToolsItem]
119
+ def self.dtmf(member:)
120
+ new(member: member, discriminant: "dtmf")
121
+ end
122
+
123
+ # @param member [Vapi::CreateEndCallToolDto]
124
+ # @return [Vapi::DeepSeekModelToolsItem]
125
+ def self.end_call(member:)
126
+ new(member: member, discriminant: "endCall")
127
+ end
128
+
129
+ # @param member [Vapi::CreateVoicemailToolDto]
130
+ # @return [Vapi::DeepSeekModelToolsItem]
131
+ def self.voicemail(member:)
132
+ new(member: member, discriminant: "voicemail")
133
+ end
134
+
135
+ # @param member [Vapi::CreateFunctionToolDto]
136
+ # @return [Vapi::DeepSeekModelToolsItem]
137
+ def self.function(member:)
138
+ new(member: member, discriminant: "function")
139
+ end
140
+
141
+ # @param member [Vapi::CreateGhlToolDto]
142
+ # @return [Vapi::DeepSeekModelToolsItem]
143
+ def self.ghl(member:)
144
+ new(member: member, discriminant: "ghl")
145
+ end
146
+
147
+ # @param member [Vapi::CreateMakeToolDto]
148
+ # @return [Vapi::DeepSeekModelToolsItem]
149
+ def self.make(member:)
150
+ new(member: member, discriminant: "make")
151
+ end
152
+
153
+ # @param member [Vapi::CreateTransferCallToolDto]
154
+ # @return [Vapi::DeepSeekModelToolsItem]
155
+ def self.transfer_call(member:)
156
+ new(member: member, discriminant: "transferCall")
157
+ end
158
+ end
159
+ end
@@ -0,0 +1,80 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "edge_condition"
4
+ require "ostruct"
5
+ require "json"
6
+
7
+ module Vapi
8
+ class Edge
9
+ # @return [Vapi::EdgeCondition]
10
+ attr_reader :condition
11
+ # @return [String]
12
+ attr_reader :from
13
+ # @return [String]
14
+ attr_reader :to
15
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
16
+ attr_reader :additional_properties
17
+ # @return [Object]
18
+ attr_reader :_field_set
19
+ protected :_field_set
20
+
21
+ OMIT = Object.new
22
+
23
+ # @param condition [Vapi::EdgeCondition]
24
+ # @param from [String]
25
+ # @param to [String]
26
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
27
+ # @return [Vapi::Edge]
28
+ def initialize(from:, to:, condition: OMIT, additional_properties: nil)
29
+ @condition = condition if condition != OMIT
30
+ @from = from
31
+ @to = to
32
+ @additional_properties = additional_properties
33
+ @_field_set = { "condition": condition, "from": from, "to": to }.reject do |_k, v|
34
+ v == OMIT
35
+ end
36
+ end
37
+
38
+ # Deserialize a JSON object to an instance of Edge
39
+ #
40
+ # @param json_object [String]
41
+ # @return [Vapi::Edge]
42
+ def self.from_json(json_object:)
43
+ struct = JSON.parse(json_object, object_class: OpenStruct)
44
+ parsed_json = JSON.parse(json_object)
45
+ if parsed_json["condition"].nil?
46
+ condition = nil
47
+ else
48
+ condition = parsed_json["condition"].to_json
49
+ condition = Vapi::EdgeCondition.from_json(json_object: condition)
50
+ end
51
+ from = parsed_json["from"]
52
+ to = parsed_json["to"]
53
+ new(
54
+ condition: condition,
55
+ from: from,
56
+ to: to,
57
+ additional_properties: struct
58
+ )
59
+ end
60
+
61
+ # Serialize an instance of Edge to a JSON object
62
+ #
63
+ # @return [String]
64
+ def to_json(*_args)
65
+ @_field_set&.to_json
66
+ end
67
+
68
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
69
+ # hash and check each fields type against the current object's property
70
+ # definitions.
71
+ #
72
+ # @param obj [Object]
73
+ # @return [Void]
74
+ def self.validate_raw(obj:)
75
+ obj.condition.nil? || Vapi::EdgeCondition.validate_raw(obj: obj.condition)
76
+ obj.from.is_a?(String) != false || raise("Passed value for field obj.from is not the expected type, validation failed.")
77
+ obj.to.is_a?(String) != false || raise("Passed value for field obj.to is not the expected type, validation failed.")
78
+ end
79
+ end
80
+ end
@@ -0,0 +1,94 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "json"
4
+ require_relative "semantic_edge_condition"
5
+ require_relative "programmatic_edge_condition"
6
+
7
+ module Vapi
8
+ class EdgeCondition
9
+ # @return [Object]
10
+ attr_reader :member
11
+ # @return [String]
12
+ attr_reader :discriminant
13
+
14
+ private_class_method :new
15
+ alias kind_of? is_a?
16
+
17
+ # @param member [Object]
18
+ # @param discriminant [String]
19
+ # @return [Vapi::EdgeCondition]
20
+ def initialize(member:, discriminant:)
21
+ @member = member
22
+ @discriminant = discriminant
23
+ end
24
+
25
+ # Deserialize a JSON object to an instance of EdgeCondition
26
+ #
27
+ # @param json_object [String]
28
+ # @return [Vapi::EdgeCondition]
29
+ def self.from_json(json_object:)
30
+ struct = JSON.parse(json_object, object_class: OpenStruct)
31
+ member = case struct.type
32
+ when "semantic"
33
+ Vapi::SemanticEdgeCondition.from_json(json_object: json_object)
34
+ when "programmatic"
35
+ Vapi::ProgrammaticEdgeCondition.from_json(json_object: json_object)
36
+ else
37
+ Vapi::SemanticEdgeCondition.from_json(json_object: json_object)
38
+ end
39
+ new(member: member, discriminant: struct.type)
40
+ end
41
+
42
+ # For Union Types, to_json functionality is delegated to the wrapped member.
43
+ #
44
+ # @return [String]
45
+ def to_json(*_args)
46
+ case @discriminant
47
+ when "semantic"
48
+ { **@member.to_json, type: @discriminant }.to_json
49
+ when "programmatic"
50
+ { **@member.to_json, type: @discriminant }.to_json
51
+ else
52
+ { "type": @discriminant, value: @member }.to_json
53
+ end
54
+ @member.to_json
55
+ end
56
+
57
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
58
+ # hash and check each fields type against the current object's property
59
+ # definitions.
60
+ #
61
+ # @param obj [Object]
62
+ # @return [Void]
63
+ def self.validate_raw(obj:)
64
+ case obj.type
65
+ when "semantic"
66
+ Vapi::SemanticEdgeCondition.validate_raw(obj: obj)
67
+ when "programmatic"
68
+ Vapi::ProgrammaticEdgeCondition.validate_raw(obj: obj)
69
+ else
70
+ raise("Passed value matched no type within the union, validation failed.")
71
+ end
72
+ end
73
+
74
+ # For Union Types, is_a? functionality is delegated to the wrapped member.
75
+ #
76
+ # @param obj [Object]
77
+ # @return [Boolean]
78
+ def is_a?(obj)
79
+ @member.is_a?(obj)
80
+ end
81
+
82
+ # @param member [Vapi::SemanticEdgeCondition]
83
+ # @return [Vapi::EdgeCondition]
84
+ def self.semantic(member:)
85
+ new(member: member, discriminant: "semantic")
86
+ end
87
+
88
+ # @param member [Vapi::ProgrammaticEdgeCondition]
89
+ # @return [Vapi::EdgeCondition]
90
+ def self.programmatic(member:)
91
+ new(member: member, discriminant: "programmatic")
92
+ end
93
+ end
94
+ end
@@ -7,6 +7,8 @@ module Vapi
7
7
  ELEVEN_MULTILINGUAL_V_2 = "eleven_multilingual_v2"
8
8
  ELEVEN_TURBO_V_2 = "eleven_turbo_v2"
9
9
  ELEVEN_TURBO_V_2_5 = "eleven_turbo_v2_5"
10
+ ELEVEN_FLASH_V_2 = "eleven_flash_v2"
11
+ ELEVEN_FLASH_V_2_5 = "eleven_flash_v2_5"
10
12
  ELEVEN_MONOLINGUAL_V_1 = "eleven_monolingual_v1"
11
13
  end
12
14
  end
@@ -6,5 +6,7 @@ module Vapi
6
6
  class FallbackCartesiaVoiceModel
7
7
  SONIC_ENGLISH = "sonic-english"
8
8
  SONIC_MULTILINGUAL = "sonic-multilingual"
9
+ SONIC_PREVIEW = "sonic-preview"
10
+ SONIC = "sonic"
9
11
  end
10
12
  end
@@ -7,6 +7,8 @@ module Vapi
7
7
  ELEVEN_MULTILINGUAL_V_2 = "eleven_multilingual_v2"
8
8
  ELEVEN_TURBO_V_2 = "eleven_turbo_v2"
9
9
  ELEVEN_TURBO_V_2_5 = "eleven_turbo_v2_5"
10
+ ELEVEN_FLASH_V_2 = "eleven_flash_v2"
11
+ ELEVEN_FLASH_V_2_5 = "eleven_flash_v2_5"
10
12
  ELEVEN_MONOLINGUAL_V_1 = "eleven_monolingual_v1"
11
13
  end
12
14
  end
@@ -8,8 +8,8 @@ require "json"
8
8
  module Vapi
9
9
  class FallbackOpenAiVoice
10
10
  # @return [Vapi::FallbackOpenAiVoiceId] This is the provider-specific ID that will be used.
11
- # Please note that ash, ballad, coral, sage, and verse may only be used with the
12
- # `gpt-4o-realtime-preview-2024-10-01` model.
11
+ # Please note that ash, ballad, coral, sage, and verse may only be used with
12
+ # realtime models.
13
13
  attr_reader :voice_id
14
14
  # @return [Float] This is the speed multiplier that will be used.
15
15
  attr_reader :speed
@@ -25,8 +25,8 @@ module Vapi
25
25
  OMIT = Object.new
26
26
 
27
27
  # @param voice_id [Vapi::FallbackOpenAiVoiceId] This is the provider-specific ID that will be used.
28
- # Please note that ash, ballad, coral, sage, and verse may only be used with the
29
- # `gpt-4o-realtime-preview-2024-10-01` model.
28
+ # Please note that ash, ballad, coral, sage, and verse may only be used with
29
+ # realtime models.
30
30
  # @param speed [Float] This is the speed multiplier that will be used.
31
31
  # @param chunk_plan [Vapi::ChunkPlan] This is the plan for chunking the model output before it is sent to the voice
32
32
  # provider.
@@ -2,8 +2,8 @@
2
2
 
3
3
  module Vapi
4
4
  # This is the provider-specific ID that will be used.
5
- # Please note that ash, ballad, coral, sage, and verse may only be used with the
6
- # `gpt-4o-realtime-preview-2024-10-01` model.
5
+ # Please note that ash, ballad, coral, sage, and verse may only be used with
6
+ # realtime models.
7
7
  class FallbackOpenAiVoiceId
8
8
  ALLOY = "alloy"
9
9
  ECHO = "echo"
@@ -11,6 +11,7 @@ require_relative "fallback_neets_voice"
11
11
  require_relative "fallback_open_ai_voice"
12
12
  require_relative "fallback_play_ht_voice"
13
13
  require_relative "fallback_rime_ai_voice"
14
+ require_relative "fallback_smallest_ai_voice"
14
15
  require_relative "fallback_tavus_voice"
15
16
 
16
17
  module Vapi
@@ -58,6 +59,8 @@ module Vapi
58
59
  Vapi::FallbackPlayHtVoice.from_json(json_object: json_object)
59
60
  when "rime-ai"
60
61
  Vapi::FallbackRimeAiVoice.from_json(json_object: json_object)
62
+ when "smallest-ai"
63
+ Vapi::FallbackSmallestAiVoice.from_json(json_object: json_object)
61
64
  when "tavus"
62
65
  Vapi::FallbackTavusVoice.from_json(json_object: json_object)
63
66
  else
@@ -91,6 +94,8 @@ module Vapi
91
94
  { **@member.to_json, provider: @discriminant }.to_json
92
95
  when "rime-ai"
93
96
  { **@member.to_json, provider: @discriminant }.to_json
97
+ when "smallest-ai"
98
+ { **@member.to_json, provider: @discriminant }.to_json
94
99
  when "tavus"
95
100
  { **@member.to_json, provider: @discriminant }.to_json
96
101
  else
@@ -127,6 +132,8 @@ module Vapi
127
132
  Vapi::FallbackPlayHtVoice.validate_raw(obj: obj)
128
133
  when "rime-ai"
129
134
  Vapi::FallbackRimeAiVoice.validate_raw(obj: obj)
135
+ when "smallest-ai"
136
+ Vapi::FallbackSmallestAiVoice.validate_raw(obj: obj)
130
137
  when "tavus"
131
138
  Vapi::FallbackTavusVoice.validate_raw(obj: obj)
132
139
  else
@@ -202,6 +209,12 @@ module Vapi
202
209
  new(member: member, discriminant: "rime-ai")
203
210
  end
204
211
 
212
+ # @param member [Vapi::FallbackSmallestAiVoice]
213
+ # @return [Vapi::FallbackPlanVoicesItem]
214
+ def self.smallest_ai(member:)
215
+ new(member: member, discriminant: "smallest-ai")
216
+ end
217
+
205
218
  # @param member [Vapi::FallbackTavusVoice]
206
219
  # @return [Vapi::FallbackPlanVoicesItem]
207
220
  def self.tavus(member:)