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,925 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "../../requests"
4
+ require_relative "types/sessions_list_request_sort_order"
5
+ require "date"
6
+ require_relative "../types/session_paginated_response"
7
+ require_relative "types/create_session_dto_status"
8
+ require_relative "../types/create_assistant_dto"
9
+ require_relative "types/create_session_dto_messages_item"
10
+ require_relative "../types/create_customer_dto"
11
+ require_relative "../types/import_twilio_phone_number_dto"
12
+ require_relative "../types/session"
13
+ require_relative "types/update_session_dto_status"
14
+ require_relative "types/update_session_dto_messages_item"
15
+ require "async"
16
+
17
+ module Vapi
18
+ class SessionsClient
19
+ # @return [Vapi::RequestClient]
20
+ attr_reader :request_client
21
+
22
+ # @param request_client [Vapi::RequestClient]
23
+ # @return [Vapi::SessionsClient]
24
+ def initialize(request_client:)
25
+ @request_client = request_client
26
+ end
27
+
28
+ # @param name [String] This is the name of the session to filter by.
29
+ # @param assistant_id [String] This is the ID of the assistant to filter sessions by.
30
+ # @param workflow_id [String] This is the ID of the workflow to filter sessions by.
31
+ # @param page [Float] This is the page number to return. Defaults to 1.
32
+ # @param sort_order [Vapi::Sessions::SessionsListRequestSortOrder] This is the sort order for pagination. Defaults to 'DESC'.
33
+ # @param limit [Float] This is the maximum number of items to return. Defaults to 100.
34
+ # @param created_at_gt [DateTime] This will return items where the createdAt is greater than the specified value.
35
+ # @param created_at_lt [DateTime] This will return items where the createdAt is less than the specified value.
36
+ # @param created_at_ge [DateTime] This will return items where the createdAt is greater than or equal to the
37
+ # specified value.
38
+ # @param created_at_le [DateTime] This will return items where the createdAt is less than or equal to the
39
+ # specified value.
40
+ # @param updated_at_gt [DateTime] This will return items where the updatedAt is greater than the specified value.
41
+ # @param updated_at_lt [DateTime] This will return items where the updatedAt is less than the specified value.
42
+ # @param updated_at_ge [DateTime] This will return items where the updatedAt is greater than or equal to the
43
+ # specified value.
44
+ # @param updated_at_le [DateTime] This will return items where the updatedAt is less than or equal to the
45
+ # specified value.
46
+ # @param request_options [Vapi::RequestOptions]
47
+ # @return [Vapi::SessionPaginatedResponse]
48
+ def list(name: nil, assistant_id: nil, workflow_id: nil, page: nil, sort_order: nil, limit: nil,
49
+ created_at_gt: nil, created_at_lt: nil, created_at_ge: nil, created_at_le: nil, updated_at_gt: nil, updated_at_lt: nil, updated_at_ge: nil, updated_at_le: nil, request_options: nil)
50
+ response = @request_client.conn.get do |req|
51
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
52
+ req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
53
+ req.headers = {
54
+ **(req.headers || {}),
55
+ **@request_client.get_headers,
56
+ **(request_options&.additional_headers || {})
57
+ }.compact
58
+ req.params = {
59
+ **(request_options&.additional_query_parameters || {}),
60
+ "name": name,
61
+ "assistantId": assistant_id,
62
+ "workflowId": workflow_id,
63
+ "page": page,
64
+ "sortOrder": sort_order,
65
+ "limit": limit,
66
+ "createdAtGt": created_at_gt,
67
+ "createdAtLt": created_at_lt,
68
+ "createdAtGe": created_at_ge,
69
+ "createdAtLe": created_at_le,
70
+ "updatedAtGt": updated_at_gt,
71
+ "updatedAtLt": updated_at_lt,
72
+ "updatedAtGe": updated_at_ge,
73
+ "updatedAtLe": updated_at_le
74
+ }.compact
75
+ unless request_options.nil? || request_options&.additional_body_parameters.nil?
76
+ req.body = { **(request_options&.additional_body_parameters || {}) }.compact
77
+ end
78
+ req.url "#{@request_client.get_url(request_options: request_options)}/session"
79
+ end
80
+ Vapi::SessionPaginatedResponse.from_json(json_object: response.body)
81
+ end
82
+
83
+ # @param name [String] This is a user-defined name for the session. Maximum length is 40 characters.
84
+ # @param status [Vapi::Sessions::CreateSessionDtoStatus] This is the current status of the session. Can be either 'active' or
85
+ # 'completed'.
86
+ # @param expiration_seconds [Float] Session expiration time in seconds. Defaults to 24 hours (86400 seconds) if not
87
+ # set.
88
+ # @param assistant_id [String] This is the ID of the assistant associated with this session. Use this when
89
+ # referencing an existing assistant.
90
+ # @param assistant [Hash] This is the assistant configuration for this session. Use this when creating a
91
+ # new assistant configuration.
92
+ # If assistantId is provided, this will be ignored.Request of type Vapi::CreateAssistantDto, as a Hash
93
+ # * :transcriber (Hash)
94
+ # * :model (Hash)
95
+ # * :voice (Hash)
96
+ # * :first_message (String)
97
+ # * :first_message_interruptions_enabled (Boolean)
98
+ # * :first_message_mode (Vapi::CreateAssistantDtoFirstMessageMode)
99
+ # * :voicemail_detection (Hash)
100
+ # * :client_messages (Array<Vapi::CreateAssistantDtoClientMessagesItem>)
101
+ # * :server_messages (Array<Vapi::CreateAssistantDtoServerMessagesItem>)
102
+ # * :silence_timeout_seconds (Float)
103
+ # * :max_duration_seconds (Float)
104
+ # * :background_sound (Hash)
105
+ # * :background_denoising_enabled (Boolean)
106
+ # * :model_output_in_messages_enabled (Boolean)
107
+ # * :transport_configurations (Array<Vapi::TransportConfigurationTwilio>)
108
+ # * :observability_plan (Hash)
109
+ # * :provider (String)
110
+ # * :tags (Array<String>)
111
+ # * :metadata (Hash{String => Object})
112
+ # * :credentials (Array<Vapi::CreateAssistantDtoCredentialsItem>)
113
+ # * :hooks (Array<Vapi::CreateAssistantDtoHooksItem>)
114
+ # * :name (String)
115
+ # * :voicemail_message (String)
116
+ # * :end_call_message (String)
117
+ # * :end_call_phrases (Array<String>)
118
+ # * :compliance_plan (Hash)
119
+ # * :hipaa_enabled (Boolean)
120
+ # * :pci_enabled (Boolean)
121
+ # * :metadata (Hash{String => Object})
122
+ # * :background_speech_denoising_plan (Hash)
123
+ # * :smart_denoising_plan (Hash)
124
+ # * :enabled (Boolean)
125
+ # * :fourier_denoising_plan (Hash)
126
+ # * :enabled (Boolean)
127
+ # * :media_detection_enabled (Boolean)
128
+ # * :static_threshold (Float)
129
+ # * :baseline_offset_db (Float)
130
+ # * :window_size_ms (Float)
131
+ # * :baseline_percentile (Float)
132
+ # * :analysis_plan (Hash)
133
+ # * :min_messages_threshold (Float)
134
+ # * :summary_plan (Hash)
135
+ # * :messages (Array<Hash{String => Object}>)
136
+ # * :enabled (Boolean)
137
+ # * :timeout_seconds (Float)
138
+ # * :structured_data_plan (Hash)
139
+ # * :messages (Array<Hash{String => Object}>)
140
+ # * :enabled (Boolean)
141
+ # * :schema (Hash)
142
+ # * :type (Vapi::JsonSchemaType)
143
+ # * :items (Hash{String => Object})
144
+ # * :properties (Hash{String => Object})
145
+ # * :description (String)
146
+ # * :pattern (String)
147
+ # * :format (Vapi::JsonSchemaFormat)
148
+ # * :required (Array<String>)
149
+ # * :enum (Array<String>)
150
+ # * :title (String)
151
+ # * :timeout_seconds (Float)
152
+ # * :structured_data_multi_plan (Array<Vapi::StructuredDataMultiPlan>)
153
+ # * :success_evaluation_plan (Hash)
154
+ # * :rubric (Vapi::SuccessEvaluationPlanRubric)
155
+ # * :messages (Array<Hash{String => Object}>)
156
+ # * :enabled (Boolean)
157
+ # * :timeout_seconds (Float)
158
+ # * :artifact_plan (Hash)
159
+ # * :recording_enabled (Boolean)
160
+ # * :recording_format (Vapi::ArtifactPlanRecordingFormat)
161
+ # * :video_recording_enabled (Boolean)
162
+ # * :pcap_enabled (Boolean)
163
+ # * :pcap_s_3_path_prefix (String)
164
+ # * :transcript_plan (Hash)
165
+ # * :enabled (Boolean)
166
+ # * :assistant_name (String)
167
+ # * :user_name (String)
168
+ # * :recording_path (String)
169
+ # * :message_plan (Hash)
170
+ # * :idle_messages (Array<String>)
171
+ # * :idle_message_max_spoken_count (Float)
172
+ # * :idle_message_reset_count_on_user_speech_enabled (Boolean)
173
+ # * :idle_timeout_seconds (Float)
174
+ # * :silence_timeout_message (String)
175
+ # * :start_speaking_plan (Hash)
176
+ # * :wait_seconds (Float)
177
+ # * :smart_endpointing_enabled (Hash)
178
+ # * :smart_endpointing_plan (Hash)
179
+ # * :custom_endpointing_rules (Array<Vapi::StartSpeakingPlanCustomEndpointingRulesItem>)
180
+ # * :transcription_endpointing_plan (Hash)
181
+ # * :on_punctuation_seconds (Float)
182
+ # * :on_no_punctuation_seconds (Float)
183
+ # * :on_number_seconds (Float)
184
+ # * :stop_speaking_plan (Hash)
185
+ # * :num_words (Float)
186
+ # * :voice_seconds (Float)
187
+ # * :backoff_seconds (Float)
188
+ # * :acknowledgement_phrases (Array<String>)
189
+ # * :interruption_phrases (Array<String>)
190
+ # * :monitor_plan (Hash)
191
+ # * :listen_enabled (Boolean)
192
+ # * :listen_authentication_enabled (Boolean)
193
+ # * :control_enabled (Boolean)
194
+ # * :control_authentication_enabled (Boolean)
195
+ # * :credential_ids (Array<String>)
196
+ # * :server (Hash)
197
+ # * :timeout_seconds (Float)
198
+ # * :url (String)
199
+ # * :headers (Hash{String => Object})
200
+ # * :backoff_plan (Hash)
201
+ # * :type (Hash{String => Object})
202
+ # * :max_retries (Float)
203
+ # * :base_delay_seconds (Float)
204
+ # * :keypad_input_plan (Hash)
205
+ # * :enabled (Boolean)
206
+ # * :timeout_seconds (Float)
207
+ # * :delimiters (Vapi::KeypadInputPlanDelimiters)
208
+ # @param messages [Array<Hash>] This is an array of chat messages in the session.Request of type Array<Vapi::Sessions::CreateSessionDtoMessagesItem>, as a Hash
209
+ # @param customer [Hash] This is the customer information associated with this session.Request of type Vapi::CreateCustomerDto, as a Hash
210
+ # * :number_e_164_check_enabled (Boolean)
211
+ # * :extension (String)
212
+ # * :assistant_overrides (Hash)
213
+ # * :transcriber (Hash)
214
+ # * :model (Hash)
215
+ # * :voice (Hash)
216
+ # * :first_message (String)
217
+ # * :first_message_interruptions_enabled (Boolean)
218
+ # * :first_message_mode (Vapi::AssistantOverridesFirstMessageMode)
219
+ # * :voicemail_detection (Hash)
220
+ # * :client_messages (Array<Vapi::AssistantOverridesClientMessagesItem>)
221
+ # * :server_messages (Array<Vapi::AssistantOverridesServerMessagesItem>)
222
+ # * :silence_timeout_seconds (Float)
223
+ # * :max_duration_seconds (Float)
224
+ # * :background_sound (Hash)
225
+ # * :background_denoising_enabled (Boolean)
226
+ # * :model_output_in_messages_enabled (Boolean)
227
+ # * :transport_configurations (Array<Vapi::TransportConfigurationTwilio>)
228
+ # * :observability_plan (Hash)
229
+ # * :provider (String)
230
+ # * :tags (Array<String>)
231
+ # * :metadata (Hash{String => Object})
232
+ # * :credentials (Array<Vapi::AssistantOverridesCredentialsItem>)
233
+ # * :hooks (Array<Vapi::AssistantOverridesHooksItem>)
234
+ # * :variable_values (Hash{String => Object})
235
+ # * :name (String)
236
+ # * :voicemail_message (String)
237
+ # * :end_call_message (String)
238
+ # * :end_call_phrases (Array<String>)
239
+ # * :compliance_plan (Hash)
240
+ # * :hipaa_enabled (Boolean)
241
+ # * :pci_enabled (Boolean)
242
+ # * :metadata (Hash{String => Object})
243
+ # * :background_speech_denoising_plan (Hash)
244
+ # * :smart_denoising_plan (Hash)
245
+ # * :enabled (Boolean)
246
+ # * :fourier_denoising_plan (Hash)
247
+ # * :enabled (Boolean)
248
+ # * :media_detection_enabled (Boolean)
249
+ # * :static_threshold (Float)
250
+ # * :baseline_offset_db (Float)
251
+ # * :window_size_ms (Float)
252
+ # * :baseline_percentile (Float)
253
+ # * :analysis_plan (Hash)
254
+ # * :min_messages_threshold (Float)
255
+ # * :summary_plan (Hash)
256
+ # * :messages (Array<Hash{String => Object}>)
257
+ # * :enabled (Boolean)
258
+ # * :timeout_seconds (Float)
259
+ # * :structured_data_plan (Hash)
260
+ # * :messages (Array<Hash{String => Object}>)
261
+ # * :enabled (Boolean)
262
+ # * :schema (Hash)
263
+ # * :type (Vapi::JsonSchemaType)
264
+ # * :items (Hash{String => Object})
265
+ # * :properties (Hash{String => Object})
266
+ # * :description (String)
267
+ # * :pattern (String)
268
+ # * :format (Vapi::JsonSchemaFormat)
269
+ # * :required (Array<String>)
270
+ # * :enum (Array<String>)
271
+ # * :title (String)
272
+ # * :timeout_seconds (Float)
273
+ # * :structured_data_multi_plan (Array<Vapi::StructuredDataMultiPlan>)
274
+ # * :success_evaluation_plan (Hash)
275
+ # * :rubric (Vapi::SuccessEvaluationPlanRubric)
276
+ # * :messages (Array<Hash{String => Object}>)
277
+ # * :enabled (Boolean)
278
+ # * :timeout_seconds (Float)
279
+ # * :artifact_plan (Hash)
280
+ # * :recording_enabled (Boolean)
281
+ # * :recording_format (Vapi::ArtifactPlanRecordingFormat)
282
+ # * :video_recording_enabled (Boolean)
283
+ # * :pcap_enabled (Boolean)
284
+ # * :pcap_s_3_path_prefix (String)
285
+ # * :transcript_plan (Hash)
286
+ # * :enabled (Boolean)
287
+ # * :assistant_name (String)
288
+ # * :user_name (String)
289
+ # * :recording_path (String)
290
+ # * :message_plan (Hash)
291
+ # * :idle_messages (Array<String>)
292
+ # * :idle_message_max_spoken_count (Float)
293
+ # * :idle_message_reset_count_on_user_speech_enabled (Boolean)
294
+ # * :idle_timeout_seconds (Float)
295
+ # * :silence_timeout_message (String)
296
+ # * :start_speaking_plan (Hash)
297
+ # * :wait_seconds (Float)
298
+ # * :smart_endpointing_enabled (Hash)
299
+ # * :smart_endpointing_plan (Hash)
300
+ # * :custom_endpointing_rules (Array<Vapi::StartSpeakingPlanCustomEndpointingRulesItem>)
301
+ # * :transcription_endpointing_plan (Hash)
302
+ # * :on_punctuation_seconds (Float)
303
+ # * :on_no_punctuation_seconds (Float)
304
+ # * :on_number_seconds (Float)
305
+ # * :stop_speaking_plan (Hash)
306
+ # * :num_words (Float)
307
+ # * :voice_seconds (Float)
308
+ # * :backoff_seconds (Float)
309
+ # * :acknowledgement_phrases (Array<String>)
310
+ # * :interruption_phrases (Array<String>)
311
+ # * :monitor_plan (Hash)
312
+ # * :listen_enabled (Boolean)
313
+ # * :listen_authentication_enabled (Boolean)
314
+ # * :control_enabled (Boolean)
315
+ # * :control_authentication_enabled (Boolean)
316
+ # * :credential_ids (Array<String>)
317
+ # * :server (Hash)
318
+ # * :timeout_seconds (Float)
319
+ # * :url (String)
320
+ # * :headers (Hash{String => Object})
321
+ # * :backoff_plan (Hash)
322
+ # * :type (Hash{String => Object})
323
+ # * :max_retries (Float)
324
+ # * :base_delay_seconds (Float)
325
+ # * :keypad_input_plan (Hash)
326
+ # * :enabled (Boolean)
327
+ # * :timeout_seconds (Float)
328
+ # * :delimiters (Vapi::KeypadInputPlanDelimiters)
329
+ # * :number (String)
330
+ # * :sip_uri (String)
331
+ # * :name (String)
332
+ # * :email (String)
333
+ # * :external_id (String)
334
+ # @param phone_number_id [String] This is the ID of the phone number associated with this session.
335
+ # @param phone_number [Hash] This is the phone number configuration for this session.Request of type Vapi::ImportTwilioPhoneNumberDto, as a Hash
336
+ # * :fallback_destination (Hash)
337
+ # * :hooks (Array<Vapi::PhoneNumberHookCallRinging>)
338
+ # * :sms_enabled (Boolean)
339
+ # * :twilio_phone_number (String)
340
+ # * :twilio_account_sid (String)
341
+ # * :twilio_auth_token (String)
342
+ # * :twilio_api_key (String)
343
+ # * :twilio_api_secret (String)
344
+ # * :name (String)
345
+ # * :assistant_id (String)
346
+ # * :workflow_id (String)
347
+ # * :squad_id (String)
348
+ # * :server (Hash)
349
+ # * :timeout_seconds (Float)
350
+ # * :url (String)
351
+ # * :headers (Hash{String => Object})
352
+ # * :backoff_plan (Hash)
353
+ # * :type (Hash{String => Object})
354
+ # * :max_retries (Float)
355
+ # * :base_delay_seconds (Float)
356
+ # @param request_options [Vapi::RequestOptions]
357
+ # @return [Vapi::Session]
358
+ def create(name: nil, status: nil, expiration_seconds: nil, assistant_id: nil, assistant: nil, messages: nil,
359
+ customer: nil, phone_number_id: nil, phone_number: nil, request_options: nil)
360
+ response = @request_client.conn.post do |req|
361
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
362
+ req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
363
+ req.headers = {
364
+ **(req.headers || {}),
365
+ **@request_client.get_headers,
366
+ **(request_options&.additional_headers || {})
367
+ }.compact
368
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
369
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
370
+ end
371
+ req.body = {
372
+ **(request_options&.additional_body_parameters || {}),
373
+ name: name,
374
+ status: status,
375
+ expirationSeconds: expiration_seconds,
376
+ assistantId: assistant_id,
377
+ assistant: assistant,
378
+ messages: messages,
379
+ customer: customer,
380
+ phoneNumberId: phone_number_id,
381
+ phoneNumber: phone_number
382
+ }.compact
383
+ req.url "#{@request_client.get_url(request_options: request_options)}/session"
384
+ end
385
+ Vapi::Session.from_json(json_object: response.body)
386
+ end
387
+
388
+ # @param id [String]
389
+ # @param request_options [Vapi::RequestOptions]
390
+ # @return [Vapi::Session]
391
+ def get(id:, request_options: nil)
392
+ response = @request_client.conn.get do |req|
393
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
394
+ req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
395
+ req.headers = {
396
+ **(req.headers || {}),
397
+ **@request_client.get_headers,
398
+ **(request_options&.additional_headers || {})
399
+ }.compact
400
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
401
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
402
+ end
403
+ unless request_options.nil? || request_options&.additional_body_parameters.nil?
404
+ req.body = { **(request_options&.additional_body_parameters || {}) }.compact
405
+ end
406
+ req.url "#{@request_client.get_url(request_options: request_options)}/session/#{id}"
407
+ end
408
+ Vapi::Session.from_json(json_object: response.body)
409
+ end
410
+
411
+ # @param id [String]
412
+ # @param request_options [Vapi::RequestOptions]
413
+ # @return [Vapi::Session]
414
+ def delete(id:, request_options: nil)
415
+ response = @request_client.conn.delete do |req|
416
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
417
+ req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
418
+ req.headers = {
419
+ **(req.headers || {}),
420
+ **@request_client.get_headers,
421
+ **(request_options&.additional_headers || {})
422
+ }.compact
423
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
424
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
425
+ end
426
+ unless request_options.nil? || request_options&.additional_body_parameters.nil?
427
+ req.body = { **(request_options&.additional_body_parameters || {}) }.compact
428
+ end
429
+ req.url "#{@request_client.get_url(request_options: request_options)}/session/#{id}"
430
+ end
431
+ Vapi::Session.from_json(json_object: response.body)
432
+ end
433
+
434
+ # @param id [String]
435
+ # @param name [String] This is the new name for the session. Maximum length is 40 characters.
436
+ # @param status [Vapi::Sessions::UpdateSessionDtoStatus] This is the new status for the session.
437
+ # @param expiration_seconds [Float] Session expiration time in seconds. Defaults to 24 hours (86400 seconds) if not
438
+ # set.
439
+ # @param messages [Array<Hash>] This is the updated array of chat messages.Request of type Array<Vapi::Sessions::UpdateSessionDtoMessagesItem>, as a Hash
440
+ # @param request_options [Vapi::RequestOptions]
441
+ # @return [Vapi::Session]
442
+ def update(id:, name: nil, status: nil, expiration_seconds: nil, messages: nil, request_options: nil)
443
+ response = @request_client.conn.patch do |req|
444
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
445
+ req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
446
+ req.headers = {
447
+ **(req.headers || {}),
448
+ **@request_client.get_headers,
449
+ **(request_options&.additional_headers || {})
450
+ }.compact
451
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
452
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
453
+ end
454
+ req.body = {
455
+ **(request_options&.additional_body_parameters || {}),
456
+ name: name,
457
+ status: status,
458
+ expirationSeconds: expiration_seconds,
459
+ messages: messages
460
+ }.compact
461
+ req.url "#{@request_client.get_url(request_options: request_options)}/session/#{id}"
462
+ end
463
+ Vapi::Session.from_json(json_object: response.body)
464
+ end
465
+ end
466
+
467
+ class AsyncSessionsClient
468
+ # @return [Vapi::AsyncRequestClient]
469
+ attr_reader :request_client
470
+
471
+ # @param request_client [Vapi::AsyncRequestClient]
472
+ # @return [Vapi::AsyncSessionsClient]
473
+ def initialize(request_client:)
474
+ @request_client = request_client
475
+ end
476
+
477
+ # @param name [String] This is the name of the session to filter by.
478
+ # @param assistant_id [String] This is the ID of the assistant to filter sessions by.
479
+ # @param workflow_id [String] This is the ID of the workflow to filter sessions by.
480
+ # @param page [Float] This is the page number to return. Defaults to 1.
481
+ # @param sort_order [Vapi::Sessions::SessionsListRequestSortOrder] This is the sort order for pagination. Defaults to 'DESC'.
482
+ # @param limit [Float] This is the maximum number of items to return. Defaults to 100.
483
+ # @param created_at_gt [DateTime] This will return items where the createdAt is greater than the specified value.
484
+ # @param created_at_lt [DateTime] This will return items where the createdAt is less than the specified value.
485
+ # @param created_at_ge [DateTime] This will return items where the createdAt is greater than or equal to the
486
+ # specified value.
487
+ # @param created_at_le [DateTime] This will return items where the createdAt is less than or equal to the
488
+ # specified value.
489
+ # @param updated_at_gt [DateTime] This will return items where the updatedAt is greater than the specified value.
490
+ # @param updated_at_lt [DateTime] This will return items where the updatedAt is less than the specified value.
491
+ # @param updated_at_ge [DateTime] This will return items where the updatedAt is greater than or equal to the
492
+ # specified value.
493
+ # @param updated_at_le [DateTime] This will return items where the updatedAt is less than or equal to the
494
+ # specified value.
495
+ # @param request_options [Vapi::RequestOptions]
496
+ # @return [Vapi::SessionPaginatedResponse]
497
+ def list(name: nil, assistant_id: nil, workflow_id: nil, page: nil, sort_order: nil, limit: nil,
498
+ created_at_gt: nil, created_at_lt: nil, created_at_ge: nil, created_at_le: nil, updated_at_gt: nil, updated_at_lt: nil, updated_at_ge: nil, updated_at_le: nil, request_options: nil)
499
+ Async do
500
+ response = @request_client.conn.get do |req|
501
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
502
+ req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
503
+ req.headers = {
504
+ **(req.headers || {}),
505
+ **@request_client.get_headers,
506
+ **(request_options&.additional_headers || {})
507
+ }.compact
508
+ req.params = {
509
+ **(request_options&.additional_query_parameters || {}),
510
+ "name": name,
511
+ "assistantId": assistant_id,
512
+ "workflowId": workflow_id,
513
+ "page": page,
514
+ "sortOrder": sort_order,
515
+ "limit": limit,
516
+ "createdAtGt": created_at_gt,
517
+ "createdAtLt": created_at_lt,
518
+ "createdAtGe": created_at_ge,
519
+ "createdAtLe": created_at_le,
520
+ "updatedAtGt": updated_at_gt,
521
+ "updatedAtLt": updated_at_lt,
522
+ "updatedAtGe": updated_at_ge,
523
+ "updatedAtLe": updated_at_le
524
+ }.compact
525
+ unless request_options.nil? || request_options&.additional_body_parameters.nil?
526
+ req.body = { **(request_options&.additional_body_parameters || {}) }.compact
527
+ end
528
+ req.url "#{@request_client.get_url(request_options: request_options)}/session"
529
+ end
530
+ Vapi::SessionPaginatedResponse.from_json(json_object: response.body)
531
+ end
532
+ end
533
+
534
+ # @param name [String] This is a user-defined name for the session. Maximum length is 40 characters.
535
+ # @param status [Vapi::Sessions::CreateSessionDtoStatus] This is the current status of the session. Can be either 'active' or
536
+ # 'completed'.
537
+ # @param expiration_seconds [Float] Session expiration time in seconds. Defaults to 24 hours (86400 seconds) if not
538
+ # set.
539
+ # @param assistant_id [String] This is the ID of the assistant associated with this session. Use this when
540
+ # referencing an existing assistant.
541
+ # @param assistant [Hash] This is the assistant configuration for this session. Use this when creating a
542
+ # new assistant configuration.
543
+ # If assistantId is provided, this will be ignored.Request of type Vapi::CreateAssistantDto, as a Hash
544
+ # * :transcriber (Hash)
545
+ # * :model (Hash)
546
+ # * :voice (Hash)
547
+ # * :first_message (String)
548
+ # * :first_message_interruptions_enabled (Boolean)
549
+ # * :first_message_mode (Vapi::CreateAssistantDtoFirstMessageMode)
550
+ # * :voicemail_detection (Hash)
551
+ # * :client_messages (Array<Vapi::CreateAssistantDtoClientMessagesItem>)
552
+ # * :server_messages (Array<Vapi::CreateAssistantDtoServerMessagesItem>)
553
+ # * :silence_timeout_seconds (Float)
554
+ # * :max_duration_seconds (Float)
555
+ # * :background_sound (Hash)
556
+ # * :background_denoising_enabled (Boolean)
557
+ # * :model_output_in_messages_enabled (Boolean)
558
+ # * :transport_configurations (Array<Vapi::TransportConfigurationTwilio>)
559
+ # * :observability_plan (Hash)
560
+ # * :provider (String)
561
+ # * :tags (Array<String>)
562
+ # * :metadata (Hash{String => Object})
563
+ # * :credentials (Array<Vapi::CreateAssistantDtoCredentialsItem>)
564
+ # * :hooks (Array<Vapi::CreateAssistantDtoHooksItem>)
565
+ # * :name (String)
566
+ # * :voicemail_message (String)
567
+ # * :end_call_message (String)
568
+ # * :end_call_phrases (Array<String>)
569
+ # * :compliance_plan (Hash)
570
+ # * :hipaa_enabled (Boolean)
571
+ # * :pci_enabled (Boolean)
572
+ # * :metadata (Hash{String => Object})
573
+ # * :background_speech_denoising_plan (Hash)
574
+ # * :smart_denoising_plan (Hash)
575
+ # * :enabled (Boolean)
576
+ # * :fourier_denoising_plan (Hash)
577
+ # * :enabled (Boolean)
578
+ # * :media_detection_enabled (Boolean)
579
+ # * :static_threshold (Float)
580
+ # * :baseline_offset_db (Float)
581
+ # * :window_size_ms (Float)
582
+ # * :baseline_percentile (Float)
583
+ # * :analysis_plan (Hash)
584
+ # * :min_messages_threshold (Float)
585
+ # * :summary_plan (Hash)
586
+ # * :messages (Array<Hash{String => Object}>)
587
+ # * :enabled (Boolean)
588
+ # * :timeout_seconds (Float)
589
+ # * :structured_data_plan (Hash)
590
+ # * :messages (Array<Hash{String => Object}>)
591
+ # * :enabled (Boolean)
592
+ # * :schema (Hash)
593
+ # * :type (Vapi::JsonSchemaType)
594
+ # * :items (Hash{String => Object})
595
+ # * :properties (Hash{String => Object})
596
+ # * :description (String)
597
+ # * :pattern (String)
598
+ # * :format (Vapi::JsonSchemaFormat)
599
+ # * :required (Array<String>)
600
+ # * :enum (Array<String>)
601
+ # * :title (String)
602
+ # * :timeout_seconds (Float)
603
+ # * :structured_data_multi_plan (Array<Vapi::StructuredDataMultiPlan>)
604
+ # * :success_evaluation_plan (Hash)
605
+ # * :rubric (Vapi::SuccessEvaluationPlanRubric)
606
+ # * :messages (Array<Hash{String => Object}>)
607
+ # * :enabled (Boolean)
608
+ # * :timeout_seconds (Float)
609
+ # * :artifact_plan (Hash)
610
+ # * :recording_enabled (Boolean)
611
+ # * :recording_format (Vapi::ArtifactPlanRecordingFormat)
612
+ # * :video_recording_enabled (Boolean)
613
+ # * :pcap_enabled (Boolean)
614
+ # * :pcap_s_3_path_prefix (String)
615
+ # * :transcript_plan (Hash)
616
+ # * :enabled (Boolean)
617
+ # * :assistant_name (String)
618
+ # * :user_name (String)
619
+ # * :recording_path (String)
620
+ # * :message_plan (Hash)
621
+ # * :idle_messages (Array<String>)
622
+ # * :idle_message_max_spoken_count (Float)
623
+ # * :idle_message_reset_count_on_user_speech_enabled (Boolean)
624
+ # * :idle_timeout_seconds (Float)
625
+ # * :silence_timeout_message (String)
626
+ # * :start_speaking_plan (Hash)
627
+ # * :wait_seconds (Float)
628
+ # * :smart_endpointing_enabled (Hash)
629
+ # * :smart_endpointing_plan (Hash)
630
+ # * :custom_endpointing_rules (Array<Vapi::StartSpeakingPlanCustomEndpointingRulesItem>)
631
+ # * :transcription_endpointing_plan (Hash)
632
+ # * :on_punctuation_seconds (Float)
633
+ # * :on_no_punctuation_seconds (Float)
634
+ # * :on_number_seconds (Float)
635
+ # * :stop_speaking_plan (Hash)
636
+ # * :num_words (Float)
637
+ # * :voice_seconds (Float)
638
+ # * :backoff_seconds (Float)
639
+ # * :acknowledgement_phrases (Array<String>)
640
+ # * :interruption_phrases (Array<String>)
641
+ # * :monitor_plan (Hash)
642
+ # * :listen_enabled (Boolean)
643
+ # * :listen_authentication_enabled (Boolean)
644
+ # * :control_enabled (Boolean)
645
+ # * :control_authentication_enabled (Boolean)
646
+ # * :credential_ids (Array<String>)
647
+ # * :server (Hash)
648
+ # * :timeout_seconds (Float)
649
+ # * :url (String)
650
+ # * :headers (Hash{String => Object})
651
+ # * :backoff_plan (Hash)
652
+ # * :type (Hash{String => Object})
653
+ # * :max_retries (Float)
654
+ # * :base_delay_seconds (Float)
655
+ # * :keypad_input_plan (Hash)
656
+ # * :enabled (Boolean)
657
+ # * :timeout_seconds (Float)
658
+ # * :delimiters (Vapi::KeypadInputPlanDelimiters)
659
+ # @param messages [Array<Hash>] This is an array of chat messages in the session.Request of type Array<Vapi::Sessions::CreateSessionDtoMessagesItem>, as a Hash
660
+ # @param customer [Hash] This is the customer information associated with this session.Request of type Vapi::CreateCustomerDto, as a Hash
661
+ # * :number_e_164_check_enabled (Boolean)
662
+ # * :extension (String)
663
+ # * :assistant_overrides (Hash)
664
+ # * :transcriber (Hash)
665
+ # * :model (Hash)
666
+ # * :voice (Hash)
667
+ # * :first_message (String)
668
+ # * :first_message_interruptions_enabled (Boolean)
669
+ # * :first_message_mode (Vapi::AssistantOverridesFirstMessageMode)
670
+ # * :voicemail_detection (Hash)
671
+ # * :client_messages (Array<Vapi::AssistantOverridesClientMessagesItem>)
672
+ # * :server_messages (Array<Vapi::AssistantOverridesServerMessagesItem>)
673
+ # * :silence_timeout_seconds (Float)
674
+ # * :max_duration_seconds (Float)
675
+ # * :background_sound (Hash)
676
+ # * :background_denoising_enabled (Boolean)
677
+ # * :model_output_in_messages_enabled (Boolean)
678
+ # * :transport_configurations (Array<Vapi::TransportConfigurationTwilio>)
679
+ # * :observability_plan (Hash)
680
+ # * :provider (String)
681
+ # * :tags (Array<String>)
682
+ # * :metadata (Hash{String => Object})
683
+ # * :credentials (Array<Vapi::AssistantOverridesCredentialsItem>)
684
+ # * :hooks (Array<Vapi::AssistantOverridesHooksItem>)
685
+ # * :variable_values (Hash{String => Object})
686
+ # * :name (String)
687
+ # * :voicemail_message (String)
688
+ # * :end_call_message (String)
689
+ # * :end_call_phrases (Array<String>)
690
+ # * :compliance_plan (Hash)
691
+ # * :hipaa_enabled (Boolean)
692
+ # * :pci_enabled (Boolean)
693
+ # * :metadata (Hash{String => Object})
694
+ # * :background_speech_denoising_plan (Hash)
695
+ # * :smart_denoising_plan (Hash)
696
+ # * :enabled (Boolean)
697
+ # * :fourier_denoising_plan (Hash)
698
+ # * :enabled (Boolean)
699
+ # * :media_detection_enabled (Boolean)
700
+ # * :static_threshold (Float)
701
+ # * :baseline_offset_db (Float)
702
+ # * :window_size_ms (Float)
703
+ # * :baseline_percentile (Float)
704
+ # * :analysis_plan (Hash)
705
+ # * :min_messages_threshold (Float)
706
+ # * :summary_plan (Hash)
707
+ # * :messages (Array<Hash{String => Object}>)
708
+ # * :enabled (Boolean)
709
+ # * :timeout_seconds (Float)
710
+ # * :structured_data_plan (Hash)
711
+ # * :messages (Array<Hash{String => Object}>)
712
+ # * :enabled (Boolean)
713
+ # * :schema (Hash)
714
+ # * :type (Vapi::JsonSchemaType)
715
+ # * :items (Hash{String => Object})
716
+ # * :properties (Hash{String => Object})
717
+ # * :description (String)
718
+ # * :pattern (String)
719
+ # * :format (Vapi::JsonSchemaFormat)
720
+ # * :required (Array<String>)
721
+ # * :enum (Array<String>)
722
+ # * :title (String)
723
+ # * :timeout_seconds (Float)
724
+ # * :structured_data_multi_plan (Array<Vapi::StructuredDataMultiPlan>)
725
+ # * :success_evaluation_plan (Hash)
726
+ # * :rubric (Vapi::SuccessEvaluationPlanRubric)
727
+ # * :messages (Array<Hash{String => Object}>)
728
+ # * :enabled (Boolean)
729
+ # * :timeout_seconds (Float)
730
+ # * :artifact_plan (Hash)
731
+ # * :recording_enabled (Boolean)
732
+ # * :recording_format (Vapi::ArtifactPlanRecordingFormat)
733
+ # * :video_recording_enabled (Boolean)
734
+ # * :pcap_enabled (Boolean)
735
+ # * :pcap_s_3_path_prefix (String)
736
+ # * :transcript_plan (Hash)
737
+ # * :enabled (Boolean)
738
+ # * :assistant_name (String)
739
+ # * :user_name (String)
740
+ # * :recording_path (String)
741
+ # * :message_plan (Hash)
742
+ # * :idle_messages (Array<String>)
743
+ # * :idle_message_max_spoken_count (Float)
744
+ # * :idle_message_reset_count_on_user_speech_enabled (Boolean)
745
+ # * :idle_timeout_seconds (Float)
746
+ # * :silence_timeout_message (String)
747
+ # * :start_speaking_plan (Hash)
748
+ # * :wait_seconds (Float)
749
+ # * :smart_endpointing_enabled (Hash)
750
+ # * :smart_endpointing_plan (Hash)
751
+ # * :custom_endpointing_rules (Array<Vapi::StartSpeakingPlanCustomEndpointingRulesItem>)
752
+ # * :transcription_endpointing_plan (Hash)
753
+ # * :on_punctuation_seconds (Float)
754
+ # * :on_no_punctuation_seconds (Float)
755
+ # * :on_number_seconds (Float)
756
+ # * :stop_speaking_plan (Hash)
757
+ # * :num_words (Float)
758
+ # * :voice_seconds (Float)
759
+ # * :backoff_seconds (Float)
760
+ # * :acknowledgement_phrases (Array<String>)
761
+ # * :interruption_phrases (Array<String>)
762
+ # * :monitor_plan (Hash)
763
+ # * :listen_enabled (Boolean)
764
+ # * :listen_authentication_enabled (Boolean)
765
+ # * :control_enabled (Boolean)
766
+ # * :control_authentication_enabled (Boolean)
767
+ # * :credential_ids (Array<String>)
768
+ # * :server (Hash)
769
+ # * :timeout_seconds (Float)
770
+ # * :url (String)
771
+ # * :headers (Hash{String => Object})
772
+ # * :backoff_plan (Hash)
773
+ # * :type (Hash{String => Object})
774
+ # * :max_retries (Float)
775
+ # * :base_delay_seconds (Float)
776
+ # * :keypad_input_plan (Hash)
777
+ # * :enabled (Boolean)
778
+ # * :timeout_seconds (Float)
779
+ # * :delimiters (Vapi::KeypadInputPlanDelimiters)
780
+ # * :number (String)
781
+ # * :sip_uri (String)
782
+ # * :name (String)
783
+ # * :email (String)
784
+ # * :external_id (String)
785
+ # @param phone_number_id [String] This is the ID of the phone number associated with this session.
786
+ # @param phone_number [Hash] This is the phone number configuration for this session.Request of type Vapi::ImportTwilioPhoneNumberDto, as a Hash
787
+ # * :fallback_destination (Hash)
788
+ # * :hooks (Array<Vapi::PhoneNumberHookCallRinging>)
789
+ # * :sms_enabled (Boolean)
790
+ # * :twilio_phone_number (String)
791
+ # * :twilio_account_sid (String)
792
+ # * :twilio_auth_token (String)
793
+ # * :twilio_api_key (String)
794
+ # * :twilio_api_secret (String)
795
+ # * :name (String)
796
+ # * :assistant_id (String)
797
+ # * :workflow_id (String)
798
+ # * :squad_id (String)
799
+ # * :server (Hash)
800
+ # * :timeout_seconds (Float)
801
+ # * :url (String)
802
+ # * :headers (Hash{String => Object})
803
+ # * :backoff_plan (Hash)
804
+ # * :type (Hash{String => Object})
805
+ # * :max_retries (Float)
806
+ # * :base_delay_seconds (Float)
807
+ # @param request_options [Vapi::RequestOptions]
808
+ # @return [Vapi::Session]
809
+ def create(name: nil, status: nil, expiration_seconds: nil, assistant_id: nil, assistant: nil, messages: nil,
810
+ customer: nil, phone_number_id: nil, phone_number: nil, request_options: nil)
811
+ Async do
812
+ response = @request_client.conn.post do |req|
813
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
814
+ req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
815
+ req.headers = {
816
+ **(req.headers || {}),
817
+ **@request_client.get_headers,
818
+ **(request_options&.additional_headers || {})
819
+ }.compact
820
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
821
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
822
+ end
823
+ req.body = {
824
+ **(request_options&.additional_body_parameters || {}),
825
+ name: name,
826
+ status: status,
827
+ expirationSeconds: expiration_seconds,
828
+ assistantId: assistant_id,
829
+ assistant: assistant,
830
+ messages: messages,
831
+ customer: customer,
832
+ phoneNumberId: phone_number_id,
833
+ phoneNumber: phone_number
834
+ }.compact
835
+ req.url "#{@request_client.get_url(request_options: request_options)}/session"
836
+ end
837
+ Vapi::Session.from_json(json_object: response.body)
838
+ end
839
+ end
840
+
841
+ # @param id [String]
842
+ # @param request_options [Vapi::RequestOptions]
843
+ # @return [Vapi::Session]
844
+ def get(id:, request_options: nil)
845
+ Async do
846
+ response = @request_client.conn.get do |req|
847
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
848
+ req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
849
+ req.headers = {
850
+ **(req.headers || {}),
851
+ **@request_client.get_headers,
852
+ **(request_options&.additional_headers || {})
853
+ }.compact
854
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
855
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
856
+ end
857
+ unless request_options.nil? || request_options&.additional_body_parameters.nil?
858
+ req.body = { **(request_options&.additional_body_parameters || {}) }.compact
859
+ end
860
+ req.url "#{@request_client.get_url(request_options: request_options)}/session/#{id}"
861
+ end
862
+ Vapi::Session.from_json(json_object: response.body)
863
+ end
864
+ end
865
+
866
+ # @param id [String]
867
+ # @param request_options [Vapi::RequestOptions]
868
+ # @return [Vapi::Session]
869
+ def delete(id:, request_options: nil)
870
+ Async do
871
+ response = @request_client.conn.delete do |req|
872
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
873
+ req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
874
+ req.headers = {
875
+ **(req.headers || {}),
876
+ **@request_client.get_headers,
877
+ **(request_options&.additional_headers || {})
878
+ }.compact
879
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
880
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
881
+ end
882
+ unless request_options.nil? || request_options&.additional_body_parameters.nil?
883
+ req.body = { **(request_options&.additional_body_parameters || {}) }.compact
884
+ end
885
+ req.url "#{@request_client.get_url(request_options: request_options)}/session/#{id}"
886
+ end
887
+ Vapi::Session.from_json(json_object: response.body)
888
+ end
889
+ end
890
+
891
+ # @param id [String]
892
+ # @param name [String] This is the new name for the session. Maximum length is 40 characters.
893
+ # @param status [Vapi::Sessions::UpdateSessionDtoStatus] This is the new status for the session.
894
+ # @param expiration_seconds [Float] Session expiration time in seconds. Defaults to 24 hours (86400 seconds) if not
895
+ # set.
896
+ # @param messages [Array<Hash>] This is the updated array of chat messages.Request of type Array<Vapi::Sessions::UpdateSessionDtoMessagesItem>, as a Hash
897
+ # @param request_options [Vapi::RequestOptions]
898
+ # @return [Vapi::Session]
899
+ def update(id:, name: nil, status: nil, expiration_seconds: nil, messages: nil, request_options: nil)
900
+ Async do
901
+ response = @request_client.conn.patch do |req|
902
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
903
+ req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
904
+ req.headers = {
905
+ **(req.headers || {}),
906
+ **@request_client.get_headers,
907
+ **(request_options&.additional_headers || {})
908
+ }.compact
909
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
910
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
911
+ end
912
+ req.body = {
913
+ **(request_options&.additional_body_parameters || {}),
914
+ name: name,
915
+ status: status,
916
+ expirationSeconds: expiration_seconds,
917
+ messages: messages
918
+ }.compact
919
+ req.url "#{@request_client.get_url(request_options: request_options)}/session/#{id}"
920
+ end
921
+ Vapi::Session.from_json(json_object: response.body)
922
+ end
923
+ end
924
+ end
925
+ end