revox 0.1.0 → 0.3.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 (224) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +81 -0
  3. data/README.md +39 -14
  4. data/lib/revox/client.rb +23 -1
  5. data/lib/revox/internal/transport/base_client.rb +5 -0
  6. data/lib/revox/internal/type/base_model.rb +3 -3
  7. data/lib/revox/internal/util.rb +22 -7
  8. data/lib/revox/models/assistant_clone_params.rb +20 -0
  9. data/lib/revox/models/assistant_clone_response.rb +1594 -0
  10. data/lib/revox/models/assistant_create_params.rb +1038 -13
  11. data/lib/revox/models/assistant_create_response.rb +1071 -11
  12. data/lib/revox/models/assistant_list_response.rb +1070 -11
  13. data/lib/revox/models/assistant_retrieve_response.rb +1066 -11
  14. data/lib/revox/models/assistant_update_params.rb +1038 -13
  15. data/lib/revox/models/assistant_update_response.rb +1097 -12
  16. data/lib/revox/models/auth_status_retrieve_params.rb +14 -0
  17. data/lib/revox/models/auth_status_retrieve_response.rb +17 -0
  18. data/lib/revox/models/call_cancel_params.rb +20 -0
  19. data/lib/revox/models/call_cancel_response.rb +16 -0
  20. data/lib/revox/models/call_create_params.rb +1065 -13
  21. data/lib/revox/models/call_create_response.rb +1820 -98
  22. data/lib/revox/models/call_export_params.rb +205 -0
  23. data/lib/revox/models/call_export_response.rb +22 -0
  24. data/lib/revox/models/call_pause_params.rb +20 -0
  25. data/lib/revox/models/call_pause_response.rb +16 -0
  26. data/lib/revox/models/call_phone_history_params.rb +14 -0
  27. data/lib/revox/models/call_phone_history_response.rb +98 -0
  28. data/lib/revox/models/call_resume_params.rb +20 -0
  29. data/lib/revox/models/call_resume_response.rb +16 -0
  30. data/lib/revox/models/call_retrieve_response.rb +1822 -98
  31. data/lib/revox/models/call_search_params.rb +171 -0
  32. data/lib/revox/models/call_search_response.rb +3114 -0
  33. data/lib/revox/models/campaign_create_params.rb +67 -2
  34. data/lib/revox/models/campaign_create_response.rb +1314 -59
  35. data/lib/revox/models/campaign_get_rows_params.rb +1 -46
  36. data/lib/revox/models/campaign_get_rows_response.rb +1833 -115
  37. data/lib/revox/models/campaign_launch_params.rb +20 -0
  38. data/lib/revox/models/campaign_launch_response.rb +2030 -0
  39. data/lib/revox/models/campaign_list_response.rb +1312 -59
  40. data/lib/revox/models/campaign_pause_params.rb +20 -0
  41. data/lib/revox/models/campaign_pause_response.rb +16 -0
  42. data/lib/revox/models/campaign_resume_params.rb +20 -0
  43. data/lib/revox/models/campaign_resume_response.rb +16 -0
  44. data/lib/revox/models/campaign_retrieve_response.rb +1312 -56
  45. data/lib/revox/models/campaign_statistics_params.rb +20 -0
  46. data/lib/revox/models/campaign_statistics_response.rb +486 -0
  47. data/lib/revox/models/campaign_update_params.rb +234 -0
  48. data/lib/revox/models/campaign_update_response.rb +2030 -0
  49. data/lib/revox/models/phone_number_delete_params.rb +20 -0
  50. data/lib/revox/models/phone_number_delete_response.rb +16 -0
  51. data/lib/revox/models/phone_number_list_params.rb +14 -0
  52. data/lib/revox/models/phone_number_list_response.rb +1777 -0
  53. data/lib/revox/models/phone_number_update_params.rb +32 -0
  54. data/lib/revox/models/phone_number_update_response.rb +1777 -0
  55. data/lib/revox/models/user_retrieve_params.rb +14 -0
  56. data/lib/revox/models/user_retrieve_response.rb +99 -0
  57. data/lib/revox/models/voice_clone_params.rb +78 -0
  58. data/lib/revox/models/voice_clone_response.rb +40 -0
  59. data/lib/revox/models/voice_delete_params.rb +20 -0
  60. data/lib/revox/models/voice_delete_response.rb +16 -0
  61. data/lib/revox/models/voice_list_response.rb +55 -1
  62. data/lib/revox/models/voice_preview_params.rb +49 -1
  63. data/lib/revox/models.rb +36 -2
  64. data/lib/revox/resources/assistants.rb +137 -8
  65. data/lib/revox/resources/auth_status.rb +32 -0
  66. data/lib/revox/resources/call.rb +131 -15
  67. data/lib/revox/resources/campaigns.rb +143 -17
  68. data/lib/revox/resources/phone_numbers.rb +74 -0
  69. data/lib/revox/resources/users.rb +17 -3
  70. data/lib/revox/resources/voices.rb +66 -10
  71. data/lib/revox/version.rb +1 -1
  72. data/lib/revox.rb +40 -7
  73. data/rbi/revox/client.rbi +6 -0
  74. data/rbi/revox/internal/util.rbi +8 -0
  75. data/rbi/revox/models/assistant_clone_params.rbi +33 -0
  76. data/rbi/revox/models/assistant_clone_response.rbi +3341 -0
  77. data/rbi/revox/models/assistant_create_params.rbi +2138 -103
  78. data/rbi/revox/models/assistant_create_response.rbi +2454 -199
  79. data/rbi/revox/models/assistant_list_response.rbi +2448 -195
  80. data/rbi/revox/models/assistant_retrieve_response.rbi +2401 -210
  81. data/rbi/revox/models/assistant_update_params.rbi +2138 -103
  82. data/rbi/revox/models/assistant_update_response.rbi +2504 -198
  83. data/rbi/revox/models/auth_status_retrieve_params.rbi +27 -0
  84. data/rbi/revox/models/auth_status_retrieve_response.rbi +30 -0
  85. data/rbi/revox/models/call_cancel_params.rbi +33 -0
  86. data/rbi/revox/models/call_cancel_response.rbi +23 -0
  87. data/rbi/revox/models/call_create_params.rbi +2382 -225
  88. data/rbi/revox/models/call_create_response.rbi +4116 -384
  89. data/rbi/revox/models/call_export_params.rbi +456 -0
  90. data/rbi/revox/models/call_export_response.rbi +26 -0
  91. data/rbi/revox/models/call_pause_params.rbi +31 -0
  92. data/rbi/revox/models/call_pause_response.rbi +23 -0
  93. data/rbi/revox/models/call_phone_history_params.rbi +27 -0
  94. data/rbi/revox/models/call_phone_history_response.rbi +224 -0
  95. data/rbi/revox/models/call_resume_params.rbi +33 -0
  96. data/rbi/revox/models/call_resume_response.rbi +23 -0
  97. data/rbi/revox/models/call_retrieve_response.rbi +4133 -399
  98. data/rbi/revox/models/call_search_params.rbi +288 -0
  99. data/rbi/revox/models/call_search_response.rbi +6593 -0
  100. data/rbi/revox/models/campaign_create_params.rbi +136 -0
  101. data/rbi/revox/models/campaign_create_response.rbi +2911 -231
  102. data/rbi/revox/models/campaign_get_rows_params.rbi +2 -82
  103. data/rbi/revox/models/campaign_get_rows_response.rbi +4146 -409
  104. data/rbi/revox/models/campaign_launch_params.rbi +33 -0
  105. data/rbi/revox/models/campaign_launch_response.rbi +4170 -0
  106. data/rbi/revox/models/campaign_list_response.rbi +2904 -230
  107. data/rbi/revox/models/campaign_pause_params.rbi +33 -0
  108. data/rbi/revox/models/campaign_pause_response.rbi +23 -0
  109. data/rbi/revox/models/campaign_resume_params.rbi +33 -0
  110. data/rbi/revox/models/campaign_resume_response.rbi +23 -0
  111. data/rbi/revox/models/campaign_retrieve_response.rbi +2911 -231
  112. data/rbi/revox/models/campaign_statistics_params.rbi +33 -0
  113. data/rbi/revox/models/campaign_statistics_response.rbi +1011 -0
  114. data/rbi/revox/models/campaign_update_params.rbi +431 -0
  115. data/rbi/revox/models/campaign_update_response.rbi +4170 -0
  116. data/rbi/revox/models/phone_number_delete_params.rbi +33 -0
  117. data/rbi/revox/models/phone_number_delete_response.rbi +26 -0
  118. data/rbi/revox/models/phone_number_list_params.rbi +27 -0
  119. data/rbi/revox/models/phone_number_list_response.rbi +3680 -0
  120. data/rbi/revox/models/phone_number_update_params.rbi +53 -0
  121. data/rbi/revox/models/phone_number_update_response.rbi +3683 -0
  122. data/rbi/revox/models/user_retrieve_params.rbi +27 -0
  123. data/rbi/revox/models/user_retrieve_response.rbi +140 -0
  124. data/rbi/revox/models/voice_clone_params.rbi +141 -0
  125. data/rbi/revox/models/voice_clone_response.rbi +53 -0
  126. data/rbi/revox/models/voice_delete_params.rbi +33 -0
  127. data/rbi/revox/models/voice_delete_response.rbi +23 -0
  128. data/rbi/revox/models/voice_list_response.rbi +105 -3
  129. data/rbi/revox/models/voice_preview_params.rbi +69 -0
  130. data/rbi/revox/models.rbi +36 -2
  131. data/rbi/revox/resources/assistants.rbi +296 -8
  132. data/rbi/revox/resources/auth_status.rbi +21 -0
  133. data/rbi/revox/resources/call.rbi +92 -6
  134. data/rbi/revox/resources/campaigns.rbi +106 -19
  135. data/rbi/revox/resources/phone_numbers.rbi +43 -0
  136. data/rbi/revox/resources/users.rbi +8 -2
  137. data/rbi/revox/resources/voices.rbi +56 -9
  138. data/sig/revox/client.rbs +4 -0
  139. data/sig/revox/internal/util.rbs +4 -0
  140. data/sig/revox/models/assistant_clone_params.rbs +20 -0
  141. data/sig/revox/models/assistant_clone_response.rbs +1318 -0
  142. data/sig/revox/models/assistant_create_params.rbs +844 -11
  143. data/sig/revox/models/assistant_create_response.rbs +860 -3
  144. data/sig/revox/models/assistant_list_response.rbs +860 -3
  145. data/sig/revox/models/assistant_retrieve_response.rbs +859 -3
  146. data/sig/revox/models/assistant_update_params.rbs +844 -11
  147. data/sig/revox/models/assistant_update_response.rbs +886 -6
  148. data/sig/revox/models/auth_status_retrieve_params.rbs +15 -0
  149. data/sig/revox/models/auth_status_retrieve_response.rbs +13 -0
  150. data/sig/revox/models/call_cancel_params.rbs +20 -0
  151. data/sig/revox/models/call_cancel_response.rbs +13 -0
  152. data/sig/revox/models/call_create_params.rbs +847 -13
  153. data/sig/revox/models/call_create_response.rbs +1519 -34
  154. data/sig/revox/models/call_export_params.rbs +234 -0
  155. data/sig/revox/models/call_export_response.rbs +15 -0
  156. data/sig/revox/models/call_pause_params.rbs +20 -0
  157. data/sig/revox/models/call_pause_response.rbs +13 -0
  158. data/sig/revox/models/call_phone_history_params.rbs +15 -0
  159. data/sig/revox/models/call_phone_history_response.rbs +102 -0
  160. data/sig/revox/models/call_resume_params.rbs +20 -0
  161. data/sig/revox/models/call_resume_response.rbs +13 -0
  162. data/sig/revox/models/call_retrieve_response.rbs +1519 -34
  163. data/sig/revox/models/call_search_params.rbs +198 -0
  164. data/sig/revox/models/call_search_response.rbs +2654 -0
  165. data/sig/revox/models/campaign_create_params.rbs +54 -0
  166. data/sig/revox/models/campaign_create_response.rbs +1034 -6
  167. data/sig/revox/models/campaign_get_rows_params.rbs +2 -64
  168. data/sig/revox/models/campaign_get_rows_response.rbs +1527 -54
  169. data/sig/revox/models/campaign_launch_params.rbs +20 -0
  170. data/sig/revox/models/campaign_launch_response.rbs +1694 -0
  171. data/sig/revox/models/campaign_list_response.rbs +1034 -6
  172. data/sig/revox/models/campaign_pause_params.rbs +20 -0
  173. data/sig/revox/models/campaign_pause_response.rbs +13 -0
  174. data/sig/revox/models/campaign_resume_params.rbs +20 -0
  175. data/sig/revox/models/campaign_resume_response.rbs +13 -0
  176. data/sig/revox/models/campaign_retrieve_response.rbs +1034 -6
  177. data/sig/revox/models/campaign_statistics_params.rbs +20 -0
  178. data/sig/revox/models/campaign_statistics_response.rbs +458 -0
  179. data/sig/revox/models/campaign_update_params.rbs +203 -0
  180. data/sig/revox/models/campaign_update_response.rbs +1694 -0
  181. data/sig/revox/models/phone_number_delete_params.rbs +20 -0
  182. data/sig/revox/models/phone_number_delete_response.rbs +13 -0
  183. data/sig/revox/models/phone_number_list_params.rbs +15 -0
  184. data/sig/revox/models/phone_number_list_response.rbs +1462 -0
  185. data/sig/revox/models/phone_number_update_params.rbs +32 -0
  186. data/sig/revox/models/phone_number_update_response.rbs +1460 -0
  187. data/sig/revox/models/user_retrieve_params.rbs +14 -0
  188. data/sig/revox/models/user_retrieve_response.rbs +71 -0
  189. data/sig/revox/models/voice_clone_params.rbs +79 -0
  190. data/sig/revox/models/voice_clone_response.rbs +40 -0
  191. data/sig/revox/models/voice_delete_params.rbs +20 -0
  192. data/sig/revox/models/voice_delete_response.rbs +13 -0
  193. data/sig/revox/models/voice_list_response.rbs +45 -3
  194. data/sig/revox/models/voice_preview_params.rbs +42 -1
  195. data/sig/revox/models.rbs +36 -2
  196. data/sig/revox/resources/assistants.rbs +61 -2
  197. data/sig/revox/resources/auth_status.rbs +11 -0
  198. data/sig/revox/resources/call.rbs +41 -3
  199. data/sig/revox/resources/campaigns.rbs +35 -5
  200. data/sig/revox/resources/phone_numbers.rbs +23 -0
  201. data/sig/revox/resources/users.rbs +3 -1
  202. data/sig/revox/resources/voices.rbs +17 -0
  203. metadata +122 -23
  204. data/lib/revox/models/call_list_params.rb +0 -52
  205. data/lib/revox/models/call_list_response.rb +0 -259
  206. data/lib/revox/models/users/me_retrieve_params.rb +0 -16
  207. data/lib/revox/models/users/me_retrieve_response.rb +0 -89
  208. data/lib/revox/models/users/me_update_params.rb +0 -22
  209. data/lib/revox/models/users/me_update_response.rb +0 -89
  210. data/lib/revox/resources/users/me.rb +0 -55
  211. data/rbi/revox/models/call_list_params.rbi +0 -94
  212. data/rbi/revox/models/call_list_response.rbi +0 -563
  213. data/rbi/revox/models/users/me_retrieve_params.rbi +0 -29
  214. data/rbi/revox/models/users/me_retrieve_response.rbi +0 -139
  215. data/rbi/revox/models/users/me_update_params.rbi +0 -43
  216. data/rbi/revox/models/users/me_update_response.rbi +0 -139
  217. data/rbi/revox/resources/users/me.rbi +0 -33
  218. data/sig/revox/models/call_list_params.rbs +0 -63
  219. data/sig/revox/models/call_list_response.rbs +0 -226
  220. data/sig/revox/models/users/me_retrieve_params.rbs +0 -16
  221. data/sig/revox/models/users/me_retrieve_response.rbs +0 -70
  222. data/sig/revox/models/users/me_update_params.rbs +0 -28
  223. data/sig/revox/models/users/me_update_response.rbs +0 -70
  224. data/sig/revox/resources/users/me.rbs +0 -18
