vapi_server_sdk 0.3.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (208) hide show
  1. checksums.yaml +4 -4
  2. data/lib/requests.rb +2 -2
  3. data/lib/types_export.rb +83 -12
  4. data/lib/vapi_server_sdk/analytics/client.rb +41 -26
  5. data/lib/vapi_server_sdk/assistants/client.rb +84 -84
  6. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_server_messages_item.rb +1 -0
  7. data/lib/vapi_server_sdk/blocks/client.rb +0 -70
  8. data/lib/vapi_server_sdk/calls/client.rb +110 -76
  9. data/lib/vapi_server_sdk/files/client.rb +0 -70
  10. data/lib/vapi_server_sdk/knowledge_bases/client.rb +0 -70
  11. data/lib/vapi_server_sdk/logs/client.rb +15 -46
  12. data/lib/vapi_server_sdk/logs/types/logging_controller_logs_delete_query_request_type.rb +12 -0
  13. data/lib/vapi_server_sdk/phone_numbers/client.rb +0 -70
  14. data/lib/vapi_server_sdk/squads/client.rb +136 -78
  15. data/lib/vapi_server_sdk/test_suite_runs/client.rb +328 -0
  16. data/lib/vapi_server_sdk/test_suite_runs/types/test_suite_run_controller_find_all_paginated_request_sort_order.rb +10 -0
  17. data/lib/vapi_server_sdk/test_suite_tests/client.rb +331 -0
  18. data/lib/vapi_server_sdk/test_suite_tests/types/test_suite_test_controller_create_request.rb +81 -0
  19. data/lib/vapi_server_sdk/test_suite_tests/types/test_suite_test_controller_find_all_paginated_request_sort_order.rb +10 -0
  20. data/lib/vapi_server_sdk/test_suite_tests/types/test_suite_test_controller_remove_response.rb +82 -0
  21. data/lib/vapi_server_sdk/test_suite_tests/types/test_suite_test_controller_update_request.rb +81 -0
  22. data/lib/vapi_server_sdk/test_suites/client.rb +338 -0
  23. data/lib/vapi_server_sdk/test_suites/types/test_suite_controller_find_all_paginated_request_sort_order.rb +10 -0
  24. data/lib/vapi_server_sdk/tools/client.rb +0 -70
  25. data/lib/vapi_server_sdk/types/ai_edge_condition.rb +55 -0
  26. data/lib/vapi_server_sdk/types/analytics_operation_column.rb +1 -0
  27. data/lib/vapi_server_sdk/types/analytics_operation_operation.rb +1 -0
  28. data/lib/vapi_server_sdk/types/analytics_query.rb +4 -3
  29. data/lib/vapi_server_sdk/types/analytics_query_table.rb +9 -0
  30. data/lib/vapi_server_sdk/types/api_request.rb +165 -0
  31. data/lib/vapi_server_sdk/types/api_request_method.rb +8 -0
  32. data/lib/vapi_server_sdk/types/api_request_mode.rb +10 -0
  33. data/lib/vapi_server_sdk/types/artifact.rb +12 -2
  34. data/lib/vapi_server_sdk/types/artifact_plan.rb +56 -8
  35. data/lib/vapi_server_sdk/types/assistant.rb +27 -13
  36. data/lib/vapi_server_sdk/types/assistant_hook_action_base.rb +47 -0
  37. data/lib/vapi_server_sdk/types/assistant_hook_filter.rb +72 -0
  38. data/lib/vapi_server_sdk/types/assistant_hooks.rb +82 -0
  39. data/lib/vapi_server_sdk/types/assistant_overrides.rb +28 -14
  40. data/lib/vapi_server_sdk/types/assistant_overrides_server_messages_item.rb +1 -0
  41. data/lib/vapi_server_sdk/types/assistant_server_messages_item.rb +1 -0
  42. data/lib/vapi_server_sdk/types/azure_credential_region.rb +4 -2
  43. data/lib/vapi_server_sdk/types/azure_open_ai_credential_models_item.rb +1 -0
  44. data/lib/vapi_server_sdk/types/azure_open_ai_credential_region.rb +4 -2
  45. data/lib/vapi_server_sdk/types/backoff_plan.rb +80 -0
  46. data/lib/vapi_server_sdk/types/bash_tool_with_tool_call.rb +175 -0
  47. data/lib/vapi_server_sdk/types/bash_tool_with_tool_call_messages_item.rb +120 -0
  48. data/lib/vapi_server_sdk/types/byo_phone_number.rb +10 -1
  49. data/lib/vapi_server_sdk/types/byo_phone_number_status.rb +10 -0
  50. data/lib/vapi_server_sdk/types/call_ended_reason.rb +10 -1
  51. data/lib/vapi_server_sdk/types/cartesia_experimental_controls.rb +69 -0
  52. data/lib/vapi_server_sdk/types/cartesia_experimental_controls_emotion.rb +26 -0
  53. data/lib/vapi_server_sdk/types/cartesia_experimental_controls_speed.rb +11 -0
  54. data/lib/vapi_server_sdk/types/cartesia_voice.rb +24 -10
  55. data/lib/vapi_server_sdk/types/chat_completion_message.rb +80 -0
  56. data/lib/vapi_server_sdk/types/chat_completion_message_metadata.rb +94 -0
  57. data/lib/vapi_server_sdk/types/chat_completions_dto.rb +84 -0
  58. data/lib/vapi_server_sdk/types/client_inbound_message_end_call.rb +47 -0
  59. data/lib/vapi_server_sdk/types/client_inbound_message_message.rb +13 -0
  60. data/lib/vapi_server_sdk/types/client_inbound_message_transfer.rb +13 -3
  61. data/lib/vapi_server_sdk/types/client_message_conversation_update.rb +15 -2
  62. data/lib/vapi_server_sdk/types/client_message_hang.rb +22 -4
  63. data/lib/vapi_server_sdk/types/client_message_language_change_detected.rb +15 -3
  64. data/lib/vapi_server_sdk/types/client_message_message.rb +165 -181
  65. data/lib/vapi_server_sdk/types/client_message_metadata.rb +15 -3
  66. data/lib/vapi_server_sdk/types/client_message_model_output.rb +15 -3
  67. data/lib/vapi_server_sdk/types/client_message_speech_update.rb +11 -2
  68. data/lib/vapi_server_sdk/types/client_message_tool_calls.rb +15 -2
  69. data/lib/vapi_server_sdk/types/client_message_tool_calls_result.rb +15 -3
  70. data/lib/vapi_server_sdk/types/client_message_tool_calls_tool_with_tool_call_list_item.rb +116 -77
  71. data/lib/vapi_server_sdk/types/client_message_transcript.rb +12 -2
  72. data/lib/vapi_server_sdk/types/client_message_transcript_type.rb +10 -0
  73. data/lib/vapi_server_sdk/types/client_message_transfer_update.rb +11 -1
  74. data/lib/vapi_server_sdk/types/client_message_user_interrupted.rb +14 -4
  75. data/lib/vapi_server_sdk/types/client_message_voice_input.rb +15 -3
  76. data/lib/vapi_server_sdk/types/client_message_workflow_node_started.rb +67 -0
  77. data/lib/vapi_server_sdk/types/compliance_plan.rb +77 -0
  78. data/lib/vapi_server_sdk/types/computer_tool_with_tool_call.rb +199 -0
  79. data/lib/vapi_server_sdk/types/computer_tool_with_tool_call_messages_item.rb +120 -0
  80. data/lib/vapi_server_sdk/types/create_assistant_dto.rb +28 -14
  81. data/lib/vapi_server_sdk/types/create_assistant_dto_server_messages_item.rb +1 -0
  82. data/lib/vapi_server_sdk/types/create_azure_credential_dto_region.rb +4 -2
  83. data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto_models_item.rb +1 -0
  84. data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto_region.rb +4 -2
  85. data/lib/vapi_server_sdk/types/create_custom_knowledge_base_dto.rb +2 -4
  86. data/lib/vapi_server_sdk/types/create_test_suite_test_voice_dto.rb +90 -0
  87. data/lib/vapi_server_sdk/types/create_trieve_knowledge_base_dto.rb +34 -47
  88. data/lib/vapi_server_sdk/types/create_trieve_knowledge_base_dto_create_plan.rb +97 -0
  89. data/lib/vapi_server_sdk/types/create_vapi_phone_number_dto.rb +12 -4
  90. data/lib/vapi_server_sdk/types/create_workflow_dto.rb +80 -0
  91. data/lib/vapi_server_sdk/types/create_workflow_dto_nodes_item.rb +133 -0
  92. data/lib/vapi_server_sdk/types/custom_knowledge_base.rb +2 -4
  93. data/lib/vapi_server_sdk/types/deep_seek_model.rb +4 -3
  94. data/lib/vapi_server_sdk/types/deep_seek_model_model.rb +9 -0
  95. data/lib/vapi_server_sdk/types/deepgram_transcriber.rb +28 -2
  96. data/lib/vapi_server_sdk/types/deepgram_voice.rb +22 -2
  97. data/lib/vapi_server_sdk/types/edge.rb +87 -0
  98. data/lib/vapi_server_sdk/types/edge_condition.rb +107 -0
  99. data/lib/vapi_server_sdk/types/failed_edge_condition.rb +47 -0
  100. data/lib/vapi_server_sdk/types/fallback_cartesia_voice.rb +24 -9
  101. data/lib/vapi_server_sdk/types/fallback_deepgram_voice.rb +17 -2
  102. data/lib/vapi_server_sdk/types/fallback_play_ht_voice_model.rb +1 -0
  103. data/lib/vapi_server_sdk/types/fallback_rime_ai_voice_id_enum.rb +22 -20
  104. data/lib/vapi_server_sdk/types/fallback_rime_ai_voice_model.rb +1 -0
  105. data/lib/vapi_server_sdk/types/format_plan.rb +22 -2
  106. data/lib/vapi_server_sdk/types/format_plan_formatters_enabled_item.rb +22 -0
  107. data/lib/vapi_server_sdk/types/function_tool_with_tool_call.rb +1 -10
  108. data/lib/vapi_server_sdk/types/gather.rb +143 -0
  109. data/lib/vapi_server_sdk/types/ghl_tool_with_tool_call.rb +1 -9
  110. data/lib/vapi_server_sdk/types/google_model_model.rb +4 -0
  111. data/lib/vapi_server_sdk/types/groq_model_model.rb +1 -0
  112. data/lib/vapi_server_sdk/types/hangup.rb +67 -0
  113. data/lib/vapi_server_sdk/types/hook.rb +70 -0
  114. data/lib/vapi_server_sdk/types/hook_on.rb +9 -0
  115. data/lib/vapi_server_sdk/types/invite_user_dto.rb +11 -2
  116. data/lib/vapi_server_sdk/types/json_schema.rb +37 -2
  117. data/lib/vapi_server_sdk/types/log.rb +18 -18
  118. data/lib/vapi_server_sdk/types/logic_edge_condition.rb +55 -0
  119. data/lib/vapi_server_sdk/types/make_tool_with_tool_call.rb +1 -9
  120. data/lib/vapi_server_sdk/types/message_plan.rb +12 -2
  121. data/lib/vapi_server_sdk/types/open_ai_model.rb +1 -9
  122. data/lib/vapi_server_sdk/types/open_ai_model_fallback_models_item.rb +2 -0
  123. data/lib/vapi_server_sdk/types/open_ai_model_model.rb +2 -0
  124. data/lib/vapi_server_sdk/types/play_ht_voice_model.rb +1 -0
  125. data/lib/vapi_server_sdk/types/rime_ai_voice_id_enum.rb +22 -20
  126. data/lib/vapi_server_sdk/types/rime_ai_voice_model.rb +1 -0
  127. data/lib/vapi_server_sdk/types/say.rb +81 -0
  128. data/lib/vapi_server_sdk/types/say_hook.rb +81 -0
  129. data/lib/vapi_server_sdk/types/server.rb +17 -2
  130. data/lib/vapi_server_sdk/types/server_message_assistant_request.rb +12 -2
  131. data/lib/vapi_server_sdk/types/server_message_conversation_update.rb +12 -2
  132. data/lib/vapi_server_sdk/types/server_message_end_of_call_report.rb +11 -1
  133. data/lib/vapi_server_sdk/types/server_message_end_of_call_report_ended_reason.rb +10 -1
  134. data/lib/vapi_server_sdk/types/server_message_hang.rb +20 -2
  135. data/lib/vapi_server_sdk/types/server_message_knowledge_base_request.rb +14 -2
  136. data/lib/vapi_server_sdk/types/server_message_language_change_detected.rb +11 -1
  137. data/lib/vapi_server_sdk/types/server_message_message.rb +212 -237
  138. data/lib/vapi_server_sdk/types/server_message_model_output.rb +11 -1
  139. data/lib/vapi_server_sdk/types/server_message_phone_call_control.rb +18 -2
  140. data/lib/vapi_server_sdk/types/server_message_speech_update.rb +11 -1
  141. data/lib/vapi_server_sdk/types/server_message_status_update.rb +12 -2
  142. data/lib/vapi_server_sdk/types/server_message_status_update_ended_reason.rb +10 -1
  143. data/lib/vapi_server_sdk/types/server_message_tool_calls.rb +10 -2
  144. data/lib/vapi_server_sdk/types/server_message_tool_calls_tool_with_tool_call_list_item.rb +116 -77
  145. data/lib/vapi_server_sdk/types/server_message_transcript.rb +13 -2
  146. data/lib/vapi_server_sdk/types/server_message_transcript_type.rb +10 -0
  147. data/lib/vapi_server_sdk/types/server_message_transfer_destination_request.rb +12 -2
  148. data/lib/vapi_server_sdk/types/server_message_transfer_update.rb +11 -1
  149. data/lib/vapi_server_sdk/types/server_message_user_interrupted.rb +12 -2
  150. data/lib/vapi_server_sdk/types/server_message_voice_input.rb +11 -1
  151. data/lib/vapi_server_sdk/types/server_message_voice_request.rb +50 -2
  152. data/lib/vapi_server_sdk/types/stop_speaking_plan.rb +27 -2
  153. data/lib/vapi_server_sdk/types/subscription.rb +44 -14
  154. data/lib/vapi_server_sdk/types/sync_voice_library_dto_providers_item.rb +1 -0
  155. data/lib/vapi_server_sdk/types/test_suite.rb +104 -0
  156. data/lib/vapi_server_sdk/types/test_suite_run.rb +127 -0
  157. data/lib/vapi_server_sdk/types/test_suite_run_scorer_ai.rb +80 -0
  158. data/lib/vapi_server_sdk/types/test_suite_run_scorer_ai_result.rb +9 -0
  159. data/lib/vapi_server_sdk/types/test_suite_run_status.rb +10 -0
  160. data/lib/vapi_server_sdk/types/test_suite_run_test_attempt.rb +75 -0
  161. data/lib/vapi_server_sdk/types/{analytics_query_dto.rb → test_suite_run_test_attempt_call.rb} +19 -17
  162. data/lib/vapi_server_sdk/types/test_suite_run_test_result.rb +75 -0
  163. data/lib/vapi_server_sdk/types/test_suite_runs_paginated_response.rb +75 -0
  164. data/lib/vapi_server_sdk/types/test_suite_test_scorer_ai.rb +65 -0
  165. data/lib/vapi_server_sdk/types/test_suite_test_voice.rb +132 -0
  166. data/lib/vapi_server_sdk/types/test_suite_tests_paginated_response.rb +75 -0
  167. data/lib/vapi_server_sdk/types/test_suites_paginated_response.rb +75 -0
  168. data/lib/vapi_server_sdk/types/text_editor_tool_with_tool_call.rb +175 -0
  169. data/lib/vapi_server_sdk/types/text_editor_tool_with_tool_call_messages_item.rb +121 -0
  170. data/lib/vapi_server_sdk/types/time_range_step.rb +1 -0
  171. data/lib/vapi_server_sdk/types/tool_message_start.rb +18 -2
  172. data/lib/vapi_server_sdk/types/transfer.rb +74 -0
  173. data/lib/vapi_server_sdk/types/transfer_assistant_hook_action.rb +75 -0
  174. data/lib/vapi_server_sdk/types/{buy_phone_number_dto_fallback_destination.rb → transfer_assistant_hook_action_destination.rb} +9 -12
  175. data/lib/vapi_server_sdk/types/transfer_destination_assistant.rb +46 -0
  176. data/lib/vapi_server_sdk/types/transfer_plan.rb +37 -1
  177. data/lib/vapi_server_sdk/types/transfer_plan_mode.rb +4 -0
  178. data/lib/vapi_server_sdk/types/trieve_knowledge_base.rb +35 -44
  179. data/lib/vapi_server_sdk/types/{trieve_knowledge_base_vector_store_create_plan.rb → trieve_knowledge_base_chunk_plan.rb} +17 -11
  180. data/lib/vapi_server_sdk/types/trieve_knowledge_base_create.rb +59 -0
  181. data/lib/vapi_server_sdk/types/trieve_knowledge_base_create_plan.rb +96 -0
  182. data/lib/vapi_server_sdk/types/trieve_knowledge_base_import.rb +55 -0
  183. data/lib/vapi_server_sdk/types/{trieve_knowledge_base_vector_store_search_plan.rb → trieve_knowledge_base_search_plan.rb} +21 -12
  184. data/lib/vapi_server_sdk/types/{trieve_knowledge_base_vector_store_search_plan_search_type.rb → trieve_knowledge_base_search_plan_search_type.rb} +1 -1
  185. data/lib/vapi_server_sdk/types/twilio_phone_number.rb +11 -2
  186. data/lib/vapi_server_sdk/types/twilio_phone_number_status.rb +10 -0
  187. data/lib/vapi_server_sdk/types/update_azure_credential_dto_region.rb +4 -2
  188. data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto_models_item.rb +1 -0
  189. data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto_region.rb +4 -2
  190. data/lib/vapi_server_sdk/types/update_custom_knowledge_base_dto.rb +2 -4
  191. data/lib/vapi_server_sdk/types/update_test_suite_test_voice_dto.rb +90 -0
  192. data/lib/vapi_server_sdk/types/update_trieve_knowledge_base_dto.rb +34 -47
  193. data/lib/vapi_server_sdk/types/update_trieve_knowledge_base_dto_create_plan.rb +97 -0
  194. data/lib/vapi_server_sdk/types/vapi_model.rb +27 -1
  195. data/lib/vapi_server_sdk/types/vapi_phone_number.rb +29 -4
  196. data/lib/vapi_server_sdk/types/vapi_phone_number_status.rb +10 -0
  197. data/lib/vapi_server_sdk/types/vonage_phone_number.rb +11 -2
  198. data/lib/vapi_server_sdk/types/vonage_phone_number_status.rb +10 -0
  199. data/lib/vapi_server_sdk/types/workflow.rb +117 -0
  200. data/lib/vapi_server_sdk/types/workflow_nodes_item.rb +133 -0
  201. data/lib/vapi_server_sdk/types/xai_model.rb +4 -3
  202. data/lib/vapi_server_sdk/types/xai_model_model.rb +10 -0
  203. data/lib/vapi_server_sdk.rb +21 -0
  204. metadata +85 -11
  205. data/lib/vapi_server_sdk/types/buy_phone_number_dto.rb +0 -147
  206. data/lib/vapi_server_sdk/types/org_with_org_user.rb +0 -262
  207. data/lib/vapi_server_sdk/types/org_with_org_user_channel.rb +0 -10
  208. data/lib/vapi_server_sdk/types/org_with_org_user_role.rb +0 -9
