vapi_server_sdk 0.5.0 → 0.9.1

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 (826) hide show
  1. checksums.yaml +4 -4
  2. data/lib/requests.rb +2 -2
  3. data/lib/types_export.rb +539 -197
  4. data/lib/vapi_server_sdk/assistants/client.rb +193 -108
  5. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_background_sound.rb +47 -2
  6. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_background_sound_zero.rb +10 -0
  7. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_client_messages_item.rb +2 -0
  8. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_credentials_item.rb +208 -14
  9. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_hooks_item.rb +109 -0
  10. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_model.rb +36 -36
  11. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_server_messages_item.rb +1 -17
  12. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_transcriber.rb +65 -0
  13. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_voice.rb +61 -9
  14. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_voicemail_detection.rb +129 -0
  15. data/lib/vapi_server_sdk/calls/client.rb +1045 -169
  16. data/lib/vapi_server_sdk/calls/types/calls_create_response.rb +56 -0
  17. data/lib/vapi_server_sdk/campaigns/client.rb +651 -0
  18. data/lib/vapi_server_sdk/campaigns/types/campaign_controller_find_all_request_sort_order.rb +10 -0
  19. data/lib/vapi_server_sdk/campaigns/types/campaign_controller_find_all_request_status.rb +11 -0
  20. data/lib/vapi_server_sdk/chats/client.rb +1378 -0
  21. data/lib/vapi_server_sdk/chats/types/chats_create_response.rb +56 -0
  22. data/lib/vapi_server_sdk/chats/types/chats_create_response_response.rb +98 -0
  23. data/lib/vapi_server_sdk/chats/types/chats_list_request_sort_order.rb +10 -0
  24. data/lib/vapi_server_sdk/chats/types/create_chat_dto_input.rb +60 -0
  25. data/lib/vapi_server_sdk/chats/types/create_chat_dto_input_item.rb +98 -0
  26. data/lib/vapi_server_sdk/chats/types/open_ai_responses_request_input.rb +60 -0
  27. data/lib/vapi_server_sdk/chats/types/open_ai_responses_request_input_item.rb +98 -0
  28. data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_create_request.rb +13 -0
  29. data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_create_response.rb +13 -0
  30. data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_delete_response.rb +13 -0
  31. data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_get_response.rb +13 -0
  32. data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_list_response_item.rb +13 -0
  33. data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_update_request.rb +13 -0
  34. data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_update_response.rb +13 -0
  35. data/lib/vapi_server_sdk/sessions/client.rb +925 -0
  36. data/lib/vapi_server_sdk/sessions/types/create_session_dto_messages_item.rb +98 -0
  37. data/lib/vapi_server_sdk/sessions/types/create_session_dto_status.rb +12 -0
  38. data/lib/vapi_server_sdk/sessions/types/sessions_list_request_sort_order.rb +10 -0
  39. data/lib/vapi_server_sdk/sessions/types/update_session_dto_messages_item.rb +98 -0
  40. data/lib/vapi_server_sdk/sessions/types/update_session_dto_status.rb +11 -0
  41. data/lib/vapi_server_sdk/squads/client.rb +272 -128
  42. data/lib/vapi_server_sdk/test_suite_tests/client.rb +15 -13
  43. data/lib/vapi_server_sdk/test_suite_tests/types/test_suite_test_controller_create_request.rb +16 -1
  44. data/lib/vapi_server_sdk/{blocks/types/blocks_update_response.rb → test_suite_tests/types/test_suite_test_controller_create_response.rb} +27 -39
  45. data/lib/vapi_server_sdk/{blocks/types/blocks_create_response.rb → test_suite_tests/types/test_suite_test_controller_find_one_response.rb} +27 -39
  46. data/lib/vapi_server_sdk/test_suite_tests/types/test_suite_test_controller_remove_response.rb +16 -1
  47. data/lib/vapi_server_sdk/test_suite_tests/types/test_suite_test_controller_update_request.rb +16 -1
  48. data/lib/vapi_server_sdk/{blocks/types/blocks_delete_response.rb → test_suite_tests/types/test_suite_test_controller_update_response.rb} +27 -39
  49. data/lib/vapi_server_sdk/test_suites/client.rb +1470 -8
  50. data/lib/vapi_server_sdk/tools/types/tools_create_request.rb +157 -1
  51. data/lib/vapi_server_sdk/tools/types/tools_create_response.rb +157 -1
  52. data/lib/vapi_server_sdk/tools/types/tools_delete_response.rb +157 -1
  53. data/lib/vapi_server_sdk/tools/types/tools_get_response.rb +157 -1
  54. data/lib/vapi_server_sdk/tools/types/tools_list_response_item.rb +157 -1
  55. data/lib/vapi_server_sdk/tools/types/tools_update_request.rb +157 -1
  56. data/lib/vapi_server_sdk/tools/types/tools_update_response.rb +157 -1
  57. data/lib/vapi_server_sdk/types/ai_edge_condition.rb +19 -9
  58. data/lib/vapi_server_sdk/types/analysis.rb +12 -1
  59. data/lib/vapi_server_sdk/types/analysis_plan.rb +30 -2
  60. data/lib/vapi_server_sdk/types/analytics_operation_column.rb +1 -0
  61. data/lib/vapi_server_sdk/types/anthropic_model.rb +21 -3
  62. data/lib/vapi_server_sdk/types/anthropic_model_model.rb +4 -1
  63. data/lib/vapi_server_sdk/types/anthropic_model_tools_item.rb +188 -32
  64. data/lib/vapi_server_sdk/types/anthropic_thinking_config.rb +67 -0
  65. data/lib/vapi_server_sdk/types/anyscale_model_tools_item.rb +188 -32
  66. data/lib/vapi_server_sdk/types/api_request_tool.rb +584 -0
  67. data/lib/vapi_server_sdk/types/api_request_tool_messages_item.rb +120 -0
  68. data/lib/vapi_server_sdk/types/{api_request_method.rb → api_request_tool_method.rb} +1 -1
  69. data/lib/vapi_server_sdk/types/artifact.rb +38 -2
  70. data/lib/vapi_server_sdk/types/artifact_plan.rb +12 -1
  71. data/lib/vapi_server_sdk/types/artifact_plan_recording_format.rb +10 -0
  72. data/lib/vapi_server_sdk/types/assembly_ai_transcriber.rb +103 -3
  73. data/lib/vapi_server_sdk/types/assistant.rb +118 -53
  74. data/lib/vapi_server_sdk/types/assistant_background_sound.rb +47 -2
  75. data/lib/vapi_server_sdk/types/assistant_background_sound_zero.rb +8 -0
  76. data/lib/vapi_server_sdk/types/assistant_client_messages_item.rb +2 -0
  77. data/lib/vapi_server_sdk/types/assistant_credentials_item.rb +208 -14
  78. data/lib/vapi_server_sdk/types/assistant_hook_assistant_speech_interrupted.rb +61 -0
  79. data/lib/vapi_server_sdk/types/assistant_hook_assistant_speech_interrupted_do_item.rb +108 -0
  80. data/lib/vapi_server_sdk/types/{assistant_hooks.rb → assistant_hook_call_ending.rb} +18 -25
  81. data/lib/vapi_server_sdk/types/{block_complete_message_conditions_item.rb → assistant_hook_call_ending_do_item.rb} +25 -25
  82. data/lib/vapi_server_sdk/types/assistant_hook_customer_speech_interrupted.rb +60 -0
  83. data/lib/vapi_server_sdk/types/assistant_hook_customer_speech_interrupted_do_item.rb +108 -0
  84. data/lib/vapi_server_sdk/types/assistant_hooks_item.rb +107 -0
  85. data/lib/vapi_server_sdk/types/assistant_message.rb +98 -0
  86. data/lib/vapi_server_sdk/types/assistant_model.rb +36 -36
  87. data/lib/vapi_server_sdk/types/assistant_overrides.rb +118 -53
  88. data/lib/vapi_server_sdk/types/assistant_overrides_background_sound.rb +47 -2
  89. data/lib/vapi_server_sdk/types/assistant_overrides_background_sound_zero.rb +8 -0
  90. data/lib/vapi_server_sdk/types/assistant_overrides_client_messages_item.rb +2 -0
  91. data/lib/vapi_server_sdk/types/assistant_overrides_credentials_item.rb +208 -14
  92. data/lib/vapi_server_sdk/types/assistant_overrides_hooks_item.rb +107 -0
  93. data/lib/vapi_server_sdk/types/assistant_overrides_model.rb +36 -36
  94. data/lib/vapi_server_sdk/types/assistant_overrides_server_messages_item.rb +1 -17
  95. data/lib/vapi_server_sdk/types/assistant_overrides_transcriber.rb +65 -0
  96. data/lib/vapi_server_sdk/types/assistant_overrides_voice.rb +61 -9
  97. data/lib/vapi_server_sdk/types/assistant_overrides_voicemail_detection.rb +127 -0
  98. data/lib/vapi_server_sdk/types/assistant_paginated_response.rb +75 -0
  99. data/lib/vapi_server_sdk/types/assistant_server_messages_item.rb +1 -17
  100. data/lib/vapi_server_sdk/types/assistant_transcriber.rb +65 -0
  101. data/lib/vapi_server_sdk/types/assistant_user_editable.rb +57 -0
  102. data/lib/vapi_server_sdk/types/assistant_version_paginated_response.rb +80 -0
  103. data/lib/vapi_server_sdk/types/assistant_voice.rb +61 -9
  104. data/lib/vapi_server_sdk/types/assistant_voicemail_detection.rb +127 -0
  105. data/lib/vapi_server_sdk/types/azure_credential.rb +11 -1
  106. data/lib/vapi_server_sdk/types/azure_open_ai_credential_models_item.rb +5 -2
  107. data/lib/vapi_server_sdk/types/azure_speech_transcriber.rb +21 -3
  108. data/lib/vapi_server_sdk/types/azure_voice.rb +10 -1
  109. data/lib/vapi_server_sdk/types/background_speech_denoising_plan.rb +86 -0
  110. data/lib/vapi_server_sdk/types/backoff_plan.rb +11 -11
  111. data/lib/vapi_server_sdk/types/bash_tool.rb +34 -44
  112. data/lib/vapi_server_sdk/types/bash_tool_with_tool_call.rb +34 -44
  113. data/lib/vapi_server_sdk/types/bucket_plan.rb +2 -0
  114. data/lib/vapi_server_sdk/types/byo_phone_number.rb +46 -14
  115. data/lib/vapi_server_sdk/types/call.rb +126 -20
  116. data/lib/vapi_server_sdk/types/call_batch_error.rb +71 -0
  117. data/lib/vapi_server_sdk/types/call_batch_response.rb +73 -0
  118. data/lib/vapi_server_sdk/types/call_costs_item.rb +26 -0
  119. data/lib/vapi_server_sdk/types/call_ended_reason.rb +346 -52
  120. data/lib/vapi_server_sdk/types/call_phone_call_provider.rb +1 -0
  121. data/lib/vapi_server_sdk/types/call_status.rb +1 -0
  122. data/lib/vapi_server_sdk/types/call_type.rb +1 -0
  123. data/lib/vapi_server_sdk/types/campaign.rb +216 -0
  124. data/lib/vapi_server_sdk/types/campaign_ended_reason.rb +10 -0
  125. data/lib/vapi_server_sdk/types/campaign_paginated_response.rb +75 -0
  126. data/lib/vapi_server_sdk/types/campaign_status.rb +10 -0
  127. data/lib/vapi_server_sdk/types/cartesia_experimental_controls.rb +10 -5
  128. data/lib/vapi_server_sdk/types/cartesia_speed_control.rb +52 -0
  129. data/lib/vapi_server_sdk/types/cartesia_transcriber.rb +83 -0
  130. data/lib/vapi_server_sdk/types/cartesia_transcriber_language.rb +191 -0
  131. data/lib/vapi_server_sdk/types/cartesia_voice.rb +10 -2
  132. data/lib/vapi_server_sdk/types/cartesia_voice_model.rb +1 -0
  133. data/lib/vapi_server_sdk/types/cerebras_model.rb +178 -0
  134. data/lib/vapi_server_sdk/types/cerebras_model_model.rb +9 -0
  135. data/lib/vapi_server_sdk/types/cerebras_model_tools_item.rb +315 -0
  136. data/lib/vapi_server_sdk/types/chat.rb +236 -0
  137. data/lib/vapi_server_sdk/types/chat_assistant_overrides.rb +57 -0
  138. data/lib/vapi_server_sdk/types/{assistant_hook_action_base.rb → chat_cost.rb} +17 -9
  139. data/lib/vapi_server_sdk/types/{vapi_model_steps_item.rb → chat_costs_item.rb} +25 -25
  140. data/lib/vapi_server_sdk/types/chat_input.rb +57 -0
  141. data/lib/vapi_server_sdk/types/chat_input_item.rb +96 -0
  142. data/lib/vapi_server_sdk/types/chat_messages_item.rb +96 -0
  143. data/lib/vapi_server_sdk/types/chat_output_item.rb +96 -0
  144. data/lib/vapi_server_sdk/types/chat_paginated_response.rb +75 -0
  145. data/lib/vapi_server_sdk/types/client_inbound_message_say.rb +26 -2
  146. data/lib/vapi_server_sdk/types/client_message_conversation_update.rb +67 -12
  147. data/lib/vapi_server_sdk/types/client_message_conversation_update_phone_number.rb +135 -0
  148. data/lib/vapi_server_sdk/types/client_message_hang.rb +73 -19
  149. data/lib/vapi_server_sdk/types/client_message_hang_phone_number.rb +134 -0
  150. data/lib/vapi_server_sdk/types/client_message_language_change_detected.rb +71 -11
  151. data/lib/vapi_server_sdk/types/client_message_language_change_detected_phone_number.rb +135 -0
  152. data/lib/vapi_server_sdk/types/client_message_message.rb +193 -164
  153. data/lib/vapi_server_sdk/types/client_message_metadata.rb +71 -11
  154. data/lib/vapi_server_sdk/types/client_message_metadata_phone_number.rb +134 -0
  155. data/lib/vapi_server_sdk/types/client_message_model_output.rb +71 -11
  156. data/lib/vapi_server_sdk/types/client_message_model_output_phone_number.rb +134 -0
  157. data/lib/vapi_server_sdk/types/client_message_speech_update.rb +80 -11
  158. data/lib/vapi_server_sdk/types/client_message_speech_update_phone_number.rb +134 -0
  159. data/lib/vapi_server_sdk/types/client_message_tool_calls.rb +66 -9
  160. data/lib/vapi_server_sdk/types/client_message_tool_calls_phone_number.rb +134 -0
  161. data/lib/vapi_server_sdk/types/client_message_tool_calls_result.rb +71 -11
  162. data/lib/vapi_server_sdk/types/client_message_tool_calls_result_phone_number.rb +135 -0
  163. data/lib/vapi_server_sdk/types/client_message_tool_calls_tool_with_tool_call_list_item.rb +13 -0
  164. data/lib/vapi_server_sdk/types/client_message_transcript.rb +73 -12
  165. data/lib/vapi_server_sdk/types/client_message_transcript_phone_number.rb +134 -0
  166. data/lib/vapi_server_sdk/types/client_message_transfer_update.rb +65 -12
  167. data/lib/vapi_server_sdk/types/client_message_transfer_update_destination.rb +0 -13
  168. data/lib/vapi_server_sdk/types/client_message_transfer_update_phone_number.rb +135 -0
  169. data/lib/vapi_server_sdk/types/client_message_user_interrupted.rb +73 -11
  170. data/lib/vapi_server_sdk/types/client_message_user_interrupted_phone_number.rb +135 -0
  171. data/lib/vapi_server_sdk/types/client_message_voice_input.rb +71 -11
  172. data/lib/vapi_server_sdk/types/client_message_voice_input_phone_number.rb +134 -0
  173. data/lib/vapi_server_sdk/types/client_message_workflow_node_started.rb +71 -11
  174. data/lib/vapi_server_sdk/types/client_message_workflow_node_started_phone_number.rb +135 -0
  175. data/lib/vapi_server_sdk/types/cloudflare_credential.rb +11 -1
  176. data/lib/vapi_server_sdk/types/compliance_plan.rb +10 -10
  177. data/lib/vapi_server_sdk/types/computer_tool.rb +34 -44
  178. data/lib/vapi_server_sdk/types/computer_tool_with_tool_call.rb +35 -45
  179. data/lib/vapi_server_sdk/types/condition.rb +3 -3
  180. data/lib/vapi_server_sdk/types/conversation_node.rb +247 -0
  181. data/lib/vapi_server_sdk/types/conversation_node_model.rb +122 -0
  182. data/lib/vapi_server_sdk/types/conversation_node_transcriber.rb +213 -0
  183. data/lib/vapi_server_sdk/types/conversation_node_voice.rb +278 -0
  184. data/lib/vapi_server_sdk/types/cost_breakdown.rb +10 -2
  185. data/lib/vapi_server_sdk/types/create_api_request_tool_dto.rb +551 -0
  186. data/lib/vapi_server_sdk/types/create_api_request_tool_dto_messages_item.rb +120 -0
  187. data/lib/vapi_server_sdk/types/create_api_request_tool_dto_method.rb +8 -0
  188. data/lib/vapi_server_sdk/types/create_assistant_dto.rb +118 -53
  189. data/lib/vapi_server_sdk/types/create_assistant_dto_background_sound.rb +47 -2
  190. data/lib/vapi_server_sdk/types/create_assistant_dto_background_sound_zero.rb +8 -0
  191. data/lib/vapi_server_sdk/types/create_assistant_dto_client_messages_item.rb +2 -0
  192. data/lib/vapi_server_sdk/types/create_assistant_dto_credentials_item.rb +208 -14
  193. data/lib/vapi_server_sdk/types/create_assistant_dto_hooks_item.rb +107 -0
  194. data/lib/vapi_server_sdk/types/create_assistant_dto_model.rb +36 -36
  195. data/lib/vapi_server_sdk/types/create_assistant_dto_server_messages_item.rb +1 -17
  196. data/lib/vapi_server_sdk/types/create_assistant_dto_transcriber.rb +65 -0
  197. data/lib/vapi_server_sdk/types/create_assistant_dto_voice.rb +61 -9
  198. data/lib/vapi_server_sdk/types/create_assistant_dto_voicemail_detection.rb +127 -0
  199. data/lib/vapi_server_sdk/types/create_azure_credential_dto.rb +12 -1
  200. data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto_models_item.rb +5 -2
  201. data/lib/vapi_server_sdk/types/create_bash_tool_dto.rb +34 -45
  202. data/lib/vapi_server_sdk/types/create_byo_phone_number_dto.rb +46 -14
  203. data/lib/vapi_server_sdk/types/create_cerebras_credential_dto.rb +2 -9
  204. data/lib/vapi_server_sdk/types/create_chat_stream_response.rb +87 -0
  205. data/lib/vapi_server_sdk/types/create_cloudflare_credential_dto.rb +12 -2
  206. data/lib/vapi_server_sdk/types/create_computer_tool_dto.rb +35 -45
  207. data/lib/vapi_server_sdk/types/create_customer_dto.rb +39 -3
  208. data/lib/vapi_server_sdk/types/create_dtmf_tool_dto.rb +2 -42
  209. data/lib/vapi_server_sdk/types/create_end_call_tool_dto.rb +2 -42
  210. data/lib/vapi_server_sdk/types/create_function_tool_dto.rb +46 -38
  211. data/lib/vapi_server_sdk/types/create_gcp_credential_dto.rb +27 -4
  212. data/lib/vapi_server_sdk/types/create_ghl_tool_dto.rb +2 -48
  213. data/lib/vapi_server_sdk/types/create_go_high_level_calendar_availability_tool_dto.rb +101 -0
  214. data/lib/vapi_server_sdk/types/create_go_high_level_calendar_availability_tool_dto_messages_item.rb +121 -0
  215. data/lib/vapi_server_sdk/types/create_go_high_level_calendar_event_create_tool_dto.rb +101 -0
  216. data/lib/vapi_server_sdk/types/create_go_high_level_calendar_event_create_tool_dto_messages_item.rb +121 -0
  217. data/lib/vapi_server_sdk/types/create_go_high_level_contact_create_tool_dto.rb +100 -0
  218. data/lib/vapi_server_sdk/types/create_go_high_level_contact_create_tool_dto_messages_item.rb +121 -0
  219. data/lib/vapi_server_sdk/types/create_go_high_level_contact_get_tool_dto.rb +99 -0
  220. data/lib/vapi_server_sdk/types/create_go_high_level_contact_get_tool_dto_messages_item.rb +121 -0
  221. data/lib/vapi_server_sdk/types/create_go_high_level_mcp_credential_dto.rb +73 -0
  222. data/lib/vapi_server_sdk/types/create_google_calendar_check_availability_tool_dto.rb +101 -0
  223. data/lib/vapi_server_sdk/types/create_google_calendar_check_availability_tool_dto_messages_item.rb +121 -0
  224. data/lib/vapi_server_sdk/types/create_google_calendar_create_event_tool_dto.rb +100 -0
  225. data/lib/vapi_server_sdk/types/create_google_calendar_create_event_tool_dto_messages_item.rb +121 -0
  226. data/lib/vapi_server_sdk/types/create_google_calendar_o_auth_2_authorization_credential_dto.rb +69 -0
  227. data/lib/vapi_server_sdk/types/create_google_calendar_o_auth_2_client_credential_dto.rb +59 -0
  228. data/lib/vapi_server_sdk/types/create_google_credential_dto.rb +2 -11
  229. data/lib/vapi_server_sdk/types/create_google_sheets_o_auth_2_authorization_credential_dto.rb +69 -0
  230. data/lib/vapi_server_sdk/types/create_google_sheets_row_append_tool_dto.rb +99 -0
  231. data/lib/vapi_server_sdk/types/create_google_sheets_row_append_tool_dto_messages_item.rb +121 -0
  232. data/lib/vapi_server_sdk/types/create_hume_credential_dto.rb +67 -0
  233. data/lib/vapi_server_sdk/types/create_inflection_ai_credential_dto.rb +2 -11
  234. data/lib/vapi_server_sdk/types/create_make_tool_dto.rb +2 -48
  235. data/lib/vapi_server_sdk/types/create_mcp_tool_dto.rb +148 -0
  236. data/lib/vapi_server_sdk/types/create_mcp_tool_dto_messages_item.rb +120 -0
  237. data/lib/vapi_server_sdk/types/create_mistral_credential_dto.rb +67 -0
  238. data/lib/vapi_server_sdk/types/create_neuphonic_credential_dto.rb +67 -0
  239. data/lib/vapi_server_sdk/types/create_org_dto.rb +36 -2
  240. data/lib/vapi_server_sdk/types/create_outbound_call_dto.rb +132 -5
  241. data/lib/vapi_server_sdk/types/create_output_tool_dto.rb +2 -42
  242. data/lib/vapi_server_sdk/types/create_query_tool_dto.rb +114 -0
  243. data/lib/vapi_server_sdk/types/create_query_tool_dto_messages_item.rb +120 -0
  244. data/lib/vapi_server_sdk/types/create_s_3_credential_dto.rb +12 -2
  245. data/lib/vapi_server_sdk/types/create_sesame_voice_dto.rb +67 -0
  246. data/lib/vapi_server_sdk/types/create_slack_o_auth_2_authorization_credential_dto.rb +69 -0
  247. data/lib/vapi_server_sdk/types/create_slack_send_message_tool_dto.rb +99 -0
  248. data/lib/vapi_server_sdk/types/create_slack_send_message_tool_dto_messages_item.rb +121 -0
  249. data/lib/vapi_server_sdk/types/create_sms_tool_dto.rb +99 -0
  250. data/lib/vapi_server_sdk/types/create_sms_tool_dto_messages_item.rb +120 -0
  251. data/lib/vapi_server_sdk/types/create_speechmatics_credential_dto.rb +67 -0
  252. data/lib/vapi_server_sdk/types/create_supabase_credential_dto.rb +82 -0
  253. data/lib/vapi_server_sdk/types/create_telnyx_phone_number_dto.rb +191 -0
  254. data/lib/vapi_server_sdk/types/create_telnyx_phone_number_dto_fallback_destination.rb +101 -0
  255. data/lib/vapi_server_sdk/types/create_test_suite_test_chat_dto.rb +90 -0
  256. data/lib/vapi_server_sdk/types/create_text_editor_tool_dto.rb +34 -45
  257. data/lib/vapi_server_sdk/types/create_tool_template_dto_details.rb +188 -32
  258. data/lib/vapi_server_sdk/types/create_tool_template_dto_provider_details.rb +78 -0
  259. data/lib/vapi_server_sdk/types/create_transfer_call_tool_dto.rb +2 -49
  260. data/lib/vapi_server_sdk/types/create_transfer_call_tool_dto_destinations_item.rb +0 -13
  261. data/lib/vapi_server_sdk/types/create_trieve_credential_dto.rb +67 -0
  262. data/lib/vapi_server_sdk/types/create_trieve_knowledge_base_dto.rb +5 -5
  263. data/lib/vapi_server_sdk/types/create_twilio_credential_dto.rb +25 -4
  264. data/lib/vapi_server_sdk/types/create_twilio_phone_number_dto.rb +84 -16
  265. data/lib/vapi_server_sdk/types/create_vapi_phone_number_dto.rb +46 -14
  266. data/lib/vapi_server_sdk/types/create_voicemail_tool_dto.rb +13 -42
  267. data/lib/vapi_server_sdk/types/create_vonage_phone_number_dto.rb +52 -18
  268. data/lib/vapi_server_sdk/types/create_web_call_dto.rb +94 -4
  269. data/lib/vapi_server_sdk/types/create_web_chat_dto.rb +137 -0
  270. data/lib/vapi_server_sdk/types/create_web_chat_dto_input.rb +57 -0
  271. data/lib/vapi_server_sdk/types/create_web_chat_dto_input_item.rb +96 -0
  272. data/lib/vapi_server_sdk/types/create_web_customer_dto.rb +153 -0
  273. data/lib/vapi_server_sdk/types/create_webhook_credential_dto.rb +5 -5
  274. data/lib/vapi_server_sdk/types/{update_conversation_block_dto_messages_item.rb → create_webhook_credential_dto_authentication_plan.rb} +26 -25
  275. data/lib/vapi_server_sdk/types/create_workflow_dto.rb +291 -2
  276. data/lib/vapi_server_sdk/types/{transfer_destination_step_message.rb → create_workflow_dto_background_sound.rb} +11 -21
  277. data/lib/vapi_server_sdk/types/create_workflow_dto_background_sound_zero.rb +8 -0
  278. data/lib/vapi_server_sdk/types/create_workflow_dto_credentials_item.rb +704 -0
  279. data/lib/vapi_server_sdk/types/create_workflow_dto_nodes_item.rb +19 -58
  280. data/lib/vapi_server_sdk/types/create_workflow_dto_transcriber.rb +213 -0
  281. data/lib/vapi_server_sdk/types/create_workflow_dto_voice.rb +278 -0
  282. data/lib/vapi_server_sdk/types/credential_action_request.rb +65 -0
  283. data/lib/vapi_server_sdk/types/credential_end_user.rb +65 -0
  284. data/lib/vapi_server_sdk/types/credential_session_dto.rb +58 -0
  285. data/lib/vapi_server_sdk/types/credential_session_dto_provider.rb +12 -0
  286. data/lib/vapi_server_sdk/types/credential_session_error.rb +65 -0
  287. data/lib/vapi_server_sdk/types/credential_session_response.rb +55 -0
  288. data/lib/vapi_server_sdk/types/credential_webhook_dto.rb +158 -0
  289. data/lib/vapi_server_sdk/types/credential_webhook_dto_auth_mode.rb +9 -0
  290. data/lib/vapi_server_sdk/types/credential_webhook_dto_operation.rb +9 -0
  291. data/lib/vapi_server_sdk/types/credential_webhook_dto_type.rb +9 -0
  292. data/lib/vapi_server_sdk/types/custom_endpointing_model_smart_endpointing_plan.rb +132 -0
  293. data/lib/vapi_server_sdk/types/custom_endpointing_model_smart_endpointing_plan_provider.rb +12 -0
  294. data/lib/vapi_server_sdk/types/custom_llm_model.rb +11 -1
  295. data/lib/vapi_server_sdk/types/custom_llm_model_tools_item.rb +188 -32
  296. data/lib/vapi_server_sdk/types/custom_transcriber.rb +23 -3
  297. data/lib/vapi_server_sdk/types/custom_voice.rb +14 -2
  298. data/lib/vapi_server_sdk/types/deep_infra_model_tools_item.rb +188 -32
  299. data/lib/vapi_server_sdk/types/deep_seek_model_tools_item.rb +188 -32
  300. data/lib/vapi_server_sdk/types/deepgram_transcriber.rb +43 -71
  301. data/lib/vapi_server_sdk/types/deepgram_transcriber_model.rb +3 -0
  302. data/lib/vapi_server_sdk/types/deepgram_voice.rb +21 -8
  303. data/lib/vapi_server_sdk/types/deepgram_voice_id.rb +45 -46
  304. data/lib/vapi_server_sdk/types/deepgram_voice_model.rb +9 -0
  305. data/lib/vapi_server_sdk/types/developer_message.rb +74 -0
  306. data/lib/vapi_server_sdk/types/dtmf_tool.rb +2 -45
  307. data/lib/vapi_server_sdk/types/edge.rb +5 -5
  308. data/lib/vapi_server_sdk/types/eleven_labs_transcriber.rb +83 -0
  309. data/lib/vapi_server_sdk/types/eleven_labs_transcriber_language.rb +191 -0
  310. data/lib/vapi_server_sdk/types/eleven_labs_voice.rb +26 -2
  311. data/lib/vapi_server_sdk/types/end_call_tool.rb +2 -45
  312. data/lib/vapi_server_sdk/types/exact_replacement.rb +25 -2
  313. data/lib/vapi_server_sdk/types/failed_edge_condition.rb +1 -43
  314. data/lib/vapi_server_sdk/types/fallback_assembly_ai_transcriber.rb +181 -0
  315. data/lib/vapi_server_sdk/types/fallback_azure_speech_transcriber.rb +62 -0
  316. data/lib/vapi_server_sdk/types/fallback_azure_speech_transcriber_language.rb +152 -0
  317. data/lib/vapi_server_sdk/types/fallback_azure_voice.rb +10 -1
  318. data/lib/vapi_server_sdk/types/fallback_cartesia_transcriber.rb +68 -0
  319. data/lib/vapi_server_sdk/types/fallback_cartesia_transcriber_language.rb +191 -0
  320. data/lib/vapi_server_sdk/types/fallback_cartesia_voice.rb +10 -2
  321. data/lib/vapi_server_sdk/types/fallback_cartesia_voice_model.rb +1 -0
  322. data/lib/vapi_server_sdk/types/fallback_custom_transcriber.rb +125 -0
  323. data/lib/vapi_server_sdk/types/fallback_custom_voice.rb +9 -2
  324. data/lib/vapi_server_sdk/types/fallback_deepgram_transcriber.rb +183 -0
  325. data/lib/vapi_server_sdk/types/fallback_deepgram_transcriber_language.rb +62 -0
  326. data/lib/vapi_server_sdk/types/fallback_deepgram_transcriber_model.rb +37 -0
  327. data/lib/vapi_server_sdk/types/fallback_deepgram_voice.rb +26 -9
  328. data/lib/vapi_server_sdk/types/fallback_deepgram_voice_id.rb +45 -46
  329. data/lib/vapi_server_sdk/types/fallback_deepgram_voice_model.rb +9 -0
  330. data/lib/vapi_server_sdk/types/fallback_eleven_labs_transcriber.rb +68 -0
  331. data/lib/vapi_server_sdk/types/fallback_eleven_labs_transcriber_language.rb +191 -0
  332. data/lib/vapi_server_sdk/types/fallback_eleven_labs_voice.rb +26 -2
  333. data/lib/vapi_server_sdk/types/fallback_gladia_transcriber.rb +143 -0
  334. data/lib/vapi_server_sdk/types/fallback_gladia_transcriber_language.rb +107 -0
  335. data/lib/vapi_server_sdk/types/fallback_gladia_transcriber_language_behaviour.rb +9 -0
  336. data/lib/vapi_server_sdk/types/fallback_gladia_transcriber_languages.rb +107 -0
  337. data/lib/vapi_server_sdk/types/fallback_gladia_transcriber_model.rb +9 -0
  338. data/lib/vapi_server_sdk/types/fallback_google_transcriber.rb +69 -0
  339. data/lib/vapi_server_sdk/types/fallback_google_transcriber_language.rb +46 -0
  340. data/lib/vapi_server_sdk/types/fallback_google_transcriber_model.rb +25 -0
  341. data/lib/vapi_server_sdk/types/fallback_hume_voice.rb +121 -0
  342. data/lib/vapi_server_sdk/types/fallback_inworld_voice.rb +131 -0
  343. data/lib/vapi_server_sdk/types/fallback_inworld_voice_language_code.rb +18 -0
  344. data/lib/vapi_server_sdk/types/fallback_inworld_voice_voice_id.rb +70 -0
  345. data/lib/vapi_server_sdk/types/fallback_lmnt_voice.rb +24 -2
  346. data/lib/vapi_server_sdk/types/fallback_lmnt_voice_id_enum.rb +41 -1
  347. data/lib/vapi_server_sdk/types/fallback_lmnt_voice_language.rb +193 -0
  348. data/lib/vapi_server_sdk/types/fallback_neets_voice.rb +8 -32
  349. data/lib/vapi_server_sdk/types/fallback_neuphonic_voice.rb +112 -0
  350. data/lib/vapi_server_sdk/types/fallback_neuphonic_voice_model.rb +9 -0
  351. data/lib/vapi_server_sdk/types/fallback_open_ai_transcriber.rb +69 -0
  352. data/lib/vapi_server_sdk/types/fallback_open_ai_transcriber_language.rb +64 -0
  353. data/lib/vapi_server_sdk/types/fallback_open_ai_transcriber_model.rb +9 -0
  354. data/lib/vapi_server_sdk/types/fallback_open_ai_voice.rb +41 -4
  355. data/lib/vapi_server_sdk/types/fallback_open_ai_voice_id.rb +46 -11
  356. data/lib/vapi_server_sdk/types/fallback_open_ai_voice_id_enum.rb +12 -0
  357. data/lib/vapi_server_sdk/types/fallback_open_ai_voice_model.rb +10 -0
  358. data/lib/vapi_server_sdk/types/fallback_plan_voices_item.rb +65 -13
  359. data/lib/vapi_server_sdk/types/fallback_play_ht_voice.rb +10 -2
  360. data/lib/vapi_server_sdk/types/fallback_rime_ai_voice.rb +64 -4
  361. data/lib/vapi_server_sdk/types/fallback_rime_ai_voice_id_enum.rb +8 -0
  362. data/lib/vapi_server_sdk/types/fallback_rime_ai_voice_model.rb +2 -2
  363. data/lib/vapi_server_sdk/types/fallback_sesame_voice.rb +94 -0
  364. data/lib/vapi_server_sdk/types/fallback_smallest_ai_voice.rb +16 -2
  365. data/lib/vapi_server_sdk/types/fallback_speechmatics_transcriber.rb +68 -0
  366. data/lib/vapi_server_sdk/types/fallback_speechmatics_transcriber_language.rb +62 -0
  367. data/lib/vapi_server_sdk/types/fallback_talkscriber_transcriber.rb +72 -0
  368. data/lib/vapi_server_sdk/types/fallback_talkscriber_transcriber_language.rb +109 -0
  369. data/lib/vapi_server_sdk/types/fallback_tavus_voice.rb +9 -1
  370. data/lib/vapi_server_sdk/types/fallback_transcriber_plan.rb +59 -0
  371. data/lib/vapi_server_sdk/types/fallback_transcriber_plan_transcribers_item.rb +212 -0
  372. data/lib/vapi_server_sdk/types/fallback_vapi_voice.rb +97 -0
  373. data/lib/vapi_server_sdk/types/fallback_vapi_voice_voice_id.rb +18 -0
  374. data/lib/vapi_server_sdk/types/file.rb +17 -1
  375. data/lib/vapi_server_sdk/types/file_status.rb +3 -2
  376. data/lib/vapi_server_sdk/types/format_plan_formatters_enabled_item.rb +1 -0
  377. data/lib/vapi_server_sdk/types/fourier_denoising_plan.rb +123 -0
  378. data/lib/vapi_server_sdk/types/{hangup.rb → function_call.rb} +16 -18
  379. data/lib/vapi_server_sdk/types/function_call_assistant_hook_action.rb +147 -0
  380. data/lib/vapi_server_sdk/types/function_call_assistant_hook_action_messages_item.rb +121 -0
  381. data/lib/vapi_server_sdk/types/function_tool.rb +48 -40
  382. data/lib/vapi_server_sdk/types/function_tool_with_tool_call.rb +48 -40
  383. data/lib/vapi_server_sdk/types/gcp_credential.rb +22 -4
  384. data/lib/vapi_server_sdk/types/get_chat_paginated_dto.rb +177 -0
  385. data/lib/vapi_server_sdk/types/get_chat_paginated_dto_sort_order.rb +9 -0
  386. data/lib/vapi_server_sdk/types/get_session_paginated_dto.rb +177 -0
  387. data/lib/vapi_server_sdk/types/get_session_paginated_dto_sort_order.rb +9 -0
  388. data/lib/vapi_server_sdk/types/ghl_tool.rb +2 -44
  389. data/lib/vapi_server_sdk/types/ghl_tool_with_tool_call.rb +2 -45
  390. data/lib/vapi_server_sdk/types/gladia_transcriber.rb +40 -3
  391. data/lib/vapi_server_sdk/types/gladia_transcriber_language.rb +1 -2
  392. data/lib/vapi_server_sdk/types/gladia_transcriber_languages.rb +107 -0
  393. data/lib/vapi_server_sdk/types/gladia_transcriber_model.rb +1 -0
  394. data/lib/vapi_server_sdk/types/global_node_plan.rb +73 -0
  395. data/lib/vapi_server_sdk/types/go_high_level_calendar_availability_tool.rb +135 -0
  396. data/lib/vapi_server_sdk/types/go_high_level_calendar_availability_tool_messages_item.rb +121 -0
  397. data/lib/vapi_server_sdk/types/go_high_level_calendar_availability_tool_provider_details.rb +73 -0
  398. data/lib/vapi_server_sdk/types/go_high_level_calendar_availability_tool_with_tool_call.rb +128 -0
  399. data/lib/vapi_server_sdk/types/go_high_level_calendar_availability_tool_with_tool_call_messages_item.rb +121 -0
  400. data/lib/vapi_server_sdk/types/go_high_level_calendar_event_create_tool.rb +135 -0
  401. data/lib/vapi_server_sdk/types/go_high_level_calendar_event_create_tool_messages_item.rb +121 -0
  402. data/lib/vapi_server_sdk/types/go_high_level_calendar_event_create_tool_provider_details.rb +73 -0
  403. data/lib/vapi_server_sdk/types/go_high_level_calendar_event_create_tool_with_tool_call.rb +128 -0
  404. data/lib/vapi_server_sdk/types/go_high_level_calendar_event_create_tool_with_tool_call_messages_item.rb +121 -0
  405. data/lib/vapi_server_sdk/types/go_high_level_contact_create_tool.rb +135 -0
  406. data/lib/vapi_server_sdk/types/go_high_level_contact_create_tool_messages_item.rb +121 -0
  407. data/lib/vapi_server_sdk/types/go_high_level_contact_create_tool_provider_details.rb +73 -0
  408. data/lib/vapi_server_sdk/types/go_high_level_contact_create_tool_with_tool_call.rb +128 -0
  409. data/lib/vapi_server_sdk/types/go_high_level_contact_create_tool_with_tool_call_messages_item.rb +121 -0
  410. data/lib/vapi_server_sdk/types/go_high_level_contact_get_tool.rb +135 -0
  411. data/lib/vapi_server_sdk/types/go_high_level_contact_get_tool_messages_item.rb +121 -0
  412. data/lib/vapi_server_sdk/types/go_high_level_contact_get_tool_provider_details.rb +73 -0
  413. data/lib/vapi_server_sdk/types/go_high_level_contact_get_tool_with_tool_call.rb +125 -0
  414. data/lib/vapi_server_sdk/types/go_high_level_contact_get_tool_with_tool_call_messages_item.rb +121 -0
  415. data/lib/vapi_server_sdk/types/go_high_level_mcp_credential.rb +118 -0
  416. data/lib/vapi_server_sdk/types/google_calendar_check_availability_tool.rb +135 -0
  417. data/lib/vapi_server_sdk/types/google_calendar_check_availability_tool_messages_item.rb +121 -0
  418. data/lib/vapi_server_sdk/types/google_calendar_create_event_tool.rb +135 -0
  419. data/lib/vapi_server_sdk/types/google_calendar_create_event_tool_messages_item.rb +121 -0
  420. data/lib/vapi_server_sdk/types/google_calendar_create_event_tool_provider_details.rb +73 -0
  421. data/lib/vapi_server_sdk/types/google_calendar_create_event_tool_with_tool_call.rb +114 -0
  422. data/lib/vapi_server_sdk/types/google_calendar_create_event_tool_with_tool_call_messages_item.rb +121 -0
  423. data/lib/vapi_server_sdk/types/google_calendar_o_auth_2_authorization_credential.rb +114 -0
  424. data/lib/vapi_server_sdk/types/google_calendar_o_auth_2_client_credential.rb +103 -0
  425. data/lib/vapi_server_sdk/types/google_model_model.rb +7 -0
  426. data/lib/vapi_server_sdk/types/google_model_tools_item.rb +188 -32
  427. data/lib/vapi_server_sdk/types/google_sheets_o_auth_2_authorization_credential.rb +114 -0
  428. data/lib/vapi_server_sdk/types/google_sheets_row_append_tool.rb +135 -0
  429. data/lib/vapi_server_sdk/types/google_sheets_row_append_tool_messages_item.rb +121 -0
  430. data/lib/vapi_server_sdk/types/google_sheets_row_append_tool_provider_details.rb +73 -0
  431. data/lib/vapi_server_sdk/types/google_sheets_row_append_tool_with_tool_call.rb +125 -0
  432. data/lib/vapi_server_sdk/types/google_sheets_row_append_tool_with_tool_call_messages_item.rb +121 -0
  433. data/lib/vapi_server_sdk/types/google_transcriber.rb +84 -0
  434. data/lib/vapi_server_sdk/types/google_transcriber_language.rb +46 -0
  435. data/lib/vapi_server_sdk/types/google_transcriber_model.rb +25 -0
  436. data/lib/vapi_server_sdk/types/google_voicemail_detection_plan.rb +91 -0
  437. data/lib/vapi_server_sdk/types/groq_model_model.rb +5 -2
  438. data/lib/vapi_server_sdk/types/groq_model_tools_item.rb +188 -32
  439. data/lib/vapi_server_sdk/types/{say_hook.rb → hangup_node.rb} +21 -21
  440. data/lib/vapi_server_sdk/types/hmac_authentication_plan.rb +151 -0
  441. data/lib/vapi_server_sdk/types/hmac_authentication_plan_algorithm.rb +10 -0
  442. data/lib/vapi_server_sdk/types/hmac_authentication_plan_signature_encoding.rb +9 -0
  443. data/lib/vapi_server_sdk/types/hume_credential.rb +111 -0
  444. data/lib/vapi_server_sdk/types/hume_voice.rb +137 -0
  445. data/lib/vapi_server_sdk/types/import_twilio_phone_number_dto.rb +88 -16
  446. data/lib/vapi_server_sdk/types/import_vonage_phone_number_dto.rb +52 -22
  447. data/lib/vapi_server_sdk/types/inflection_ai_model_tools_item.rb +188 -32
  448. data/lib/vapi_server_sdk/types/invoice_plan.rb +89 -0
  449. data/lib/vapi_server_sdk/types/inworld_voice.rb +147 -0
  450. data/lib/vapi_server_sdk/types/inworld_voice_language_code.rb +18 -0
  451. data/lib/vapi_server_sdk/types/inworld_voice_voice_id.rb +70 -0
  452. data/lib/vapi_server_sdk/types/json_schema.rb +40 -27
  453. data/lib/vapi_server_sdk/types/json_schema_format.rb +19 -0
  454. data/lib/vapi_server_sdk/types/jwt_response.rb +65 -0
  455. data/lib/vapi_server_sdk/types/keypad_input_plan.rb +93 -0
  456. data/lib/vapi_server_sdk/types/keypad_input_plan_delimiters.rb +11 -0
  457. data/lib/vapi_server_sdk/types/knowledge_base.rb +95 -0
  458. data/lib/vapi_server_sdk/types/knowledge_base_cost.rb +84 -0
  459. data/lib/vapi_server_sdk/types/knowledge_base_model.rb +25 -0
  460. data/lib/vapi_server_sdk/types/langfuse_observability_plan.rb +84 -0
  461. data/lib/vapi_server_sdk/types/livekit_smart_endpointing_plan.rb +90 -0
  462. data/lib/vapi_server_sdk/types/livekit_smart_endpointing_plan_provider.rb +10 -0
  463. data/lib/vapi_server_sdk/types/lmnt_voice.rb +19 -1
  464. data/lib/vapi_server_sdk/types/lmnt_voice_id_enum.rb +41 -1
  465. data/lib/vapi_server_sdk/types/lmnt_voice_language.rb +193 -0
  466. data/lib/vapi_server_sdk/types/logic_edge_condition.rb +1 -51
  467. data/lib/vapi_server_sdk/types/make_tool.rb +2 -44
  468. data/lib/vapi_server_sdk/types/make_tool_with_tool_call.rb +2 -45
  469. data/lib/vapi_server_sdk/types/mcp_tool.rb +182 -0
  470. data/lib/vapi_server_sdk/types/{tool_call_result_message_item.rb → mcp_tool_messages_item.rb} +33 -7
  471. data/lib/vapi_server_sdk/types/mcp_tool_metadata.rb +58 -0
  472. data/lib/vapi_server_sdk/types/mcp_tool_metadata_protocol.rb +9 -0
  473. data/lib/vapi_server_sdk/types/message_plan.rb +16 -2
  474. data/lib/vapi_server_sdk/types/mistral_credential.rb +111 -0
  475. data/lib/vapi_server_sdk/types/monitor_plan.rb +34 -2
  476. data/lib/vapi_server_sdk/types/mono.rb +84 -0
  477. data/lib/vapi_server_sdk/types/neets_voice.rb +8 -47
  478. data/lib/vapi_server_sdk/types/neuphonic_credential.rb +111 -0
  479. data/lib/vapi_server_sdk/types/neuphonic_voice.rb +128 -0
  480. data/lib/vapi_server_sdk/types/neuphonic_voice_model.rb +9 -0
  481. data/lib/vapi_server_sdk/types/node_artifact.rb +82 -0
  482. data/lib/vapi_server_sdk/types/node_artifact_messages_item.rb +96 -0
  483. data/lib/vapi_server_sdk/types/o_auth_2_authentication_plan.rb +16 -9
  484. data/lib/vapi_server_sdk/types/oauth_2_authentication_session.rb +13 -2
  485. data/lib/vapi_server_sdk/types/open_ai_model.rb +40 -1
  486. data/lib/vapi_server_sdk/types/open_ai_model_fallback_models_item.rb +70 -1
  487. data/lib/vapi_server_sdk/types/open_ai_model_model.rb +78 -1
  488. data/lib/vapi_server_sdk/types/open_ai_model_tool_strict_compatibility_mode.rb +16 -0
  489. data/lib/vapi_server_sdk/types/open_ai_model_tools_item.rb +188 -32
  490. data/lib/vapi_server_sdk/types/open_ai_transcriber.rb +84 -0
  491. data/lib/vapi_server_sdk/types/open_ai_transcriber_language.rb +64 -0
  492. data/lib/vapi_server_sdk/types/open_ai_transcriber_model.rb +9 -0
  493. data/lib/vapi_server_sdk/types/open_ai_voice.rb +36 -3
  494. data/lib/vapi_server_sdk/types/open_ai_voice_id.rb +46 -11
  495. data/lib/vapi_server_sdk/types/open_ai_voice_id_enum.rb +12 -0
  496. data/lib/vapi_server_sdk/types/open_ai_voice_model.rb +10 -0
  497. data/lib/vapi_server_sdk/types/open_ai_voicemail_detection_plan.rb +91 -0
  498. data/lib/vapi_server_sdk/types/open_ai_web_chat_request.rb +135 -0
  499. data/lib/vapi_server_sdk/types/open_ai_web_chat_request_input.rb +57 -0
  500. data/lib/vapi_server_sdk/types/open_ai_web_chat_request_input_item.rb +96 -0
  501. data/lib/vapi_server_sdk/types/open_router_model_tools_item.rb +188 -32
  502. data/lib/vapi_server_sdk/types/org.rb +52 -2
  503. data/lib/vapi_server_sdk/types/output_tool.rb +2 -45
  504. data/lib/vapi_server_sdk/types/perplexity_ai_model_tools_item.rb +188 -32
  505. data/lib/vapi_server_sdk/types/{hook.rb → phone_number_hook_call_ringing.rb} +12 -13
  506. data/lib/vapi_server_sdk/types/{conversation_block_messages_item.rb → phone_number_hook_call_ringing_do_item.rb} +25 -25
  507. data/lib/vapi_server_sdk/types/phone_number_paginated_response_results_item.rb +13 -0
  508. data/lib/vapi_server_sdk/types/play_ht_voice.rb +10 -2
  509. data/lib/vapi_server_sdk/types/query_tool.rb +148 -0
  510. data/lib/vapi_server_sdk/types/query_tool_messages_item.rb +120 -0
  511. data/lib/vapi_server_sdk/types/recording.rb +105 -0
  512. data/lib/vapi_server_sdk/types/response_completed_event.rb +71 -0
  513. data/lib/vapi_server_sdk/types/response_error_event.rb +94 -0
  514. data/lib/vapi_server_sdk/types/response_object.rb +107 -0
  515. data/lib/vapi_server_sdk/types/response_object_status.rb +11 -0
  516. data/lib/vapi_server_sdk/types/response_output_message.rb +91 -0
  517. data/lib/vapi_server_sdk/types/response_output_message_status.rb +10 -0
  518. data/lib/vapi_server_sdk/types/response_output_text.rb +72 -0
  519. data/lib/vapi_server_sdk/types/response_text_delta_event.rb +92 -0
  520. data/lib/vapi_server_sdk/types/response_text_done_event.rb +92 -0
  521. data/lib/vapi_server_sdk/types/rime_ai_voice.rb +58 -4
  522. data/lib/vapi_server_sdk/types/rime_ai_voice_id_enum.rb +8 -0
  523. data/lib/vapi_server_sdk/types/rime_ai_voice_model.rb +2 -2
  524. data/lib/vapi_server_sdk/types/s_3_credential.rb +12 -2
  525. data/lib/vapi_server_sdk/types/say_assistant_hook_action.rb +55 -0
  526. data/lib/vapi_server_sdk/types/{chat_service_response.rb → say_phone_number_hook_action.rb} +17 -9
  527. data/lib/vapi_server_sdk/types/schedule_plan.rb +72 -0
  528. data/lib/vapi_server_sdk/types/server.rb +15 -26
  529. data/lib/vapi_server_sdk/types/server_message_assistant_request.rb +28 -58
  530. data/lib/vapi_server_sdk/types/server_message_assistant_request_phone_number.rb +14 -4
  531. data/lib/vapi_server_sdk/types/server_message_call_endpointing_request.rb +173 -0
  532. data/lib/vapi_server_sdk/types/server_message_call_endpointing_request_messages_item.rb +97 -0
  533. data/lib/vapi_server_sdk/types/server_message_call_endpointing_request_phone_number.rb +135 -0
  534. data/lib/vapi_server_sdk/types/server_message_conversation_update.rb +28 -58
  535. data/lib/vapi_server_sdk/types/server_message_conversation_update_phone_number.rb +14 -4
  536. data/lib/vapi_server_sdk/types/server_message_end_of_call_report.rb +27 -57
  537. data/lib/vapi_server_sdk/types/server_message_end_of_call_report_costs_item.rb +26 -0
  538. data/lib/vapi_server_sdk/types/server_message_end_of_call_report_ended_reason.rb +346 -52
  539. data/lib/vapi_server_sdk/types/server_message_end_of_call_report_phone_number.rb +14 -4
  540. data/lib/vapi_server_sdk/types/server_message_hang.rb +28 -66
  541. data/lib/vapi_server_sdk/types/server_message_hang_phone_number.rb +14 -4
  542. data/lib/vapi_server_sdk/types/server_message_knowledge_base_request.rb +28 -60
  543. data/lib/vapi_server_sdk/types/server_message_knowledge_base_request_phone_number.rb +14 -4
  544. data/lib/vapi_server_sdk/types/server_message_language_change_detected.rb +27 -57
  545. data/lib/vapi_server_sdk/types/server_message_language_change_detected_phone_number.rb +14 -4
  546. data/lib/vapi_server_sdk/types/server_message_message.rb +250 -212
  547. data/lib/vapi_server_sdk/types/server_message_model_output.rb +27 -57
  548. data/lib/vapi_server_sdk/types/server_message_model_output_phone_number.rb +14 -4
  549. data/lib/vapi_server_sdk/types/server_message_phone_call_control.rb +28 -64
  550. data/lib/vapi_server_sdk/types/server_message_phone_call_control_phone_number.rb +14 -4
  551. data/lib/vapi_server_sdk/types/server_message_response_assistant_request.rb +93 -9
  552. data/lib/vapi_server_sdk/types/server_message_response_call_endpointing_request.rb +59 -0
  553. data/lib/vapi_server_sdk/types/server_message_response_message_response.rb +14 -0
  554. data/lib/vapi_server_sdk/types/server_message_response_transfer_destination_request.rb +15 -2
  555. data/lib/vapi_server_sdk/types/server_message_response_transfer_destination_request_destination.rb +0 -13
  556. data/lib/vapi_server_sdk/types/server_message_response_transfer_destination_request_message.rb +122 -0
  557. data/lib/vapi_server_sdk/types/server_message_speech_update.rb +36 -58
  558. data/lib/vapi_server_sdk/types/server_message_speech_update_phone_number.rb +14 -4
  559. data/lib/vapi_server_sdk/types/server_message_status_update.rb +27 -57
  560. data/lib/vapi_server_sdk/types/server_message_status_update_ended_reason.rb +346 -52
  561. data/lib/vapi_server_sdk/types/server_message_status_update_phone_number.rb +14 -4
  562. data/lib/vapi_server_sdk/types/server_message_status_update_status.rb +1 -0
  563. data/lib/vapi_server_sdk/types/server_message_tool_calls.rb +27 -55
  564. data/lib/vapi_server_sdk/types/server_message_tool_calls_phone_number.rb +14 -4
  565. data/lib/vapi_server_sdk/types/server_message_tool_calls_tool_with_tool_call_list_item.rb +13 -0
  566. data/lib/vapi_server_sdk/types/server_message_transcript.rb +27 -58
  567. data/lib/vapi_server_sdk/types/server_message_transcript_phone_number.rb +14 -4
  568. data/lib/vapi_server_sdk/types/server_message_transfer_destination_request.rb +28 -58
  569. data/lib/vapi_server_sdk/types/server_message_transfer_destination_request_phone_number.rb +14 -4
  570. data/lib/vapi_server_sdk/types/server_message_transfer_update.rb +27 -57
  571. data/lib/vapi_server_sdk/types/server_message_transfer_update_destination.rb +0 -13
  572. data/lib/vapi_server_sdk/types/server_message_transfer_update_phone_number.rb +14 -4
  573. data/lib/vapi_server_sdk/types/server_message_user_interrupted.rb +28 -58
  574. data/lib/vapi_server_sdk/types/server_message_user_interrupted_phone_number.rb +14 -4
  575. data/lib/vapi_server_sdk/types/server_message_voice_input.rb +27 -57
  576. data/lib/vapi_server_sdk/types/server_message_voice_input_phone_number.rb +14 -4
  577. data/lib/vapi_server_sdk/types/server_message_voice_request.rb +27 -95
  578. data/lib/vapi_server_sdk/types/server_message_voice_request_phone_number.rb +14 -4
  579. data/lib/vapi_server_sdk/types/sesame_voice.rb +111 -0
  580. data/lib/vapi_server_sdk/types/session.rb +193 -0
  581. data/lib/vapi_server_sdk/types/session_messages_item.rb +96 -0
  582. data/lib/vapi_server_sdk/types/session_paginated_response.rb +75 -0
  583. data/lib/vapi_server_sdk/types/session_status.rb +10 -0
  584. data/lib/vapi_server_sdk/types/slack_o_auth_2_authorization_credential.rb +112 -0
  585. data/lib/vapi_server_sdk/types/slack_send_message_tool.rb +135 -0
  586. data/lib/vapi_server_sdk/types/slack_send_message_tool_messages_item.rb +120 -0
  587. data/lib/vapi_server_sdk/types/smallest_ai_voice.rb +9 -1
  588. data/lib/vapi_server_sdk/types/smart_denoising_plan.rb +57 -0
  589. data/lib/vapi_server_sdk/types/sms_tool.rb +135 -0
  590. data/lib/vapi_server_sdk/types/sms_tool_messages_item.rb +120 -0
  591. data/lib/vapi_server_sdk/types/speechmatics_credential.rb +111 -0
  592. data/lib/vapi_server_sdk/types/speechmatics_transcriber.rb +83 -0
  593. data/lib/vapi_server_sdk/types/speechmatics_transcriber_language.rb +62 -0
  594. data/lib/vapi_server_sdk/types/start_speaking_plan.rb +58 -26
  595. data/lib/vapi_server_sdk/types/{neets_voice_id.rb → start_speaking_plan_smart_endpointing_enabled.rb} +6 -6
  596. data/lib/vapi_server_sdk/types/start_speaking_plan_smart_endpointing_plan.rb +76 -0
  597. data/lib/vapi_server_sdk/types/structured_data_multi_plan.rb +71 -0
  598. data/lib/vapi_server_sdk/types/structured_data_plan.rb +8 -4
  599. data/lib/vapi_server_sdk/types/subscription.rb +36 -2
  600. data/lib/vapi_server_sdk/types/subscription_type.rb +4 -0
  601. data/lib/vapi_server_sdk/types/success_evaluation_plan.rb +8 -4
  602. data/lib/vapi_server_sdk/types/summary_plan.rb +10 -6
  603. data/lib/vapi_server_sdk/types/supabase_bucket_plan.rb +129 -0
  604. data/lib/vapi_server_sdk/types/supabase_bucket_plan_region.rb +25 -0
  605. data/lib/vapi_server_sdk/types/supabase_credential.rb +128 -0
  606. data/lib/vapi_server_sdk/types/sync_voice_library_dto_providers_item.rb +4 -1
  607. data/lib/vapi_server_sdk/types/talkscriber_transcriber.rb +17 -2
  608. data/lib/vapi_server_sdk/types/target_plan.rb +115 -0
  609. data/lib/vapi_server_sdk/types/tavus_voice.rb +10 -2
  610. data/lib/vapi_server_sdk/types/telnyx_phone_number.rb +233 -0
  611. data/lib/vapi_server_sdk/types/{edge_condition.rb → telnyx_phone_number_fallback_destination.rb} +31 -38
  612. data/lib/vapi_server_sdk/types/telnyx_phone_number_status.rb +10 -0
  613. data/lib/vapi_server_sdk/types/template_details.rb +188 -32
  614. data/lib/vapi_server_sdk/types/template_provider_details.rb +78 -0
  615. data/lib/vapi_server_sdk/types/test_suite.rb +39 -3
  616. data/lib/vapi_server_sdk/types/test_suite_phone_number.rb +65 -0
  617. data/lib/vapi_server_sdk/types/test_suite_run_status.rb +1 -0
  618. data/lib/vapi_server_sdk/types/test_suite_run_test_attempt.rb +31 -4
  619. data/lib/vapi_server_sdk/types/test_suite_run_test_attempt_call.rb +2 -2
  620. data/lib/vapi_server_sdk/types/test_suite_run_test_attempt_metadata.rb +55 -0
  621. data/lib/vapi_server_sdk/types/test_suite_test_chat.rb +132 -0
  622. data/lib/vapi_server_sdk/types/test_suite_tests_paginated_response.rb +4 -4
  623. data/lib/vapi_server_sdk/types/{create_conversation_block_dto_messages_item.rb → test_suite_tests_paginated_response_results_item.rb} +25 -25
  624. data/lib/vapi_server_sdk/types/{chat_dto.rb → tester_plan.rb} +32 -31
  625. data/lib/vapi_server_sdk/types/text_editor_tool.rb +34 -44
  626. data/lib/vapi_server_sdk/types/text_editor_tool_with_tool_call.rb +34 -44
  627. data/lib/vapi_server_sdk/types/together_ai_model_tools_item.rb +188 -32
  628. data/lib/vapi_server_sdk/types/tool_call.rb +13 -13
  629. data/lib/vapi_server_sdk/types/tool_call_function.rb +11 -11
  630. data/lib/vapi_server_sdk/types/tool_call_result.rb +20 -9
  631. data/lib/vapi_server_sdk/types/tool_call_result_message.rb +14 -3
  632. data/lib/vapi_server_sdk/types/tool_message.rb +81 -0
  633. data/lib/vapi_server_sdk/types/tool_node.rb +100 -0
  634. data/lib/vapi_server_sdk/types/tool_node_tool.rb +316 -0
  635. data/lib/vapi_server_sdk/types/transfer_assistant_hook_action.rb +3 -13
  636. data/lib/vapi_server_sdk/types/transfer_call_tool.rb +3 -45
  637. data/lib/vapi_server_sdk/types/transfer_call_tool_destinations_item.rb +0 -13
  638. data/lib/vapi_server_sdk/types/transfer_fallback_plan.rb +83 -0
  639. data/lib/vapi_server_sdk/types/{fallback_neets_voice_id.rb → transfer_fallback_plan_message.rb} +11 -9
  640. data/lib/vapi_server_sdk/types/transfer_phone_number_hook_action.rb +65 -0
  641. data/lib/vapi_server_sdk/types/{create_trieve_knowledge_base_dto_create_plan.rb → transfer_phone_number_hook_action_destination.rb} +27 -27
  642. data/lib/vapi_server_sdk/types/transfer_plan.rb +119 -8
  643. data/lib/vapi_server_sdk/types/transfer_plan_message.rb +3 -2
  644. data/lib/vapi_server_sdk/types/transfer_plan_mode.rb +6 -0
  645. data/lib/vapi_server_sdk/types/trieve_credential.rb +111 -0
  646. data/lib/vapi_server_sdk/types/trieve_knowledge_base.rb +5 -5
  647. data/lib/vapi_server_sdk/types/trieve_knowledge_base_create.rb +13 -3
  648. data/lib/vapi_server_sdk/types/trieve_knowledge_base_import.rb +13 -3
  649. data/lib/vapi_server_sdk/types/twilio_credential.rb +20 -4
  650. data/lib/vapi_server_sdk/types/twilio_phone_number.rb +91 -23
  651. data/lib/vapi_server_sdk/types/{twilio_voicemail_detection.rb → twilio_voicemail_detection_plan.rb} +9 -17
  652. data/lib/vapi_server_sdk/types/{twilio_voicemail_detection_voicemail_detection_types_item.rb → twilio_voicemail_detection_plan_voicemail_detection_types_item.rb} +1 -1
  653. data/lib/vapi_server_sdk/types/update_api_request_tool_dto.rb +551 -0
  654. data/lib/vapi_server_sdk/types/update_api_request_tool_dto_messages_item.rb +120 -0
  655. data/lib/vapi_server_sdk/types/update_api_request_tool_dto_method.rb +8 -0
  656. data/lib/vapi_server_sdk/types/update_azure_credential_dto.rb +11 -1
  657. data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto_models_item.rb +5 -2
  658. data/lib/vapi_server_sdk/types/update_bash_tool_dto.rb +33 -44
  659. data/lib/vapi_server_sdk/types/update_byo_phone_number_dto.rb +46 -14
  660. data/lib/vapi_server_sdk/types/update_cloudflare_credential_dto.rb +12 -2
  661. data/lib/vapi_server_sdk/types/update_computer_tool_dto.rb +34 -44
  662. data/lib/vapi_server_sdk/types/update_dtmf_tool_dto.rb +2 -42
  663. data/lib/vapi_server_sdk/types/update_end_call_tool_dto.rb +2 -42
  664. data/lib/vapi_server_sdk/types/update_function_tool_dto.rb +46 -38
  665. data/lib/vapi_server_sdk/types/update_gcp_credential_dto.rb +27 -4
  666. data/lib/vapi_server_sdk/types/update_ghl_tool_dto.rb +2 -49
  667. data/lib/vapi_server_sdk/types/update_go_high_level_calendar_availability_tool_dto.rb +101 -0
  668. data/lib/vapi_server_sdk/types/update_go_high_level_calendar_availability_tool_dto_messages_item.rb +121 -0
  669. data/lib/vapi_server_sdk/types/update_go_high_level_calendar_event_create_tool_dto.rb +101 -0
  670. data/lib/vapi_server_sdk/types/update_go_high_level_calendar_event_create_tool_dto_messages_item.rb +121 -0
  671. data/lib/vapi_server_sdk/types/update_go_high_level_contact_create_tool_dto.rb +100 -0
  672. data/lib/vapi_server_sdk/types/update_go_high_level_contact_create_tool_dto_messages_item.rb +121 -0
  673. data/lib/vapi_server_sdk/types/update_go_high_level_contact_get_tool_dto.rb +99 -0
  674. data/lib/vapi_server_sdk/types/update_go_high_level_contact_get_tool_dto_messages_item.rb +121 -0
  675. data/lib/vapi_server_sdk/types/update_go_high_level_mcp_credential_dto.rb +73 -0
  676. data/lib/vapi_server_sdk/types/update_google_calendar_check_availability_tool_dto.rb +101 -0
  677. data/lib/vapi_server_sdk/types/update_google_calendar_check_availability_tool_dto_messages_item.rb +121 -0
  678. data/lib/vapi_server_sdk/types/update_google_calendar_create_event_tool_dto.rb +100 -0
  679. data/lib/vapi_server_sdk/types/update_google_calendar_create_event_tool_dto_messages_item.rb +121 -0
  680. data/lib/vapi_server_sdk/types/update_google_calendar_o_auth_2_authorization_credential_dto.rb +69 -0
  681. data/lib/vapi_server_sdk/types/update_google_calendar_o_auth_2_client_credential_dto.rb +59 -0
  682. data/lib/vapi_server_sdk/types/update_google_sheets_o_auth_2_authorization_credential_dto.rb +69 -0
  683. data/lib/vapi_server_sdk/types/update_google_sheets_row_append_tool_dto.rb +99 -0
  684. data/lib/vapi_server_sdk/types/update_google_sheets_row_append_tool_dto_messages_item.rb +121 -0
  685. data/lib/vapi_server_sdk/types/update_hume_credential_dto.rb +67 -0
  686. data/lib/vapi_server_sdk/types/update_make_tool_dto.rb +2 -49
  687. data/lib/vapi_server_sdk/types/update_mcp_tool_dto.rb +148 -0
  688. data/lib/vapi_server_sdk/types/update_mcp_tool_dto_messages_item.rb +120 -0
  689. data/lib/vapi_server_sdk/types/update_mistral_credential_dto.rb +67 -0
  690. data/lib/vapi_server_sdk/types/update_neuphonic_credential_dto.rb +67 -0
  691. data/lib/vapi_server_sdk/types/update_org_dto.rb +36 -2
  692. data/lib/vapi_server_sdk/types/update_output_tool_dto.rb +2 -42
  693. data/lib/vapi_server_sdk/types/update_query_tool_dto.rb +114 -0
  694. data/lib/vapi_server_sdk/types/update_query_tool_dto_messages_item.rb +120 -0
  695. data/lib/vapi_server_sdk/types/update_s_3_credential_dto.rb +11 -1
  696. data/lib/vapi_server_sdk/types/update_slack_o_auth_2_authorization_credential_dto.rb +69 -0
  697. data/lib/vapi_server_sdk/types/update_slack_send_message_tool_dto.rb +99 -0
  698. data/lib/vapi_server_sdk/types/update_slack_send_message_tool_dto_messages_item.rb +121 -0
  699. data/lib/vapi_server_sdk/types/update_sms_tool_dto.rb +99 -0
  700. data/lib/vapi_server_sdk/types/update_sms_tool_dto_messages_item.rb +120 -0
  701. data/lib/vapi_server_sdk/types/update_speechmatics_credential_dto.rb +67 -0
  702. data/lib/vapi_server_sdk/types/update_supabase_credential_dto.rb +82 -0
  703. data/lib/vapi_server_sdk/types/update_telnyx_phone_number_dto.rb +191 -0
  704. data/lib/vapi_server_sdk/types/update_telnyx_phone_number_dto_fallback_destination.rb +101 -0
  705. data/lib/vapi_server_sdk/types/update_test_suite_test_chat_dto.rb +90 -0
  706. data/lib/vapi_server_sdk/types/update_text_editor_tool_dto.rb +33 -44
  707. data/lib/vapi_server_sdk/types/update_tool_template_dto_details.rb +188 -32
  708. data/lib/vapi_server_sdk/types/update_tool_template_dto_provider_details.rb +78 -0
  709. data/lib/vapi_server_sdk/types/update_transfer_call_tool_dto.rb +2 -49
  710. data/lib/vapi_server_sdk/types/update_transfer_call_tool_dto_destinations_item.rb +0 -13
  711. data/lib/vapi_server_sdk/types/update_trieve_credential_dto.rb +67 -0
  712. data/lib/vapi_server_sdk/types/update_trieve_knowledge_base_dto.rb +5 -5
  713. data/lib/vapi_server_sdk/types/update_twilio_credential_dto.rb +23 -2
  714. data/lib/vapi_server_sdk/types/update_twilio_phone_number_dto.rb +83 -15
  715. data/lib/vapi_server_sdk/types/update_vapi_phone_number_dto.rb +46 -14
  716. data/lib/vapi_server_sdk/types/update_vonage_phone_number_dto.rb +52 -18
  717. data/lib/vapi_server_sdk/types/update_webhook_credential_dto.rb +73 -0
  718. data/lib/vapi_server_sdk/types/{update_trieve_knowledge_base_dto_create_plan.rb → update_webhook_credential_dto_authentication_plan.rb} +26 -27
  719. data/lib/vapi_server_sdk/types/vapi_model.rb +15 -19
  720. data/lib/vapi_server_sdk/types/vapi_model_tools_item.rb +188 -32
  721. data/lib/vapi_server_sdk/types/vapi_phone_number.rb +46 -14
  722. data/lib/vapi_server_sdk/types/vapi_smart_endpointing_plan.rb +56 -0
  723. data/lib/vapi_server_sdk/types/vapi_smart_endpointing_plan_provider.rb +10 -0
  724. data/lib/vapi_server_sdk/types/vapi_voice.rb +114 -0
  725. data/lib/vapi_server_sdk/types/vapi_voice_voice_id.rb +18 -0
  726. data/lib/vapi_server_sdk/types/vapi_voicemail_detection_plan.rb +91 -0
  727. data/lib/vapi_server_sdk/types/variable_extraction_alias.rb +81 -0
  728. data/lib/vapi_server_sdk/types/variable_extraction_plan.rb +297 -0
  729. data/lib/vapi_server_sdk/types/voicemail_detection_backoff_plan.rb +78 -0
  730. data/lib/vapi_server_sdk/types/voicemail_detection_cost.rb +110 -0
  731. data/lib/vapi_server_sdk/types/voicemail_detection_cost_provider.rb +11 -0
  732. data/lib/vapi_server_sdk/types/vonage_phone_number.rb +52 -18
  733. data/lib/vapi_server_sdk/types/web_chat.rb +80 -0
  734. data/lib/vapi_server_sdk/types/web_chat_output_item.rb +96 -0
  735. data/lib/vapi_server_sdk/types/webhook_credential.rb +5 -5
  736. data/lib/vapi_server_sdk/types/{block_start_message_conditions_item.rb → webhook_credential_authentication_plan.rb} +26 -25
  737. data/lib/vapi_server_sdk/types/workflow.rb +288 -3
  738. data/lib/vapi_server_sdk/types/workflow_anthropic_model.rb +97 -0
  739. data/lib/vapi_server_sdk/types/workflow_anthropic_model_model.rb +16 -0
  740. data/lib/vapi_server_sdk/types/workflow_background_sound.rb +55 -0
  741. data/lib/vapi_server_sdk/types/workflow_background_sound_zero.rb +8 -0
  742. data/lib/vapi_server_sdk/types/workflow_credentials_item.rb +704 -0
  743. data/lib/vapi_server_sdk/types/workflow_custom_model.rb +124 -0
  744. data/lib/vapi_server_sdk/types/workflow_custom_model_metadata_send_mode.rb +18 -0
  745. data/lib/vapi_server_sdk/types/workflow_google_model.rb +75 -0
  746. data/lib/vapi_server_sdk/types/workflow_google_model_model.rb +25 -0
  747. data/lib/vapi_server_sdk/types/workflow_nodes_item.rb +19 -58
  748. data/lib/vapi_server_sdk/types/workflow_open_ai_model.rb +89 -0
  749. data/lib/vapi_server_sdk/types/workflow_open_ai_model_model.rb +107 -0
  750. data/lib/vapi_server_sdk/types/workflow_overrides.rb +73 -0
  751. data/lib/vapi_server_sdk/types/workflow_transcriber.rb +213 -0
  752. data/lib/vapi_server_sdk/types/workflow_user_editable.rb +369 -0
  753. data/lib/vapi_server_sdk/types/workflow_user_editable_background_sound.rb +55 -0
  754. data/lib/vapi_server_sdk/types/workflow_user_editable_background_sound_zero.rb +8 -0
  755. data/lib/vapi_server_sdk/types/workflow_user_editable_credentials_item.rb +704 -0
  756. data/lib/vapi_server_sdk/types/{create_workflow_block_dto_steps_item.rb → workflow_user_editable_nodes_item.rb} +25 -25
  757. data/lib/vapi_server_sdk/types/workflow_user_editable_transcriber.rb +213 -0
  758. data/lib/vapi_server_sdk/types/workflow_user_editable_voice.rb +278 -0
  759. data/lib/vapi_server_sdk/types/workflow_voice.rb +278 -0
  760. data/lib/vapi_server_sdk/types/xai_model_tools_item.rb +188 -32
  761. data/lib/vapi_server_sdk/workflow/client.rb +788 -0
  762. data/lib/vapi_server_sdk/workflow/types/update_workflow_dto_background_sound.rb +57 -0
  763. data/lib/vapi_server_sdk/workflow/types/update_workflow_dto_background_sound_zero.rb +10 -0
  764. data/lib/vapi_server_sdk/workflow/types/update_workflow_dto_credentials_item.rb +706 -0
  765. data/lib/vapi_server_sdk/{blocks/types/blocks_get_response.rb → workflow/types/update_workflow_dto_nodes_item.rb} +21 -34
  766. data/lib/vapi_server_sdk/workflow/types/update_workflow_dto_transcriber.rb +215 -0
  767. data/lib/vapi_server_sdk/workflow/types/update_workflow_dto_voice.rb +280 -0
  768. data/lib/vapi_server_sdk.rb +56 -35
  769. metadata +432 -87
  770. data/lib/vapi_server_sdk/blocks/client.rb +0 -323
  771. data/lib/vapi_server_sdk/blocks/types/blocks_create_request.rb +0 -109
  772. data/lib/vapi_server_sdk/blocks/types/blocks_list_response_item.rb +0 -109
  773. data/lib/vapi_server_sdk/blocks/types/blocks_update_request.rb +0 -109
  774. data/lib/vapi_server_sdk/types/api_request.rb +0 -165
  775. data/lib/vapi_server_sdk/types/api_request_mode.rb +0 -10
  776. data/lib/vapi_server_sdk/types/assignment_mutation.rb +0 -189
  777. data/lib/vapi_server_sdk/types/assignment_mutation_conditions_item.rb +0 -94
  778. data/lib/vapi_server_sdk/types/block_complete_message.rb +0 -98
  779. data/lib/vapi_server_sdk/types/block_start_message.rb +0 -98
  780. data/lib/vapi_server_sdk/types/callback_step.rb +0 -204
  781. data/lib/vapi_server_sdk/types/callback_step_block.rb +0 -108
  782. data/lib/vapi_server_sdk/types/chat_completion_message.rb +0 -80
  783. data/lib/vapi_server_sdk/types/chat_completion_message_metadata.rb +0 -94
  784. data/lib/vapi_server_sdk/types/chat_completions_dto.rb +0 -84
  785. data/lib/vapi_server_sdk/types/client_message_transcript_type.rb +0 -10
  786. data/lib/vapi_server_sdk/types/conversation_block.rb +0 -239
  787. data/lib/vapi_server_sdk/types/create_conversation_block_dto.rb +0 -206
  788. data/lib/vapi_server_sdk/types/create_tool_call_block_dto.rb +0 -168
  789. data/lib/vapi_server_sdk/types/create_tool_call_block_dto_messages_item.rb +0 -94
  790. data/lib/vapi_server_sdk/types/create_tool_call_block_dto_tool.rb +0 -161
  791. data/lib/vapi_server_sdk/types/create_workflow_block_dto.rb +0 -154
  792. data/lib/vapi_server_sdk/types/create_workflow_block_dto_messages_item.rb +0 -94
  793. data/lib/vapi_server_sdk/types/deepgram_voice_id_enum.rb +0 -18
  794. data/lib/vapi_server_sdk/types/fallback_deepgram_voice_id_enum.rb +0 -18
  795. data/lib/vapi_server_sdk/types/fallback_neets_voice_id_enum.rb +0 -7
  796. data/lib/vapi_server_sdk/types/gather.rb +0 -143
  797. data/lib/vapi_server_sdk/types/handoff_step.rb +0 -204
  798. data/lib/vapi_server_sdk/types/handoff_step_block.rb +0 -108
  799. data/lib/vapi_server_sdk/types/hook_on.rb +0 -9
  800. data/lib/vapi_server_sdk/types/metrics.rb +0 -165
  801. data/lib/vapi_server_sdk/types/model_based_condition.rb +0 -117
  802. data/lib/vapi_server_sdk/types/neets_voice_id_enum.rb +0 -7
  803. data/lib/vapi_server_sdk/types/rule_based_condition.rb +0 -195
  804. data/lib/vapi_server_sdk/types/rule_based_condition_operator.rb +0 -14
  805. data/lib/vapi_server_sdk/types/say.rb +0 -81
  806. data/lib/vapi_server_sdk/types/server_message_transcript_type.rb +0 -10
  807. data/lib/vapi_server_sdk/types/step_destination.rb +0 -82
  808. data/lib/vapi_server_sdk/types/step_destination_conditions_item.rb +0 -94
  809. data/lib/vapi_server_sdk/types/tool_call_block.rb +0 -201
  810. data/lib/vapi_server_sdk/types/tool_call_block_messages_item.rb +0 -94
  811. data/lib/vapi_server_sdk/types/tool_call_block_tool.rb +0 -161
  812. data/lib/vapi_server_sdk/types/transfer.rb +0 -74
  813. data/lib/vapi_server_sdk/types/transfer_destination_step.rb +0 -104
  814. data/lib/vapi_server_sdk/types/transport.rb +0 -70
  815. data/lib/vapi_server_sdk/types/transport_provider.rb +0 -11
  816. data/lib/vapi_server_sdk/types/trieve_knowledge_base_create_plan.rb +0 -96
  817. data/lib/vapi_server_sdk/types/update_conversation_block_dto.rb +0 -206
  818. data/lib/vapi_server_sdk/types/update_tool_call_block_dto.rb +0 -168
  819. data/lib/vapi_server_sdk/types/update_tool_call_block_dto_messages_item.rb +0 -94
  820. data/lib/vapi_server_sdk/types/update_tool_call_block_dto_tool.rb +0 -161
  821. data/lib/vapi_server_sdk/types/update_workflow_block_dto.rb +0 -154
  822. data/lib/vapi_server_sdk/types/update_workflow_block_dto_messages_item.rb +0 -94
  823. data/lib/vapi_server_sdk/types/update_workflow_block_dto_steps_item.rb +0 -94
  824. data/lib/vapi_server_sdk/types/workflow_block.rb +0 -187
  825. data/lib/vapi_server_sdk/types/workflow_block_messages_item.rb +0 -94
  826. data/lib/vapi_server_sdk/types/workflow_block_steps_item.rb +0 -94