@@ -0,0 +1,74 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Revox
4
+ module Resources
5
+ class PhoneNumbers
6
+ # Update a phone number
7
+ #
8
+ # @overload update(id, inbound_assistant_id: nil, label: nil, request_options: {})
9
+ #
10
+ # @param id [String]
11
+ # @param inbound_assistant_id [String, nil]
12
+ # @param label [String, nil]
13
+ # @param request_options [Revox::RequestOptions, Hash{Symbol=>Object}, nil]
14
+ #
15
+ # @return [Revox::Models::PhoneNumberUpdateResponse]
16
+ #
17
+ # @see Revox::Models::PhoneNumberUpdateParams
18
+ def update(id, params = {})
19
+ parsed, options = Revox::PhoneNumberUpdateParams.dump_request(params)
20
+ @client.request(
21
+ method: :patch,
22
+ path: ["phone-numbers/%1$s", id],
23
+ body: parsed,
24
+ model: Revox::Models::PhoneNumberUpdateResponse,
25
+ options: options
26
+ )
27
+ end
28
+
29
+ # Get phone numbers
30
+ #
31
+ # @overload list(request_options: {})
32
+ #
33
+ # @param request_options [Revox::RequestOptions, Hash{Symbol=>Object}, nil]
34
+ #
35
+ # @return [Revox::Models::PhoneNumberListResponse]
36
+ #
37
+ # @see Revox::Models::PhoneNumberListParams
38
+ def list(params = {})
39
+ @client.request(
40
+ method: :get,
41
+ path: "phone-numbers",
42
+ model: Revox::Models::PhoneNumberListResponse,
43
+ options: params[:request_options]
44
+ )
45
+ end
46
+
47
+ # Delete a phone number
48
+ #
49
+ # @overload delete(id, request_options: {})
50
+ #
51
+ # @param id [String]
52
+ # @param request_options [Revox::RequestOptions, Hash{Symbol=>Object}, nil]
53
+ #
54
+ # @return [Revox::Models::PhoneNumberDeleteResponse]
55
+ #
56
+ # @see Revox::Models::PhoneNumberDeleteParams
57
+ def delete(id, params = {})
58
+ @client.request(
59
+ method: :delete,
60
+ path: ["phone-numbers/%1$s", id],
61
+ model: Revox::Models::PhoneNumberDeleteResponse,
62
+ options: params[:request_options]
63
+ )
64
+ end
65
+
66
+ # @api private
67
+ #
68
+ # @param client [Revox::Client]
69
+ def initialize(client:)
70
+ @client = client
71
+ end
72
+ end
73
+ end
74
+ end
@@ -3,15 +3,29 @@
3
3
  module Revox
