revox 0.0.2

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 (161) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +10 -0
  4. data/README.md +234 -0
  5. data/SECURITY.md +23 -0
  6. data/lib/revox/client.rb +86 -0
  7. data/lib/revox/errors.rb +228 -0
  8. data/lib/revox/file_part.rb +58 -0
  9. data/lib/revox/internal/transport/base_client.rb +570 -0
  10. data/lib/revox/internal/transport/pooled_net_requester.rb +210 -0
  11. data/lib/revox/internal/type/array_of.rb +168 -0
  12. data/lib/revox/internal/type/base_model.rb +529 -0
  13. data/lib/revox/internal/type/base_page.rb +55 -0
  14. data/lib/revox/internal/type/boolean.rb +77 -0
  15. data/lib/revox/internal/type/converter.rb +327 -0
  16. data/lib/revox/internal/type/enum.rb +131 -0
  17. data/lib/revox/internal/type/file_input.rb +110 -0
  18. data/lib/revox/internal/type/hash_of.rb +188 -0
  19. data/lib/revox/internal/type/request_parameters.rb +42 -0
  20. data/lib/revox/internal/type/union.rb +237 -0
  21. data/lib/revox/internal/type/unknown.rb +81 -0
  22. data/lib/revox/internal/util.rb +920 -0
  23. data/lib/revox/internal.rb +20 -0
  24. data/lib/revox/models/assistant_create_params.rb +467 -0
  25. data/lib/revox/models/assistant_create_response.rb +535 -0
  26. data/lib/revox/models/assistant_delete_params.rb +14 -0
  27. data/lib/revox/models/assistant_delete_response.rb +16 -0
  28. data/lib/revox/models/assistant_list_params.rb +14 -0
  29. data/lib/revox/models/assistant_list_response.rb +533 -0
  30. data/lib/revox/models/assistant_retrieve_params.rb +14 -0
  31. data/lib/revox/models/assistant_retrieve_response.rb +518 -0
  32. data/lib/revox/models/assistant_update_params.rb +467 -0
  33. data/lib/revox/models/assistant_update_response.rb +535 -0
  34. data/lib/revox/models/call_create_params.rb +592 -0
  35. data/lib/revox/models/call_create_response.rb +684 -0
  36. data/lib/revox/models/call_list_params.rb +29 -0
  37. data/lib/revox/models/call_list_response.rb +197 -0
  38. data/lib/revox/models/call_retrieve_params.rb +14 -0
  39. data/lib/revox/models/call_retrieve_response.rb +684 -0
  40. data/lib/revox/models/users/me_retrieve_params.rb +16 -0
  41. data/lib/revox/models/users/me_retrieve_response.rb +89 -0
  42. data/lib/revox/models/users/me_update_params.rb +22 -0
  43. data/lib/revox/models/users/me_update_response.rb +89 -0
  44. data/lib/revox/models/voice_list_params.rb +14 -0
  45. data/lib/revox/models/voice_list_response.rb +91 -0
  46. data/lib/revox/models/voice_preview_params.rb +49 -0
  47. data/lib/revox/models/voice_retrieve_params.rb +30 -0
  48. data/lib/revox/models/voice_retrieve_response.rb +39 -0
  49. data/lib/revox/models.rb +65 -0
  50. data/lib/revox/request_options.rb +77 -0
  51. data/lib/revox/resources/assistants.rb +180 -0
  52. data/lib/revox/resources/call.rb +100 -0
  53. data/lib/revox/resources/users/me.rb +55 -0
  54. data/lib/revox/resources/users.rb +18 -0
  55. data/lib/revox/resources/voices.rb +83 -0
  56. data/lib/revox/version.rb +5 -0
  57. data/lib/revox.rb +85 -0
  58. data/manifest.yaml +17 -0
  59. data/rbi/revox/client.rbi +58 -0
  60. data/rbi/revox/errors.rbi +205 -0
  61. data/rbi/revox/file_part.rbi +37 -0
  62. data/rbi/revox/internal/transport/base_client.rbi +297 -0
  63. data/rbi/revox/internal/transport/pooled_net_requester.rbi +82 -0
  64. data/rbi/revox/internal/type/array_of.rbi +104 -0
  65. data/rbi/revox/internal/type/base_model.rbi +299 -0
  66. data/rbi/revox/internal/type/base_page.rbi +42 -0
  67. data/rbi/revox/internal/type/boolean.rbi +58 -0
  68. data/rbi/revox/internal/type/converter.rbi +204 -0
  69. data/rbi/revox/internal/type/enum.rbi +82 -0
  70. data/rbi/revox/internal/type/file_input.rbi +58 -0
  71. data/rbi/revox/internal/type/hash_of.rbi +104 -0
  72. data/rbi/revox/internal/type/request_parameters.rbi +29 -0
  73. data/rbi/revox/internal/type/union.rbi +126 -0
  74. data/rbi/revox/internal/type/unknown.rbi +58 -0
  75. data/rbi/revox/internal/util.rbi +478 -0
  76. data/rbi/revox/internal.rbi +16 -0
  77. data/rbi/revox/models/assistant_create_params.rbi +929 -0
  78. data/rbi/revox/models/assistant_create_response.rbi +1089 -0
  79. data/rbi/revox/models/assistant_delete_params.rbi +27 -0
  80. data/rbi/revox/models/assistant_delete_response.rbi +26 -0
  81. data/rbi/revox/models/assistant_list_params.rbi +27 -0
  82. data/rbi/revox/models/assistant_list_response.rbi +1079 -0
  83. data/rbi/revox/models/assistant_retrieve_params.rbi +27 -0
  84. data/rbi/revox/models/assistant_retrieve_response.rbi +1024 -0
  85. data/rbi/revox/models/assistant_update_params.rbi +935 -0
  86. data/rbi/revox/models/assistant_update_response.rbi +1089 -0
  87. data/rbi/revox/models/call_create_params.rbi +1147 -0
  88. data/rbi/revox/models/call_create_response.rbi +1335 -0
  89. data/rbi/revox/models/call_list_params.rbi +47 -0
  90. data/rbi/revox/models/call_list_response.rbi +401 -0
  91. data/rbi/revox/models/call_retrieve_params.rbi +27 -0
  92. data/rbi/revox/models/call_retrieve_response.rbi +1346 -0
  93. data/rbi/revox/models/users/me_retrieve_params.rbi +29 -0
  94. data/rbi/revox/models/users/me_retrieve_response.rbi +139 -0
  95. data/rbi/revox/models/users/me_update_params.rbi +43 -0
  96. data/rbi/revox/models/users/me_update_response.rbi +139 -0
  97. data/rbi/revox/models/voice_list_params.rbi +25 -0
  98. data/rbi/revox/models/voice_list_response.rbi +204 -0
  99. data/rbi/revox/models/voice_preview_params.rbi +84 -0
  100. data/rbi/revox/models/voice_retrieve_params.rbi +59 -0
  101. data/rbi/revox/models/voice_retrieve_response.rbi +70 -0
  102. data/rbi/revox/models.rbi +27 -0
  103. data/rbi/revox/request_options.rbi +55 -0
  104. data/rbi/revox/resources/assistants.rbi +206 -0
  105. data/rbi/revox/resources/call.rbi +86 -0
  106. data/rbi/revox/resources/users/me.rbi +33 -0
  107. data/rbi/revox/resources/users.rbi +15 -0
  108. data/rbi/revox/resources/voices.rbi +58 -0
  109. data/rbi/revox/version.rbi +5 -0
  110. data/sig/revox/client.rbs +32 -0
  111. data/sig/revox/errors.rbs +117 -0
  112. data/sig/revox/file_part.rbs +21 -0
  113. data/sig/revox/internal/transport/base_client.rbs +133 -0
  114. data/sig/revox/internal/transport/pooled_net_requester.rbs +48 -0
  115. data/sig/revox/internal/type/array_of.rbs +48 -0
  116. data/sig/revox/internal/type/base_model.rbs +102 -0
  117. data/sig/revox/internal/type/base_page.rbs +24 -0
  118. data/sig/revox/internal/type/boolean.rbs +26 -0
  119. data/sig/revox/internal/type/converter.rbs +79 -0
  120. data/sig/revox/internal/type/enum.rbs +32 -0
  121. data/sig/revox/internal/type/file_input.rbs +25 -0
  122. data/sig/revox/internal/type/hash_of.rbs +48 -0
  123. data/sig/revox/internal/type/request_parameters.rbs +17 -0
  124. data/sig/revox/internal/type/union.rbs +52 -0
  125. data/sig/revox/internal/type/unknown.rbs +26 -0
  126. data/sig/revox/internal/util.rbs +185 -0
  127. data/sig/revox/internal.rbs +9 -0
  128. data/sig/revox/models/assistant_create_params.rbs +413 -0
  129. data/sig/revox/models/assistant_create_response.rbs +461 -0
  130. data/sig/revox/models/assistant_delete_params.rbs +15 -0
  131. data/sig/revox/models/assistant_delete_response.rbs +13 -0
  132. data/sig/revox/models/assistant_list_params.rbs +15 -0
  133. data/sig/revox/models/assistant_list_response.rbs +461 -0
  134. data/sig/revox/models/assistant_retrieve_params.rbs +15 -0
  135. data/sig/revox/models/assistant_retrieve_response.rbs +446 -0
  136. data/sig/revox/models/assistant_update_params.rbs +417 -0
  137. data/sig/revox/models/assistant_update_response.rbs +461 -0
  138. data/sig/revox/models/call_create_params.rbs +507 -0
  139. data/sig/revox/models/call_create_response.rbs +551 -0
  140. data/sig/revox/models/call_list_params.rbs +28 -0
  141. data/sig/revox/models/call_list_response.rbs +171 -0
  142. data/sig/revox/models/call_retrieve_params.rbs +14 -0
  143. data/sig/revox/models/call_retrieve_response.rbs +551 -0
  144. data/sig/revox/models/users/me_retrieve_params.rbs +16 -0
  145. data/sig/revox/models/users/me_retrieve_response.rbs +70 -0
  146. data/sig/revox/models/users/me_update_params.rbs +28 -0
  147. data/sig/revox/models/users/me_update_response.rbs +70 -0
  148. data/sig/revox/models/voice_list_params.rbs +14 -0
  149. data/sig/revox/models/voice_list_response.rbs +83 -0
  150. data/sig/revox/models/voice_preview_params.rbs +49 -0
  151. data/sig/revox/models/voice_retrieve_params.rbs +35 -0
  152. data/sig/revox/models/voice_retrieve_response.rbs +32 -0
  153. data/sig/revox/models.rbs +25 -0
  154. data/sig/revox/request_options.rbs +34 -0
  155. data/sig/revox/resources/assistants.rbs +66 -0
  156. data/sig/revox/resources/call.rbs +31 -0
  157. data/sig/revox/resources/users/me.rbs +18 -0
  158. data/sig/revox/resources/users.rbs +9 -0
  159. data/sig/revox/resources/voices.rbs +24 -0
  160. data/sig/revox/version.rbs +3 -0
  161. metadata +232 -0