@@ -0,0 +1,199 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "computer_tool_with_tool_call_messages_item"
4
+ require_relative "tool_call"
5
+ require_relative "open_ai_function"
6
+ require_relative "server"
7
+ require "ostruct"
8
+ require "json"
9
+
10
+ module Vapi
11
+ class ComputerToolWithToolCall
12
+ # @return [Boolean] This determines if the tool is async.
13
+ # If async, the assistant will move forward without waiting for your server to
14
+ # respond. This is useful if you just want to trigger something on your server.
15
+ # If sync, the assistant will wait for your server to respond. This is useful if
16
+ # want assistant to respond with the result from your server.
17
+ # Defaults to synchronous (`false`).
18
+ attr_reader :async
19
+ # @return [Array<Vapi::ComputerToolWithToolCallMessagesItem>] These are the messages that will be spoken to the user as the tool is running.
20
+ # For some tools, this is auto-filled based on special fields like
21
+ # `tool.destinations`. For others like the function tool, these can be custom
22
+ # configured.
23
+ attr_reader :messages
24
+ # @return [String] The sub type of tool.
25
+ attr_reader :sub_type
26
+ # @return [Vapi::ToolCall]
27
+ attr_reader :tool_call
28
+ # @return [String] The name of the tool, fixed to 'computer'
29
+ attr_reader :name
30
+ # @return [Float] The display width in pixels
31
+ attr_reader :display_width_px
32
+ # @return [Float] The display height in pixels
33
+ attr_reader :display_height_px
34
+ # @return [Float] Optional display number
35
+ attr_reader :display_number
36
+ # @return [Vapi::OpenAiFunction] This is the function definition of the tool.
37
+ # For `endCall`, `transferCall`, and `dtmf` tools, this is auto-filled based on
38
+ # tool-specific fields like `tool.destinations`. But, even in those cases, you can
39
+ # provide a custom function definition for advanced use cases.
40
+ # An example of an advanced use case is if you want to customize the message
41
+ # that's spoken for `endCall` tool. You can specify a function where it returns an
42
+ # argument "reason". Then, in `messages` array, you can have many
43
+ # "request-complete" messages. One of these messages will be triggered if the
44
+ # `messages[].conditions` matches the "reason" argument.
45
+ attr_reader :function
46
+ # @return [Vapi::Server] This is the server that will be hit when this tool is requested by the model.
47
+ # All requests will be sent with the call object among other things. You can find
48
+ # more details in the Server URL documentation.
49
+ # This overrides the serverUrl set on the org and the phoneNumber. Order of
50
+ # precedence: highest tool.server.url, then assistant.serverUrl, then
51
+ # phoneNumber.serverUrl, then org.serverUrl.
52
+ attr_reader :server
53
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
54
+ attr_reader :additional_properties
55
+ # @return [Object]
56
+ attr_reader :_field_set
57
+ protected :_field_set
58
+
59
+ OMIT = Object.new
60
+
61
+ # @param async [Boolean] This determines if the tool is async.
62
+ # If async, the assistant will move forward without waiting for your server to
63
+ # respond. This is useful if you just want to trigger something on your server.
64
+ # If sync, the assistant will wait for your server to respond. This is useful if
65
+ # want assistant to respond with the result from your server.
66
+ # Defaults to synchronous (`false`).
67
+ # @param messages [Array<Vapi::ComputerToolWithToolCallMessagesItem>] These are the messages that will be spoken to the user as the tool is running.
68
+ # For some tools, this is auto-filled based on special fields like
69
+ # `tool.destinations`. For others like the function tool, these can be custom
70
+ # configured.
71
+ # @param sub_type [String] The sub type of tool.
72
+ # @param tool_call [Vapi::ToolCall]
73
+ # @param name [String] The name of the tool, fixed to 'computer'
74
+ # @param display_width_px [Float] The display width in pixels
75
+ # @param display_height_px [Float] The display height in pixels
76
+ # @param display_number [Float] Optional display number
77
+ # @param function [Vapi::OpenAiFunction] This is the function definition of the tool.
78
+ # For `endCall`, `transferCall`, and `dtmf` tools, this is auto-filled based on
79
+ # tool-specific fields like `tool.destinations`. But, even in those cases, you can
80
+ # provide a custom function definition for advanced use cases.
81
+ # An example of an advanced use case is if you want to customize the message
82
+ # that's spoken for `endCall` tool. You can specify a function where it returns an
83
+ # argument "reason". Then, in `messages` array, you can have many
84
+ # "request-complete" messages. One of these messages will be triggered if the
85
+ # `messages[].conditions` matches the "reason" argument.
86
+ # @param server [Vapi::Server] This is the server that will be hit when this tool is requested by the model.
87
+ # All requests will be sent with the call object among other things. You can find
88
+ # more details in the Server URL documentation.
89
+ # This overrides the serverUrl set on the org and the phoneNumber. Order of
90
+ # precedence: highest tool.server.url, then assistant.serverUrl, then
91
+ # phoneNumber.serverUrl, then org.serverUrl.
92
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
93
+ # @return [Vapi::ComputerToolWithToolCall]
94
+ def initialize(sub_type:, tool_call:, name:, display_width_px:, display_height_px:, async: OMIT, messages: OMIT,
95
+ display_number: OMIT, function: OMIT, server: OMIT, additional_properties: nil)
96
+ @async = async if async != OMIT
97
+ @messages = messages if messages != OMIT
98
+ @sub_type = sub_type
99
+ @tool_call = tool_call
100
+ @name = name
101
+ @display_width_px = display_width_px
102
+ @display_height_px = display_height_px
103
+ @display_number = display_number if display_number != OMIT
104
+ @function = function if function != OMIT
105
+ @server = server if server != OMIT
106
+ @additional_properties = additional_properties
107
+ @_field_set = {
108
+ "async": async,
109
+ "messages": messages,
110
+ "subType": sub_type,
111
+ "toolCall": tool_call,
112
+ "name": name,
113
+ "displayWidthPx": display_width_px,
114
+ "displayHeightPx": display_height_px,
115
+ "displayNumber": display_number,
116
+ "function": function,
117
+ "server": server
118
+ }.reject do |_k, v|
119
+ v == OMIT
120
+ end
121
+ end
122
+
123
+ # Deserialize a JSON object to an instance of ComputerToolWithToolCall
124
+ #
125
+ # @param json_object [String]
126
+ # @return [Vapi::ComputerToolWithToolCall]
127
+ def self.from_json(json_object:)
128
+ struct = JSON.parse(json_object, object_class: OpenStruct)
129
+ parsed_json = JSON.parse(json_object)
130
+ async = parsed_json["async"]
131
+ messages = parsed_json["messages"]&.map do |item|
132
+ item = item.to_json
133
+ Vapi::ComputerToolWithToolCallMessagesItem.from_json(json_object: item)
134
+ end
135
+ sub_type = parsed_json["subType"]
136
+ if parsed_json["toolCall"].nil?
137
+ tool_call = nil
138
+ else
139
+ tool_call = parsed_json["toolCall"].to_json
140
+ tool_call = Vapi::ToolCall.from_json(json_object: tool_call)
141
+ end
142
+ name = parsed_json["name"]
143
+ display_width_px = parsed_json["displayWidthPx"]
144
+ display_height_px = parsed_json["displayHeightPx"]
145
+ display_number = parsed_json["displayNumber"]
146
+ if parsed_json["function"].nil?
147
+ function = nil
148
+ else
149
+ function = parsed_json["function"].to_json
150
+ function = Vapi::OpenAiFunction.from_json(json_object: function)
151
+ end
152
+ if parsed_json["server"].nil?
153
+ server = nil
154
+ else
155
+ server = parsed_json["server"].to_json
156
+ server = Vapi::Server.from_json(json_object: server)
157
+ end
158
+ new(
159
+ async: async,
160
+ messages: messages,
161
+ sub_type: sub_type,
162
+ tool_call: tool_call,
163
+ name: name,
164
+ display_width_px: display_width_px,
165
+ display_height_px: display_height_px,
166
+ display_number: display_number,
167
+ function: function,
168
+ server: server,
169
+ additional_properties: struct
170
+ )
171
+ end
172
+
173
+ # Serialize an instance of ComputerToolWithToolCall to a JSON object
174
+ #
175
+ # @return [String]
176
+ def to_json(*_args)
177
+ @_field_set&.to_json
178
+ end
179
+
180
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
181
+ # hash and check each fields type against the current object's property
182
+ # definitions.
183
+ #
184
+ # @param obj [Object]
185
+ # @return [Void]
186
+ def self.validate_raw(obj:)
187
+ obj.async&.is_a?(Boolean) != false || raise("Passed value for field obj.async is not the expected type, validation failed.")
188
+ obj.messages&.is_a?(Array) != false || raise("Passed value for field obj.messages is not the expected type, validation failed.")
189
+ obj.sub_type.is_a?(String) != false || raise("Passed value for field obj.sub_type is not the expected type, validation failed.")
190
+ Vapi::ToolCall.validate_raw(obj: obj.tool_call)
191
+ obj.name.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
192
+ obj.display_width_px.is_a?(Float) != false || raise("Passed value for field obj.display_width_px is not the expected type, validation failed.")
193
+ obj.display_height_px.is_a?(Float) != false || raise("Passed value for field obj.display_height_px is not the expected type, validation failed.")
194
+ obj.display_number&.is_a?(Float) != false || raise("Passed value for field obj.display_number is not the expected type, validation failed.")
195
+ obj.function.nil? || Vapi::OpenAiFunction.validate_raw(obj: obj.function)
196
+ obj.server.nil? || Vapi::Server.validate_raw(obj: obj.server)
197
+ end
198
+ end
199
+ end
@@ -0,0 +1,120 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "json"
4
+ require_relative "tool_message_start"
5
+ require_relative "tool_message_complete"
6
+ require_relative "tool_message_failed"
7
+ require_relative "tool_message_delayed"
8
+
9
+ module Vapi
10
+ class ComputerToolWithToolCallMessagesItem
11
+ # @return [Object]
12
+ attr_reader :member
13
+ # @return [String]
14
+ attr_reader :discriminant
15
+
16
+ private_class_method :new
17
+ alias kind_of? is_a?
18
+
19
+ # @param member [Object]
20
+ # @param discriminant [String]
21
+ # @return [Vapi::ComputerToolWithToolCallMessagesItem]
22
+ def initialize(member:, discriminant:)
23
+ @member = member
24
+ @discriminant = discriminant
25
+ end
26
+
27
+ # Deserialize a JSON object to an instance of ComputerToolWithToolCallMessagesItem
28
+ #
29
+ # @param json_object [String]
30
+ # @return [Vapi::ComputerToolWithToolCallMessagesItem]
31
+ def self.from_json(json_object:)
32
+ struct = JSON.parse(json_object, object_class: OpenStruct)
33
+ member = case struct.type
34
+ when "request-start"
35
+ Vapi::ToolMessageStart.from_json(json_object: json_object)
36
+ when "request-complete"
37
+ Vapi::ToolMessageComplete.from_json(json_object: json_object)
38
+ when "request-failed"
39
+ Vapi::ToolMessageFailed.from_json(json_object: json_object)
40
+ when "request-response-delayed"
41
+ Vapi::ToolMessageDelayed.from_json(json_object: json_object)
42
+ else
43
+ Vapi::ToolMessageStart.from_json(json_object: json_object)
44
+ end
45
+ new(member: member, discriminant: struct.type)
46
+ end
47
+
48
+ # For Union Types, to_json functionality is delegated to the wrapped member.
49
+ #
50
+ # @return [String]
51
+ def to_json(*_args)
52
+ case @discriminant
53
+ when "request-start"
54
+ { **@member.to_json, type: @discriminant }.to_json
55
+ when "request-complete"
56
+ { **@member.to_json, type: @discriminant }.to_json
57
+ when "request-failed"
58
+ { **@member.to_json, type: @discriminant }.to_json
59
+ when "request-response-delayed"
60
+ { **@member.to_json, type: @discriminant }.to_json
61
+ else
62
+ { "type": @discriminant, value: @member }.to_json
63
+ end
64
+ @member.to_json
65
+ end
66
+
67
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
68
+ # hash and check each fields type against the current object's property
69
+ # definitions.
70
+ #
71
+ # @param obj [Object]
72
+ # @return [Void]
73
+ def self.validate_raw(obj:)
74
+ case obj.type
75
+ when "request-start"
76
+ Vapi::ToolMessageStart.validate_raw(obj: obj)
77
+ when "request-complete"
78
+ Vapi::ToolMessageComplete.validate_raw(obj: obj)
79
+ when "request-failed"
80
+ Vapi::ToolMessageFailed.validate_raw(obj: obj)
81
+ when "request-response-delayed"
82
+ Vapi::ToolMessageDelayed.validate_raw(obj: obj)
83
+ else
84
+ raise("Passed value matched no type within the union, validation failed.")
85
+ end
86
+ end
87
+
88
+ # For Union Types, is_a? functionality is delegated to the wrapped member.
89
+ #
90
+ # @param obj [Object]
91
+ # @return [Boolean]
92
+ def is_a?(obj)
93
+ @member.is_a?(obj)
94
+ end
95
+
96
+ # @param member [Vapi::ToolMessageStart]
97
+ # @return [Vapi::ComputerToolWithToolCallMessagesItem]
98
+ def self.request_start(member:)
99
+ new(member: member, discriminant: "request-start")
100
+ end
101
+
102
+ # @param member [Vapi::ToolMessageComplete]
103
+ # @return [Vapi::ComputerToolWithToolCallMessagesItem]
104
+ def self.request_complete(member:)
105
+ new(member: member, discriminant: "request-complete")
106
+ end
107
+
108
+ # @param member [Vapi::ToolMessageFailed]
109
+ # @return [Vapi::ComputerToolWithToolCallMessagesItem]
110
+ def self.request_failed(member:)
111
+ new(member: member, discriminant: "request-failed")
112
+ end
113
+
114
+ # @param member [Vapi::ToolMessageDelayed]
115
+ # @return [Vapi::ComputerToolWithToolCallMessagesItem]
116
+ def self.request_response_delayed(member:)
117
+ new(member: member, discriminant: "request-response-delayed")
118
+ end
119
+ end
120
+ end
@@ -10,6 +10,7 @@ require_relative "create_assistant_dto_background_sound"
10
10
  require_relative "transport_configuration_twilio"