4
4
  module Resources
5
5
  class Users
6
- # @return [Revox::Resources::Users::Me]
7
- attr_reader :me
6
+ # Get the current authenticated user.
7
+ #
8
+ # @overload retrieve(request_options: {})
9
+ #
10
+ # @param request_options [Revox::RequestOptions, Hash{Symbol=>Object}, nil]
11
+ #
12
+ # @return [Revox::Models::UserRetrieveResponse]
13
+ #
14
+ # @see Revox::Models::UserRetrieveParams
15
+ def retrieve(params = {})
16
+ @client.request(
17
+ method: :get,
18
+ path: "users/me",
19
+ model: Revox::Models::UserRetrieveResponse,
20
+ options: params[:request_options]
21
+ )
22
+ end
8
23
 
9
24
  # @api private
10
25
  #
11
26
  # @param client [Revox::Client]
12
27
  def initialize(client:)
13
28
  @client = client
14
- @me = Revox::Resources::Users::Me.new(client: client)
15
29
  end
16
30
  end
17
31
  end
@@ -3,8 +3,7 @@
3
3
  module Revox
4
4
  module Resources
5
5
  class Voices
6
- # Retrieve details for a single voice by its unique ID and provider. Returns the
7
- # voice name, description, and provider metadata.
6
+ # Retrieve details for a single voice by its unique ID and provider.
8
7
  #