@@ -0,0 +1,461 @@
1
+ module Revox
2
+ module Models
3
+ type assistant_create_response =
4
+ { assistant: Revox::Models::AssistantCreateResponse::Assistant }
5
+
6
+ class AssistantCreateResponse < Revox::Internal::Type::BaseModel
7
+ attr_accessor assistant: Revox::Models::AssistantCreateResponse::Assistant
8
+
9
+ def initialize: (
10
+ assistant: Revox::Models::AssistantCreateResponse::Assistant
11
+ ) -> void
12
+
13
+ def to_hash: -> {
14
+ assistant: Revox::Models::AssistantCreateResponse::Assistant
15
+ }
16
+
17
+ type assistant =
18
+ {
19
+ id: String,
20
+ background_sound: Revox::Models::AssistantCreateResponse::Assistant::background_sound?,
21
+ calendly: Revox::Models::AssistantCreateResponse::Assistant::Calendly?,
22
+ call_retry_config: Revox::Models::AssistantCreateResponse::Assistant::CallRetryConfig?,
23
+ created_at: top,
24
+ end_of_call_sentence: String?,
25
+ first_sentence: String?,
26
+ first_sentence_delay_ms: Integer,
27
+ first_sentence_mode: Revox::Models::AssistantCreateResponse::Assistant::first_sentence_mode,
28
+ ivr_navigation_enabled: bool,
29
+ llm_model: Revox::Models::AssistantCreateResponse::Assistant::llm_model,
30
+ max_call_duration_secs: Float,
31
+ name: String,
32
+ organization_id: String,
33
+ prompt: String,
34
+ structured_output_config: ::Array[Revox::Models::AssistantCreateResponse::Assistant::StructuredOutputConfig]?,
35
+ transfer_phone_number: String?,
36
+ updated_at: top,
37
+ voice: Revox::Models::AssistantCreateResponse::Assistant::Voice?,
38
+ voicemail_message: String?,
39
+ webhook_url: String?,
40
+ faq_items: ::Array[Revox::Models::AssistantCreateResponse::Assistant::FaqItem],
41
+ pending_faq_count: Float
42
+ }
43
+
44
+ class Assistant < Revox::Internal::Type::BaseModel
45
+ attr_accessor id: String
46
+
47
+ attr_accessor background_sound: Revox::Models::AssistantCreateResponse::Assistant::background_sound?
48
+
49
+ attr_accessor calendly: Revox::Models::AssistantCreateResponse::Assistant::Calendly?
50
+
51
+ attr_accessor call_retry_config: Revox::Models::AssistantCreateResponse::Assistant::CallRetryConfig?
52
+
53
+ attr_accessor created_at: top
54
+
55
+ attr_accessor end_of_call_sentence: String?
56
+
57
+ attr_accessor first_sentence: String?
58
+
59
+ attr_accessor first_sentence_delay_ms: Integer
60
+
61
+ attr_accessor first_sentence_mode: Revox::Models::AssistantCreateResponse::Assistant::first_sentence_mode
62
+
63
+ attr_accessor ivr_navigation_enabled: bool
64
+
65
+ attr_accessor llm_model: Revox::Models::AssistantCreateResponse::Assistant::llm_model
66
+
67
+ attr_accessor max_call_duration_secs: Float
68
+
69
+ attr_accessor name: String
70
+
71
+ attr_accessor organization_id: String
72
+
73
+ attr_accessor prompt: String
74
+
75
+ attr_accessor structured_output_config: ::Array[Revox::Models::AssistantCreateResponse::Assistant::StructuredOutputConfig]?
76
+
77
+ attr_accessor transfer_phone_number: String?
78
+
79
+ attr_accessor updated_at: top
80
+
81
+ attr_accessor voice: Revox::Models::AssistantCreateResponse::Assistant::Voice?
82
+
83
+ attr_accessor voicemail_message: String?
84
+
85
+ attr_accessor webhook_url: String?
86
+
87
+ attr_reader faq_items: ::Array[Revox::Models::AssistantCreateResponse::Assistant::FaqItem]?
88
+
89
+ def faq_items=: (
90
+ ::Array[Revox::Models::AssistantCreateResponse::Assistant::FaqItem]
91
+ ) -> ::Array[Revox::Models::AssistantCreateResponse::Assistant::FaqItem]
92
+
93
+ attr_reader pending_faq_count: Float?
94
+
95
+ def pending_faq_count=: (Float) -> Float
96
+
97
+ def initialize: (
98
+ id: String,
99
+ background_sound: Revox::Models::AssistantCreateResponse::Assistant::background_sound?,
100
+ calendly: Revox::Models::AssistantCreateResponse::Assistant::Calendly?,
101
+ call_retry_config: Revox::Models::AssistantCreateResponse::Assistant::CallRetryConfig?,
102
+ created_at: top,
103
+ end_of_call_sentence: String?,
104
+ first_sentence: String?,
105
+ first_sentence_delay_ms: Integer,
106
+ first_sentence_mode: Revox::Models::AssistantCreateResponse::Assistant::first_sentence_mode,
107
+ ivr_navigation_enabled: bool,
108
+ llm_model: Revox::Models::AssistantCreateResponse::Assistant::llm_model,
109
+ max_call_duration_secs: Float,
110
+ name: String,
111
+ organization_id: String,
112
+ prompt: String,
113
+ structured_output_config: ::Array[Revox::Models::AssistantCreateResponse::Assistant::StructuredOutputConfig]?,
114
+ transfer_phone_number: String?,
115
+ updated_at: top,
116
+ voice: Revox::Models::AssistantCreateResponse::Assistant::Voice?,
117
+ voicemail_message: String?,
118
+ webhook_url: String?,
119
+ ?faq_items: ::Array[Revox::Models::AssistantCreateResponse::Assistant::FaqItem],
120
+ ?pending_faq_count: Float
121
+ ) -> void
122
+
123
+ def to_hash: -> {
124
+ id: String,
125
+ background_sound: Revox::Models::AssistantCreateResponse::Assistant::background_sound?,
126
+ calendly: Revox::Models::AssistantCreateResponse::Assistant::Calendly?,
127
+ call_retry_config: Revox::Models::AssistantCreateResponse::Assistant::CallRetryConfig?,
128
+ created_at: top,
129
+ end_of_call_sentence: String?,
130
+ first_sentence: String?,
131
+ first_sentence_delay_ms: Integer,
132
+ first_sentence_mode: Revox::Models::AssistantCreateResponse::Assistant::first_sentence_mode,
133
+ ivr_navigation_enabled: bool,
134
+ llm_model: Revox::Models::AssistantCreateResponse::Assistant::llm_model,
135
+ max_call_duration_secs: Float,
136
+ name: String,
137
+ organization_id: String,
138
+ prompt: String,
139
+ structured_output_config: ::Array[Revox::Models::AssistantCreateResponse::Assistant::StructuredOutputConfig]?,
140
+ transfer_phone_number: String?,
141
+ updated_at: top,
142
+ voice: Revox::Models::AssistantCreateResponse::Assistant::Voice?,
143
+ voicemail_message: String?,
144
+ webhook_url: String?,
145
+ faq_items: ::Array[Revox::Models::AssistantCreateResponse::Assistant::FaqItem],
146
+ pending_faq_count: Float
147
+ }
148
+
149
+ type background_sound = :"audio/office.ogg"
150
+
151
+ module BackgroundSound
152
+ extend Revox::Internal::Type::Enum
153
+
154
+ AUDIO_OFFICE_OGG: :"audio/office.ogg"
155
+
156
+ def self?.values: -> ::Array[Revox::Models::AssistantCreateResponse::Assistant::background_sound]
157
+ end
158
+
159
+ type calendly = { connection_id: String, event_type_id: String }
160
+
161
+ class Calendly < Revox::Internal::Type::BaseModel
162
+ attr_accessor connection_id: String
163
+
164
+ attr_accessor event_type_id: String
165
+
166
+ def initialize: (connection_id: String, event_type_id: String) -> void
167
+
168
+ def to_hash: -> { connection_id: String, event_type_id: String }
169
+ end
170
+
171
+ type call_retry_config =
172
+ {
173
+ calling_windows: ::Array[Revox::Models::AssistantCreateResponse::Assistant::CallRetryConfig::CallingWindow],
174
+ max_retry_attempts: Integer,
175
+ timezone: String?
176
+ }
177
+
178
+ class CallRetryConfig < Revox::Internal::Type::BaseModel
179
+ attr_accessor calling_windows: ::Array[Revox::Models::AssistantCreateResponse::Assistant::CallRetryConfig::CallingWindow]
180
+
181
+ attr_accessor max_retry_attempts: Integer
182
+
183
+ attr_accessor timezone: String?
184
+
185
+ def initialize: (
186
+ calling_windows: ::Array[Revox::Models::AssistantCreateResponse::Assistant::CallRetryConfig::CallingWindow],
187
+ max_retry_attempts: Integer,
188
+ ?timezone: String?
189
+ ) -> void
190
+
191
+ def to_hash: -> {
192
+ calling_windows: ::Array[Revox::Models::AssistantCreateResponse::Assistant::CallRetryConfig::CallingWindow],
193
+ max_retry_attempts: Integer,
194
+ timezone: String?
195
+ }
196
+
197
+ type calling_window =
198
+ {
199
+ calling_window_end_time: String,
200
+ calling_window_start_time: String,
201
+ retry_delay_seconds: Integer
202
+ }
203
+
204
+ class CallingWindow < Revox::Internal::Type::BaseModel
205
+ attr_accessor calling_window_end_time: String
206
+
207
+ attr_accessor calling_window_start_time: String
208
+
209
+ attr_accessor retry_delay_seconds: Integer
210
+
211
+ def initialize: (
212
+ calling_window_end_time: String,
213
+ calling_window_start_time: String,
214
+ retry_delay_seconds: Integer
215
+ ) -> void
216
+
217
+ def to_hash: -> {
218
+ calling_window_end_time: String,
219
+ calling_window_start_time: String,
220
+ retry_delay_seconds: Integer
221
+ }
222
+ end
223
+ end
224
+
225
+ type first_sentence_mode = :generated | :static | :none
226
+
227
+ module FirstSentenceMode
228
+ extend Revox::Internal::Type::Enum
229
+
230
+ GENERATED: :generated
231
+ STATIC: :static
232
+ NONE: :none
233
+
234
+ def self?.values: -> ::Array[Revox::Models::AssistantCreateResponse::Assistant::first_sentence_mode]
235
+ end
236
+
237
+ type llm_model =
238
+ Revox::Models::AssistantCreateResponse::Assistant::LlmModel::UnionMember0
239
+ | Revox::Models::AssistantCreateResponse::Assistant::LlmModel::UnionMember1
240
+
241
+ module LlmModel
242
+ extend Revox::Internal::Type::Union
243
+
244
+ type union_member0 =
245
+ {
246
+ name: Revox::Models::AssistantCreateResponse::Assistant::LlmModel::UnionMember0::name_,
247
+ type: :"dedicated-instance"
248
+ }
249
+
250
+ class UnionMember0 < Revox::Internal::Type::BaseModel
251
+ attr_accessor name: Revox::Models::AssistantCreateResponse::Assistant::LlmModel::UnionMember0::name_
252
+
253
+ attr_accessor type: :"dedicated-instance"
254
+
255
+ def initialize: (
256
+ name: Revox::Models::AssistantCreateResponse::Assistant::LlmModel::UnionMember0::name_,
257
+ ?type: :"dedicated-instance"
258
+ ) -> void
259
+
260
+ def to_hash: -> {
261
+ name: Revox::Models::AssistantCreateResponse::Assistant::LlmModel::UnionMember0::name_,
262
+ type: :"dedicated-instance"
263
+ }
264
+
265
+ type name_ = :"gpt-4.1" | :"ministral-3-8b-instruct"
266
+
267
+ module Name
268
+ extend Revox::Internal::Type::Enum
269
+
270
+ GPT_4_1: :"gpt-4.1"
271
+ MINISTRAL_3_8B_INSTRUCT: :"ministral-3-8b-instruct"
272
+
273
+ def self?.values: -> ::Array[Revox::Models::AssistantCreateResponse::Assistant::LlmModel::UnionMember0::name_]
274
+ end
275
+ end
276
+
277
+ type union_member1 =
278
+ {
279
+ openrouter_model_id: String,
280
+ openrouter_provider: String,
281
+ type: :openrouter
282
+ }
283
+
284
+ class UnionMember1 < Revox::Internal::Type::BaseModel
285
+ attr_accessor openrouter_model_id: String
286
+
287
+ attr_accessor openrouter_provider: String
288
+
289
+ attr_accessor type: :openrouter
290
+
291
+ def initialize: (
292
+ openrouter_model_id: String,
293
+ openrouter_provider: String,
294
+ ?type: :openrouter
295
+ ) -> void
296
+
297
+ def to_hash: -> {
298
+ openrouter_model_id: String,
299
+ openrouter_provider: String,
300
+ type: :openrouter
301
+ }
302
+ end
303
+
304
+ def self?.variants: -> ::Array[Revox::Models::AssistantCreateResponse::Assistant::llm_model]
305
+ end
306
+
307
+ type structured_output_config =
308
+ {
309
+ name: String,
310
+ required: bool,
311
+ type: Revox::Models::AssistantCreateResponse::Assistant::StructuredOutputConfig::type_,
312
+ description: String,
313
+ enum_options: ::Array[String]
314
+ }
315
+
316
+ class StructuredOutputConfig < Revox::Internal::Type::BaseModel
317
+ attr_accessor name: String
318
+
319
+ attr_accessor required: bool
320
+
321
+ attr_accessor type: Revox::Models::AssistantCreateResponse::Assistant::StructuredOutputConfig::type_
322
+
323
+ attr_reader description: String?
324
+
325
+ def description=: (String) -> String
326
+
327
+ attr_reader enum_options: ::Array[String]?
328
+
329
+ def enum_options=: (::Array[String]) -> ::Array[String]
330
+
331
+ def initialize: (
332
+ name: String,
333
+ required: bool,
334
+ type: Revox::Models::AssistantCreateResponse::Assistant::StructuredOutputConfig::type_,
335
+ ?description: String,
336
+ ?enum_options: ::Array[String]
337
+ ) -> void
338
+
339
+ def to_hash: -> {
340
+ name: String,
341
+ required: bool,
342
+ type: Revox::Models::AssistantCreateResponse::Assistant::StructuredOutputConfig::type_,
343
+ description: String,
344
+ enum_options: ::Array[String]
345
+ }
346
+
347
+ type type_ = :string | :number | :boolean | :enum | :date | :datetime
348
+
349
+ module Type
350
+ extend Revox::Internal::Type::Enum
351
+
352
+ STRING: :string
353
+ NUMBER: :number
354
+ BOOLEAN: :boolean
355
+ ENUM: :enum
356
+ DATE: :date
357
+ DATETIME: :datetime
358
+
359
+ def self?.values: -> ::Array[Revox::Models::AssistantCreateResponse::Assistant::StructuredOutputConfig::type_]
360
+ end
361
+ end
362
+
363
+ type voice =
364
+ {
365
+ id: String,
366
+ provider: Revox::Models::AssistantCreateResponse::Assistant::Voice::provider,
367
+ speed: Float
368
+ }
369
+
370
+ class Voice < Revox::Internal::Type::BaseModel
371
+ attr_accessor id: String
372
+
373
+ attr_accessor provider: Revox::Models::AssistantCreateResponse::Assistant::Voice::provider
374
+
375
+ attr_reader speed: Float?
376
+
377
+ def speed=: (Float) -> Float
378
+
379
+ def initialize: (
380
+ id: String,
381
+ provider: Revox::Models::AssistantCreateResponse::Assistant::Voice::provider,
382
+ ?speed: Float
383
+ ) -> void
384
+
385
+ def to_hash: -> {
386
+ id: String,
387
+ provider: Revox::Models::AssistantCreateResponse::Assistant::Voice::provider,
388
+ speed: Float
389
+ }
390
+
391
+ type provider = :cartesia | :elevenlabs
392
+
393
+ module Provider
394
+ extend Revox::Internal::Type::Enum
395
+
396
+ CARTESIA: :cartesia
397
+ ELEVENLABS: :elevenlabs
398
+
399
+ def self?.values: -> ::Array[Revox::Models::AssistantCreateResponse::Assistant::Voice::provider]
400
+ end
401
+ end
402
+
403
+ type faq_item =
404
+ {
405
+ answer: String,
406
+ question: String,
407
+ id: String,
408
+ needs_human_answer: bool,
409
+ source: Revox::Models::AssistantCreateResponse::Assistant::FaqItem::source
410
+ }
411
+
412
+ class FaqItem < Revox::Internal::Type::BaseModel
413
+ attr_accessor answer: String
414
+
415
+ attr_accessor question: String
416
+
417
+ attr_reader id: String?
418
+
419
+ def id=: (String) -> String
420
+
421
+ attr_reader needs_human_answer: bool?
422
+
423
+ def needs_human_answer=: (bool) -> bool
424
+
425
+ attr_reader source: Revox::Models::AssistantCreateResponse::Assistant::FaqItem::source?
426
+
427
+ def source=: (
428
+ Revox::Models::AssistantCreateResponse::Assistant::FaqItem::source
429
+ ) -> Revox::Models::AssistantCreateResponse::Assistant::FaqItem::source
430
+
431
+ def initialize: (
432
+ answer: String,
433
+ question: String,
434
+ ?id: String,
435
+ ?needs_human_answer: bool,
436
+ ?source: Revox::Models::AssistantCreateResponse::Assistant::FaqItem::source
437
+ ) -> void
438
+
439
+ def to_hash: -> {
440
+ answer: String,
441
+ question: String,
442
+ id: String,
443
+ needs_human_answer: bool,
444
+ source: Revox::Models::AssistantCreateResponse::Assistant::FaqItem::source
445
+ }
446
+
447
+ type source = :human | :ai
448
+
449
+ module Source
450
+ extend Revox::Internal::Type::Enum
451
+
452
+ HUMAN: :human
453
+ AI: :ai
454
+
455
+ def self?.values: -> ::Array[Revox::Models::AssistantCreateResponse::Assistant::FaqItem::source]
456
+ end
457
+ end
458
+ end
459
+ end
460
+ end
461
+ end
@@ -0,0 +1,15 @@
1
+ module Revox
2
+ module Models
3
+ type assistant_delete_params =
4
+ { } & Revox::Internal::Type::request_parameters
5
+
6
+ class AssistantDeleteParams < Revox::Internal::Type::BaseModel
7
+ extend Revox::Internal::Type::RequestParameters::Converter
8
+ include Revox::Internal::Type::RequestParameters
9
+
10
+ def initialize: (?request_options: Revox::request_opts) -> void
11
+
12
+ def to_hash: -> { request_options: Revox::RequestOptions }
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,13 @@
1
+ module Revox
2
+ module Models
3
+ type assistant_delete_response = { success: bool }
4
+
5
+ class AssistantDeleteResponse < Revox::Internal::Type::BaseModel
6
+ attr_accessor success: bool
7
+
8
+ def initialize: (success: bool) -> void
9
+
10
+ def to_hash: -> { success: bool }
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,15 @@
1
+ module Revox
2
+ module Models
3
+ type assistant_list_params =
4
+ { } & Revox::Internal::Type::request_parameters
5
+
6
+ class AssistantListParams < Revox::Internal::Type::BaseModel
7
+ extend Revox::Internal::Type::RequestParameters::Converter
8
+ include Revox::Internal::Type::RequestParameters
9
+
10
+ def initialize: (?request_options: Revox::request_opts) -> void
11
+
12
+ def to_hash: -> { request_options: Revox::RequestOptions }
13
+ end
14
+ end
15
+ end