11
11
  require_relative "create_assistant_dto_credentials_item"
12
12
  require_relative "twilio_voicemail_detection"
13
+ require_relative "compliance_plan"
13
14
  require_relative "analysis_plan"
14
15
  require_relative "artifact_plan"
15
16
  require_relative "message_plan"
@@ -17,6 +18,7 @@ require_relative "start_speaking_plan"
17
18
  require_relative "stop_speaking_plan"
18
19
  require_relative "monitor_plan"
19
20
  require_relative "server"
21
+ require_relative "assistant_hooks"
20
22
  require "ostruct"
21
23
  require "json"
22
24
 
@@ -44,10 +46,6 @@ module Vapi
44
46
  # transfer points).
45
47
  # @default 'assistant-speaks-first'
46
48
  attr_reader :first_message_mode
47
- # @return [Boolean] When this is enabled, no logs, recordings, or transcriptions will be stored. At
48
- # the end of the call, you will still receive an end-of-call-report message to
49
- # store on your server. Defaults to false.
50
- attr_reader :hipaa_enabled
51
49
  # @return [Array<Vapi::CreateAssistantDtoClientMessagesItem>] These are the messages that will be sent to your Client SDKs. Default is
52
50
  # tatus-update,transfer-update,transcript,tool-calls,user-interrupted,voice-input.