9
8
  # @overload retrieve(id, provider:, request_options: {})
10
9
  #
@@ -29,10 +28,8 @@ module Revox
29
28
  )
30
29
  end
31
30
 
32
- # Retrieve the full catalog of voices available for AI calls. The list includes
33
- # voices from Cartesia and ElevenLabs, each with a name, language, accent, and
34
- # provider-specific ID. Use this endpoint to browse voices before assigning one to
35
- # an assistant or a call.
31
+ # Retrieve all voices available for AI calls, including preset voices from
32
+ # Cartesia/ElevenLabs and your organization's cloned voices.
36
33
  #
37
34
  # @overload list(request_options: {})
38
35
  #
@@ -50,16 +47,75 @@ module Revox
50
47
  )
51
48
  end
52
49
 
53
- # Generate a short audio preview for a given voice. Provide the voice ID and
54
- # provider, and the API returns an audio/mpeg stream you can play back to hear how
55
- # the voice sounds before assigning it to an assistant.
50
+ # Delete a cloned voice. Only cloned voices can be deleted. Returns 409 if the
51
+ # voice is in use by an assistant.
56
52
  #
57
- # @overload preview(provider:, voice_id:, request_options: {})
53
+ # @overload delete(id, request_options: {})
54
+ #
55
+ # @param id [String] The cloned voice ID to delete.
56
+ #
57
+ # @param request_options [Revox::RequestOptions, Hash{Symbol=>Object}, nil]
58
+ #
59
+ # @return [Revox::Models::VoiceDeleteResponse]
60
+ #
61
+ # @see Revox::Models::VoiceDeleteParams
62
+ def delete(id, params = {})
63
+ @client.request(
64
+ method: :delete,
65
+ path: ["voices/%1$s", id],
66
+ model: Revox::Models::VoiceDeleteResponse,
67
+ options: params[:request_options]
68
+ )
69
+ end
70
+
71
+ # Clone a voice from an audio recording. Send audio as a base64-encoded string.
72
+ # The cloned voice will be available in GET /voices.
73
+ #
74
+ # @overload clone_(audio:, content_type:, language:, name:, request_options: {})
75
+ #
76
+ # @param audio [String] Base64-encoded audio data (max ~7.5MB decoded)
77
+ #
78
+ # @param content_type [Symbol, Revox::Models::VoiceCloneParams::ContentType] MIME type of the audio
79
+ #
80
+ # @param language [Symbol, Revox::Models::VoiceCloneParams::Language] Language of the voice
81
+ #
82
+ # @param name [String] Name for the cloned voice
83
+ #
84
+ # @param request_options [Revox::RequestOptions, Hash{Symbol=>Object}, nil]
85
+ #
86
+ # @return [Revox::Models::VoiceCloneResponse]
87
+ #
88
+ # @see Revox::Models::VoiceCloneParams
89
+ def clone_(params)
90
+ parsed, options = Revox::VoiceCloneParams.dump_request(params)
91
+ @client.request(
92
+ method: :post,
93
+ path: "voices/clone",
94
+ body: parsed,
95
+ model: Revox::Models::VoiceCloneResponse,
96
+ options: options
97
+ )
98
+ end
99
+
100
+ # Some parameter documentations has been truncated, see
101
+ # {Revox::Models::VoicePreviewParams} for more details.
102
+ #
103
+ # Generate a short audio preview for a given voice.
104
+ #
105
+ # @overload preview(provider:, voice_id:, model: nil, speed: nil, text: nil, volume: nil, request_options: {})
58
106
  #