@@ -0,0 +1,551 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "update_api_request_tool_dto_messages_item"
4
+ require_relative "update_api_request_tool_dto_method"
5
+ require_relative "open_ai_function"
6
+ require_relative "json_schema"
7
+ require_relative "backoff_plan"
8
+ require_relative "variable_extraction_plan"
9
+ require "ostruct"
10
+ require "json"
11
+
12
+ module Vapi
13
+ class UpdateApiRequestToolDto
14
+ # @return [Array<Vapi::UpdateApiRequestToolDtoMessagesItem>] These are the messages that will be spoken to the user as the tool is running.
15
+ # For some tools, this is auto-filled based on special fields like
16
+ # `tool.destinations`. For others like the function tool, these can be custom
17
+ # configured.
18
+ attr_reader :messages
19
+ # @return [Vapi::UpdateApiRequestToolDtoMethod]
20
+ attr_reader :method
21
+ # @return [Float] This is the timeout in seconds for the request. Defaults to 20 seconds.
22
+ # @default 20
23
+ attr_reader :timeout_seconds
24
+ # @return [Vapi::OpenAiFunction] This is the function definition of the tool.
25
+ # For `endCall`, `transferCall`, and `dtmf` tools, this is auto-filled based on
26
+ # tool-specific fields like `tool.destinations`. But, even in those cases, you can
27
+ # provide a custom function definition for advanced use cases.
28
+ # An example of an advanced use case is if you want to customize the message
29
+ # that's spoken for `endCall` tool. You can specify a function where it returns an
30
+ # argument "reason". Then, in `messages` array, you can have many
31
+ # "request-complete" messages. One of these messages will be triggered if the
32
+ # `messages[].conditions` matches the "reason" argument.
33
+ attr_reader :function
34
+ # @return [String] This is the name of the tool. This will be passed to the model.
35
+ # Must be a-z, A-Z, 0-9, or contain underscores and dashes, with a maximum length
36
+ # of 40.
37
+ attr_reader :name
38
+ # @return [String] This is the description of the tool. This will be passed to the model.
39
+ attr_reader :description
40
+ # @return [String] This is where the request will be sent.
41
+ attr_reader :url
42
+ # @return [Vapi::JsonSchema] This is the body of the request.
43
+ attr_reader :body
44
+ # @return [Vapi::JsonSchema] These are the headers to send in the request.
45
+ attr_reader :headers
46
+ # @return [Vapi::BackoffPlan] This is the backoff plan if the request fails. Defaults to undefined (the
47
+ # request will not be retried).
48
+ # @default undefined (the request will not be retried)
49
+ attr_reader :backoff_plan
50
+ # @return [Vapi::VariableExtractionPlan] This is the plan to extract variables from the tool's response. These will be
51
+ # accessible during the call and stored in `call.artifact.variableValues` after
52
+ # the call.
53
+ # Usage:
54
+ # 1. Use `aliases` to extract variables from the tool's response body. (Most
55
+ # common case)
56
+ # ```json
57
+ # {
58
+ # "aliases": [
59
+ # {
60
+ # "key": "customerName",
61
+ # "value": "{{customer.name}}"
62
+ # },
63
+ # {
64
+ # "key": "customerAge",
65
+ # "value": "{{customer.age}}"
66
+ # }
67
+ # ]
68
+ # }
69
+ # ```
70
+ # The tool response body is made available to the liquid template.
71
+ # 2. Use `aliases` to extract variables from the tool's response body if the
72
+ # response is an array.
73
+ # ```json
74
+ # {
75
+ # "aliases": [
76
+ # {
77
+ # "key": "customerName",
78
+ # "value": "{{$[0].name}}"
79
+ # },
80
+ # {
81
+ # "key": "customerAge",
82
+ # "value": "{{$[0].age}}"
83
+ # }
84
+ # ]
85
+ # }
86
+ # ```
87
+ # $ is a shorthand for the tool's response body. `$[0]` is the first item in the
88
+ # array. `$[n]` is the nth item in the array. Note, $ is available regardless of
89
+ # the response body type (both object and array).
90
+ # 3. Use `aliases` to extract variables from the tool's response headers.
91
+ # ```json
92
+ # {
93
+ # "aliases": [
94
+ # {
95
+ # "key": "customerName",
96
+ # "value": "{{tool.response.headers.customer-name}}"
97
+ # },
98
+ # {
99
+ # "key": "customerAge",
100
+ # "value": "{{tool.response.headers.customer-age}}"
101
+ # }
102
+ # ]
103
+ # }
104
+ # ```
105
+ # `tool.response` is made available to the liquid template. Particularly, both
106
+ # `tool.response.headers` and `tool.response.body` are available. Note,
107
+ # `tool.response` is available regardless of the response body type (both object
108
+ # and array).
109
+ # 4. Use `schema` to extract a large portion of the tool's response body.
110
+ # 4.1. If you hit example.com and it returns `{"name": "John", "age": 30}`, then
111
+ # you can specify the schema as:
112
+ # ```json
113
+ # {
114
+ # "schema": {
115
+ # "type": "object",
116
+ # "properties": {
117
+ # "name": {
118
+ # "type": "string"
119
+ # },
120
+ # "age": {
121
+ # "type": "number"
122
+ # }
123
+ # }
124
+ # }
125
+ # }
126
+ # ```
127
+ # 4.2. If you hit example.com and it returns `{"name": {"first": "John", "last":
128
+ # "Doe"}}`, then you can specify the schema as:
129
+ # ```json
130
+ # {
131
+ # "schema": {
132
+ # "type": "object",
133
+ # "properties": {
134
+ # "name": {
135
+ # "type": "object",
136
+ # "properties": {
137
+ # "first": {
138
+ # "type": "string"
139
+ # },
140
+ # "last": {
141
+ # "type": "string"
142
+ # }
143
+ # }
144
+ # }
145
+ # }
146
+ # }
147
+ # }
148
+ # ```
149
+ # These will be extracted as `{{ name }}` and `{{ age }}` respectively. To
150
+ # emphasize, object properties are extracted as direct global variables.
151
+ # 4.3. If you hit example.com and it returns `{"name": {"first": "John", "last":
152
+ # "Doe"}}`, then you can specify the schema as:
153
+ # ```json
154
+ # {
155
+ # "schema": {
156
+ # "type": "object",
157
+ # "properties": {
158
+ # "name": {
159
+ # "type": "object",
160
+ # "properties": {
161
+ # "first": {
162
+ # "type": "string"
163
+ # },
164
+ # "last": {
165
+ # "type": "string"
166
+ # }
167
+ # }
168
+ # }
169
+ # }
170
+ # }
171
+ # }
172
+ # ```
173
+ # These will be extracted as `{{ name }}`. And, `{{ name.first }}` and `{{
174
+ # name.last }}` will be accessible.
175
+ # 4.4. If you hit example.com and it returns `["94123", "94124"]`, then you can
176
+ # specify the schema as:
177
+ # ```json
178
+ # {
179
+ # "schema": {
180
+ # "type": "array",
181
+ # "title": "zipCodes",
182
+ # "items": {
183
+ # "type": "string"
184
+ # }
185
+ # }
186
+ # }
187
+ # ```
188
+ # This will be extracted as `{{ zipCodes }}`. To access the array items, you can
189
+ # use `{{ zipCodes[0] }}` and `{{ zipCodes[1] }}`.
190
+ # 4.5. If you hit example.com and it returns `[{"name": "John", "age": 30,
191
+ # "zipCodes": ["94123", "94124"]}, {"name": "Jane", "age": 25, "zipCodes":
192
+ # ["94125", "94126"]}]`, then you can specify the schema as:
193
+ # ```json
194
+ # {
195
+ # "schema": {
196
+ # "type": "array",
197
+ # "title": "people",
198
+ # "items": {
199
+ # "type": "object",
200
+ # "properties": {
201
+ # "name": {
202
+ # "type": "string"
203
+ # },
204
+ # "age": {
205
+ # "type": "number"
206
+ # },
207
+ # "zipCodes": {
208
+ # "type": "array",
209
+ # "items": {
210
+ # "type": "string"
211
+ # }
212
+ # }
213
+ # }
214
+ # }
215
+ # }
216
+ # }
217
+ # ```
218
+ # This will be extracted as `{{ people }}`. To access the array items, you can use
219
+ # `{{ people[n].name }}`, `{{ people[n].age }}`, `{{ people[n].zipCodes }}`, `{{
220
+ # people[n].zipCodes[0] }}` and `{{ people[n].zipCodes[1] }}`.
221
+ # Note: Both `aliases` and `schema` can be used together.
222
+ attr_reader :variable_extraction_plan
223
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
224
+ attr_reader :additional_properties
225
+ # @return [Object]
226
+ attr_reader :_field_set
227
+ protected :_field_set
228
+
229
+ OMIT = Object.new
230
+
231
+ # @param messages [Array<Vapi::UpdateApiRequestToolDtoMessagesItem>] These are the messages that will be spoken to the user as the tool is running.
232
+ # For some tools, this is auto-filled based on special fields like
233
+ # `tool.destinations`. For others like the function tool, these can be custom
234
+ # configured.
235
+ # @param method [Vapi::UpdateApiRequestToolDtoMethod]
236
+ # @param timeout_seconds [Float] This is the timeout in seconds for the request. Defaults to 20 seconds.
237
+ # @default 20
238
+ # @param function [Vapi::OpenAiFunction] This is the function definition of the tool.
239
+ # For `endCall`, `transferCall`, and `dtmf` tools, this is auto-filled based on
240
+ # tool-specific fields like `tool.destinations`. But, even in those cases, you can
241
+ # provide a custom function definition for advanced use cases.
242
+ # An example of an advanced use case is if you want to customize the message
243
+ # that's spoken for `endCall` tool. You can specify a function where it returns an
244
+ # argument "reason". Then, in `messages` array, you can have many
245
+ # "request-complete" messages. One of these messages will be triggered if the
246
+ # `messages[].conditions` matches the "reason" argument.
247
+ # @param name [String] This is the name of the tool. This will be passed to the model.
248
+ # Must be a-z, A-Z, 0-9, or contain underscores and dashes, with a maximum length
249
+ # of 40.
250
+ # @param description [String] This is the description of the tool. This will be passed to the model.
251
+ # @param url [String] This is where the request will be sent.
252
+ # @param body [Vapi::JsonSchema] This is the body of the request.
253
+ # @param headers [Vapi::JsonSchema] These are the headers to send in the request.
254
+ # @param backoff_plan [Vapi::BackoffPlan] This is the backoff plan if the request fails. Defaults to undefined (the
255
+ # request will not be retried).
256
+ # @default undefined (the request will not be retried)
257
+ # @param variable_extraction_plan [Vapi::VariableExtractionPlan] This is the plan to extract variables from the tool's response. These will be
258
+ # accessible during the call and stored in `call.artifact.variableValues` after
259
+ # the call.
260
+ # Usage:
261
+ # 1. Use `aliases` to extract variables from the tool's response body. (Most
262
+ # common case)
263
+ # ```json
264
+ # {
265
+ # "aliases": [
266
+ # {
267
+ # "key": "customerName",
268
+ # "value": "{{customer.name}}"
269
+ # },
270
+ # {
271
+ # "key": "customerAge",
272
+ # "value": "{{customer.age}}"
273
+ # }
274
+ # ]
275
+ # }
276
+ # ```
277
+ # The tool response body is made available to the liquid template.
278
+ # 2. Use `aliases` to extract variables from the tool's response body if the
279
+ # response is an array.
280
+ # ```json
281
+ # {
282
+ # "aliases": [
283
+ # {
284
+ # "key": "customerName",
285
+ # "value": "{{$[0].name}}"
286
+ # },
287
+ # {
288
+ # "key": "customerAge",
289
+ # "value": "{{$[0].age}}"
290
+ # }
291
+ # ]
292
+ # }
293
+ # ```
294
+ # $ is a shorthand for the tool's response body. `$[0]` is the first item in the
295
+ # array. `$[n]` is the nth item in the array. Note, $ is available regardless of
296
+ # the response body type (both object and array).
297
+ # 3. Use `aliases` to extract variables from the tool's response headers.
298
+ # ```json
299
+ # {
300
+ # "aliases": [
301
+ # {
302
+ # "key": "customerName",
303
+ # "value": "{{tool.response.headers.customer-name}}"
304
+ # },
305
+ # {
306
+ # "key": "customerAge",
307
+ # "value": "{{tool.response.headers.customer-age}}"
308
+ # }
309
+ # ]
310
+ # }
311
+ # ```
312
+ # `tool.response` is made available to the liquid template. Particularly, both
313
+ # `tool.response.headers` and `tool.response.body` are available. Note,
314
+ # `tool.response` is available regardless of the response body type (both object
315
+ # and array).
316
+ # 4. Use `schema` to extract a large portion of the tool's response body.
317
+ # 4.1. If you hit example.com and it returns `{"name": "John", "age": 30}`, then
318
+ # you can specify the schema as:
319
+ # ```json
320
+ # {
321
+ # "schema": {
322
+ # "type": "object",
323
+ # "properties": {
324
+ # "name": {
325
+ # "type": "string"
326
+ # },
327
+ # "age": {
328
+ # "type": "number"
329
+ # }
330
+ # }
331
+ # }
332
+ # }
333
+ # ```
334
+ # 4.2. If you hit example.com and it returns `{"name": {"first": "John", "last":
335
+ # "Doe"}}`, then you can specify the schema as:
336
+ # ```json
337
+ # {
338
+ # "schema": {
339
+ # "type": "object",
340
+ # "properties": {
341
+ # "name": {
342
+ # "type": "object",
343
+ # "properties": {
344
+ # "first": {
345
+ # "type": "string"
346
+ # },
347
+ # "last": {
348
+ # "type": "string"
349
+ # }
350
+ # }
351
+ # }
352
+ # }
353
+ # }
354
+ # }
355
+ # ```
356
+ # These will be extracted as `{{ name }}` and `{{ age }}` respectively. To
357
+ # emphasize, object properties are extracted as direct global variables.
358
+ # 4.3. If you hit example.com and it returns `{"name": {"first": "John", "last":
359
+ # "Doe"}}`, then you can specify the schema as:
360
+ # ```json
361
+ # {
362
+ # "schema": {
363
+ # "type": "object",
364
+ # "properties": {
365
+ # "name": {
366
+ # "type": "object",
367
+ # "properties": {
368
+ # "first": {
369
+ # "type": "string"
370
+ # },
371
+ # "last": {
372
+ # "type": "string"
373
+ # }
374
+ # }
375
+ # }
376
+ # }
377
+ # }
378
+ # }
379
+ # ```
380
+ # These will be extracted as `{{ name }}`. And, `{{ name.first }}` and `{{
381
+ # name.last }}` will be accessible.
382
+ # 4.4. If you hit example.com and it returns `["94123", "94124"]`, then you can
383
+ # specify the schema as:
384
+ # ```json
385
+ # {
386
+ # "schema": {
387
+ # "type": "array",
388
+ # "title": "zipCodes",
389
+ # "items": {
390
+ # "type": "string"
391
+ # }
392
+ # }
393
+ # }
394
+ # ```
395
+ # This will be extracted as `{{ zipCodes }}`. To access the array items, you can
396
+ # use `{{ zipCodes[0] }}` and `{{ zipCodes[1] }}`.
397
+ # 4.5. If you hit example.com and it returns `[{"name": "John", "age": 30,
398
+ # "zipCodes": ["94123", "94124"]}, {"name": "Jane", "age": 25, "zipCodes":
399
+ # ["94125", "94126"]}]`, then you can specify the schema as:
400
+ # ```json
401
+ # {
402
+ # "schema": {
403
+ # "type": "array",
404
+ # "title": "people",
405
+ # "items": {
406
+ # "type": "object",
407
+ # "properties": {
408
+ # "name": {
409
+ # "type": "string"
410
+ # },
411
+ # "age": {
412
+ # "type": "number"
413
+ # },
414
+ # "zipCodes": {
415
+ # "type": "array",
416
+ # "items": {
417
+ # "type": "string"
418
+ # }
419
+ # }
420
+ # }
421
+ # }
422
+ # }
423
+ # }
424
+ # ```
425
+ # This will be extracted as `{{ people }}`. To access the array items, you can use
426
+ # `{{ people[n].name }}`, `{{ people[n].age }}`, `{{ people[n].zipCodes }}`, `{{
427
+ # people[n].zipCodes[0] }}` and `{{ people[n].zipCodes[1] }}`.
428
+ # Note: Both `aliases` and `schema` can be used together.
429
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
430
+ # @return [Vapi::UpdateApiRequestToolDto]
431
+ def initialize(messages: OMIT, method: OMIT, timeout_seconds: OMIT, function: OMIT, name: OMIT, description: OMIT,
432
+ url: OMIT, body: OMIT, headers: OMIT, backoff_plan: OMIT, variable_extraction_plan: OMIT, additional_properties: nil)
433
+ @messages = messages if messages != OMIT
434
+ @method = method if method != OMIT
435
+ @timeout_seconds = timeout_seconds if timeout_seconds != OMIT
436
+ @function = function if function != OMIT
437
+ @name = name if name != OMIT
438
+ @description = description if description != OMIT
439
+ @url = url if url != OMIT
440
+ @body = body if body != OMIT
441
+ @headers = headers if headers != OMIT
442
+ @backoff_plan = backoff_plan if backoff_plan != OMIT
443
+ @variable_extraction_plan = variable_extraction_plan if variable_extraction_plan != OMIT
444
+ @additional_properties = additional_properties
445
+ @_field_set = {
446
+ "messages": messages,
447
+ "method": method,
448
+ "timeoutSeconds": timeout_seconds,
449
+ "function": function,
450
+ "name": name,
451
+ "description": description,
452
+ "url": url,
453
+ "body": body,
454
+ "headers": headers,
455
+ "backoffPlan": backoff_plan,
456
+ "variableExtractionPlan": variable_extraction_plan
457
+ }.reject do |_k, v|
458
+ v == OMIT
459
+ end
460
+ end
461
+
462
+ # Deserialize a JSON object to an instance of UpdateApiRequestToolDto
463
+ #
464
+ # @param json_object [String]
465
+ # @return [Vapi::UpdateApiRequestToolDto]
466
+ def self.from_json(json_object:)
467
+ struct = JSON.parse(json_object, object_class: OpenStruct)
468
+ parsed_json = JSON.parse(json_object)
469
+ messages = parsed_json["messages"]&.map do |item|
470
+ item = item.to_json
471
+ Vapi::UpdateApiRequestToolDtoMessagesItem.from_json(json_object: item)
472
+ end
473
+ method = parsed_json["method"]
474
+ timeout_seconds = parsed_json["timeoutSeconds"]
475
+ if parsed_json["function"].nil?
476
+ function = nil
477
+ else
478
+ function = parsed_json["function"].to_json
479
+ function = Vapi::OpenAiFunction.from_json(json_object: function)
480
+ end
481
+ name = parsed_json["name"]
482
+ description = parsed_json["description"]
483
+ url = parsed_json["url"]
484
+ if parsed_json["body"].nil?
485
+ body = nil
486
+ else
487
+ body = parsed_json["body"].to_json
488
+ body = Vapi::JsonSchema.from_json(json_object: body)
489
+ end
490
+ if parsed_json["headers"].nil?
491
+ headers = nil
492
+ else
493
+ headers = parsed_json["headers"].to_json
494
+ headers = Vapi::JsonSchema.from_json(json_object: headers)
495
+ end
496
+ if parsed_json["backoffPlan"].nil?
497
+ backoff_plan = nil
498
+ else
499
+ backoff_plan = parsed_json["backoffPlan"].to_json
500
+ backoff_plan = Vapi::BackoffPlan.from_json(json_object: backoff_plan)
501
+ end
502
+ if parsed_json["variableExtractionPlan"].nil?
503
+ variable_extraction_plan = nil
504
+ else
505
+ variable_extraction_plan = parsed_json["variableExtractionPlan"].to_json
506
+ variable_extraction_plan = Vapi::VariableExtractionPlan.from_json(json_object: variable_extraction_plan)
507
+ end
508
+ new(
509
+ messages: messages,
510
+ method: method,
511
+ timeout_seconds: timeout_seconds,
512
+ function: function,
513
+ name: name,
514
+ description: description,
515
+ url: url,
516
+ body: body,
517
+ headers: headers,
518
+ backoff_plan: backoff_plan,
519
+ variable_extraction_plan: variable_extraction_plan,
520
+ additional_properties: struct
521
+ )
522
+ end
523
+
524
+ # Serialize an instance of UpdateApiRequestToolDto to a JSON object
525
+ #
526
+ # @return [String]
527
+ def to_json(*_args)
528
+ @_field_set&.to_json
529
+ end
530
+
531
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
532
+ # hash and check each fields type against the current object's property
533
+ # definitions.
534
+ #
535
+ # @param obj [Object]
536
+ # @return [Void]
537
+ def self.validate_raw(obj:)
538
+ obj.messages&.is_a?(Array) != false || raise("Passed value for field obj.messages is not the expected type, validation failed.")
539
+ obj.method&.is_a?(Vapi::UpdateApiRequestToolDtoMethod) != false || raise("Passed value for field obj.method is not the expected type, validation failed.")
540
+ obj.timeout_seconds&.is_a?(Float) != false || raise("Passed value for field obj.timeout_seconds is not the expected type, validation failed.")
541
+ obj.function.nil? || Vapi::OpenAiFunction.validate_raw(obj: obj.function)
542
+ obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
543
+ obj.description&.is_a?(String) != false || raise("Passed value for field obj.description is not the expected type, validation failed.")
544
+ obj.url&.is_a?(String) != false || raise("Passed value for field obj.url is not the expected type, validation failed.")
545
+ obj.body.nil? || Vapi::JsonSchema.validate_raw(obj: obj.body)
546
+ obj.headers.nil? || Vapi::JsonSchema.validate_raw(obj: obj.headers)
547
+ obj.backoff_plan.nil? || Vapi::BackoffPlan.validate_raw(obj: obj.backoff_plan)
548
+ obj.variable_extraction_plan.nil? || Vapi::VariableExtractionPlan.validate_raw(obj: obj.variable_extraction_plan)
549
+ end
550
+ end
551
+ end
@@ -0,0 +1,120 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "json"
4
+ require_relative "tool_message_start"
5
+ require_relative "tool_message_complete"
6
+ require_relative "tool_message_failed"
7
+ require_relative "tool_message_delayed"
8
+
9
+ module Vapi
10
+ class UpdateApiRequestToolDtoMessagesItem
11
+ # @return [Object]
12
+ attr_reader :member
13
+ # @return [String]
14
+ attr_reader :discriminant
15
+
16
+ private_class_method :new
17
+ alias kind_of? is_a?
18
+
19
+ # @param member [Object]
20
+ # @param discriminant [String]
21
+ # @return [Vapi::UpdateApiRequestToolDtoMessagesItem]
22
+ def initialize(member:, discriminant:)
23
+ @member = member
24
+ @discriminant = discriminant
25
+ end
26
+
27
+ # Deserialize a JSON object to an instance of UpdateApiRequestToolDtoMessagesItem
28
+ #
29
+ # @param json_object [String]
30
+ # @return [Vapi::UpdateApiRequestToolDtoMessagesItem]
31
+ def self.from_json(json_object:)
32
+ struct = JSON.parse(json_object, object_class: OpenStruct)
33
+ member = case struct.type
34
+ when "request-start"
35
+ Vapi::ToolMessageStart.from_json(json_object: json_object)
36
+ when "request-complete"
37
+ Vapi::ToolMessageComplete.from_json(json_object: json_object)
38
+ when "request-failed"
39
+ Vapi::ToolMessageFailed.from_json(json_object: json_object)
40
+ when "request-response-delayed"
41
+ Vapi::ToolMessageDelayed.from_json(json_object: json_object)
42
+ else
43
+ Vapi::ToolMessageStart.from_json(json_object: json_object)
44
+ end
45
+ new(member: member, discriminant: struct.type)
46
+ end
47
+
48
+ # For Union Types, to_json functionality is delegated to the wrapped member.
49
+ #
50
+ # @return [String]
51
+ def to_json(*_args)
52
+ case @discriminant
53
+ when "request-start"
54
+ { **@member.to_json, type: @discriminant }.to_json
55
+ when "request-complete"
56
+ { **@member.to_json, type: @discriminant }.to_json
57
+ when "request-failed"
58
+ { **@member.to_json, type: @discriminant }.to_json
59
+ when "request-response-delayed"
60
+ { **@member.to_json, type: @discriminant }.to_json
61
+ else
62
+ { "type": @discriminant, value: @member }.to_json
63
+ end
64
+ @member.to_json
65
+ end
66
+
67
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
68
+ # hash and check each fields type against the current object's property
69
+ # definitions.
70
+ #
71
+ # @param obj [Object]
72
+ # @return [Void]
73
+ def self.validate_raw(obj:)
74
+ case obj.type
75
+ when "request-start"
76
+ Vapi::ToolMessageStart.validate_raw(obj: obj)
77
+ when "request-complete"
78
+ Vapi::ToolMessageComplete.validate_raw(obj: obj)
79
+ when "request-failed"
80
+ Vapi::ToolMessageFailed.validate_raw(obj: obj)
81
+ when "request-response-delayed"
82
+ Vapi::ToolMessageDelayed.validate_raw(obj: obj)
83
+ else
84
+ raise("Passed value matched no type within the union, validation failed.")
85
+ end
86
+ end
87
+
88
+ # For Union Types, is_a? functionality is delegated to the wrapped member.
89
+ #
90
+ # @param obj [Object]
91
+ # @return [Boolean]
92
+ def is_a?(obj)
93
+ @member.is_a?(obj)
94
+ end
95
+
96
+ # @param member [Vapi::ToolMessageStart]
97
+ # @return [Vapi::UpdateApiRequestToolDtoMessagesItem]
98
+ def self.request_start(member:)
99
+ new(member: member, discriminant: "request-start")
100
+ end
101
+
102
+ # @param member [Vapi::ToolMessageComplete]
103
+ # @return [Vapi::UpdateApiRequestToolDtoMessagesItem]
104
+ def self.request_complete(member:)
105
+ new(member: member, discriminant: "request-complete")
106
+ end
107
+
108
+ # @param member [Vapi::ToolMessageFailed]
109
+ # @return [Vapi::UpdateApiRequestToolDtoMessagesItem]
110
+ def self.request_failed(member:)
111
+ new(member: member, discriminant: "request-failed")
112
+ end
113
+
114
+ # @param member [Vapi::ToolMessageDelayed]
115
+ # @return [Vapi::UpdateApiRequestToolDtoMessagesItem]
116
+ def self.request_response_delayed(member:)
117
+ new(member: member, discriminant: "request-response-delayed")
118
+ end
119
+ end
120
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Vapi
4
+ class UpdateApiRequestToolDtoMethod
5
+ POST = "POST"
6
+ GET = "GET"
7
+ end
8
+ end