53
51
  # You can check the shape of the messages in ClientMessage schema.
@@ -106,6 +104,8 @@ module Vapi
106
104
  # @return [Array<String>] This list contains phrases that, if spoken by the assistant, will trigger the
107
105
  # call to be hung up. Case insensitive.
108
106
  attr_reader :end_call_phrases
107
+ # @return [Vapi::CompliancePlan]
108
+ attr_reader :compliance_plan
109
109
  # @return [Hash{String => Object}] This is for metadata you want to store on the assistant.
110
110
  attr_reader :metadata
111
111
  # @return [Vapi::AnalysisPlan] This is the plan for analysis of assistant's calls. Stored in `call.analysis`.
@@ -160,6 +160,8 @@ module Vapi
160
160
  # 2. phoneNumber.serverUrl
161
161
  # 3. org.serverUrl
162
162
  attr_reader :server
163
+ # @return [Array<Vapi::AssistantHooks>] This is a set of actions that will be performed on certain events.
164
+ attr_reader :hooks
163
165
  # @return [OpenStruct] Additional properties unmapped to the current class definition
164
166
  attr_reader :additional_properties
165
167
  # @return [Object]
@@ -185,9 +187,6 @@ module Vapi
185
187
  # state. (`assistant.model.messages` at call start, `call.messages` at squad