59
107
  # @param provider [Symbol, Revox::Models::VoicePreviewParams::Provider] The provider to use for the preview.
60
108
  #
61
109
  # @param voice_id [String] The voice ID to generate a preview for.
62
110
  #
111
+ # @param model [Symbol, Revox::Models::VoicePreviewParams::Model] Cartesia model for the preview. Defaults to sonic-3. Ignored for other providers
112
+ #
113
+ # @param speed [Float] Speed for preview. Cartesia 0.6–1.5, ElevenLabs 0.7–1.2. Default 1.0.
114
+ #
115
+ # @param text [String] Custom text for the preview. If omitted, a short default is used.
116
+ #
117
+ # @param volume [Float] Volume for Cartesia preview (0.5–2.0). Ignored for other providers.
118
+ #
63
119
  # @param request_options [Revox::RequestOptions, Hash{Symbol=>Object}, nil]
64
120
  #
65
121
  # @return [nil]
data/lib/revox/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Revox
4
- VERSION = "0.1.0"
4
+ VERSION = "0.3.0"
5
5
  end
data/lib/revox.rb CHANGED
@@ -52,6 +52,8 @@ require_relative "revox/errors"
52
52
  require_relative "revox/internal/transport/base_client"
53
53
  require_relative "revox/internal/transport/pooled_net_requester"
