vapi_server_sdk 0.0.0.pre.alpha7

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 (541) hide show
  1. checksums.yaml +7 -0
  2. data/lib/core/file_utilities.rb +26 -0
  3. data/lib/environment.rb +7 -0
  4. data/lib/gemconfig.rb +14 -0
  5. data/lib/requests.rb +174 -0
  6. data/lib/types_export.rb +526 -0
  7. data/lib/vapi_server_sdk/analytics/client.rb +115 -0
  8. data/lib/vapi_server_sdk/assistants/client.rb +949 -0
  9. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_background_sound.rb +12 -0
  10. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_client_messages_item.rb +22 -0
  11. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_first_message_mode.rb +21 -0
  12. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_model.rb +201 -0
  13. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_server_messages_item.rb +23 -0
  14. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_transcriber.rb +110 -0
  15. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_voice.rb +188 -0
  16. data/lib/vapi_server_sdk/blocks/client.rb +552 -0
  17. data/lib/vapi_server_sdk/blocks/types/blocks_create_request.rb +109 -0
  18. data/lib/vapi_server_sdk/blocks/types/blocks_create_response.rb +109 -0
  19. data/lib/vapi_server_sdk/blocks/types/blocks_delete_response.rb +109 -0
  20. data/lib/vapi_server_sdk/blocks/types/blocks_get_response.rb +109 -0
  21. data/lib/vapi_server_sdk/blocks/types/blocks_list_response_item.rb +109 -0
  22. data/lib/vapi_server_sdk/blocks/types/blocks_update_response.rb +109 -0
  23. data/lib/vapi_server_sdk/blocks/types/update_block_dto_messages_item.rb +96 -0
  24. data/lib/vapi_server_sdk/blocks/types/update_block_dto_steps_item.rb +96 -0
  25. data/lib/vapi_server_sdk/blocks/types/update_block_dto_tool.rb +163 -0
  26. data/lib/vapi_server_sdk/calls/client.rb +966 -0
  27. data/lib/vapi_server_sdk/files/client.rb +347 -0
  28. data/lib/vapi_server_sdk/logs/client.rb +174 -0
  29. data/lib/vapi_server_sdk/logs/types/logs_get_request_sort_order.rb +10 -0
  30. data/lib/vapi_server_sdk/logs/types/logs_get_request_type.rb +12 -0
  31. data/lib/vapi_server_sdk/phone_numbers/client.rb +455 -0
  32. data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_create_request.rb +122 -0
  33. data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_create_response.rb +122 -0
  34. data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_delete_response.rb +122 -0
  35. data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_get_response.rb +122 -0
  36. data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_list_response_item.rb +122 -0
  37. data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_update_response.rb +122 -0
  38. data/lib/vapi_server_sdk/phone_numbers/types/update_phone_number_dto_fallback_destination.rb +103 -0
  39. data/lib/vapi_server_sdk/squads/client.rb +1050 -0
  40. data/lib/vapi_server_sdk/tools/client.rb +473 -0
  41. data/lib/vapi_server_sdk/tools/types/tools_create_request.rb +161 -0
  42. data/lib/vapi_server_sdk/tools/types/tools_create_response.rb +161 -0
  43. data/lib/vapi_server_sdk/tools/types/tools_delete_response.rb +161 -0
  44. data/lib/vapi_server_sdk/tools/types/tools_get_response.rb +161 -0
  45. data/lib/vapi_server_sdk/tools/types/tools_list_response_item.rb +161 -0
  46. data/lib/vapi_server_sdk/tools/types/tools_update_response.rb +161 -0
  47. data/lib/vapi_server_sdk/tools/types/update_tool_dto_messages_item.rb +122 -0
  48. data/lib/vapi_server_sdk/types/add_voice_to_provider_dto.rb +78 -0
  49. data/lib/vapi_server_sdk/types/analysis.rb +88 -0
  50. data/lib/vapi_server_sdk/types/analysis_cost.rb +93 -0
  51. data/lib/vapi_server_sdk/types/analysis_cost_analysis_type.rb +10 -0
  52. data/lib/vapi_server_sdk/types/analysis_cost_breakdown.rb +137 -0
  53. data/lib/vapi_server_sdk/types/analysis_plan.rb +103 -0
  54. data/lib/vapi_server_sdk/types/analytics_operation.rb +76 -0
  55. data/lib/vapi_server_sdk/types/analytics_operation_column.rb +17 -0
  56. data/lib/vapi_server_sdk/types/analytics_operation_operation.rb +12 -0
  57. data/lib/vapi_server_sdk/types/analytics_query.rb +107 -0
  58. data/lib/vapi_server_sdk/types/analytics_query_group_by_item.rb +11 -0
  59. data/lib/vapi_server_sdk/types/analytics_query_result.rb +96 -0
  60. data/lib/vapi_server_sdk/types/anthropic_credential.rb +101 -0
  61. data/lib/vapi_server_sdk/types/anthropic_model.rb +170 -0
  62. data/lib/vapi_server_sdk/types/anthropic_model_model.rb +11 -0
  63. data/lib/vapi_server_sdk/types/anthropic_model_tools_item.rb +159 -0
  64. data/lib/vapi_server_sdk/types/anyscale_credential.rb +101 -0
  65. data/lib/vapi_server_sdk/types/anyscale_model.rb +169 -0
  66. data/lib/vapi_server_sdk/types/anyscale_model_tools_item.rb +159 -0
  67. data/lib/vapi_server_sdk/types/artifact.rb +133 -0
  68. data/lib/vapi_server_sdk/types/artifact_messages_item.rb +96 -0
  69. data/lib/vapi_server_sdk/types/artifact_plan.rb +139 -0
  70. data/lib/vapi_server_sdk/types/assignment_mutation.rb +189 -0
  71. data/lib/vapi_server_sdk/types/assignment_mutation_conditions_item.rb +94 -0
  72. data/lib/vapi_server_sdk/types/assistant.rb +562 -0
  73. data/lib/vapi_server_sdk/types/assistant_background_sound.rb +10 -0
  74. data/lib/vapi_server_sdk/types/assistant_client_messages_item.rb +20 -0
  75. data/lib/vapi_server_sdk/types/assistant_first_message_mode.rb +19 -0
  76. data/lib/vapi_server_sdk/types/assistant_model.rb +199 -0
  77. data/lib/vapi_server_sdk/types/assistant_overrides.rb +539 -0
  78. data/lib/vapi_server_sdk/types/assistant_overrides_background_sound.rb +10 -0
  79. data/lib/vapi_server_sdk/types/assistant_overrides_client_messages_item.rb +20 -0
  80. data/lib/vapi_server_sdk/types/assistant_overrides_first_message_mode.rb +19 -0
  81. data/lib/vapi_server_sdk/types/assistant_overrides_model.rb +199 -0
  82. data/lib/vapi_server_sdk/types/assistant_overrides_server_messages_item.rb +21 -0
  83. data/lib/vapi_server_sdk/types/assistant_overrides_transcriber.rb +108 -0
  84. data/lib/vapi_server_sdk/types/assistant_overrides_voice.rb +186 -0
  85. data/lib/vapi_server_sdk/types/assistant_server_messages_item.rb +21 -0
  86. data/lib/vapi_server_sdk/types/assistant_transcriber.rb +108 -0
  87. data/lib/vapi_server_sdk/types/assistant_voice.rb +186 -0
  88. data/lib/vapi_server_sdk/types/azure_open_ai_credential.rb +128 -0
  89. data/lib/vapi_server_sdk/types/azure_open_ai_credential_models_item.rb +14 -0
  90. data/lib/vapi_server_sdk/types/azure_open_ai_credential_region.rb +21 -0
  91. data/lib/vapi_server_sdk/types/azure_voice.rb +104 -0
  92. data/lib/vapi_server_sdk/types/azure_voice_id.rb +53 -0
  93. data/lib/vapi_server_sdk/types/azure_voice_id_enum.rb +9 -0
  94. data/lib/vapi_server_sdk/types/block_complete_message.rb +73 -0
  95. data/lib/vapi_server_sdk/types/block_complete_message_conditions_item.rb +94 -0
  96. data/lib/vapi_server_sdk/types/block_start_message.rb +73 -0
  97. data/lib/vapi_server_sdk/types/block_start_message_conditions_item.rb +94 -0
  98. data/lib/vapi_server_sdk/types/bot_message.rb +111 -0
  99. data/lib/vapi_server_sdk/types/bucket_plan.rb +139 -0
  100. data/lib/vapi_server_sdk/types/buy_phone_number_dto.rb +151 -0
  101. data/lib/vapi_server_sdk/types/buy_phone_number_dto_fallback_destination.rb +100 -0
  102. data/lib/vapi_server_sdk/types/byo_phone_number.rb +224 -0
  103. data/lib/vapi_server_sdk/types/byo_phone_number_fallback_destination.rb +100 -0
  104. data/lib/vapi_server_sdk/types/byo_sip_trunk_credential.rb +166 -0
  105. data/lib/vapi_server_sdk/types/call.rb +425 -0
  106. data/lib/vapi_server_sdk/types/call_costs_item.rb +146 -0
  107. data/lib/vapi_server_sdk/types/call_destination.rb +96 -0
  108. data/lib/vapi_server_sdk/types/call_ended_reason.rb +175 -0
  109. data/lib/vapi_server_sdk/types/call_messages_item.rb +96 -0
  110. data/lib/vapi_server_sdk/types/call_paginated_response.rb +75 -0
  111. data/lib/vapi_server_sdk/types/call_phone_call_provider.rb +11 -0
  112. data/lib/vapi_server_sdk/types/call_phone_call_transport.rb +10 -0
  113. data/lib/vapi_server_sdk/types/call_status.rb +12 -0
  114. data/lib/vapi_server_sdk/types/call_type.rb +10 -0
  115. data/lib/vapi_server_sdk/types/callback_step.rb +204 -0
  116. data/lib/vapi_server_sdk/types/callback_step_block.rb +108 -0
  117. data/lib/vapi_server_sdk/types/cartesia_credential.rb +101 -0
  118. data/lib/vapi_server_sdk/types/cartesia_voice.rb +113 -0
  119. data/lib/vapi_server_sdk/types/cartesia_voice_language.rb +15 -0
  120. data/lib/vapi_server_sdk/types/cartesia_voice_model.rb +10 -0
  121. data/lib/vapi_server_sdk/types/chunk_plan.rb +128 -0
  122. data/lib/vapi_server_sdk/types/client_inbound_message.rb +63 -0
  123. data/lib/vapi_server_sdk/types/client_inbound_message_add_message.rb +61 -0
  124. data/lib/vapi_server_sdk/types/client_inbound_message_control.rb +56 -0
  125. data/lib/vapi_server_sdk/types/client_inbound_message_control_control.rb +10 -0
  126. data/lib/vapi_server_sdk/types/client_inbound_message_message.rb +109 -0
  127. data/lib/vapi_server_sdk/types/client_inbound_message_say.rb +67 -0
  128. data/lib/vapi_server_sdk/types/client_message.rb +65 -0
  129. data/lib/vapi_server_sdk/types/client_message_conversation_update.rb +79 -0
  130. data/lib/vapi_server_sdk/types/client_message_conversation_update_messages_item.rb +97 -0
  131. data/lib/vapi_server_sdk/types/client_message_hang.rb +47 -0
  132. data/lib/vapi_server_sdk/types/client_message_language_changed.rb +55 -0
  133. data/lib/vapi_server_sdk/types/client_message_message.rb +214 -0
  134. data/lib/vapi_server_sdk/types/client_message_metadata.rb +55 -0
  135. data/lib/vapi_server_sdk/types/client_message_model_output.rb +55 -0
  136. data/lib/vapi_server_sdk/types/client_message_speech_update.rb +67 -0
  137. data/lib/vapi_server_sdk/types/client_message_speech_update_role.rb +9 -0
  138. data/lib/vapi_server_sdk/types/client_message_speech_update_status.rb +9 -0
  139. data/lib/vapi_server_sdk/types/client_message_tool_calls.rb +75 -0
  140. data/lib/vapi_server_sdk/types/client_message_tool_calls_result.rb +55 -0
  141. data/lib/vapi_server_sdk/types/client_message_tool_calls_tool_with_tool_call_list_item.rb +108 -0
  142. data/lib/vapi_server_sdk/types/client_message_transcript.rb +74 -0
  143. data/lib/vapi_server_sdk/types/client_message_transcript_role.rb +9 -0
  144. data/lib/vapi_server_sdk/types/client_message_transcript_transcript_type.rb +9 -0
  145. data/lib/vapi_server_sdk/types/client_message_user_interrupted.rb +47 -0
  146. data/lib/vapi_server_sdk/types/client_message_voice_input.rb +55 -0
  147. data/lib/vapi_server_sdk/types/clone_voice_dto.rb +83 -0
  148. data/lib/vapi_server_sdk/types/condition.rb +73 -0
  149. data/lib/vapi_server_sdk/types/condition_operator.rb +13 -0
  150. data/lib/vapi_server_sdk/types/conversation_block.rb +239 -0
  151. data/lib/vapi_server_sdk/types/conversation_block_messages_item.rb +94 -0
  152. data/lib/vapi_server_sdk/types/cost_breakdown.rb +141 -0
  153. data/lib/vapi_server_sdk/types/create_anthropic_credential_dto.rb +65 -0
  154. data/lib/vapi_server_sdk/types/create_anyscale_credential_dto.rb +65 -0
  155. data/lib/vapi_server_sdk/types/create_assistant_dto.rb +529 -0
  156. data/lib/vapi_server_sdk/types/create_assistant_dto_background_sound.rb +10 -0
  157. data/lib/vapi_server_sdk/types/create_assistant_dto_client_messages_item.rb +20 -0
  158. data/lib/vapi_server_sdk/types/create_assistant_dto_first_message_mode.rb +19 -0
  159. data/lib/vapi_server_sdk/types/create_assistant_dto_model.rb +199 -0
  160. data/lib/vapi_server_sdk/types/create_assistant_dto_server_messages_item.rb +21 -0
  161. data/lib/vapi_server_sdk/types/create_assistant_dto_transcriber.rb +108 -0
  162. data/lib/vapi_server_sdk/types/create_assistant_dto_voice.rb +186 -0
  163. data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto.rb +94 -0
  164. data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto_models_item.rb +14 -0
  165. data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto_region.rb +21 -0
  166. data/lib/vapi_server_sdk/types/create_byo_phone_number_dto.rb +191 -0
  167. data/lib/vapi_server_sdk/types/create_byo_phone_number_dto_fallback_destination.rb +101 -0
  168. data/lib/vapi_server_sdk/types/create_byo_sip_trunk_credential_dto.rb +133 -0
  169. data/lib/vapi_server_sdk/types/create_cartesia_credential_dto.rb +65 -0
  170. data/lib/vapi_server_sdk/types/create_conversation_block_dto.rb +206 -0
  171. data/lib/vapi_server_sdk/types/create_conversation_block_dto_messages_item.rb +95 -0
  172. data/lib/vapi_server_sdk/types/create_custom_llm_credential_dto.rb +65 -0
  173. data/lib/vapi_server_sdk/types/create_customer_dto.rb +117 -0
  174. data/lib/vapi_server_sdk/types/create_deep_infra_credential_dto.rb +65 -0
  175. data/lib/vapi_server_sdk/types/create_deepgram_credential_dto.rb +76 -0
  176. data/lib/vapi_server_sdk/types/create_dtmf_tool_dto.rb +139 -0
  177. data/lib/vapi_server_sdk/types/create_dtmf_tool_dto_messages_item.rb +120 -0
  178. data/lib/vapi_server_sdk/types/create_eleven_labs_credential_dto.rb +65 -0
  179. data/lib/vapi_server_sdk/types/create_end_call_tool_dto.rb +139 -0
  180. data/lib/vapi_server_sdk/types/create_end_call_tool_dto_messages_item.rb +120 -0
  181. data/lib/vapi_server_sdk/types/create_function_tool_dto.rb +139 -0
  182. data/lib/vapi_server_sdk/types/create_function_tool_dto_messages_item.rb +120 -0
  183. data/lib/vapi_server_sdk/types/create_gcp_credential_dto.rb +104 -0
  184. data/lib/vapi_server_sdk/types/create_ghl_tool_dto.rb +158 -0
  185. data/lib/vapi_server_sdk/types/create_ghl_tool_dto_messages_item.rb +120 -0
  186. data/lib/vapi_server_sdk/types/create_gladia_credential_dto.rb +65 -0
  187. data/lib/vapi_server_sdk/types/create_go_high_level_credential_dto.rb +65 -0
  188. data/lib/vapi_server_sdk/types/create_groq_credential_dto.rb +65 -0
  189. data/lib/vapi_server_sdk/types/create_lmnt_credential_dto.rb +65 -0
  190. data/lib/vapi_server_sdk/types/create_make_credential_dto.rb +79 -0
  191. data/lib/vapi_server_sdk/types/create_make_tool_dto.rb +158 -0
  192. data/lib/vapi_server_sdk/types/create_make_tool_dto_messages_item.rb +120 -0
  193. data/lib/vapi_server_sdk/types/create_open_ai_credential_dto.rb +65 -0
  194. data/lib/vapi_server_sdk/types/create_open_router_credential_dto.rb +65 -0
  195. data/lib/vapi_server_sdk/types/create_org_dto.rb +129 -0
  196. data/lib/vapi_server_sdk/types/create_outbound_call_dto.rb +191 -0
  197. data/lib/vapi_server_sdk/types/create_output_tool_dto.rb +139 -0
  198. data/lib/vapi_server_sdk/types/create_output_tool_dto_messages_item.rb +120 -0
  199. data/lib/vapi_server_sdk/types/create_perplexity_ai_credential_dto.rb +65 -0
  200. data/lib/vapi_server_sdk/types/create_play_ht_credential_dto.rb +72 -0
  201. data/lib/vapi_server_sdk/types/create_rime_ai_credential_dto.rb +65 -0
  202. data/lib/vapi_server_sdk/types/create_runpod_credential_dto.rb +65 -0
  203. data/lib/vapi_server_sdk/types/create_s_3_credential_dto.rb +101 -0
  204. data/lib/vapi_server_sdk/types/create_squad_dto.rb +94 -0
  205. data/lib/vapi_server_sdk/types/create_together_ai_credential_dto.rb +65 -0
  206. data/lib/vapi_server_sdk/types/create_token_dto.rb +81 -0
  207. data/lib/vapi_server_sdk/types/create_token_dto_tag.rb +9 -0
  208. data/lib/vapi_server_sdk/types/create_tool_call_block_dto.rb +168 -0
  209. data/lib/vapi_server_sdk/types/create_tool_call_block_dto_messages_item.rb +94 -0
  210. data/lib/vapi_server_sdk/types/create_tool_call_block_dto_tool.rb +161 -0
  211. data/lib/vapi_server_sdk/types/create_tool_template_dto.rb +131 -0
  212. data/lib/vapi_server_sdk/types/create_tool_template_dto_details.rb +159 -0
  213. data/lib/vapi_server_sdk/types/create_tool_template_dto_provider.rb +9 -0
  214. data/lib/vapi_server_sdk/types/create_tool_template_dto_provider_details.rb +107 -0
  215. data/lib/vapi_server_sdk/types/create_tool_template_dto_visibility.rb +8 -0
  216. data/lib/vapi_server_sdk/types/create_transfer_call_tool_dto.rb +161 -0
  217. data/lib/vapi_server_sdk/types/create_transfer_call_tool_dto_destinations_item.rb +121 -0
  218. data/lib/vapi_server_sdk/types/create_transfer_call_tool_dto_messages_item.rb +121 -0
  219. data/lib/vapi_server_sdk/types/create_twilio_credential_dto.rb +72 -0
  220. data/lib/vapi_server_sdk/types/create_twilio_phone_number_dto.rb +167 -0
  221. data/lib/vapi_server_sdk/types/create_twilio_phone_number_dto_fallback_destination.rb +101 -0
  222. data/lib/vapi_server_sdk/types/create_vapi_phone_number_dto.rb +155 -0
  223. data/lib/vapi_server_sdk/types/create_vapi_phone_number_dto_fallback_destination.rb +101 -0
  224. data/lib/vapi_server_sdk/types/create_voicemail_tool_dto.rb +139 -0
  225. data/lib/vapi_server_sdk/types/create_voicemail_tool_dto_messages_item.rb +120 -0
  226. data/lib/vapi_server_sdk/types/create_vonage_credential_dto.rb +72 -0
  227. data/lib/vapi_server_sdk/types/create_vonage_phone_number_dto.rb +161 -0
  228. data/lib/vapi_server_sdk/types/create_vonage_phone_number_dto_fallback_destination.rb +101 -0
  229. data/lib/vapi_server_sdk/types/create_web_call_dto.rb +123 -0
  230. data/lib/vapi_server_sdk/types/create_workflow_block_dto.rb +154 -0
  231. data/lib/vapi_server_sdk/types/create_workflow_block_dto_messages_item.rb +94 -0
  232. data/lib/vapi_server_sdk/types/create_workflow_block_dto_steps_item.rb +94 -0
  233. data/lib/vapi_server_sdk/types/custom_llm_credential.rb +101 -0
  234. data/lib/vapi_server_sdk/types/custom_llm_model.rb +204 -0
  235. data/lib/vapi_server_sdk/types/custom_llm_model_metadata_send_mode.rb +18 -0
  236. data/lib/vapi_server_sdk/types/custom_llm_model_tools_item.rb +159 -0
  237. data/lib/vapi_server_sdk/types/deep_infra_credential.rb +101 -0
  238. data/lib/vapi_server_sdk/types/deep_infra_model.rb +169 -0
  239. data/lib/vapi_server_sdk/types/deep_infra_model_tools_item.rb +159 -0
  240. data/lib/vapi_server_sdk/types/deepgram_credential.rb +114 -0
  241. data/lib/vapi_server_sdk/types/deepgram_transcriber.rb +143 -0
  242. data/lib/vapi_server_sdk/types/deepgram_transcriber_language.rb +62 -0
  243. data/lib/vapi_server_sdk/types/deepgram_transcriber_model.rb +34 -0
  244. data/lib/vapi_server_sdk/types/deepgram_voice.rb +96 -0
  245. data/lib/vapi_server_sdk/types/deepgram_voice_id.rb +53 -0
  246. data/lib/vapi_server_sdk/types/deepgram_voice_id_enum.rb +18 -0
  247. data/lib/vapi_server_sdk/types/dtmf_tool.rb +178 -0
  248. data/lib/vapi_server_sdk/types/dtmf_tool_messages_item.rb +120 -0
  249. data/lib/vapi_server_sdk/types/eleven_labs_credential.rb +101 -0
  250. data/lib/vapi_server_sdk/types/eleven_labs_voice.rb +176 -0
  251. data/lib/vapi_server_sdk/types/eleven_labs_voice_id.rb +54 -0
  252. data/lib/vapi_server_sdk/types/eleven_labs_voice_id_enum.rb +21 -0
  253. data/lib/vapi_server_sdk/types/eleven_labs_voice_model.rb +12 -0
  254. data/lib/vapi_server_sdk/types/end_call_tool.rb +178 -0
  255. data/lib/vapi_server_sdk/types/end_call_tool_messages_item.rb +120 -0
  256. data/lib/vapi_server_sdk/types/error.rb +55 -0
  257. data/lib/vapi_server_sdk/types/exact_replacement.rb +65 -0
  258. data/lib/vapi_server_sdk/types/file.rb +185 -0
  259. data/lib/vapi_server_sdk/types/file_status.rb +8 -0
  260. data/lib/vapi_server_sdk/types/format_plan.rb +130 -0
  261. data/lib/vapi_server_sdk/types/format_plan_replacements_item.rb +94 -0
  262. data/lib/vapi_server_sdk/types/function_tool.rb +178 -0
  263. data/lib/vapi_server_sdk/types/function_tool_messages_item.rb +120 -0
  264. data/lib/vapi_server_sdk/types/function_tool_provider_details.rb +71 -0
  265. data/lib/vapi_server_sdk/types/function_tool_with_tool_call.rb +158 -0
  266. data/lib/vapi_server_sdk/types/function_tool_with_tool_call_messages_item.rb +120 -0
  267. data/lib/vapi_server_sdk/types/gcp_credential.rb +138 -0
  268. data/lib/vapi_server_sdk/types/gcp_key.rb +143 -0
  269. data/lib/vapi_server_sdk/types/ghl_tool.rb +192 -0
  270. data/lib/vapi_server_sdk/types/ghl_tool_messages_item.rb +120 -0
  271. data/lib/vapi_server_sdk/types/ghl_tool_metadata.rb +67 -0
  272. data/lib/vapi_server_sdk/types/ghl_tool_provider_details.rb +115 -0
  273. data/lib/vapi_server_sdk/types/ghl_tool_with_tool_call.rb +173 -0
  274. data/lib/vapi_server_sdk/types/ghl_tool_with_tool_call_messages_item.rb +120 -0
  275. data/lib/vapi_server_sdk/types/gladia_credential.rb +101 -0
  276. data/lib/vapi_server_sdk/types/gladia_transcriber.rb +122 -0
  277. data/lib/vapi_server_sdk/types/gladia_transcriber_language.rb +108 -0
  278. data/lib/vapi_server_sdk/types/gladia_transcriber_language_behaviour.rb +9 -0
  279. data/lib/vapi_server_sdk/types/gladia_transcriber_model.rb +8 -0
  280. data/lib/vapi_server_sdk/types/go_high_level_credential.rb +101 -0
  281. data/lib/vapi_server_sdk/types/groq_credential.rb +101 -0
  282. data/lib/vapi_server_sdk/types/groq_model.rb +170 -0
  283. data/lib/vapi_server_sdk/types/groq_model_model.rb +17 -0
  284. data/lib/vapi_server_sdk/types/groq_model_tools_item.rb +159 -0
  285. data/lib/vapi_server_sdk/types/handoff_step.rb +204 -0
  286. data/lib/vapi_server_sdk/types/handoff_step_block.rb +108 -0
  287. data/lib/vapi_server_sdk/types/import_twilio_phone_number_dto.rb +167 -0
  288. data/lib/vapi_server_sdk/types/import_twilio_phone_number_dto_fallback_destination.rb +101 -0
  289. data/lib/vapi_server_sdk/types/import_vonage_phone_number_dto.rb +165 -0
  290. data/lib/vapi_server_sdk/types/import_vonage_phone_number_dto_fallback_destination.rb +101 -0
  291. data/lib/vapi_server_sdk/types/invite_user_dto.rb +66 -0
  292. data/lib/vapi_server_sdk/types/invite_user_dto_role.rb +9 -0
  293. data/lib/vapi_server_sdk/types/json_schema.rb +125 -0
  294. data/lib/vapi_server_sdk/types/json_schema_type.rb +21 -0
  295. data/lib/vapi_server_sdk/types/knowledge_base.rb +74 -0
  296. data/lib/vapi_server_sdk/types/lmnt_credential.rb +101 -0
  297. data/lib/vapi_server_sdk/types/lmnt_voice.rb +104 -0
  298. data/lib/vapi_server_sdk/types/lmnt_voice_id.rb +53 -0
  299. data/lib/vapi_server_sdk/types/lmnt_voice_id_enum.rb +8 -0
  300. data/lib/vapi_server_sdk/types/log.rb +248 -0
  301. data/lib/vapi_server_sdk/types/log_request_http_method.rb +12 -0
  302. data/lib/vapi_server_sdk/types/log_resource.rb +15 -0
  303. data/lib/vapi_server_sdk/types/log_type.rb +11 -0
  304. data/lib/vapi_server_sdk/types/logs_paginated_response.rb +75 -0
  305. data/lib/vapi_server_sdk/types/make_credential.rb +118 -0
  306. data/lib/vapi_server_sdk/types/make_tool.rb +192 -0
  307. data/lib/vapi_server_sdk/types/make_tool_messages_item.rb +120 -0
  308. data/lib/vapi_server_sdk/types/make_tool_metadata.rb +67 -0
  309. data/lib/vapi_server_sdk/types/make_tool_provider_details.rb +107 -0
  310. data/lib/vapi_server_sdk/types/make_tool_with_tool_call.rb +173 -0
  311. data/lib/vapi_server_sdk/types/make_tool_with_tool_call_messages_item.rb +120 -0
  312. data/lib/vapi_server_sdk/types/message_plan.rb +107 -0
  313. data/lib/vapi_server_sdk/types/metrics.rb +165 -0
  314. data/lib/vapi_server_sdk/types/model_based_condition.rb +117 -0
  315. data/lib/vapi_server_sdk/types/model_cost.rb +106 -0
  316. data/lib/vapi_server_sdk/types/monitor.rb +71 -0
  317. data/lib/vapi_server_sdk/types/monitor_plan.rb +85 -0
  318. data/lib/vapi_server_sdk/types/neets_voice.rb +96 -0
  319. data/lib/vapi_server_sdk/types/neets_voice_id.rb +53 -0
  320. data/lib/vapi_server_sdk/types/neets_voice_id_enum.rb +7 -0
  321. data/lib/vapi_server_sdk/types/open_ai_credential.rb +101 -0
  322. data/lib/vapi_server_sdk/types/open_ai_function.rb +96 -0
  323. data/lib/vapi_server_sdk/types/open_ai_function_parameters.rb +85 -0
  324. data/lib/vapi_server_sdk/types/open_ai_message.rb +68 -0
  325. data/lib/vapi_server_sdk/types/open_ai_message_role.rb +11 -0
  326. data/lib/vapi_server_sdk/types/open_ai_model.rb +191 -0
  327. data/lib/vapi_server_sdk/types/open_ai_model_fallback_models_item.rb +23 -0
  328. data/lib/vapi_server_sdk/types/open_ai_model_model.rb +24 -0
  329. data/lib/vapi_server_sdk/types/open_ai_model_tools_item.rb +159 -0
  330. data/lib/vapi_server_sdk/types/open_ai_voice.rb +99 -0
  331. data/lib/vapi_server_sdk/types/open_ai_voice_id.rb +13 -0
  332. data/lib/vapi_server_sdk/types/open_router_credential.rb +101 -0
  333. data/lib/vapi_server_sdk/types/open_router_model.rb +169 -0
  334. data/lib/vapi_server_sdk/types/open_router_model_tools_item.rb +159 -0
  335. data/lib/vapi_server_sdk/types/org.rb +212 -0
  336. data/lib/vapi_server_sdk/types/org_plan.rb +79 -0
  337. data/lib/vapi_server_sdk/types/output_tool.rb +178 -0
  338. data/lib/vapi_server_sdk/types/output_tool_messages_item.rb +120 -0
  339. data/lib/vapi_server_sdk/types/pagination_meta.rb +72 -0
  340. data/lib/vapi_server_sdk/types/perplexity_ai_credential.rb +101 -0
  341. data/lib/vapi_server_sdk/types/perplexity_ai_model.rb +169 -0
  342. data/lib/vapi_server_sdk/types/perplexity_ai_model_tools_item.rb +159 -0
  343. data/lib/vapi_server_sdk/types/play_ht_credential.rb +109 -0
  344. data/lib/vapi_server_sdk/types/play_ht_voice.rb +166 -0
  345. data/lib/vapi_server_sdk/types/play_ht_voice_emotion.rb +19 -0
  346. data/lib/vapi_server_sdk/types/play_ht_voice_id.rb +53 -0
  347. data/lib/vapi_server_sdk/types/play_ht_voice_id_enum.rb +16 -0
  348. data/lib/vapi_server_sdk/types/punctuation_boundary.rb +21 -0
  349. data/lib/vapi_server_sdk/types/regex_option.rb +74 -0
  350. data/lib/vapi_server_sdk/types/regex_option_type.rb +13 -0
  351. data/lib/vapi_server_sdk/types/regex_replacement.rb +82 -0
  352. data/lib/vapi_server_sdk/types/rime_ai_credential.rb +101 -0
  353. data/lib/vapi_server_sdk/types/rime_ai_voice.rb +114 -0
  354. data/lib/vapi_server_sdk/types/rime_ai_voice_id.rb +53 -0
  355. data/lib/vapi_server_sdk/types/rime_ai_voice_id_enum.rb +87 -0
  356. data/lib/vapi_server_sdk/types/rime_ai_voice_model.rb +9 -0
  357. data/lib/vapi_server_sdk/types/rule_based_condition.rb +195 -0
  358. data/lib/vapi_server_sdk/types/rule_based_condition_operator.rb +14 -0
  359. data/lib/vapi_server_sdk/types/runpod_credential.rb +101 -0
  360. data/lib/vapi_server_sdk/types/s_3_credential.rb +134 -0
  361. data/lib/vapi_server_sdk/types/sbc_configuration.rb +47 -0
  362. data/lib/vapi_server_sdk/types/server.rb +82 -0
  363. data/lib/vapi_server_sdk/types/server_message.rb +77 -0
  364. data/lib/vapi_server_sdk/types/server_message_assistant_request.rb +169 -0
  365. data/lib/vapi_server_sdk/types/server_message_assistant_request_phone_number.rb +125 -0
  366. data/lib/vapi_server_sdk/types/server_message_conversation_update.rb +197 -0
  367. data/lib/vapi_server_sdk/types/server_message_conversation_update_messages_item.rb +97 -0
  368. data/lib/vapi_server_sdk/types/server_message_conversation_update_phone_number.rb +125 -0
  369. data/lib/vapi_server_sdk/types/server_message_end_of_call_report.rb +241 -0
  370. data/lib/vapi_server_sdk/types/server_message_end_of_call_report_costs_item.rb +147 -0
  371. data/lib/vapi_server_sdk/types/server_message_end_of_call_report_ended_reason.rb +176 -0
  372. data/lib/vapi_server_sdk/types/server_message_end_of_call_report_phone_number.rb +125 -0
  373. data/lib/vapi_server_sdk/types/server_message_hang.rb +169 -0
  374. data/lib/vapi_server_sdk/types/server_message_hang_phone_number.rb +124 -0
  375. data/lib/vapi_server_sdk/types/server_message_language_changed.rb +177 -0
  376. data/lib/vapi_server_sdk/types/server_message_language_changed_phone_number.rb +125 -0
  377. data/lib/vapi_server_sdk/types/server_message_message.rb +285 -0
  378. data/lib/vapi_server_sdk/types/server_message_model_output.rb +177 -0
  379. data/lib/vapi_server_sdk/types/server_message_model_output_phone_number.rb +124 -0
  380. data/lib/vapi_server_sdk/types/server_message_phone_call_control.rb +192 -0
  381. data/lib/vapi_server_sdk/types/server_message_phone_call_control_destination.rb +96 -0
  382. data/lib/vapi_server_sdk/types/server_message_phone_call_control_phone_number.rb +125 -0
  383. data/lib/vapi_server_sdk/types/server_message_phone_call_control_request.rb +9 -0
  384. data/lib/vapi_server_sdk/types/server_message_response.rb +65 -0
  385. data/lib/vapi_server_sdk/types/server_message_response_assistant_request.rb +162 -0
  386. data/lib/vapi_server_sdk/types/server_message_response_assistant_request_destination.rb +98 -0
  387. data/lib/vapi_server_sdk/types/server_message_response_message_response.rb +85 -0
  388. data/lib/vapi_server_sdk/types/server_message_response_tool_calls.rb +71 -0
  389. data/lib/vapi_server_sdk/types/server_message_response_transfer_destination_request.rb +75 -0
  390. data/lib/vapi_server_sdk/types/server_message_response_transfer_destination_request_destination.rb +122 -0
  391. data/lib/vapi_server_sdk/types/server_message_response_voice_request.rb +97 -0
  392. data/lib/vapi_server_sdk/types/server_message_speech_update.rb +187 -0
  393. data/lib/vapi_server_sdk/types/server_message_speech_update_phone_number.rb +124 -0
  394. data/lib/vapi_server_sdk/types/server_message_speech_update_role.rb +9 -0
  395. data/lib/vapi_server_sdk/types/server_message_speech_update_status.rb +9 -0
  396. data/lib/vapi_server_sdk/types/server_message_status_update.rb +255 -0
  397. data/lib/vapi_server_sdk/types/server_message_status_update_destination.rb +96 -0
  398. data/lib/vapi_server_sdk/types/server_message_status_update_ended_reason.rb +175 -0
  399. data/lib/vapi_server_sdk/types/server_message_status_update_messages_item.rb +97 -0
  400. data/lib/vapi_server_sdk/types/server_message_status_update_phone_number.rb +124 -0
  401. data/lib/vapi_server_sdk/types/server_message_status_update_status.rb +12 -0
  402. data/lib/vapi_server_sdk/types/server_message_tool_calls.rb +195 -0
  403. data/lib/vapi_server_sdk/types/server_message_tool_calls_phone_number.rb +124 -0
  404. data/lib/vapi_server_sdk/types/server_message_tool_calls_tool_with_tool_call_list_item.rb +108 -0
  405. data/lib/vapi_server_sdk/types/server_message_transcript.rb +195 -0
  406. data/lib/vapi_server_sdk/types/server_message_transcript_phone_number.rb +124 -0
  407. data/lib/vapi_server_sdk/types/server_message_transcript_role.rb +9 -0
  408. data/lib/vapi_server_sdk/types/server_message_transcript_transcript_type.rb +9 -0
  409. data/lib/vapi_server_sdk/types/server_message_transfer_destination_request.rb +171 -0
  410. data/lib/vapi_server_sdk/types/server_message_transfer_destination_request_phone_number.rb +125 -0
  411. data/lib/vapi_server_sdk/types/server_message_transfer_update.rb +213 -0
  412. data/lib/vapi_server_sdk/types/server_message_transfer_update_destination.rb +122 -0
  413. data/lib/vapi_server_sdk/types/server_message_transfer_update_phone_number.rb +125 -0
  414. data/lib/vapi_server_sdk/types/server_message_user_interrupted.rb +169 -0
  415. data/lib/vapi_server_sdk/types/server_message_user_interrupted_phone_number.rb +125 -0
  416. data/lib/vapi_server_sdk/types/server_message_voice_input.rb +177 -0
  417. data/lib/vapi_server_sdk/types/server_message_voice_input_phone_number.rb +124 -0
  418. data/lib/vapi_server_sdk/types/server_message_voice_request.rb +185 -0
  419. data/lib/vapi_server_sdk/types/server_message_voice_request_phone_number.rb +124 -0
  420. data/lib/vapi_server_sdk/types/sip_trunk_gateway.rb +138 -0
  421. data/lib/vapi_server_sdk/types/sip_trunk_gateway_outbound_protocol.rb +12 -0
  422. data/lib/vapi_server_sdk/types/sip_trunk_outbound_authentication_plan.rb +86 -0
  423. data/lib/vapi_server_sdk/types/sip_trunk_outbound_sip_register_plan.rb +74 -0
  424. data/lib/vapi_server_sdk/types/squad.rb +132 -0
  425. data/lib/vapi_server_sdk/types/squad_member_dto.rb +113 -0
  426. data/lib/vapi_server_sdk/types/start_speaking_plan.rb +119 -0
  427. data/lib/vapi_server_sdk/types/step_destination.rb +82 -0
  428. data/lib/vapi_server_sdk/types/step_destination_conditions_item.rb +94 -0
  429. data/lib/vapi_server_sdk/types/stop_speaking_plan.rb +120 -0
  430. data/lib/vapi_server_sdk/types/structured_data_plan.rb +140 -0
  431. data/lib/vapi_server_sdk/types/success_evaluation_plan.rb +161 -0
  432. data/lib/vapi_server_sdk/types/success_evaluation_plan_rubric.rb +29 -0
  433. data/lib/vapi_server_sdk/types/summary_plan.rb +110 -0
  434. data/lib/vapi_server_sdk/types/sync_voice_library_dto.rb +58 -0
  435. data/lib/vapi_server_sdk/types/sync_voice_library_dto_providers_item.rb +16 -0
  436. data/lib/vapi_server_sdk/types/system_message.rb +79 -0
  437. data/lib/vapi_server_sdk/types/talkscriber_transcriber.rb +72 -0
  438. data/lib/vapi_server_sdk/types/talkscriber_transcriber_language.rb +109 -0
  439. data/lib/vapi_server_sdk/types/template.rb +164 -0
  440. data/lib/vapi_server_sdk/types/template_details.rb +159 -0
  441. data/lib/vapi_server_sdk/types/template_provider.rb +9 -0
  442. data/lib/vapi_server_sdk/types/template_provider_details.rb +107 -0
  443. data/lib/vapi_server_sdk/types/template_visibility.rb +8 -0
  444. data/lib/vapi_server_sdk/types/time_range.rb +91 -0
  445. data/lib/vapi_server_sdk/types/time_range_step.rb +18 -0
  446. data/lib/vapi_server_sdk/types/together_ai_credential.rb +101 -0
  447. data/lib/vapi_server_sdk/types/together_ai_model.rb +169 -0
  448. data/lib/vapi_server_sdk/types/together_ai_model_tools_item.rb +159 -0
  449. data/lib/vapi_server_sdk/types/token.rb +127 -0
  450. data/lib/vapi_server_sdk/types/token_restrictions.rb +103 -0
  451. data/lib/vapi_server_sdk/types/token_tag.rb +9 -0
  452. data/lib/vapi_server_sdk/types/tool_call.rb +78 -0
  453. data/lib/vapi_server_sdk/types/tool_call_block.rb +201 -0
  454. data/lib/vapi_server_sdk/types/tool_call_block_messages_item.rb +94 -0
  455. data/lib/vapi_server_sdk/types/tool_call_block_tool.rb +161 -0
  456. data/lib/vapi_server_sdk/types/tool_call_function.rb +65 -0
  457. data/lib/vapi_server_sdk/types/tool_call_message.rb +92 -0
  458. data/lib/vapi_server_sdk/types/tool_call_result.rb +126 -0
  459. data/lib/vapi_server_sdk/types/tool_call_result_message.rb +100 -0
  460. data/lib/vapi_server_sdk/types/tool_call_result_message_item.rb +94 -0
  461. data/lib/vapi_server_sdk/types/tool_message_complete.rb +130 -0
  462. data/lib/vapi_server_sdk/types/tool_message_complete_role.rb +24 -0
  463. data/lib/vapi_server_sdk/types/tool_message_delayed.rb +86 -0
  464. data/lib/vapi_server_sdk/types/tool_message_failed.rb +88 -0
  465. data/lib/vapi_server_sdk/types/tool_message_start.rb +73 -0
  466. data/lib/vapi_server_sdk/types/tool_template_metadata.rb +78 -0
  467. data/lib/vapi_server_sdk/types/tool_template_setup.rb +86 -0
  468. data/lib/vapi_server_sdk/types/transcriber_cost.rb +90 -0
  469. data/lib/vapi_server_sdk/types/transcript_plan.rb +122 -0
  470. data/lib/vapi_server_sdk/types/transcription_endpointing_plan.rb +109 -0
  471. data/lib/vapi_server_sdk/types/transfer_call_tool.rb +194 -0
  472. data/lib/vapi_server_sdk/types/transfer_call_tool_destinations_item.rb +120 -0
  473. data/lib/vapi_server_sdk/types/transfer_call_tool_messages_item.rb +120 -0
  474. data/lib/vapi_server_sdk/types/transfer_destination_assistant.rb +181 -0
  475. data/lib/vapi_server_sdk/types/transfer_destination_number.rb +163 -0
  476. data/lib/vapi_server_sdk/types/transfer_destination_sip.rb +90 -0
  477. data/lib/vapi_server_sdk/types/transfer_destination_step.rb +90 -0
  478. data/lib/vapi_server_sdk/types/transfer_mode.rb +8 -0
  479. data/lib/vapi_server_sdk/types/transport_configuration_twilio.rb +125 -0
  480. data/lib/vapi_server_sdk/types/transport_configuration_twilio_recording_channels.rb +16 -0
  481. data/lib/vapi_server_sdk/types/transport_cost.rb +67 -0
  482. data/lib/vapi_server_sdk/types/twilio_credential.rb +110 -0
  483. data/lib/vapi_server_sdk/types/twilio_phone_number.rb +200 -0
  484. data/lib/vapi_server_sdk/types/twilio_phone_number_fallback_destination.rb +100 -0
  485. data/lib/vapi_server_sdk/types/twilio_voicemail_detection.rb +248 -0
  486. data/lib/vapi_server_sdk/types/twilio_voicemail_detection_voicemail_detection_types_item.rb +13 -0
  487. data/lib/vapi_server_sdk/types/update_anthropic_credential_dto.rb +65 -0
  488. data/lib/vapi_server_sdk/types/update_anyscale_credential_dto.rb +65 -0
  489. data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto.rb +94 -0
  490. data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto_models_item.rb +14 -0
  491. data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto_region.rb +21 -0
  492. data/lib/vapi_server_sdk/types/update_byo_sip_trunk_credential_dto.rb +133 -0
  493. data/lib/vapi_server_sdk/types/update_cartesia_credential_dto.rb +65 -0
  494. data/lib/vapi_server_sdk/types/update_custom_llm_credential_dto.rb +65 -0
  495. data/lib/vapi_server_sdk/types/update_deep_infra_credential_dto.rb +65 -0
  496. data/lib/vapi_server_sdk/types/update_deepgram_credential_dto.rb +76 -0
  497. data/lib/vapi_server_sdk/types/update_eleven_labs_credential_dto.rb +65 -0
  498. data/lib/vapi_server_sdk/types/update_gcp_credential_dto.rb +104 -0
  499. data/lib/vapi_server_sdk/types/update_gladia_credential_dto.rb +65 -0
  500. data/lib/vapi_server_sdk/types/update_go_high_level_credential_dto.rb +65 -0
  501. data/lib/vapi_server_sdk/types/update_groq_credential_dto.rb +65 -0
  502. data/lib/vapi_server_sdk/types/update_lmnt_credential_dto.rb +65 -0
  503. data/lib/vapi_server_sdk/types/update_make_credential_dto.rb +79 -0
  504. data/lib/vapi_server_sdk/types/update_open_ai_credential_dto.rb +65 -0
  505. data/lib/vapi_server_sdk/types/update_open_router_credential_dto.rb +65 -0
  506. data/lib/vapi_server_sdk/types/update_org_dto.rb +129 -0
  507. data/lib/vapi_server_sdk/types/update_perplexity_ai_credential_dto.rb +65 -0
  508. data/lib/vapi_server_sdk/types/update_play_ht_credential_dto.rb +72 -0
  509. data/lib/vapi_server_sdk/types/update_rime_ai_credential_dto.rb +65 -0
  510. data/lib/vapi_server_sdk/types/update_runpod_credential_dto.rb +65 -0
  511. data/lib/vapi_server_sdk/types/update_s_3_credential_dto.rb +101 -0
  512. data/lib/vapi_server_sdk/types/update_together_ai_credential_dto.rb +65 -0
  513. data/lib/vapi_server_sdk/types/update_tool_template_dto.rb +131 -0
  514. data/lib/vapi_server_sdk/types/update_tool_template_dto_details.rb +159 -0
  515. data/lib/vapi_server_sdk/types/update_tool_template_dto_provider.rb +9 -0
  516. data/lib/vapi_server_sdk/types/update_tool_template_dto_provider_details.rb +107 -0
  517. data/lib/vapi_server_sdk/types/update_tool_template_dto_visibility.rb +8 -0
  518. data/lib/vapi_server_sdk/types/update_twilio_credential_dto.rb +72 -0
  519. data/lib/vapi_server_sdk/types/update_user_role_dto.rb +66 -0
  520. data/lib/vapi_server_sdk/types/update_user_role_dto_role.rb +9 -0
  521. data/lib/vapi_server_sdk/types/update_vonage_credential_dto.rb +72 -0
  522. data/lib/vapi_server_sdk/types/user.rb +95 -0
  523. data/lib/vapi_server_sdk/types/user_message.rb +102 -0
  524. data/lib/vapi_server_sdk/types/vapi_cost.rb +67 -0
  525. data/lib/vapi_server_sdk/types/vapi_model.rb +181 -0
  526. data/lib/vapi_server_sdk/types/vapi_model_steps_item.rb +94 -0
  527. data/lib/vapi_server_sdk/types/vapi_model_tools_item.rb +159 -0
  528. data/lib/vapi_server_sdk/types/vapi_phone_number.rb +188 -0
  529. data/lib/vapi_server_sdk/types/vapi_phone_number_fallback_destination.rb +100 -0
  530. data/lib/vapi_server_sdk/types/voice_cost.rb +90 -0
  531. data/lib/vapi_server_sdk/types/voice_library.rb +209 -0
  532. data/lib/vapi_server_sdk/types/voice_library_gender.rb +9 -0
  533. data/lib/vapi_server_sdk/types/voice_library_voice_response.rb +111 -0
  534. data/lib/vapi_server_sdk/types/vonage_credential.rb +128 -0
  535. data/lib/vapi_server_sdk/types/vonage_phone_number.rb +194 -0
  536. data/lib/vapi_server_sdk/types/vonage_phone_number_fallback_destination.rb +100 -0
  537. data/lib/vapi_server_sdk/types/workflow_block.rb +187 -0
  538. data/lib/vapi_server_sdk/types/workflow_block_messages_item.rb +94 -0
  539. data/lib/vapi_server_sdk/types/workflow_block_steps_item.rb +94 -0
  540. data/lib/vapi_server_sdk.rb +110 -0
  541. metadata +697 -0