186
188
  # transfer points).
187
189
  # @default 'assistant-speaks-first'
188
- # @param hipaa_enabled [Boolean] When this is enabled, no logs, recordings, or transcriptions will be stored. At
189
- # the end of the call, you will still receive an end-of-call-report message to
190
- # store on your server. Defaults to false.
191
190
  # @param client_messages [Array<Vapi::CreateAssistantDtoClientMessagesItem>] These are the messages that will be sent to your Client SDKs. Default is
192
191
  # tatus-update,transfer-update,transcript,tool-calls,user-interrupted,voice-input.
193
192
  # You can check the shape of the messages in ClientMessage schema.
@@ -232,6 +231,7 @@ module Vapi
232
231
  # If unspecified, it will hang up without saying anything.
233
232
  # @param end_call_phrases [Array<String>] This list contains phrases that, if spoken by the assistant, will trigger the
234
233
  # call to be hung up. Case insensitive.
234
+ # @param compliance_plan [Vapi::CompliancePlan]
235
235
  # @param metadata [Hash{String => Object}] This is for metadata you want to store on the assistant.
236
236
  # @param analysis_plan [Vapi::AnalysisPlan] This is the plan for analysis of assistant's calls. Stored in `call.analysis`.
237
237
  # @param artifact_plan [Vapi::ArtifactPlan] This is the plan for artifacts generated during assistant's calls. Stored in