54
54
  require_relative "revox/client"
55
+ require_relative "revox/models/assistant_clone_params"
56
+ require_relative "revox/models/assistant_clone_response"
55
57
  require_relative "revox/models/assistant_create_params"
56
58
  require_relative "revox/models/assistant_create_response"
57
59
  require_relative "revox/models/assistant_delete_params"
@@ -62,12 +64,24 @@ require_relative "revox/models/assistant_retrieve_params"
62
64
  require_relative "revox/models/assistant_retrieve_response"
63
65
  require_relative "revox/models/assistant_update_params"
64
66
  require_relative "revox/models/assistant_update_response"
67
+ require_relative "revox/models/auth_status_retrieve_params"
68
+ require_relative "revox/models/auth_status_retrieve_response"
69
+ require_relative "revox/models/call_cancel_params"
70
+ require_relative "revox/models/call_cancel_response"
65
71
  require_relative "revox/models/call_create_params"
66
72
  require_relative "revox/models/call_create_response"
67
- require_relative "revox/models/call_list_params"
68
- require_relative "revox/models/call_list_response"
73
+ require_relative "revox/models/call_export_params"
74
+ require_relative "revox/models/call_export_response"
75
+ require_relative "revox/models/call_pause_params"
76
+ require_relative "revox/models/call_pause_response"
77
+ require_relative "revox/models/call_phone_history_params"
78
+ require_relative "revox/models/call_phone_history_response"
79
+ require_relative "revox/models/call_resume_params"
80
+ require_relative "revox/models/call_resume_response"
69
81
  require_relative "revox/models/call_retrieve_params"
