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,70 @@
1
+ module Revox
2
+ module Models
3
+ module Users
4
+ type me_update_response =
5
+ { user: Revox::Models::Users::MeUpdateResponse::User }
6
+
7
+ class MeUpdateResponse < Revox::Internal::Type::BaseModel
8
+ attr_accessor user: Revox::Models::Users::MeUpdateResponse::User
9
+
10
+ def initialize: (
11
+ user: Revox::Models::Users::MeUpdateResponse::User
12
+ ) -> void
13
+
14
+ def to_hash: -> { user: Revox::Models::Users::MeUpdateResponse::User }
15
+
16
+ type user =
17
+ {
18
+ id: String,
19
+ created_at: top,
20
+ email: String,
21
+ first_name: String?,
22
+ has_completed_onboarding: bool,
23
+ last_name: String?,
24
+ organization_id: String,
25
+ updated_at: top
26
+ }
27
+
28
+ class User < Revox::Internal::Type::BaseModel
29
+ attr_accessor id: String
30
+
31
+ attr_accessor created_at: top
32
+
33
+ attr_accessor email: String
34
+
35
+ attr_accessor first_name: String?
36
+
37
+ attr_accessor has_completed_onboarding: bool
38
+
39
+ attr_accessor last_name: String?
40
+
41
+ attr_accessor organization_id: String
42
+
43
+ attr_accessor updated_at: top
44
+
45
+ def initialize: (
46
+ id: String,
47
+ created_at: top,
48
+ email: String,
49
+ first_name: String?,
50
+ has_completed_onboarding: bool,
51
+ last_name: String?,
52
+ organization_id: String,
53
+ updated_at: top
54
+ ) -> void
55
+
56
+ def to_hash: -> {
57
+ id: String,
58
+ created_at: top,
59
+ email: String,
60
+ first_name: String?,
61
+ has_completed_onboarding: bool,
62
+ last_name: String?,
63
+ organization_id: String,
64
+ updated_at: top
65
+ }
66
+ end
67
+ end
68
+ end
69
+ end
70
+ end
@@ -0,0 +1,14 @@
1
+ module Revox
2
+ module Models
3
+ type voice_list_params = { } & Revox::Internal::Type::request_parameters
4
+
5
+ class VoiceListParams < Revox::Internal::Type::BaseModel
6
+ extend Revox::Internal::Type::RequestParameters::Converter
7
+ include Revox::Internal::Type::RequestParameters
8
+
9
+ def initialize: (?request_options: Revox::request_opts) -> void
10
+
11
+ def to_hash: -> { request_options: Revox::RequestOptions }
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,83 @@
1
+ module Revox
2
+ module Models
3
+ type voice_list_response =
4
+ { voices: ::Array[Revox::Models::VoiceListResponse::Voice] }
5
+
6
+ class VoiceListResponse < Revox::Internal::Type::BaseModel
7
+ attr_accessor voices: ::Array[Revox::Models::VoiceListResponse::Voice]
8
+
9
+ def initialize: (
10
+ voices: ::Array[Revox::Models::VoiceListResponse::Voice]
11
+ ) -> void
12
+
13
+ def to_hash: -> {
14
+ voices: ::Array[Revox::Models::VoiceListResponse::Voice]
15
+ }
16
+
17
+ type voice =
18
+ {
19
+ id: String,
20
+ description: String,
21
+ language: Revox::Models::VoiceListResponse::Voice::language,
22
+ name: String,
23
+ provider: Revox::Models::VoiceListResponse::Voice::provider
24
+ }
25
+
26
+ class Voice < Revox::Internal::Type::BaseModel
27
+ attr_accessor id: String
28
+
29
+ attr_accessor description: String
30
+
31
+ attr_accessor language: Revox::Models::VoiceListResponse::Voice::language
32
+
33
+ attr_accessor name: String
34
+
35
+ attr_accessor provider: Revox::Models::VoiceListResponse::Voice::provider
36
+
37
+ def initialize: (
38
+ id: String,
39
+ description: String,
40
+ language: Revox::Models::VoiceListResponse::Voice::language,
41
+ name: String,
42
+ provider: Revox::Models::VoiceListResponse::Voice::provider
43
+ ) -> void
44
+
45
+ def to_hash: -> {
46
+ id: String,
47
+ description: String,
48
+ language: Revox::Models::VoiceListResponse::Voice::language,
49
+ name: String,
50
+ provider: Revox::Models::VoiceListResponse::Voice::provider
51
+ }
52
+
53
+ type language = :en | :fr | :es | :de | :it | :pt | :ru | :zh
54
+
55
+ module Language
56
+ extend Revox::Internal::Type::Enum
57
+
58
+ EN: :en
59
+ FR: :fr
60
+ ES: :es
61
+ DE: :de
62
+ IT: :it
63
+ PT: :pt
64
+ RU: :ru
65
+ ZH: :zh
66
+
67
+ def self?.values: -> ::Array[Revox::Models::VoiceListResponse::Voice::language]
68
+ end
69
+
70
+ type provider = :cartesia | :elevenlabs
71
+
72
+ module Provider
73
+ extend Revox::Internal::Type::Enum
74
+
75
+ CARTESIA: :cartesia
76
+ ELEVENLABS: :elevenlabs
77
+
78
+ def self?.values: -> ::Array[Revox::Models::VoiceListResponse::Voice::provider]
79
+ end
80
+ end
81
+ end
82
+ end
83
+ end
@@ -0,0 +1,49 @@
1
+ module Revox
2
+ module Models
3
+ type voice_preview_params =
4
+ {
5
+ provider: Revox::Models::VoicePreviewParams::provider,
6
+ voice_id: String,
7
+ text: String
8
+ }
9
+ & Revox::Internal::Type::request_parameters
10
+
11
+ class VoicePreviewParams < Revox::Internal::Type::BaseModel
12
+ extend Revox::Internal::Type::RequestParameters::Converter
13
+ include Revox::Internal::Type::RequestParameters
14
+
15
+ attr_accessor provider: Revox::Models::VoicePreviewParams::provider
16
+
17
+ attr_accessor voice_id: String
18
+
19
+ attr_reader text: String?
20
+
21
+ def text=: (String) -> String
22
+
23
+ def initialize: (
24
+ provider: Revox::Models::VoicePreviewParams::provider,
25
+ voice_id: String,
26
+ ?text: String,
27
+ ?request_options: Revox::request_opts
28
+ ) -> void
29
+
30
+ def to_hash: -> {
31
+ provider: Revox::Models::VoicePreviewParams::provider,
32
+ voice_id: String,
33
+ text: String,
34
+ request_options: Revox::RequestOptions
35
+ }
36
+
37
+ type provider = :cartesia | :elevenlabs
38
+
39
+ module Provider
40
+ extend Revox::Internal::Type::Enum
41
+
42
+ CARTESIA: :cartesia
43
+ ELEVENLABS: :elevenlabs
44
+
45
+ def self?.values: -> ::Array[Revox::Models::VoicePreviewParams::provider]
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,35 @@
1
+ module Revox
2
+ module Models
3
+ type voice_retrieve_params =
4
+ { provider: Revox::Models::VoiceRetrieveParams::provider }
5
+ & Revox::Internal::Type::request_parameters
6
+
7
+ class VoiceRetrieveParams < Revox::Internal::Type::BaseModel
8
+ extend Revox::Internal::Type::RequestParameters::Converter
9
+ include Revox::Internal::Type::RequestParameters
10
+
11
+ attr_accessor provider: Revox::Models::VoiceRetrieveParams::provider
12
+
13
+ def initialize: (
14
+ provider: Revox::Models::VoiceRetrieveParams::provider,
15
+ ?request_options: Revox::request_opts
16
+ ) -> void
17
+
18
+ def to_hash: -> {
19
+ provider: Revox::Models::VoiceRetrieveParams::provider,
20
+ request_options: Revox::RequestOptions
21
+ }
22
+
23
+ type provider = :cartesia | :elevenlabs
24
+
25
+ module Provider
26
+ extend Revox::Internal::Type::Enum
27
+
28
+ CARTESIA: :cartesia
29
+ ELEVENLABS: :elevenlabs
30
+
31
+ def self?.values: -> ::Array[Revox::Models::VoiceRetrieveParams::provider]
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,32 @@
1
+ module Revox
2
+ module Models
3
+ type voice_retrieve_response =
4
+ { voice: Revox::Models::VoiceRetrieveResponse::Voice }
5
+
6
+ class VoiceRetrieveResponse < Revox::Internal::Type::BaseModel
7
+ attr_accessor voice: Revox::Models::VoiceRetrieveResponse::Voice
8
+
9
+ def initialize: (
10
+ voice: Revox::Models::VoiceRetrieveResponse::Voice
11
+ ) -> void
12
+
13
+ def to_hash: -> { voice: Revox::Models::VoiceRetrieveResponse::Voice }
14
+
15
+ type voice = { id: String, name: String, description: String }
16
+
17
+ class Voice < Revox::Internal::Type::BaseModel
18
+ attr_accessor id: String
19
+
20
+ attr_accessor name: String
21
+
22
+ attr_reader description: String?
23
+
24
+ def description=: (String) -> String
25
+
26
+ def initialize: (id: String, name: String, ?description: String) -> void
27
+
28
+ def to_hash: -> { id: String, name: String, description: String }
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,25 @@
1
+ module Revox
2
+ class AssistantCreateParams = Revox::Models::AssistantCreateParams
3
+
4
+ class AssistantDeleteParams = Revox::Models::AssistantDeleteParams
5
+
6
+ class AssistantListParams = Revox::Models::AssistantListParams
7
+
8
+ class AssistantRetrieveParams = Revox::Models::AssistantRetrieveParams
9
+
10
+ class AssistantUpdateParams = Revox::Models::AssistantUpdateParams
11
+
12
+ class CallCreateParams = Revox::Models::CallCreateParams
13
+
14
+ class CallListParams = Revox::Models::CallListParams
15
+
16
+ class CallRetrieveParams = Revox::Models::CallRetrieveParams
17
+
18
+ module Users = Revox::Models::Users
19
+
20
+ class VoiceListParams = Revox::Models::VoiceListParams
21
+
22
+ class VoicePreviewParams = Revox::Models::VoicePreviewParams
23
+
24
+ class VoiceRetrieveParams = Revox::Models::VoiceRetrieveParams
25
+ end
@@ -0,0 +1,34 @@
1
+ module Revox
2
+ type request_opts =
3
+ Revox::RequestOptions | Revox::request_options | ::Hash[Symbol, top]
4
+
5
+ type request_options =
6
+ {
7
+ idempotency_key: String?,
8
+ extra_query: ::Hash[String, (::Array[String] | String)?]?,
9
+ extra_headers: ::Hash[String, String?]?,
10
+ extra_body: top?,
11
+ max_retries: Integer?,
12
+ timeout: Float?
13
+ }
14
+
15
+ class RequestOptions < Revox::Internal::Type::BaseModel
16
+ def self.validate!: (Revox::request_opts opts) -> void
17
+
18
+ attr_accessor idempotency_key: String?
19
+
20
+ attr_accessor extra_query: ::Hash[String, (::Array[String] | String)?]?
21
+
22
+ attr_accessor extra_headers: ::Hash[String, String?]?
23
+
24
+ attr_accessor extra_body: top?
25
+
26
+ attr_accessor max_retries: Integer?
27
+
28
+ attr_accessor timeout: Float?
29
+
30
+ def initialize: (
31
+ ?Revox::request_options | ::Hash[Symbol, top] values
32
+ ) -> void
33
+ end
34
+ end
@@ -0,0 +1,66 @@
1
+ module Revox
2
+ module Resources
3
+ class Assistants
4
+ def create: (
5
+ name: String,
6
+ prompt: String,
7
+ ?background_sound: Revox::Models::AssistantCreateParams::background_sound?,
8
+ ?calendly: Revox::AssistantCreateParams::Calendly?,
9
+ ?call_retry_config: Revox::AssistantCreateParams::CallRetryConfig,
10
+ ?end_of_call_sentence: String,
11
+ ?faq_items: ::Array[Revox::AssistantCreateParams::FaqItem],
12
+ ?first_sentence: String,
13
+ ?first_sentence_delay_ms: Integer,
14
+ ?first_sentence_mode: Revox::Models::AssistantCreateParams::first_sentence_mode,
15
+ ?ivr_navigation_enabled: bool,
16
+ ?llm_model: Revox::Models::AssistantCreateParams::llm_model,
17
+ ?max_call_duration_secs: Float,
18
+ ?structured_output_config: ::Array[Revox::AssistantCreateParams::StructuredOutputConfig],
19
+ ?transfer_phone_number: String?,
20
+ ?voice: Revox::AssistantCreateParams::Voice,
21
+ ?voicemail_message: String?,
22
+ ?webhook_url: String,
23
+ ?request_options: Revox::request_opts
24
+ ) -> Revox::Models::AssistantCreateResponse
25
+
26
+ def retrieve: (
27
+ String id,
28
+ ?request_options: Revox::request_opts
29
+ ) -> Revox::Models::AssistantRetrieveResponse
30
+
31
+ def update: (
32
+ String id,
33
+ ?background_sound: Revox::Models::AssistantUpdateParams::background_sound?,
34
+ ?calendly: Revox::AssistantUpdateParams::Calendly?,
35
+ ?call_retry_config: Revox::AssistantUpdateParams::CallRetryConfig,
36
+ ?end_of_call_sentence: String,
37
+ ?faq_items: ::Array[Revox::AssistantUpdateParams::FaqItem],
38
+ ?first_sentence: String,
39
+ ?first_sentence_delay_ms: Integer,
40
+ ?first_sentence_mode: Revox::Models::AssistantUpdateParams::first_sentence_mode,
41
+ ?ivr_navigation_enabled: bool,
42
+ ?llm_model: Revox::Models::AssistantUpdateParams::llm_model,
43
+ ?max_call_duration_secs: Float,
44
+ ?name: String,
45
+ ?prompt: String,
46
+ ?structured_output_config: ::Array[Revox::AssistantUpdateParams::StructuredOutputConfig],
47
+ ?transfer_phone_number: String?,
48
+ ?voice: Revox::AssistantUpdateParams::Voice,
49
+ ?voicemail_message: String?,
50
+ ?webhook_url: String,
51
+ ?request_options: Revox::request_opts
52
+ ) -> Revox::Models::AssistantUpdateResponse
53
+
54
+ def list: (
55
+ ?request_options: Revox::request_opts
56
+ ) -> Revox::Models::AssistantListResponse
57
+
58
+ def delete: (
59
+ String id,
60
+ ?request_options: Revox::request_opts
61
+ ) -> Revox::Models::AssistantDeleteResponse
62
+
63
+ def initialize: (client: Revox::Client) -> void
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,31 @@
1
+ module Revox
2
+ module Resources
3
+ class Call
4
+ def create: (
5
+ phone_number: String,
6
+ ?assistant: Revox::CallCreateParams::Assistant,
7
+ ?assistant_id: String,
8
+ ?concurrency: Revox::CallCreateParams::Concurrency,
9
+ ?force_now: bool,
10
+ ?from_phone_number: String,
11
+ ?metadata: ::Hash[Symbol, String],
12
+ ?prompt_variables: ::Hash[Symbol, String],
13
+ ?scheduled_at: Revox::Models::CallCreateParams::scheduled_at,
14
+ ?request_options: Revox::request_opts
15
+ ) -> Revox::Models::CallCreateResponse
16
+
17
+ def retrieve: (
18
+ String id,
19
+ ?request_options: Revox::request_opts
20
+ ) -> Revox::Models::CallRetrieveResponse
21
+
22
+ def list: (
23
+ page: Float,
24
+ page_size: Float,
25
+ ?request_options: Revox::request_opts
26
+ ) -> Revox::Models::CallListResponse
27
+
28
+ def initialize: (client: Revox::Client) -> void
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,18 @@
1
+ module Revox
2
+ module Resources
3
+ class Users
4
+ class Me
5
+ def retrieve: (
6
+ ?request_options: Revox::request_opts
7
+ ) -> Revox::Models::Users::MeRetrieveResponse
8
+
9
+ def update: (
10
+ ?has_completed_onboarding: bool,
11
+ ?request_options: Revox::request_opts
12
+ ) -> Revox::Models::Users::MeUpdateResponse
13
+
14
+ def initialize: (client: Revox::Client) -> void
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,9 @@
1
+ module Revox
2
+ module Resources
3
+ class Users
4
+ attr_reader me: Revox::Resources::Users::Me
5
+
6
+ def initialize: (client: Revox::Client) -> void
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,24 @@
1
+ module Revox
2
+ module Resources
3
+ class Voices
4
+ def retrieve: (
5
+ String id,
6
+ provider: Revox::Models::VoiceRetrieveParams::provider,
7
+ ?request_options: Revox::request_opts
8
+ ) -> Revox::Models::VoiceRetrieveResponse
9
+
10
+ def list: (
11
+ ?request_options: Revox::request_opts
12
+ ) -> Revox::Models::VoiceListResponse
13
+
14
+ def preview: (
15
+ provider: Revox::Models::VoicePreviewParams::provider,
16
+ voice_id: String,
17
+ ?text: String,
18
+ ?request_options: Revox::request_opts
19
+ ) -> nil
20
+
21
+ def initialize: (client: Revox::Client) -> void
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,3 @@
1
+ module Revox
2
+ VERSION: String
3
+ end