@@ -277,16 +277,16 @@ module Vapi
277
277
  # 1. assistant.server.url
278
278
  # 2. phoneNumber.serverUrl
279
279
  # 3. org.serverUrl
280
+ # @param hooks [Array<Vapi::AssistantHooks>] This is a set of actions that will be performed on certain events.
280
281
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
281
282
  # @return [Vapi::CreateAssistantDto]
282
283
  def initialize(transcriber: OMIT, model: OMIT, voice: OMIT, first_message: OMIT, first_message_mode: OMIT,
283
- hipaa_enabled: OMIT, client_messages: OMIT, server_messages: OMIT, silence_timeout_seconds: OMIT, max_duration_seconds: OMIT, background_sound: OMIT, background_denoising_enabled: OMIT, model_output_in_messages_enabled: OMIT, transport_configurations: OMIT, credentials: OMIT, name: OMIT, voicemail_detection: OMIT, voicemail_message: OMIT, end_call_message: OMIT, end_call_phrases: OMIT, metadata: OMIT, analysis_plan: OMIT, artifact_plan: OMIT, message_plan: OMIT, start_speaking_plan: OMIT, stop_speaking_plan: OMIT, monitor_plan: OMIT, credential_ids: OMIT, server: OMIT, additional_properties: nil)
284
+ client_messages: OMIT, server_messages: OMIT, silence_timeout_seconds: OMIT, max_duration_seconds: OMIT, background_sound: OMIT, background_denoising_enabled: OMIT, model_output_in_messages_enabled: OMIT, transport_configurations: OMIT, credentials: OMIT, name: OMIT, voicemail_detection: OMIT, voicemail_message: OMIT, end_call_message: OMIT, end_call_phrases: OMIT, compliance_plan: OMIT, metadata: OMIT, analysis_plan: OMIT, artifact_plan: OMIT, message_plan: OMIT, start_speaking_plan: OMIT, stop_speaking_plan: OMIT, monitor_plan: OMIT, credential_ids: OMIT, server: OMIT, hooks: OMIT, additional_properties: nil)
284
285
  @transcriber = transcriber if transcriber != OMIT