70
82
  require_relative "revox/models/call_retrieve_response"
83
+ require_relative "revox/models/call_search_params"
84
+ require_relative "revox/models/call_search_response"
71
85
  require_relative "revox/models/campaign_cancel_params"
72
86
  require_relative "revox/models/campaign_cancel_response"
73
87
  require_relative "revox/models/campaign_create_params"
@@ -78,14 +92,32 @@ require_relative "revox/models/campaign_export_rows_params"
78
92
  require_relative "revox/models/campaign_export_rows_response"
79
93
  require_relative "revox/models/campaign_get_rows_params"
80
94
  require_relative "revox/models/campaign_get_rows_response"
95
+ require_relative "revox/models/campaign_launch_params"
96
+ require_relative "revox/models/campaign_launch_response"
81
97
  require_relative "revox/models/campaign_list_params"
82
98
  require_relative "revox/models/campaign_list_response"
99
+ require_relative "revox/models/campaign_pause_params"
100
+ require_relative "revox/models/campaign_pause_response"
101
+ require_relative "revox/models/campaign_resume_params"
102
+ require_relative "revox/models/campaign_resume_response"
83
103
  require_relative "revox/models/campaign_retrieve_params"
84
104
  require_relative "revox/models/campaign_retrieve_response"
85
- require_relative "revox/models/users/me_retrieve_params"
86
- require_relative "revox/models/users/me_retrieve_response"
87
- require_relative "revox/models/users/me_update_params"
88
- require_relative "revox/models/users/me_update_response"
105
+ require_relative "revox/models/campaign_statistics_params"
106
+ require_relative "revox/models/campaign_statistics_response"
107
+ require_relative "revox/models/campaign_update_params"
108
+ require_relative "revox/models/campaign_update_response"
109
+ require_relative "revox/models/phone_number_delete_params"
110
+ require_relative "revox/models/phone_number_delete_response"
111
+ require_relative "revox/models/phone_number_list_params"
112
+ require_relative "revox/models/phone_number_list_response"
113
+ require_relative "revox/models/phone_number_update_params"
114
+ require_relative "revox/models/phone_number_update_response"
115
+ require_relative "revox/models/user_retrieve_params"
116
+ require_relative "revox/models/user_retrieve_response"
117
+ require_relative "revox/models/voice_clone_params"
118
+ require_relative "revox/models/voice_clone_response"
119
+ require_relative "revox/models/voice_delete_params"
120
+ require_relative "revox/models/voice_delete_response"
89
121
  require_relative "revox/models/voice_list_params"
