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,248 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "twilio_voicemail_detection_voicemail_detection_types_item"
4
+ require "ostruct"
5
+ require "json"
6
+
7
+ module Vapi
8
+ class TwilioVoicemailDetection
9
+ # @return [String] This is the provider to use for voicemail detection.
10
+ attr_reader :provider
11
+ # @return [Array<Vapi::TwilioVoicemailDetectionVoicemailDetectionTypesItem>] These are the AMD messages from Twilio that are considered as voicemail. Default
12
+ # is ['machine_end_beep', 'machine_end_silence'].
13
+ # @default {Array} ['machine_end_beep', 'machine_end_silence']
14
+ attr_reader :voicemail_detection_types
15
+ # @return [Boolean] This sets whether the assistant should detect voicemail. Defaults to true.
16
+ # @default true
17
+ attr_reader :enabled
18
+ # @return [Float] The number of seconds that Twilio should attempt to perform answering machine
19
+ # detection before timing out and returning AnsweredBy as unknown. Default is 30
20
+ # seconds.
21
+ # Increasing this value will provide the engine more time to make a determination.
22
+ # This can be useful when DetectMessageEnd is provided in the MachineDetection
23
+ # parameter and there is an expectation of long answering machine greetings that
24
+ # can exceed 30 seconds.
25
+ # Decreasing this value will reduce the amount of time the engine has to make a
26
+ # determination. This can be particularly useful when the Enable option is
27
+ # provided in the MachineDetection parameter and you want to limit the time for
28
+ # initial detection.
29
+ # Check the [Twilio
30
+ # wilio.com/docs/voice/answering-machine-detection#optional-api-tuning-parameters)
31
+ # for more info.
32
+ # @default 30
33
+ attr_reader :machine_detection_timeout
34
+ # @return [Float] The number of milliseconds that is used as the measuring stick for the length of
35
+ # the speech activity. Durations lower than this value will be interpreted as a
36
+ # human, longer as a machine. Default is 2400 milliseconds.
37
+ # Increasing this value will reduce the chance of a False Machine (detected
38
+ # machine, actually human) for a long human greeting (e.g., a business greeting)
39
+ # but increase the time it takes to detect a machine.
40
+ # Decreasing this value will reduce the chances of a False Human (detected human,
41
+ # actually machine) for short voicemail greetings. The value of this parameter may
42
+ # need to be reduced by more than 1000ms to detect very short voicemail greetings.
43
+ # A reduction of that significance can result in increased False Machine
44
+ # detections. Adjusting the MachineDetectionSpeechEndThreshold is likely the
45
+ # better approach for short voicemails. Decreasing MachineDetectionSpeechThreshold
46
+ # will also reduce the time it takes to detect a machine.
47
+ # Check the [Twilio
48
+ # wilio.com/docs/voice/answering-machine-detection#optional-api-tuning-parameters)
49
+ # for more info.
50
+ # @default 2400
51
+ attr_reader :machine_detection_speech_threshold
52
+ # @return [Float] The number of milliseconds of silence after speech activity at which point the
53
+ # speech activity is considered complete. Default is 1200 milliseconds.
54
+ # Increasing this value will typically be used to better address the short
55
+ # voicemail greeting scenarios. For short voicemails, there is typically
56
+ # 1000-2000ms of audio followed by 1200-2400ms of silence and then additional
57
+ # audio before the beep. Increasing the MachineDetectionSpeechEndThreshold to
58
+ # ~2500ms will treat the 1200-2400ms of silence as a gap in the greeting but not
59
+ # the end of the greeting and will result in a machine detection. The downsides of
60
+ # such a change include:
61
+ # - Increasing the delay for human detection by the amount you increase this
62
+ # parameter, e.g., a change of 1200ms to 2500ms increases human detection delay by
63
+ # 1300ms.
64
+ # - Cases where a human has two utterances separated by a period of silence (e.g.
65
+ # a "Hello", then 2000ms of silence, and another "Hello") may be interpreted as a
66
+ # machine.
67
+ # Decreasing this value will result in faster human detection. The consequence is
68
+ # that it can lead to increased False Human (detected human, actually machine)
69
+ # detections because a silence gap in a voicemail greeting (not necessarily just
70
+ # in short voicemail scenarios) can be incorrectly interpreted as the end of
71
+ # speech.
72
+ # Check the [Twilio
73
+ # wilio.com/docs/voice/answering-machine-detection#optional-api-tuning-parameters)
74
+ # for more info.
75
+ # @default 1200
76
+ attr_reader :machine_detection_speech_end_threshold
77
+ # @return [Float] The number of milliseconds of initial silence after which an unknown AnsweredBy
78
+ # result will be returned. Default is 5000 milliseconds.
79
+ # Increasing this value will result in waiting for a longer period of initial
80
+ # silence before returning an 'unknown' AMD result.
81
+ # Decreasing this value will result in waiting for a shorter period of initial
82
+ # silence before returning an 'unknown' AMD result.
83
+ # Check the [Twilio
84
+ # wilio.com/docs/voice/answering-machine-detection#optional-api-tuning-parameters)
85
+ # for more info.
86
+ # @default 5000
87
+ attr_reader :machine_detection_silence_timeout
88
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
89
+ attr_reader :additional_properties
90
+ # @return [Object]
91
+ attr_reader :_field_set
92
+ protected :_field_set
93
+
94
+ OMIT = Object.new
95
+
96
+ # @param provider [String] This is the provider to use for voicemail detection.
97
+ # @param voicemail_detection_types [Array<Vapi::TwilioVoicemailDetectionVoicemailDetectionTypesItem>] These are the AMD messages from Twilio that are considered as voicemail. Default
98
+ # is ['machine_end_beep', 'machine_end_silence'].
99
+ # @default {Array} ['machine_end_beep', 'machine_end_silence']
100
+ # @param enabled [Boolean] This sets whether the assistant should detect voicemail. Defaults to true.
101
+ # @default true
102
+ # @param machine_detection_timeout [Float] The number of seconds that Twilio should attempt to perform answering machine
103
+ # detection before timing out and returning AnsweredBy as unknown. Default is 30
104
+ # seconds.
105
+ # Increasing this value will provide the engine more time to make a determination.
106
+ # This can be useful when DetectMessageEnd is provided in the MachineDetection
107
+ # parameter and there is an expectation of long answering machine greetings that
108
+ # can exceed 30 seconds.
109
+ # Decreasing this value will reduce the amount of time the engine has to make a
110
+ # determination. This can be particularly useful when the Enable option is
111
+ # provided in the MachineDetection parameter and you want to limit the time for
112
+ # initial detection.
113
+ # Check the [Twilio
114
+ # wilio.com/docs/voice/answering-machine-detection#optional-api-tuning-parameters)
115
+ # for more info.
116
+ # @default 30
117
+ # @param machine_detection_speech_threshold [Float] The number of milliseconds that is used as the measuring stick for the length of
118
+ # the speech activity. Durations lower than this value will be interpreted as a
119
+ # human, longer as a machine. Default is 2400 milliseconds.
120
+ # Increasing this value will reduce the chance of a False Machine (detected
121
+ # machine, actually human) for a long human greeting (e.g., a business greeting)
122
+ # but increase the time it takes to detect a machine.
123
+ # Decreasing this value will reduce the chances of a False Human (detected human,
124
+ # actually machine) for short voicemail greetings. The value of this parameter may
125
+ # need to be reduced by more than 1000ms to detect very short voicemail greetings.
126
+ # A reduction of that significance can result in increased False Machine
127
+ # detections. Adjusting the MachineDetectionSpeechEndThreshold is likely the
128
+ # better approach for short voicemails. Decreasing MachineDetectionSpeechThreshold
129
+ # will also reduce the time it takes to detect a machine.
130
+ # Check the [Twilio
131
+ # wilio.com/docs/voice/answering-machine-detection#optional-api-tuning-parameters)
132
+ # for more info.
133
+ # @default 2400
134
+ # @param machine_detection_speech_end_threshold [Float] The number of milliseconds of silence after speech activity at which point the
135
+ # speech activity is considered complete. Default is 1200 milliseconds.
136
+ # Increasing this value will typically be used to better address the short
137
+ # voicemail greeting scenarios. For short voicemails, there is typically
138
+ # 1000-2000ms of audio followed by 1200-2400ms of silence and then additional
139
+ # audio before the beep. Increasing the MachineDetectionSpeechEndThreshold to
140
+ # ~2500ms will treat the 1200-2400ms of silence as a gap in the greeting but not
141
+ # the end of the greeting and will result in a machine detection. The downsides of
142
+ # such a change include:
143
+ # - Increasing the delay for human detection by the amount you increase this
144
+ # parameter, e.g., a change of 1200ms to 2500ms increases human detection delay by
145
+ # 1300ms.
146
+ # - Cases where a human has two utterances separated by a period of silence (e.g.
147
+ # a "Hello", then 2000ms of silence, and another "Hello") may be interpreted as a
148
+ # machine.
149
+ # Decreasing this value will result in faster human detection. The consequence is
150
+ # that it can lead to increased False Human (detected human, actually machine)
151
+ # detections because a silence gap in a voicemail greeting (not necessarily just
152
+ # in short voicemail scenarios) can be incorrectly interpreted as the end of
153
+ # speech.
154
+ # Check the [Twilio
155
+ # wilio.com/docs/voice/answering-machine-detection#optional-api-tuning-parameters)
156
+ # for more info.
157
+ # @default 1200
158
+ # @param machine_detection_silence_timeout [Float] The number of milliseconds of initial silence after which an unknown AnsweredBy
159
+ # result will be returned. Default is 5000 milliseconds.
160
+ # Increasing this value will result in waiting for a longer period of initial
161
+ # silence before returning an 'unknown' AMD result.
162
+ # Decreasing this value will result in waiting for a shorter period of initial
163
+ # silence before returning an 'unknown' AMD result.
164
+ # Check the [Twilio
165
+ # wilio.com/docs/voice/answering-machine-detection#optional-api-tuning-parameters)
166
+ # for more info.
167
+ # @default 5000
168
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
169
+ # @return [Vapi::TwilioVoicemailDetection]
170
+ def initialize(provider:, voicemail_detection_types: OMIT, enabled: OMIT, machine_detection_timeout: OMIT,
171
+ machine_detection_speech_threshold: OMIT, machine_detection_speech_end_threshold: OMIT, machine_detection_silence_timeout: OMIT, additional_properties: nil)
172
+ @provider = provider
173
+ @voicemail_detection_types = voicemail_detection_types if voicemail_detection_types != OMIT
174
+ @enabled = enabled if enabled != OMIT
175
+ @machine_detection_timeout = machine_detection_timeout if machine_detection_timeout != OMIT
176
+ if machine_detection_speech_threshold != OMIT
177
+ @machine_detection_speech_threshold = machine_detection_speech_threshold
178
+ end
179
+ if machine_detection_speech_end_threshold != OMIT
180
+ @machine_detection_speech_end_threshold = machine_detection_speech_end_threshold
181
+ end
182
+ if machine_detection_silence_timeout != OMIT
183
+ @machine_detection_silence_timeout = machine_detection_silence_timeout
184
+ end
185
+ @additional_properties = additional_properties
186
+ @_field_set = {
187
+ "provider": provider,
188
+ "voicemailDetectionTypes": voicemail_detection_types,
189
+ "enabled": enabled,
190
+ "machineDetectionTimeout": machine_detection_timeout,
191
+ "machineDetectionSpeechThreshold": machine_detection_speech_threshold,
192
+ "machineDetectionSpeechEndThreshold": machine_detection_speech_end_threshold,
193
+ "machineDetectionSilenceTimeout": machine_detection_silence_timeout
194
+ }.reject do |_k, v|
195
+ v == OMIT
196
+ end
197
+ end
198
+
199
+ # Deserialize a JSON object to an instance of TwilioVoicemailDetection
200
+ #
201
+ # @param json_object [String]
202
+ # @return [Vapi::TwilioVoicemailDetection]
203
+ def self.from_json(json_object:)
204
+ struct = JSON.parse(json_object, object_class: OpenStruct)
205
+ parsed_json = JSON.parse(json_object)
206
+ provider = parsed_json["provider"]
207
+ voicemail_detection_types = parsed_json["voicemailDetectionTypes"]
208
+ enabled = parsed_json["enabled"]
209
+ machine_detection_timeout = parsed_json["machineDetectionTimeout"]
210
+ machine_detection_speech_threshold = parsed_json["machineDetectionSpeechThreshold"]
211
+ machine_detection_speech_end_threshold = parsed_json["machineDetectionSpeechEndThreshold"]
212
+ machine_detection_silence_timeout = parsed_json["machineDetectionSilenceTimeout"]
213
+ new(
214
+ provider: provider,
215
+ voicemail_detection_types: voicemail_detection_types,
216
+ enabled: enabled,
217
+ machine_detection_timeout: machine_detection_timeout,
218
+ machine_detection_speech_threshold: machine_detection_speech_threshold,
219
+ machine_detection_speech_end_threshold: machine_detection_speech_end_threshold,
220
+ machine_detection_silence_timeout: machine_detection_silence_timeout,
221
+ additional_properties: struct
222
+ )
223
+ end
224
+
225
+ # Serialize an instance of TwilioVoicemailDetection to a JSON object
226
+ #
227
+ # @return [String]
228
+ def to_json(*_args)
229
+ @_field_set&.to_json
230
+ end
231
+
232
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
233
+ # hash and check each fields type against the current object's property
234
+ # definitions.
235
+ #
236
+ # @param obj [Object]
237
+ # @return [Void]
238
+ def self.validate_raw(obj:)
239
+ obj.provider.is_a?(String) != false || raise("Passed value for field obj.provider is not the expected type, validation failed.")
240
+ obj.voicemail_detection_types&.is_a?(Array) != false || raise("Passed value for field obj.voicemail_detection_types is not the expected type, validation failed.")
241
+ obj.enabled&.is_a?(Boolean) != false || raise("Passed value for field obj.enabled is not the expected type, validation failed.")
242
+ obj.machine_detection_timeout&.is_a?(Float) != false || raise("Passed value for field obj.machine_detection_timeout is not the expected type, validation failed.")
243
+ obj.machine_detection_speech_threshold&.is_a?(Float) != false || raise("Passed value for field obj.machine_detection_speech_threshold is not the expected type, validation failed.")
244
+ obj.machine_detection_speech_end_threshold&.is_a?(Float) != false || raise("Passed value for field obj.machine_detection_speech_end_threshold is not the expected type, validation failed.")
245
+ obj.machine_detection_silence_timeout&.is_a?(Float) != false || raise("Passed value for field obj.machine_detection_silence_timeout is not the expected type, validation failed.")
246
+ end
247
+ end
248
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Vapi
4
+ class TwilioVoicemailDetectionVoicemailDetectionTypesItem
5
+ MACHINE_START = "machine_start"
6
+ HUMAN = "human"
7
+ FAX = "fax"
8
+ UNKNOWN = "unknown"
9
+ MACHINE_END_BEEP = "machine_end_beep"
10
+ MACHINE_END_SILENCE = "machine_end_silence"
11
+ MACHINE_END_OTHER = "machine_end_other"
12
+ end
13
+ end
@@ -0,0 +1,65 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "ostruct"
4
+ require "json"
5
+
6
+ module Vapi
7
+ class UpdateAnthropicCredentialDto
8
+ # @return [String]
9
+ attr_reader :provider
10
+ # @return [String] This is not returned in the API.
11
+ attr_reader :api_key
12
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
13
+ attr_reader :additional_properties
14
+ # @return [Object]
15
+ attr_reader :_field_set
16
+ protected :_field_set
17
+
18
+ OMIT = Object.new
19
+
20
+ # @param provider [String]
21
+ # @param api_key [String] This is not returned in the API.
22
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
23
+ # @return [Vapi::UpdateAnthropicCredentialDto]
24
+ def initialize(provider:, api_key:, additional_properties: nil)
25
+ @provider = provider
26
+ @api_key = api_key
27
+ @additional_properties = additional_properties
28
+ @_field_set = { "provider": provider, "apiKey": api_key }
29
+ end
30
+
31
+ # Deserialize a JSON object to an instance of UpdateAnthropicCredentialDto
32
+ #
33
+ # @param json_object [String]
34
+ # @return [Vapi::UpdateAnthropicCredentialDto]
35
+ def self.from_json(json_object:)
36
+ struct = JSON.parse(json_object, object_class: OpenStruct)
37
+ parsed_json = JSON.parse(json_object)
38
+ provider = parsed_json["provider"]
39
+ api_key = parsed_json["apiKey"]
40
+ new(
41
+ provider: provider,
42
+ api_key: api_key,
43
+ additional_properties: struct
44
+ )
45
+ end
46
+
47
+ # Serialize an instance of UpdateAnthropicCredentialDto to a JSON object
48
+ #
49
+ # @return [String]
50
+ def to_json(*_args)
51
+ @_field_set&.to_json
52
+ end
53
+
54
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
55
+ # hash and check each fields type against the current object's property
56
+ # definitions.
57
+ #
58
+ # @param obj [Object]
59
+ # @return [Void]
60
+ def self.validate_raw(obj:)
61
+ obj.provider.is_a?(String) != false || raise("Passed value for field obj.provider is not the expected type, validation failed.")
62
+ obj.api_key.is_a?(String) != false || raise("Passed value for field obj.api_key is not the expected type, validation failed.")
63
+ end
64
+ end
65
+ end
@@ -0,0 +1,65 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "ostruct"
4
+ require "json"
5
+
6
+ module Vapi
7
+ class UpdateAnyscaleCredentialDto
8
+ # @return [String]
9
+ attr_reader :provider
10
+ # @return [String] This is not returned in the API.
11
+ attr_reader :api_key
12
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
13
+ attr_reader :additional_properties
14
+ # @return [Object]
15
+ attr_reader :_field_set
16
+ protected :_field_set
17
+
18
+ OMIT = Object.new
19
+
20
+ # @param provider [String]
21
+ # @param api_key [String] This is not returned in the API.
22
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
23
+ # @return [Vapi::UpdateAnyscaleCredentialDto]
24
+ def initialize(provider:, api_key:, additional_properties: nil)
25
+ @provider = provider
26
+ @api_key = api_key
27
+ @additional_properties = additional_properties
28
+ @_field_set = { "provider": provider, "apiKey": api_key }
29
+ end
30
+
31
+ # Deserialize a JSON object to an instance of UpdateAnyscaleCredentialDto
32
+ #
33
+ # @param json_object [String]
34
+ # @return [Vapi::UpdateAnyscaleCredentialDto]
35
+ def self.from_json(json_object:)
36
+ struct = JSON.parse(json_object, object_class: OpenStruct)
37
+ parsed_json = JSON.parse(json_object)
38
+ provider = parsed_json["provider"]
39
+ api_key = parsed_json["apiKey"]
40
+ new(
41
+ provider: provider,
42
+ api_key: api_key,
43
+ additional_properties: struct
44
+ )
45
+ end
46
+
47
+ # Serialize an instance of UpdateAnyscaleCredentialDto to a JSON object
48
+ #
49
+ # @return [String]
50
+ def to_json(*_args)
51
+ @_field_set&.to_json
52
+ end
53
+
54
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
55
+ # hash and check each fields type against the current object's property
56
+ # definitions.
57
+ #
58
+ # @param obj [Object]
59
+ # @return [Void]
60
+ def self.validate_raw(obj:)
61
+ obj.provider.is_a?(String) != false || raise("Passed value for field obj.provider is not the expected type, validation failed.")
62
+ obj.api_key.is_a?(String) != false || raise("Passed value for field obj.api_key is not the expected type, validation failed.")
63
+ end
64
+ end
65
+ end
@@ -0,0 +1,94 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "update_azure_open_ai_credential_dto_region"
4
+ require_relative "update_azure_open_ai_credential_dto_models_item"
5
+ require "ostruct"
6
+ require "json"
7
+
8
+ module Vapi
9
+ class UpdateAzureOpenAiCredentialDto
10
+ # @return [String]
11
+ attr_reader :provider
12
+ # @return [Vapi::UpdateAzureOpenAiCredentialDtoRegion]
13
+ attr_reader :region
14
+ # @return [Array<Vapi::UpdateAzureOpenAiCredentialDtoModelsItem>]
15
+ attr_reader :models
16
+ # @return [String] This is not returned in the API.
17
+ attr_reader :open_ai_key
18
+ # @return [String]
19
+ attr_reader :open_ai_endpoint
20
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
21
+ attr_reader :additional_properties
22
+ # @return [Object]
23
+ attr_reader :_field_set
24
+ protected :_field_set
25
+
26
+ OMIT = Object.new
27
+
28
+ # @param provider [String]
29
+ # @param region [Vapi::UpdateAzureOpenAiCredentialDtoRegion]
30
+ # @param models [Array<Vapi::UpdateAzureOpenAiCredentialDtoModelsItem>]
31
+ # @param open_ai_key [String] This is not returned in the API.
32
+ # @param open_ai_endpoint [String]
33
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
34
+ # @return [Vapi::UpdateAzureOpenAiCredentialDto]
35
+ def initialize(provider:, region:, models:, open_ai_key:, open_ai_endpoint:, additional_properties: nil)
36
+ @provider = provider
37
+ @region = region
38
+ @models = models
39
+ @open_ai_key = open_ai_key
40
+ @open_ai_endpoint = open_ai_endpoint
41
+ @additional_properties = additional_properties
42
+ @_field_set = {
43
+ "provider": provider,
44
+ "region": region,
45
+ "models": models,
46
+ "openAIKey": open_ai_key,
47
+ "openAIEndpoint": open_ai_endpoint
48
+ }
49
+ end
50
+
51
+ # Deserialize a JSON object to an instance of UpdateAzureOpenAiCredentialDto
52
+ #
53
+ # @param json_object [String]
54
+ # @return [Vapi::UpdateAzureOpenAiCredentialDto]
55
+ def self.from_json(json_object:)
56
+ struct = JSON.parse(json_object, object_class: OpenStruct)
57
+ parsed_json = JSON.parse(json_object)
58
+ provider = parsed_json["provider"]
59
+ region = parsed_json["region"]
60
+ models = parsed_json["models"]
61
+ open_ai_key = parsed_json["openAIKey"]
62
+ open_ai_endpoint = parsed_json["openAIEndpoint"]
63
+ new(
64
+ provider: provider,
65
+ region: region,
66
+ models: models,
67
+ open_ai_key: open_ai_key,
68
+ open_ai_endpoint: open_ai_endpoint,
69
+ additional_properties: struct
70
+ )
71
+ end
72
+
73
+ # Serialize an instance of UpdateAzureOpenAiCredentialDto to a JSON object
74
+ #
75
+ # @return [String]
76
+ def to_json(*_args)
77
+ @_field_set&.to_json
78
+ end
79
+
80
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
81
+ # hash and check each fields type against the current object's property
82
+ # definitions.
83
+ #
84
+ # @param obj [Object]
85
+ # @return [Void]
86
+ def self.validate_raw(obj:)
87
+ obj.provider.is_a?(String) != false || raise("Passed value for field obj.provider is not the expected type, validation failed.")
88
+ obj.region.is_a?(Vapi::UpdateAzureOpenAiCredentialDtoRegion) != false || raise("Passed value for field obj.region is not the expected type, validation failed.")
89
+ obj.models.is_a?(Array) != false || raise("Passed value for field obj.models is not the expected type, validation failed.")
90
+ obj.open_ai_key.is_a?(String) != false || raise("Passed value for field obj.open_ai_key is not the expected type, validation failed.")
91
+ obj.open_ai_endpoint.is_a?(String) != false || raise("Passed value for field obj.open_ai_endpoint is not the expected type, validation failed.")
92
+ end
93
+ end
94
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Vapi
4
+ class UpdateAzureOpenAiCredentialDtoModelsItem
5
+ GPT_4_O_MINI_20240718 = "gpt-4o-mini-2024-07-18"
6
+ GPT_4_O_20240513 = "gpt-4o-2024-05-13"
7
+ GPT_4_TURBO_20240409 = "gpt-4-turbo-2024-04-09"
8
+ GPT_40125_PREVIEW = "gpt-4-0125-preview"
9
+ GPT_41106_PREVIEW = "gpt-4-1106-preview"
10
+ GPT_40613 = "gpt-4-0613"
11
+ GPT_35_TURBO_0125 = "gpt-35-turbo-0125"
12
+ GPT_35_TURBO_1106 = "gpt-35-turbo-1106"
13
+ end
14
+ end
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Vapi
4
+ class UpdateAzureOpenAiCredentialDtoRegion
5
+ AUSTRALIA = "australia"
6
+ CANADA = "canada"
7
+ EASTUS_2 = "eastus2"
8
+ EASTUS = "eastus"
9
+ FRANCE = "france"
10
+ INDIA = "india"
11
+ JAPAN = "japan"
12
+ NORTHCENTRALUS = "northcentralus"
13
+ NORWAY = "norway"
14
+ SOUTHCENTRALUS = "southcentralus"
15
+ SWEDEN = "sweden"
16
+ SWITZERLAND = "switzerland"
17
+ UK = "uk"
18
+ WESTUS = "westus"
19
+ WESTUS_3 = "westus3"
20
+ end
21
+ end
@@ -0,0 +1,133 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "sip_trunk_gateway"
4
+ require_relative "sip_trunk_outbound_authentication_plan"
5
+ require_relative "sbc_configuration"
6
+ require "ostruct"
7
+ require "json"
8
+
9
+ module Vapi
10
+ class UpdateByoSipTrunkCredentialDto
11
+ # @return [String] This can be used to bring your own SIP trunks or to connect to a Carrier.
12
+ attr_reader :provider
13
+ # @return [Array<Vapi::SipTrunkGateway>] This is the list of SIP trunk's gateways.
14
+ attr_reader :gateways
15
+ # @return [String] This is the name of the SIP trunk. This is just for your reference.
16
+ attr_reader :name
17
+ # @return [Vapi::SipTrunkOutboundAuthenticationPlan] This can be used to configure the outbound authentication if required by the SIP
18
+ # trunk.
19
+ attr_reader :outbound_authentication_plan
20
+ # @return [Boolean] This ensures the outbound origination attempts have a leading plus. Defaults to
21
+ # false to match conventional telecom behavior.
22
+ # Usage:
23
+ # - Vonage/Twilio requires leading plus for all outbound calls. Set this to true.
24
+ # @default false
25
+ attr_reader :outbound_leading_plus_enabled
26
+ # @return [Vapi::SbcConfiguration] This is an advanced configuration for enterprise deployments. This uses the
27
+ # onprem SBC to trunk into the SIP trunk's `gateways`, rather than the managed SBC
28
+ # provided by Vapi.
29
+ attr_reader :sbc_configuration
30
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
31
+ attr_reader :additional_properties
32
+ # @return [Object]
33
+ attr_reader :_field_set
34
+ protected :_field_set
35
+
36
+ OMIT = Object.new
37
+
38
+ # @param provider [String] This can be used to bring your own SIP trunks or to connect to a Carrier.
39
+ # @param gateways [Array<Vapi::SipTrunkGateway>] This is the list of SIP trunk's gateways.
40
+ # @param name [String] This is the name of the SIP trunk. This is just for your reference.
41
+ # @param outbound_authentication_plan [Vapi::SipTrunkOutboundAuthenticationPlan] This can be used to configure the outbound authentication if required by the SIP
42
+ # trunk.
43
+ # @param outbound_leading_plus_enabled [Boolean] This ensures the outbound origination attempts have a leading plus. Defaults to
44
+ # false to match conventional telecom behavior.
45
+ # Usage:
46
+ # - Vonage/Twilio requires leading plus for all outbound calls. Set this to true.
47
+ # @default false
48
+ # @param sbc_configuration [Vapi::SbcConfiguration] This is an advanced configuration for enterprise deployments. This uses the
49
+ # onprem SBC to trunk into the SIP trunk's `gateways`, rather than the managed SBC
50
+ # provided by Vapi.
51
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
52
+ # @return [Vapi::UpdateByoSipTrunkCredentialDto]
53
+ def initialize(gateways:, provider: OMIT, name: OMIT, outbound_authentication_plan: OMIT,
54
+ outbound_leading_plus_enabled: OMIT, sbc_configuration: OMIT, additional_properties: nil)
55
+ @provider = provider if provider != OMIT
56
+ @gateways = gateways
57
+ @name = name if name != OMIT
58
+ @outbound_authentication_plan = outbound_authentication_plan if outbound_authentication_plan != OMIT
59
+ @outbound_leading_plus_enabled = outbound_leading_plus_enabled if outbound_leading_plus_enabled != OMIT
60
+ @sbc_configuration = sbc_configuration if sbc_configuration != OMIT
61
+ @additional_properties = additional_properties
62
+ @_field_set = {
63
+ "provider": provider,
64
+ "gateways": gateways,
65
+ "name": name,
66
+ "outboundAuthenticationPlan": outbound_authentication_plan,
67
+ "outboundLeadingPlusEnabled": outbound_leading_plus_enabled,
68
+ "sbcConfiguration": sbc_configuration
69
+ }.reject do |_k, v|
70
+ v == OMIT
71
+ end
72
+ end
73
+
74
+ # Deserialize a JSON object to an instance of UpdateByoSipTrunkCredentialDto
75
+ #
76
+ # @param json_object [String]
77
+ # @return [Vapi::UpdateByoSipTrunkCredentialDto]
78
+ def self.from_json(json_object:)
79
+ struct = JSON.parse(json_object, object_class: OpenStruct)
80
+ parsed_json = JSON.parse(json_object)
81
+ provider = parsed_json["provider"]
82
+ gateways = parsed_json["gateways"]&.map do |item|
83
+ item = item.to_json
84
+ Vapi::SipTrunkGateway.from_json(json_object: item)
85
+ end
86
+ name = parsed_json["name"]
87
+ if parsed_json["outboundAuthenticationPlan"].nil?
88
+ outbound_authentication_plan = nil
89
+ else
90
+ outbound_authentication_plan = parsed_json["outboundAuthenticationPlan"].to_json
91
+ outbound_authentication_plan = Vapi::SipTrunkOutboundAuthenticationPlan.from_json(json_object: outbound_authentication_plan)
92
+ end
93
+ outbound_leading_plus_enabled = parsed_json["outboundLeadingPlusEnabled"]
94
+ if parsed_json["sbcConfiguration"].nil?
95
+ sbc_configuration = nil
96
+ else
97
+ sbc_configuration = parsed_json["sbcConfiguration"].to_json
98
+ sbc_configuration = Vapi::SbcConfiguration.from_json(json_object: sbc_configuration)
99
+ end
100
+ new(
101
+ provider: provider,
102
+ gateways: gateways,
103
+ name: name,
104
+ outbound_authentication_plan: outbound_authentication_plan,
105
+ outbound_leading_plus_enabled: outbound_leading_plus_enabled,
106
+ sbc_configuration: sbc_configuration,
107
+ additional_properties: struct
108
+ )
109
+ end
110
+
111
+ # Serialize an instance of UpdateByoSipTrunkCredentialDto to a JSON object
112
+ #
113
+ # @return [String]
114
+ def to_json(*_args)
115
+ @_field_set&.to_json
116
+ end
117
+
118
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
119
+ # hash and check each fields type against the current object's property
120
+ # definitions.
121
+ #
122
+ # @param obj [Object]
123
+ # @return [Void]
124
+ def self.validate_raw(obj:)
125
+ obj.provider&.is_a?(String) != false || raise("Passed value for field obj.provider is not the expected type, validation failed.")
126
+ obj.gateways.is_a?(Array) != false || raise("Passed value for field obj.gateways is not the expected type, validation failed.")
127
+ obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
128
+ obj.outbound_authentication_plan.nil? || Vapi::SipTrunkOutboundAuthenticationPlan.validate_raw(obj: obj.outbound_authentication_plan)
129
+ obj.outbound_leading_plus_enabled&.is_a?(Boolean) != false || raise("Passed value for field obj.outbound_leading_plus_enabled is not the expected type, validation failed.")
130
+ obj.sbc_configuration.nil? || Vapi::SbcConfiguration.validate_raw(obj: obj.sbc_configuration)
131
+ end
132
+ end
133
+ end