285
286
  @model = model if model != OMIT
286
287
  @voice = voice if voice != OMIT
287
288
  @first_message = first_message if first_message != OMIT
288
289
  @first_message_mode = first_message_mode if first_message_mode != OMIT
289
- @hipaa_enabled = hipaa_enabled if hipaa_enabled != OMIT
290
290
  @client_messages = client_messages if client_messages != OMIT
291
291
  @server_messages = server_messages if server_messages != OMIT
292
292
  @silence_timeout_seconds = silence_timeout_seconds if silence_timeout_seconds != OMIT
@@ -301,6 +301,7 @@ module Vapi
301
301
  @voicemail_message = voicemail_message if voicemail_message != OMIT
302
302
  @end_call_message = end_call_message if end_call_message != OMIT
303
303
  @end_call_phrases = end_call_phrases if end_call_phrases != OMIT
304
+ @compliance_plan = compliance_plan if compliance_plan != OMIT
304
305
  @metadata = metadata if metadata != OMIT
305
306
  @analysis_plan = analysis_plan if analysis_plan != OMIT
306
307
  @artifact_plan = artifact_plan if artifact_plan != OMIT
@@ -310,6 +311,7 @@ module Vapi
310
311
  @monitor_plan = monitor_plan if monitor_plan != OMIT
311
312
  @credential_ids = credential_ids if credential_ids != OMIT
312
313
  @server = server if server != OMIT
314
+ @hooks = hooks if hooks != OMIT
313
315
  @additional_properties = additional_properties
314
316
  @_field_set = {
315
317
  "transcriber": transcriber,
@@ -317,7 +319,6 @@ module Vapi
317
319
  "voice": voice,
318
320
  "firstMessage": first_message,
319
321
  "firstMessageMode": first_message_mode,
320
- "hipaaEnabled": hipaa_enabled,
321
322
  "clientMessages": client_messages,
322
323
  "serverMessages": server_messages,
323
324
  "silenceTimeoutSeconds": silence_timeout_seconds,
@@ -332,6 +333,7 @@ module Vapi
332
333
  "voicemailMessage": voicemail_message,
333
334
  "endCallMessage": end_call_message,
334
335
  "endCallPhrases": end_call_phrases,
336
+ "compliancePlan": compliance_plan,
335
337
  "metadata": metadata,
336
338
  "analysisPlan": analysis_plan,
337
339
  "artifactPlan": artifact_plan,
@@ -340,7 +342,8 @@ module Vapi
340
342
  "stopSpeakingPlan": stop_speaking_plan,
341
343
  "monitorPlan": monitor_plan,
342
344
  "credentialIds": credential_ids,
343
- "server": server
345
+ "server": server,
346
+ "hooks": hooks
344
347
  }.reject do |_k, v|
345
348
  v == OMIT
346
349
  end
@@ -373,7 +376,6 @@ module Vapi
373
376
  end
374
377
  first_message = parsed_json["firstMessage"]
375
378
  first_message_mode = parsed_json["firstMessageMode"]
376
- hipaa_enabled = parsed_json["hipaaEnabled"]
377
379
  client_messages = parsed_json["clientMessages"]
378
380
  server_messages = parsed_json["serverMessages"]
379
381
  silence_timeout_seconds = parsed_json["silenceTimeoutSeconds"]
@@ -399,6 +401,12 @@ module Vapi
399
401
  voicemail_message = parsed_json["voicemailMessage"]
400
402
  end_call_message = parsed_json["endCallMessage"]
401
403
  end_call_phrases = parsed_json["endCallPhrases"]
404
+ if parsed_json["compliancePlan"].nil?
405
+ compliance_plan = nil
406
+ else
407
+ compliance_plan = parsed_json["compliancePlan"].to_json
408
+ compliance_plan = Vapi::CompliancePlan.from_json(json_object: compliance_plan)
409
+ end
402
410
  metadata = parsed_json["metadata"]
403
411
  if parsed_json["analysisPlan"].nil?
404
412
  analysis_plan = nil
@@ -443,13 +451,16 @@ module Vapi
443
451
  server = parsed_json["server"].to_json
444
452
  server = Vapi::Server.from_json(json_object: server)
445
453
  end
454
+ hooks = parsed_json["hooks"]&.map do |item|
455
+ item = item.to_json
456
+ Vapi::AssistantHooks.from_json(json_object: item)
457
+ end
446
458
  new(
447
459
  transcriber: transcriber,
448
460
  model: model,
449
461
  voice: voice,
450
462
  first_message: first_message,
451
463
  first_message_mode: first_message_mode,
452
- hipaa_enabled: hipaa_enabled,
453
464
  client_messages: client_messages,
454
465
  server_messages: server_messages,
455
466
  silence_timeout_seconds: silence_timeout_seconds,
@@ -464,6 +475,7 @@ module Vapi
464
475
  voicemail_message: voicemail_message,
465
476
  end_call_message: end_call_message,
466
477
  end_call_phrases: end_call_phrases,
478
+ compliance_plan: compliance_plan,
467
479
  metadata: metadata,
468
480
  analysis_plan: analysis_plan,
469
481
  artifact_plan: artifact_plan,
@@ -473,6 +485,7 @@ module Vapi
473
485
  monitor_plan: monitor_plan,
474
486
  credential_ids: credential_ids,
475
487
  server: server,
488
+ hooks: hooks,
476
489
  additional_properties: struct
477
490
  )