90
122
  require_relative "revox/models/voice_list_response"
91
123
  require_relative "revox/models/voice_preview_params"
@@ -93,8 +125,9 @@ require_relative "revox/models/voice_retrieve_params"
93
125
  require_relative "revox/models/voice_retrieve_response"
94
126
  require_relative "revox/models"
95
127
  require_relative "revox/resources/assistants"
128
+ require_relative "revox/resources/auth_status"
96
129
  require_relative "revox/resources/call"
97
130
  require_relative "revox/resources/campaigns"
131
+ require_relative "revox/resources/phone_numbers"
98
132
  require_relative "revox/resources/users"
99
- require_relative "revox/resources/users/me"
100
133
  require_relative "revox/resources/voices"
data/rbi/revox/client.rbi CHANGED
@@ -13,9 +13,15 @@ module Revox
13
13
  sig { returns(String) }
14
14
  attr_reader :api_key
15
15
 
16
+ sig { returns(Revox::Resources::AuthStatus) }
17
+ attr_reader :auth_status
18
+
16
19
  sig { returns(Revox::Resources::Campaigns) }
17
20
  attr_reader :campaigns
18
21
 
22
+ sig { returns(Revox::Resources::PhoneNumbers) }
23
+ attr_reader :phone_numbers
24
+
19
25
  sig { returns(Revox::Resources::Assistants) }
20
26
  attr_reader :assistants
21
27
 
@@ -144,12 +144,20 @@ module Revox
144
144
  end
145
145
  end
146
146
 
147
+ # https://www.rfc-editor.org/rfc/rfc3986.html#section-3.3
148
+ RFC_3986_NOT_PCHARS = T.let(/[^A-Za-z0-9\-._~!$&'()*+,;=:@]+/, Regexp)
149
+
147
150
  class << self
148
151
  # @api private
149
152
  sig { params(uri: URI::Generic).returns(String) }
150
153
  def uri_origin(uri)
151
154
  end
152
155
 
156
+ # @api private
157
+ sig { params(path: T.any(String, Integer)).returns(String) }
158
+ def encode_path(path)
159
+ end
160
+
153
161
  # @api private
154
162
  sig { params(path: T.any(String, T::Array[String])).returns(String) }
155
163
  def interpolate_path(path)
@@ -0,0 +1,33 @@
1
+ # typed: strong
2
+
3
+ module Revox
4
+ module Models
5
+ class AssistantCloneParams < Revox::Internal::Type::BaseModel
6
+ extend Revox::Internal::Type::RequestParameters::Converter
7
+ include Revox::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(Revox::AssistantCloneParams, Revox::Internal::AnyHash)
12
+ end
13
+
14
+ sig { returns(String) }
15
+ attr_accessor :id
16
+
17
+ sig do
18
+ params(
19
+ id: String,
20
+ request_options: Revox::RequestOptions::OrHash
21
+ ).returns(T.attached_class)
22
+ end
23
+ def self.new(id:, request_options: {})
24
+ end
25
+
26
+ sig do
27
+ override.returns({ id: String, request_options: Revox::RequestOptions })
28
+ end
29
+ def to_hash
30
+ end
31
+ end
32
+ end
33
+ end