@@ -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 DeepInfraModelToolsItem
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::DeepInfraModelToolsItem]
25
+ def initialize(member:, discriminant:)
26
+ @member = member
27
+ @discriminant = discriminant
28
+ end
29
+
30
+ # Deserialize a JSON object to an instance of DeepInfraModelToolsItem
31
+ #
32
+ # @param json_object [String]
33
+ # @return [Vapi::DeepInfraModelToolsItem]
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::DeepInfraModelToolsItem]
119
+ def self.dtmf(member:)
120
+ new(member: member, discriminant: "dtmf")
121
+ end
122
+
123
+ # @param member [Vapi::CreateEndCallToolDto]
124
+ # @return [Vapi::DeepInfraModelToolsItem]
125
+ def self.end_call(member:)
126
+ new(member: member, discriminant: "endCall")
127
+ end
128
+
129
+ # @param member [Vapi::CreateVoicemailToolDto]
130
+ # @return [Vapi::DeepInfraModelToolsItem]
131
+ def self.voicemail(member:)
132
+ new(member: member, discriminant: "voicemail")
133
+ end
134
+
135
+ # @param member [Vapi::CreateFunctionToolDto]
136
+ # @return [Vapi::DeepInfraModelToolsItem]
137
+ def self.function(member:)
138
+ new(member: member, discriminant: "function")
139
+ end
140
+
141
+ # @param member [Vapi::CreateGhlToolDto]
142
+ # @return [Vapi::DeepInfraModelToolsItem]
143
+ def self.ghl(member:)
144
+ new(member: member, discriminant: "ghl")
145
+ end
146
+
147
+ # @param member [Vapi::CreateMakeToolDto]
148
+ # @return [Vapi::DeepInfraModelToolsItem]
149
+ def self.make(member:)
150
+ new(member: member, discriminant: "make")
151
+ end
152
+
153
+ # @param member [Vapi::CreateTransferCallToolDto]
154
+ # @return [Vapi::DeepInfraModelToolsItem]
155
+ def self.transfer_call(member:)
156
+ new(member: member, discriminant: "transferCall")
157
+ end
158
+ end
159
+ end
@@ -0,0 +1,114 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "date"
4
+ require "ostruct"
5
+ require "json"
6
+
7
+ module Vapi
8
+ class DeepgramCredential
9
+ # @return [String]
10
+ attr_reader :provider
11
+ # @return [String] This is not returned in the API.
12
+ attr_reader :api_key
13
+ # @return [String] This is the unique identifier for the credential.
14
+ attr_reader :id
15
+ # @return [String] This is the unique identifier for the org that this credential belongs to.
16
+ attr_reader :org_id
17
+ # @return [DateTime] This is the ISO 8601 date-time string of when the credential was created.
18
+ attr_reader :created_at
19
+ # @return [DateTime] This is the ISO 8601 date-time string of when the assistant was last updated.
20
+ attr_reader :updated_at
21
+ # @return [String] This can be used to point to an onprem Deepgram instance. Defaults to
22
+ # api.deepgram.com.
23
+ attr_reader :api_url
24
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
25
+ attr_reader :additional_properties
26
+ # @return [Object]
27
+ attr_reader :_field_set
28
+ protected :_field_set
29
+
30
+ OMIT = Object.new
31
+
32
+ # @param provider [String]
33
+ # @param api_key [String] This is not returned in the API.
34
+ # @param id [String] This is the unique identifier for the credential.
35
+ # @param org_id [String] This is the unique identifier for the org that this credential belongs to.
36
+ # @param created_at [DateTime] This is the ISO 8601 date-time string of when the credential was created.
37
+ # @param updated_at [DateTime] This is the ISO 8601 date-time string of when the assistant was last updated.
38
+ # @param api_url [String] This can be used to point to an onprem Deepgram instance. Defaults to
39
+ # api.deepgram.com.
40
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
41
+ # @return [Vapi::DeepgramCredential]
42
+ def initialize(provider:, api_key:, id:, org_id:, created_at:, updated_at:, api_url: OMIT,
43
+ additional_properties: nil)
44
+ @provider = provider
45
+ @api_key = api_key
46
+ @id = id
47
+ @org_id = org_id
48
+ @created_at = created_at
49
+ @updated_at = updated_at
50
+ @api_url = api_url if api_url != OMIT
51
+ @additional_properties = additional_properties
52
+ @_field_set = {
53
+ "provider": provider,
54
+ "apiKey": api_key,
55
+ "id": id,
56
+ "orgId": org_id,
57
+ "createdAt": created_at,
58
+ "updatedAt": updated_at,
59
+ "apiUrl": api_url
60
+ }.reject do |_k, v|
61
+ v == OMIT
62
+ end
63
+ end
64
+
65
+ # Deserialize a JSON object to an instance of DeepgramCredential
66
+ #
67
+ # @param json_object [String]
68
+ # @return [Vapi::DeepgramCredential]
69
+ def self.from_json(json_object:)
70
+ struct = JSON.parse(json_object, object_class: OpenStruct)
71
+ parsed_json = JSON.parse(json_object)
72
+ provider = parsed_json["provider"]
73
+ api_key = parsed_json["apiKey"]
74
+ id = parsed_json["id"]
75
+ org_id = parsed_json["orgId"]
76
+ created_at = (DateTime.parse(parsed_json["createdAt"]) unless parsed_json["createdAt"].nil?)
77
+ updated_at = (DateTime.parse(parsed_json["updatedAt"]) unless parsed_json["updatedAt"].nil?)
78
+ api_url = parsed_json["apiUrl"]
79
+ new(
80
+ provider: provider,
81
+ api_key: api_key,
82
+ id: id,
83
+ org_id: org_id,
84
+ created_at: created_at,
85
+ updated_at: updated_at,
86
+ api_url: api_url,
87
+ additional_properties: struct
88
+ )
89
+ end
90
+
91
+ # Serialize an instance of DeepgramCredential to a JSON object
92
+ #
93
+ # @return [String]
94
+ def to_json(*_args)
95
+ @_field_set&.to_json
96
+ end
97
+
98
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
99
+ # hash and check each fields type against the current object's property
100
+ # definitions.
101
+ #
102
+ # @param obj [Object]
103
+ # @return [Void]
104
+ def self.validate_raw(obj:)
105
+ obj.provider.is_a?(String) != false || raise("Passed value for field obj.provider is not the expected type, validation failed.")
106
+ obj.api_key.is_a?(String) != false || raise("Passed value for field obj.api_key is not the expected type, validation failed.")
107
+ obj.id.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
108
+ obj.org_id.is_a?(String) != false || raise("Passed value for field obj.org_id is not the expected type, validation failed.")
109
+ obj.created_at.is_a?(DateTime) != false || raise("Passed value for field obj.created_at is not the expected type, validation failed.")
110
+ obj.updated_at.is_a?(DateTime) != false || raise("Passed value for field obj.updated_at is not the expected type, validation failed.")
111
+ obj.api_url&.is_a?(String) != false || raise("Passed value for field obj.api_url is not the expected type, validation failed.")
112
+ end
113
+ end
114
+ end
@@ -0,0 +1,143 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "deepgram_transcriber_model"
4
+ require_relative "deepgram_transcriber_language"
5
+ require "ostruct"
6
+ require "json"
7
+
8
+ module Vapi
9
+ class DeepgramTranscriber
10
+ # @return [Vapi::DeepgramTranscriberModel] This is the Deepgram model that will be used. A list of models can be found
11
+ # here: https://developers.deepgram.com/docs/models-languages-overview
12
+ attr_reader :model
13
+ # @return [Vapi::DeepgramTranscriberLanguage] This is the language that will be set for the transcription. The list of
14
+ # languages Deepgram supports can be found here:
15
+ # https://developers.deepgram.com/docs/models-languages-overview
16
+ attr_reader :language
17
+ # @return [Boolean] This will be use smart format option provided by Deepgram. It's default disabled
18
+ # because it can sometimes format numbers as times but it's getting better.
19
+ attr_reader :smart_format
20
+ # @return [Boolean] This enables or disables language detection. If true, swaps transcribers to
21
+ # detected language automatically. Defaults to false.
22
+ attr_reader :language_detection_enabled
23
+ # @return [Array<String>] These keywords are passed to the transcription model to help it pick up use-case
24
+ # specific words. Anything that may not be a common word, like your company name,
25
+ # should be added here.
26
+ attr_reader :keywords
27
+ # @return [Float] This is the timeout after which Deepgram will send transcription on user
28
+ # silence. You can read in-depth documentation here:
29
+ # https://developers.deepgram.com/docs/endpointing.
30
+ # Here are the most important bits:
31
+ # - Defaults to 10. This is recommended for most use cases to optimize for
32
+ # latency.
33
+ # - 10 can cause some missing transcriptions since because of the shorter context.
34
+ # This mostly happens for one-word utterances. For those uses cases, it's
35
+ # recommended to try 300. It will add a bit of latency but the quality and
36
+ # reliability of the experience will be better.
37
+ # - If neither 10 nor 300 work, contact support@vapi.ai and we'll find another
38
+ # solution.
39
+ # @default 10
40
+ attr_reader :endpointing
41
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
42
+ attr_reader :additional_properties
43
+ # @return [Object]
44
+ attr_reader :_field_set
45
+ protected :_field_set
46
+
47
+ OMIT = Object.new
48
+
49
+ # @param model [Vapi::DeepgramTranscriberModel] This is the Deepgram model that will be used. A list of models can be found
50
+ # here: https://developers.deepgram.com/docs/models-languages-overview
51
+ # @param language [Vapi::DeepgramTranscriberLanguage] This is the language that will be set for the transcription. The list of
52
+ # languages Deepgram supports can be found here:
53
+ # https://developers.deepgram.com/docs/models-languages-overview
54
+ # @param smart_format [Boolean] This will be use smart format option provided by Deepgram. It's default disabled
55
+ # because it can sometimes format numbers as times but it's getting better.
56
+ # @param language_detection_enabled [Boolean] This enables or disables language detection. If true, swaps transcribers to
57
+ # detected language automatically. Defaults to false.
58
+ # @param keywords [Array<String>] These keywords are passed to the transcription model to help it pick up use-case
59
+ # specific words. Anything that may not be a common word, like your company name,
60
+ # should be added here.
61
+ # @param endpointing [Float] This is the timeout after which Deepgram will send transcription on user
62
+ # silence. You can read in-depth documentation here:
63
+ # https://developers.deepgram.com/docs/endpointing.
64
+ # Here are the most important bits:
65
+ # - Defaults to 10. This is recommended for most use cases to optimize for
66
+ # latency.
67
+ # - 10 can cause some missing transcriptions since because of the shorter context.
68
+ # This mostly happens for one-word utterances. For those uses cases, it's
69
+ # recommended to try 300. It will add a bit of latency but the quality and
70
+ # reliability of the experience will be better.
71
+ # - If neither 10 nor 300 work, contact support@vapi.ai and we'll find another
72
+ # solution.
73
+ # @default 10
74
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
75
+ # @return [Vapi::DeepgramTranscriber]
76
+ def initialize(model: OMIT, language: OMIT, smart_format: OMIT, language_detection_enabled: OMIT, keywords: OMIT,
77
+ endpointing: OMIT, additional_properties: nil)
78
+ @model = model if model != OMIT
79
+ @language = language if language != OMIT
80
+ @smart_format = smart_format if smart_format != OMIT
81
+ @language_detection_enabled = language_detection_enabled if language_detection_enabled != OMIT
82
+ @keywords = keywords if keywords != OMIT
83
+ @endpointing = endpointing if endpointing != OMIT
84
+ @additional_properties = additional_properties
85
+ @_field_set = {
86
+ "model": model,
87
+ "language": language,
88
+ "smartFormat": smart_format,
89
+ "languageDetectionEnabled": language_detection_enabled,
90
+ "keywords": keywords,
91
+ "endpointing": endpointing
92
+ }.reject do |_k, v|
93
+ v == OMIT
94
+ end
95
+ end
96
+
97
+ # Deserialize a JSON object to an instance of DeepgramTranscriber
98
+ #
99
+ # @param json_object [String]
100
+ # @return [Vapi::DeepgramTranscriber]
101
+ def self.from_json(json_object:)
102
+ struct = JSON.parse(json_object, object_class: OpenStruct)
103
+ parsed_json = JSON.parse(json_object)
104
+ model = parsed_json["model"]
105
+ language = parsed_json["language"]
106
+ smart_format = parsed_json["smartFormat"]
107
+ language_detection_enabled = parsed_json["languageDetectionEnabled"]
108
+ keywords = parsed_json["keywords"]
109
+ endpointing = parsed_json["endpointing"]
110
+ new(
111
+ model: model,
112
+ language: language,
113
+ smart_format: smart_format,
114
+ language_detection_enabled: language_detection_enabled,
115
+ keywords: keywords,
116
+ endpointing: endpointing,
117
+ additional_properties: struct
118
+ )
119
+ end
120
+
121
+ # Serialize an instance of DeepgramTranscriber to a JSON object
122
+ #
123
+ # @return [String]
124
+ def to_json(*_args)
125
+ @_field_set&.to_json
126
+ end
127
+
128
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
129
+ # hash and check each fields type against the current object's property
130
+ # definitions.
131
+ #
132
+ # @param obj [Object]
133
+ # @return [Void]
134
+ def self.validate_raw(obj:)
135
+ obj.model&.is_a?(Vapi::DeepgramTranscriberModel) != false || raise("Passed value for field obj.model is not the expected type, validation failed.")
136
+ obj.language&.is_a?(Vapi::DeepgramTranscriberLanguage) != false || raise("Passed value for field obj.language is not the expected type, validation failed.")
137
+ obj.smart_format&.is_a?(Boolean) != false || raise("Passed value for field obj.smart_format is not the expected type, validation failed.")
138
+ obj.language_detection_enabled&.is_a?(Boolean) != false || raise("Passed value for field obj.language_detection_enabled is not the expected type, validation failed.")
139
+ obj.keywords&.is_a?(Array) != false || raise("Passed value for field obj.keywords is not the expected type, validation failed.")
140
+ obj.endpointing&.is_a?(Float) != false || raise("Passed value for field obj.endpointing is not the expected type, validation failed.")
141
+ end
142
+ end
143
+ end
@@ -0,0 +1,62 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Vapi
4
+ class DeepgramTranscriberLanguage
5
+ BG = "bg"
6
+ CA = "ca"
7
+ CS = "cs"
8
+ DA = "da"
9
+ DA_DK = "da-DK"
10
+ DE = "de"
11
+ DE_CH = "de-CH"
12
+ EL = "el"
13
+ EN = "en"
14
+ EN_AU = "en-AU"
15
+ EN_GB = "en-GB"
16
+ EN_IN = "en-IN"
17
+ EN_NZ = "en-NZ"
18
+ EN_US = "en-US"
19
+ ES = "es"
20
+ ES_419 = "es-419"
21
+ ES_LATAM = "es-LATAM"
22
+ ET = "et"
23
+ FI = "fi"
24
+ FR = "fr"
25
+ FR_CA = "fr-CA"
26
+ HI = "hi"
27
+ HI_LATN = "hi-Latn"
28
+ HU = "hu"
29
+ ID = "id"
30
+ IT = "it"
31
+ JA = "ja"
32
+ KO = "ko"
33
+ KO_KR = "ko-KR"
34
+ LT = "lt"
35
+ LV = "lv"
36
+ MS = "ms"
37
+ MULTI = "multi"
38
+ NL = "nl"
39
+ NL_BE = "nl-BE"
40
+ NO = "no"
41
+ PL = "pl"
42
+ PT = "pt"
43
+ PT_BR = "pt-BR"
44
+ RO = "ro"
45
+ RU = "ru"
46
+ SK = "sk"
47
+ SV = "sv"
48
+ SV_SE = "sv-SE"
49
+ TA = "ta"
50
+ TAQ = "taq"
51
+ TH = "th"
52
+ TH_TH = "th-TH"
53
+ TR = "tr"
54
+ UK = "uk"
55
+ VI = "vi"
56
+ ZH = "zh"
57
+ ZH_CN = "zh-CN"
58
+ ZH_HANS = "zh-Hans"
59
+ ZH_HANT = "zh-Hant"
60
+ ZH_TW = "zh-TW"
61
+ end
62
+ end
@@ -0,0 +1,34 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Vapi
4
+ class DeepgramTranscriberModel
5
+ NOVA_2 = "nova-2"
6
+ NOVA_2_GENERAL = "nova-2-general"
7
+ NOVA_2_MEETING = "nova-2-meeting"
8
+ NOVA_2_PHONECALL = "nova-2-phonecall"
9
+ NOVA_2_FINANCE = "nova-2-finance"
10
+ NOVA_2_CONVERSATIONALAI = "nova-2-conversationalai"
11
+ NOVA_2_VOICEMAIL = "nova-2-voicemail"
12
+ NOVA_2_VIDEO = "nova-2-video"
13
+ NOVA_2_MEDICAL = "nova-2-medical"
14
+ NOVA_2_DRIVETHRU = "nova-2-drivethru"
15
+ NOVA_2_AUTOMOTIVE = "nova-2-automotive"
16
+ NOVA = "nova"
17
+ NOVA_GENERAL = "nova-general"
18
+ NOVA_PHONECALL = "nova-phonecall"
19
+ NOVA_MEDICAL = "nova-medical"
20
+ ENHANCED = "enhanced"
21
+ ENHANCED_GENERAL = "enhanced-general"
22
+ ENHANCED_MEETING = "enhanced-meeting"
23
+ ENHANCED_PHONECALL = "enhanced-phonecall"
24
+ ENHANCED_FINANCE = "enhanced-finance"
25
+ BASE = "base"
26
+ BASE_GENERAL = "base-general"
27
+ BASE_MEETING = "base-meeting"
28
+ BASE_PHONECALL = "base-phonecall"
29
+ BASE_FINANCE = "base-finance"
30
+ BASE_CONVERSATIONALAI = "base-conversationalai"
31
+ BASE_VOICEMAIL = "base-voicemail"
32
+ BASE_VIDEO = "base-video"
33
+ end
34
+ end
@@ -0,0 +1,96 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "deepgram_voice_id"
4
+ require_relative "chunk_plan"
5
+ require "ostruct"
6
+ require "json"
7
+
8
+ module Vapi
9
+ class DeepgramVoice
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
+ # @return [Vapi::DeepgramVoiceId] This is the provider-specific ID that will be used.
15
+ attr_reader :voice_id
16
+ # @return [Vapi::ChunkPlan] This is the plan for chunking the model output before it is sent to the voice
17
+ # provider.
18
+ attr_reader :chunk_plan
19
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
20
+ attr_reader :additional_properties
21
+ # @return [Object]
22
+ attr_reader :_field_set
23
+ protected :_field_set
24
+
25
+ OMIT = Object.new
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
+ # @param voice_id [Vapi::DeepgramVoiceId] This is the provider-specific ID that will be used.
31
+ # @param chunk_plan [Vapi::ChunkPlan] This is the plan for chunking the model output before it is sent to the voice
32
+ # provider.
33
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
34
+ # @return [Vapi::DeepgramVoice]
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
37
+ @voice_id = voice_id
38
+ @chunk_plan = chunk_plan if chunk_plan != OMIT
39
+ @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|
45
+ v == OMIT
46
+ end
47
+ end
48
+
49
+ # Deserialize a JSON object to an instance of DeepgramVoice
50
+ #
51
+ # @param json_object [String]
52
+ # @return [Vapi::DeepgramVoice]
53
+ def self.from_json(json_object:)
54
+ struct = JSON.parse(json_object, object_class: OpenStruct)
55
+ parsed_json = JSON.parse(json_object)
56
+ filler_injection_enabled = parsed_json["fillerInjectionEnabled"]
57
+ if parsed_json["voiceId"].nil?
58
+ voice_id = nil
59
+ else
60
+ voice_id = parsed_json["voiceId"].to_json
61
+ voice_id = Vapi::DeepgramVoiceId.from_json(json_object: voice_id)
62
+ end
63
+ if parsed_json["chunkPlan"].nil?
64
+ chunk_plan = nil
65
+ else
66
+ chunk_plan = parsed_json["chunkPlan"].to_json
67
+ chunk_plan = Vapi::ChunkPlan.from_json(json_object: chunk_plan)
68
+ end
69
+ new(
70
+ filler_injection_enabled: filler_injection_enabled,
71
+ voice_id: voice_id,
72
+ chunk_plan: chunk_plan,
73
+ additional_properties: struct
74
+ )
75
+ end
76
+
77
+ # Serialize an instance of DeepgramVoice to a JSON object
78
+ #
79
+ # @return [String]
80
+ def to_json(*_args)
81
+ @_field_set&.to_json
82
+ end
83
+
84
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
85
+ # hash and check each fields type against the current object's property
86
+ # definitions.
87
+ #
88
+ # @param obj [Object]
89
+ # @return [Void]
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
+ Vapi::DeepgramVoiceId.validate_raw(obj: obj.voice_id)
93
+ obj.chunk_plan.nil? || Vapi::ChunkPlan.validate_raw(obj: obj.chunk_plan)
94
+ end
95
+ end
96
+ end
@@ -0,0 +1,53 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "json"
4
+
5
+ module Vapi
6
+ # This is the provider-specific ID that will be used.
7
+ class DeepgramVoiceId
8
+ # Deserialize a JSON object to an instance of DeepgramVoiceId
9
+ #
10
+ # @param json_object [String]
11
+ # @return [Vapi::DeepgramVoiceId]
12
+ def self.from_json(json_object:)
13
+ struct = JSON.parse(json_object, object_class: OpenStruct)
14
+ begin
15
+ struct.is_a?(Vapi::DeepgramVoiceIdEnum) != false || raise("Passed value for field struct is not the expected type, validation failed.")
16
+ return struct unless struct.nil?
17
+
18
+ return nil
19
+ rescue StandardError
20
+ # noop
21
+ end
22
+ begin
23
+ struct.is_a?(String) != false || raise("Passed value for field struct is not the expected type, validation failed.")
24
+ return struct unless struct.nil?
25
+
26
+ return nil
27
+ rescue StandardError
28
+ # noop
29
+ end
30
+ struct
31
+ end
32
+
33
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
34
+ # hash and check each fields type against the current object's property
35
+ # definitions.
36
+ #
37
+ # @param obj [Object]
38
+ # @return [Void]
39
+ def self.validate_raw(obj:)
40
+ begin
41
+ return obj.is_a?(Vapi::DeepgramVoiceIdEnum) != false || raise("Passed value for field obj is not the expected type, validation failed.")
42
+ rescue StandardError
43
+ # noop
44
+ end
45
+ begin
46
+ return obj.is_a?(String) != false || raise("Passed value for field obj is not the expected type, validation failed.")
47
+ rescue StandardError
48
+ # noop
49
+ end
50
+ raise("Passed value matched no type within the union, validation failed.")
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Vapi
4
+ class DeepgramVoiceIdEnum
5
+ ASTERIA = "asteria"
6
+ LUNA = "luna"
7
+ STELLA = "stella"
8
+ ATHENA = "athena"
9
+ HERA = "hera"
10
+ ORION = "orion"
11
+ ARCAS = "arcas"
12
+ PERSEUS = "perseus"
13
+ ANGUS = "angus"
14
+ ORPHEUS = "orpheus"
15
+ HELIOS = "helios"
16
+ ZEUS = "zeus"
17
+ end
18
+ end