478
491
  end
@@ -496,7 +509,6 @@ module Vapi
496
509
  obj.voice.nil? || Vapi::CreateAssistantDtoVoice.validate_raw(obj: obj.voice)
497
510
  obj.first_message&.is_a?(String) != false || raise("Passed value for field obj.first_message is not the expected type, validation failed.")
498
511
  obj.first_message_mode&.is_a?(Vapi::CreateAssistantDtoFirstMessageMode) != false || raise("Passed value for field obj.first_message_mode is not the expected type, validation failed.")
499
- obj.hipaa_enabled&.is_a?(Boolean) != false || raise("Passed value for field obj.hipaa_enabled is not the expected type, validation failed.")
500
512
  obj.client_messages&.is_a?(Array) != false || raise("Passed value for field obj.client_messages is not the expected type, validation failed.")
501
513
  obj.server_messages&.is_a?(Array) != false || raise("Passed value for field obj.server_messages is not the expected type, validation failed.")
502
514
  obj.silence_timeout_seconds&.is_a?(Float) != false || raise("Passed value for field obj.silence_timeout_seconds is not the expected type, validation failed.")
@@ -511,6 +523,7 @@ module Vapi
511
523
  obj.voicemail_message&.is_a?(String) != false || raise("Passed value for field obj.voicemail_message is not the expected type, validation failed.")
512
524
  obj.end_call_message&.is_a?(String) != false || raise("Passed value for field obj.end_call_message is not the expected type, validation failed.")
513
525
  obj.end_call_phrases&.is_a?(Array) != false || raise("Passed value for field obj.end_call_phrases is not the expected type, validation failed.")
526
+ obj.compliance_plan.nil? || Vapi::CompliancePlan.validate_raw(obj: obj.compliance_plan)
514
527
  obj.metadata&.is_a?(Hash) != false || raise("Passed value for field obj.metadata is not the expected type, validation failed.")
515
528
  obj.analysis_plan.nil? || Vapi::AnalysisPlan.validate_raw(obj: obj.analysis_plan)
516
529
  obj.artifact_plan.nil? || Vapi::ArtifactPlan.validate_raw(obj: obj.artifact_plan)
@@ -520,6 +533,7 @@ module Vapi
520
533
  obj.monitor_plan.nil? || Vapi::MonitorPlan.validate_raw(obj: obj.monitor_plan)
521
534
  obj.credential_ids&.is_a?(Array) != false || raise("Passed value for field obj.credential_ids is not the expected type, validation failed.")
522
535
  obj.server.nil? || Vapi::Server.validate_raw(obj: obj.server)
536
+ obj.hooks&.is_a?(Array) != false || raise("Passed value for field obj.hooks is not the expected type, validation failed.")
523
537
  end
524
538
  end
525
539
  end
@@ -13,6 +13,7 @@ module Vapi
13
13
  SPEECH_UPDATE = "speech-update"
14
14
  STATUS_UPDATE = "status-update"
15
15
  TRANSCRIPT = "transcript"
16
+ TRANSCRIPT_TRANSCRIPT_TYPE_FINAL = "transcript[transcriptType='final']"
16
17
  TOOL_CALLS = "tool-calls"
17
18
  TRANSFER_DESTINATION_REQUEST = "transfer-destination-request"
18
19
  TRANSFER_UPDATE = "transfer-update"
@@ -4,12 +4,14 @@ module Vapi
4
4
  # This is the region of the Azure resource.
5
5
  class CreateAzureCredentialDtoRegion
6
6
  AUSTRALIA = "australia"
7
- CANADA = "canada"
7
+ CANADAEAST = "canadaeast"
8
+ CANADACENTRAL = "canadacentral"
8
9
  EASTUS_2 = "eastus2"
9
10
  EASTUS = "eastus"
10
11
  FRANCE = "france"
11
12
  INDIA = "india"
12
- JAPAN = "japan"
13
+ JAPANEAST = "japaneast"
14
+ JAPANWEST = "japanwest"
13
15
  UAENORTH = "uaenorth"
14
16
  NORTHCENTRALUS = "northcentralus"
15
17
  NORWAY = "norway"
@@ -2,6 +2,7 @@
2
2
 
3
3
  module Vapi
4
4
  class CreateAzureOpenAiCredentialDtoModelsItem
5
+ GPT_4_O_20240806_PTU = "gpt-4o-2024-08-06-ptu"
5
6
  GPT_4_O_20240806 = "gpt-4o-2024-08-06"
6
7
  GPT_4_O_MINI_20240718 = "gpt-4o-mini-2024-07-18"
7
8
  GPT_4_O_20240513 = "gpt-4o-2024-05-13"
@@ -3,12 +3,14 @@
3
3
  module Vapi
4
4
  class CreateAzureOpenAiCredentialDtoRegion
5
5
  AUSTRALIA = "australia"
6
- CANADA = "canada"
6
+ CANADAEAST = "canadaeast"
7
+ CANADACENTRAL = "canadacentral"
7
8
  EASTUS_2 = "eastus2"
8
9
  EASTUS = "eastus"
9
10
  FRANCE = "france"
10
11
  INDIA = "india"
11
- JAPAN = "japan"
12
+ JAPANEAST = "japaneast"
13
+ JAPANWEST = "japanwest"
12
14
  UAENORTH = "uaenorth"
13
15
  NORTHCENTRALUS = "northcentralus"
14
16
  NORWAY = "norway"
@@ -6,8 +6,7 @@ require "json"
6
6
 
7
7
  module Vapi
8
8
  class CreateCustomKnowledgeBaseDto
9
- # @return [Vapi::Server] /**
10
- # This is where the knowledge base request will be sent.
9
+ # @return [Vapi::Server] This is where the knowledge base request will be sent.
11
10
  # Request Example:
12
11
  # POST https://{server.url}
13
12
  # Content-Type: application/json
@@ -54,8 +53,7 @@ module Vapi
54
53
 
55
54
  OMIT = Object.new
56
55
 
57
- # @param server [Vapi::Server] /**
58
- # This is where the knowledge base request will be sent.
56
+ # @param server [Vapi::Server] This is where the knowledge base request will be sent.
59
57
  # Request Example:
60
58
  # POST https://{server.url}
61
59
  # Content-Type: application/json