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
@@ -1,262 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative "subscription"
4
- require "date"
5
- require_relative "org_plan"
6
- require_relative "org_with_org_user_channel"
7
- require_relative "server"
8
- require_relative "org_with_org_user_role"
9
- require "ostruct"
10
- require "json"
11
-
12
- module Vapi
13
- class OrgWithOrgUser
14
- # @return [Boolean] When this is enabled, no logs, recordings, or transcriptions will be stored. At
15
- # the end of the call, you will still receive an end-of-call-report message to
16
- # store on your server. Defaults to false.
17
- # When HIPAA is enabled, only OpenAI/Custom LLM or Azure Providers will be
18
- # available for LLM and Voice respectively.
19
- # This is due to the compliance requirements of HIPAA. Other providers may not
20
- # meet these requirements.
21
- attr_reader :hipaa_enabled
22
- # @return [Vapi::Subscription]
23
- attr_reader :subscription
24
- # @return [String] This is the ID of the subscription the org belongs to.
25
- attr_reader :subscription_id
26
- # @return [String] This is the unique identifier for the org.
27
- attr_reader :id
28
- # @return [DateTime] This is the ISO 8601 date-time string of when the org was created.
29
- attr_reader :created_at
30
- # @return [DateTime] This is the ISO 8601 date-time string of when the org was last updated.
31
- attr_reader :updated_at
32
- # @return [String] This is the Stripe customer for the org.
33
- attr_reader :stripe_customer_id
34
- # @return [String] This is the subscription for the org.
35
- attr_reader :stripe_subscription_id
36
- # @return [String] This is the subscription's subscription item.
37
- attr_reader :stripe_subscription_item_id
38
- # @return [DateTime] This is the subscription's current period start.
39
- attr_reader :stripe_subscription_current_period_start
40
- # @return [String] This is the subscription's status.
41
- attr_reader :stripe_subscription_status
42
- # @return [Vapi::OrgPlan] This is the plan for the org.
43
- attr_reader :plan
44
- # @return [String] This is the name of the org. This is just for your own reference.
45
- attr_reader :name
46
- # @return [Vapi::OrgWithOrgUserChannel] This is the channel of the org. There is the cluster the API traffic for the org
47
- # will be directed.
48
- attr_reader :channel
49
- # @return [Float] This is the monthly billing limit for the org. To go beyond $1000/mo, please
50
- # contact us at support@vapi.ai.
51
- attr_reader :billing_limit
52
- # @return [Vapi::Server] This is where Vapi will send webhooks. You can find all webhooks available along
53
- # with their shape in ServerMessage schema.
54
- # The order of precedence is:
55
- # 1. assistant.server
56
- # 2. phoneNumber.server
57
- # 3. org.server
58
- attr_reader :server
59
- # @return [Float] This is the concurrency limit for the org. This is the maximum number of calls
60
- # that can be active at any given time. To go beyond 10, please contact us at
61
- # support@vapi.ai.
62
- attr_reader :concurrency_limit
63
- # @return [String]
64
- attr_reader :invited_by_user_id
65
- # @return [Vapi::OrgWithOrgUserRole]
66
- attr_reader :role
67
- # @return [OpenStruct] Additional properties unmapped to the current class definition
68
- attr_reader :additional_properties
69
- # @return [Object]
70
- attr_reader :_field_set
71
- protected :_field_set
72
-
73
- OMIT = Object.new
74
-
75
- # @param hipaa_enabled [Boolean] When this is enabled, no logs, recordings, or transcriptions will be stored. At
76
- # the end of the call, you will still receive an end-of-call-report message to
77
- # store on your server. Defaults to false.
78
- # When HIPAA is enabled, only OpenAI/Custom LLM or Azure Providers will be
79
- # available for LLM and Voice respectively.
80
- # This is due to the compliance requirements of HIPAA. Other providers may not
81
- # meet these requirements.
82
- # @param subscription [Vapi::Subscription]
83
- # @param subscription_id [String] This is the ID of the subscription the org belongs to.
84
- # @param id [String] This is the unique identifier for the org.
85
- # @param created_at [DateTime] This is the ISO 8601 date-time string of when the org was created.
86
- # @param updated_at [DateTime] This is the ISO 8601 date-time string of when the org was last updated.
87
- # @param stripe_customer_id [String] This is the Stripe customer for the org.
88
- # @param stripe_subscription_id [String] This is the subscription for the org.
89
- # @param stripe_subscription_item_id [String] This is the subscription's subscription item.
90
- # @param stripe_subscription_current_period_start [DateTime] This is the subscription's current period start.
91
- # @param stripe_subscription_status [String] This is the subscription's status.
92
- # @param plan [Vapi::OrgPlan] This is the plan for the org.
93
- # @param name [String] This is the name of the org. This is just for your own reference.
94
- # @param channel [Vapi::OrgWithOrgUserChannel] This is the channel of the org. There is the cluster the API traffic for the org
95
- # will be directed.
96
- # @param billing_limit [Float] This is the monthly billing limit for the org. To go beyond $1000/mo, please
97
- # contact us at support@vapi.ai.
98
- # @param server [Vapi::Server] This is where Vapi will send webhooks. You can find all webhooks available along
99
- # with their shape in ServerMessage schema.
100
- # The order of precedence is:
101
- # 1. assistant.server
102
- # 2. phoneNumber.server
103
- # 3. org.server
104
- # @param concurrency_limit [Float] This is the concurrency limit for the org. This is the maximum number of calls
105
- # that can be active at any given time. To go beyond 10, please contact us at
106
- # support@vapi.ai.
107
- # @param invited_by_user_id [String]
108
- # @param role [Vapi::OrgWithOrgUserRole]
109
- # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
110
- # @return [Vapi::OrgWithOrgUser]
111
- def initialize(id:, created_at:, updated_at:, hipaa_enabled: OMIT, subscription: OMIT, subscription_id: OMIT,
112
- stripe_customer_id: OMIT, stripe_subscription_id: OMIT, stripe_subscription_item_id: OMIT, stripe_subscription_current_period_start: OMIT, stripe_subscription_status: OMIT, plan: OMIT, name: OMIT, channel: OMIT, billing_limit: OMIT, server: OMIT, concurrency_limit: OMIT, invited_by_user_id: OMIT, role: OMIT, additional_properties: nil)
113
- @hipaa_enabled = hipaa_enabled if hipaa_enabled != OMIT
114
- @subscription = subscription if subscription != OMIT
115
- @subscription_id = subscription_id if subscription_id != OMIT
116
- @id = id
117
- @created_at = created_at
118
- @updated_at = updated_at
119
- @stripe_customer_id = stripe_customer_id if stripe_customer_id != OMIT
120
- @stripe_subscription_id = stripe_subscription_id if stripe_subscription_id != OMIT
121
- @stripe_subscription_item_id = stripe_subscription_item_id if stripe_subscription_item_id != OMIT
122
- if stripe_subscription_current_period_start != OMIT
123
- @stripe_subscription_current_period_start = stripe_subscription_current_period_start
124
- end
125
- @stripe_subscription_status = stripe_subscription_status if stripe_subscription_status != OMIT
126
- @plan = plan if plan != OMIT
127
- @name = name if name != OMIT
128
- @channel = channel if channel != OMIT
129
- @billing_limit = billing_limit if billing_limit != OMIT
130
- @server = server if server != OMIT
131
- @concurrency_limit = concurrency_limit if concurrency_limit != OMIT
132
- @invited_by_user_id = invited_by_user_id if invited_by_user_id != OMIT
133
- @role = role if role != OMIT
134
- @additional_properties = additional_properties
135
- @_field_set = {
136
- "hipaaEnabled": hipaa_enabled,
137
- "subscription": subscription,
138
- "subscriptionId": subscription_id,
139
- "id": id,
140
- "createdAt": created_at,
141
- "updatedAt": updated_at,
142
- "stripeCustomerId": stripe_customer_id,
143
- "stripeSubscriptionId": stripe_subscription_id,
144
- "stripeSubscriptionItemId": stripe_subscription_item_id,
145
- "stripeSubscriptionCurrentPeriodStart": stripe_subscription_current_period_start,
146
- "stripeSubscriptionStatus": stripe_subscription_status,
147
- "plan": plan,
148
- "name": name,
149
- "channel": channel,
150
- "billingLimit": billing_limit,
151
- "server": server,
152
- "concurrencyLimit": concurrency_limit,
153
- "invitedByUserId": invited_by_user_id,
154
- "role": role
155
- }.reject do |_k, v|
156
- v == OMIT
157
- end
158
- end
159
-
160
- # Deserialize a JSON object to an instance of OrgWithOrgUser
161
- #
162
- # @param json_object [String]
163
- # @return [Vapi::OrgWithOrgUser]
164
- def self.from_json(json_object:)
165
- struct = JSON.parse(json_object, object_class: OpenStruct)
166
- parsed_json = JSON.parse(json_object)
167
- hipaa_enabled = parsed_json["hipaaEnabled"]
168
- if parsed_json["subscription"].nil?
169
- subscription = nil
170
- else
171
- subscription = parsed_json["subscription"].to_json
172
- subscription = Vapi::Subscription.from_json(json_object: subscription)
173
- end
174
- subscription_id = parsed_json["subscriptionId"]
175
- id = parsed_json["id"]
176
- created_at = (DateTime.parse(parsed_json["createdAt"]) unless parsed_json["createdAt"].nil?)
177
- updated_at = (DateTime.parse(parsed_json["updatedAt"]) unless parsed_json["updatedAt"].nil?)
178
- stripe_customer_id = parsed_json["stripeCustomerId"]
179
- stripe_subscription_id = parsed_json["stripeSubscriptionId"]
180
- stripe_subscription_item_id = parsed_json["stripeSubscriptionItemId"]
181
- stripe_subscription_current_period_start = unless parsed_json["stripeSubscriptionCurrentPeriodStart"].nil?
182
- DateTime.parse(parsed_json["stripeSubscriptionCurrentPeriodStart"])
183
- end
184
- stripe_subscription_status = parsed_json["stripeSubscriptionStatus"]
185
- if parsed_json["plan"].nil?
186
- plan = nil
187
- else
188
- plan = parsed_json["plan"].to_json
189
- plan = Vapi::OrgPlan.from_json(json_object: plan)
190
- end
191
- name = parsed_json["name"]
192
- channel = parsed_json["channel"]
193
- billing_limit = parsed_json["billingLimit"]
194
- if parsed_json["server"].nil?
195
- server = nil
196
- else
197
- server = parsed_json["server"].to_json
198
- server = Vapi::Server.from_json(json_object: server)
199
- end
200
- concurrency_limit = parsed_json["concurrencyLimit"]
201
- invited_by_user_id = parsed_json["invitedByUserId"]
202
- role = parsed_json["role"]
203
- new(
204
- hipaa_enabled: hipaa_enabled,
205
- subscription: subscription,
206
- subscription_id: subscription_id,
207
- id: id,
208
- created_at: created_at,
209
- updated_at: updated_at,
210
- stripe_customer_id: stripe_customer_id,
211
- stripe_subscription_id: stripe_subscription_id,
212
- stripe_subscription_item_id: stripe_subscription_item_id,
213
- stripe_subscription_current_period_start: stripe_subscription_current_period_start,
214
- stripe_subscription_status: stripe_subscription_status,
215
- plan: plan,
216
- name: name,
217
- channel: channel,
218
- billing_limit: billing_limit,
219
- server: server,
220
- concurrency_limit: concurrency_limit,
221
- invited_by_user_id: invited_by_user_id,
222
- role: role,
223
- additional_properties: struct
224
- )
225
- end
226
-
227
- # Serialize an instance of OrgWithOrgUser to a JSON object
228
- #
229
- # @return [String]
230
- def to_json(*_args)
231
- @_field_set&.to_json
232
- end
233
-
234
- # Leveraged for Union-type generation, validate_raw attempts to parse the given
235
- # hash and check each fields type against the current object's property
236
- # definitions.
237
- #
238
- # @param obj [Object]
239
- # @return [Void]
240
- def self.validate_raw(obj:)
241
- obj.hipaa_enabled&.is_a?(Boolean) != false || raise("Passed value for field obj.hipaa_enabled is not the expected type, validation failed.")
242
- obj.subscription.nil? || Vapi::Subscription.validate_raw(obj: obj.subscription)
243
- obj.subscription_id&.is_a?(String) != false || raise("Passed value for field obj.subscription_id is not the expected type, validation failed.")
244
- obj.id.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
245
- obj.created_at.is_a?(DateTime) != false || raise("Passed value for field obj.created_at is not the expected type, validation failed.")
246
- obj.updated_at.is_a?(DateTime) != false || raise("Passed value for field obj.updated_at is not the expected type, validation failed.")
247
- obj.stripe_customer_id&.is_a?(String) != false || raise("Passed value for field obj.stripe_customer_id is not the expected type, validation failed.")
248
- obj.stripe_subscription_id&.is_a?(String) != false || raise("Passed value for field obj.stripe_subscription_id is not the expected type, validation failed.")
249
- obj.stripe_subscription_item_id&.is_a?(String) != false || raise("Passed value for field obj.stripe_subscription_item_id is not the expected type, validation failed.")
250
- obj.stripe_subscription_current_period_start&.is_a?(DateTime) != false || raise("Passed value for field obj.stripe_subscription_current_period_start is not the expected type, validation failed.")
251
- obj.stripe_subscription_status&.is_a?(String) != false || raise("Passed value for field obj.stripe_subscription_status is not the expected type, validation failed.")
252
- obj.plan.nil? || Vapi::OrgPlan.validate_raw(obj: obj.plan)
253
- obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
254
- obj.channel&.is_a?(Vapi::OrgWithOrgUserChannel) != false || raise("Passed value for field obj.channel is not the expected type, validation failed.")
255
- obj.billing_limit&.is_a?(Float) != false || raise("Passed value for field obj.billing_limit is not the expected type, validation failed.")
256
- obj.server.nil? || Vapi::Server.validate_raw(obj: obj.server)
257
- obj.concurrency_limit&.is_a?(Float) != false || raise("Passed value for field obj.concurrency_limit is not the expected type, validation failed.")
258
- obj.invited_by_user_id&.is_a?(String) != false || raise("Passed value for field obj.invited_by_user_id is not the expected type, validation failed.")
259
- obj.role&.is_a?(Vapi::OrgWithOrgUserRole) != false || raise("Passed value for field obj.role is not the expected type, validation failed.")
260
- end
261
- end
262
- end
@@ -1,10 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Vapi
4
- # This is the channel of the org. There is the cluster the API traffic for the org
5
- # will be directed.
6
- class OrgWithOrgUserChannel
7
- DEFAULT = "default"
8
- WEEKLY = "weekly"
9
- end
10
- end
@@ -1,9 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Vapi
4
- class OrgWithOrgUserRole
5
- ADMIN = "admin"
6
- EDITOR = "editor"
7
- VIEWER = "viewer"
8
- end
9
- end