telnyx 5.68.2 → 5.70.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 (189) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +59 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/client.rb +7 -0
  5. data/lib/telnyx/internal/util.rb +21 -5
  6. data/lib/telnyx/models/ai/assistant_create_params.rb +8 -1
  7. data/lib/telnyx/models/ai/assistant_tool.rb +25 -5
  8. data/lib/telnyx/models/ai/assistant_update_params.rb +8 -1
  9. data/lib/telnyx/models/ai/assistants/update_assistant.rb +8 -1
  10. data/lib/telnyx/models/ai/audio_transcribe_response.rb +70 -7
  11. data/lib/telnyx/models/ai/conversation_add_message_params.rb +4 -4
  12. data/lib/telnyx/models/ai/inference_embedding.rb +8 -1
  13. data/lib/telnyx/models/ai/observability.rb +46 -0
  14. data/lib/telnyx/models/ai/observability_req.rb +46 -0
  15. data/lib/telnyx/models/ai/telephony_settings.rb +13 -1
  16. data/lib/telnyx/models/call_dial_params.rb +24 -1
  17. data/lib/telnyx/models/calls/action_transfer_params.rb +24 -1
  18. data/lib/telnyx/models/enterprise_create_params.rb +1 -1
  19. data/lib/telnyx/models/enterprise_public.rb +1 -1
  20. data/lib/telnyx/models/enterprise_update_params.rb +1 -1
  21. data/lib/telnyx/models/enterprises/reputation/{number_create_params.rb → number_associate_params.rb} +2 -2
  22. data/lib/telnyx/models/enterprises/reputation/{number_create_response.rb → number_associate_response.rb} +5 -5
  23. data/lib/telnyx/models/enterprises/reputation/{number_delete_params.rb → number_disassociate_params.rb} +2 -2
  24. data/lib/telnyx/models/enterprises/{reputation_list_params.rb → reputation_disable_params.rb} +2 -2
  25. data/lib/telnyx/models/enterprises/{reputation_create_params.rb → reputation_enable_params.rb} +6 -6
  26. data/lib/telnyx/models/enterprises/{reputation_create_response.rb → reputation_enable_response.rb} +2 -2
  27. data/lib/telnyx/models/enterprises/{reputation_delete_all_params.rb → reputation_retrieve_params.rb} +2 -2
  28. data/lib/telnyx/models/enterprises/{reputation_list_response.rb → reputation_retrieve_response.rb} +2 -2
  29. data/lib/telnyx/models/porting_orders/phone_number_block_list_params.rb +9 -9
  30. data/lib/telnyx/models/pronunciation_dict_create_params.rb +141 -0
  31. data/lib/telnyx/models/pronunciation_dict_create_response.rb +207 -0
  32. data/lib/telnyx/models/pronunciation_dict_delete_params.rb +20 -0
  33. data/lib/telnyx/models/pronunciation_dict_list_params.rb +30 -0
  34. data/lib/telnyx/models/pronunciation_dict_list_response.rb +190 -0
  35. data/lib/telnyx/models/pronunciation_dict_retrieve_params.rb +20 -0
  36. data/lib/telnyx/models/pronunciation_dict_retrieve_response.rb +207 -0
  37. data/lib/telnyx/models/pronunciation_dict_update_params.rb +144 -0
  38. data/lib/telnyx/models/pronunciation_dict_update_response.rb +207 -0
  39. data/lib/telnyx/models/texml/accounts/call_calls_params.rb +1893 -547
  40. data/lib/telnyx/models/texml_initiate_ai_call_params.rb +514 -0
  41. data/lib/telnyx/models/texml_initiate_ai_call_response.rb +34 -0
  42. data/lib/telnyx/models/verification.rb +1 -0
  43. data/lib/telnyx/models/verification_trigger_whatsapp_verification_params.rb +46 -0
  44. data/lib/telnyx/models/verify_profile_create_params.rb +43 -1
  45. data/lib/telnyx/models/verify_profile_update_params.rb +43 -1
  46. data/lib/telnyx/models/voice_clone_create_from_upload_params.rb +364 -71
  47. data/lib/telnyx/models/voice_clone_create_params.rb +161 -51
  48. data/lib/telnyx/models/voice_clone_data.rb +51 -4
  49. data/lib/telnyx/models/whatsapp_message_content.rb +196 -1
  50. data/lib/telnyx/models/wireless_blocklist_update_params.rb +8 -21
  51. data/lib/telnyx/models.rb +15 -0
  52. data/lib/telnyx/resources/ai/assistants/versions.rb +3 -1
  53. data/lib/telnyx/resources/ai/assistants.rb +6 -2
  54. data/lib/telnyx/resources/calls/actions.rb +3 -1
  55. data/lib/telnyx/resources/calls.rb +3 -1
  56. data/lib/telnyx/resources/enterprises/reputation/numbers.rb +42 -42
  57. data/lib/telnyx/resources/enterprises/reputation.rb +61 -61
  58. data/lib/telnyx/resources/pronunciation_dicts.rb +156 -0
  59. data/lib/telnyx/resources/texml/accounts/calls.rb +3 -84
  60. data/lib/telnyx/resources/texml.rb +106 -0
  61. data/lib/telnyx/resources/verifications.rb +28 -0
  62. data/lib/telnyx/resources/verify_profiles.rb +5 -2
  63. data/lib/telnyx/resources/voice_clones.rb +7 -27
  64. data/lib/telnyx/resources/wireless_blocklists.rb +5 -5
  65. data/lib/telnyx/version.rb +1 -1
  66. data/lib/telnyx.rb +23 -8
  67. data/rbi/telnyx/client.rbi +6 -0
  68. data/rbi/telnyx/internal/util.rbi +8 -0
  69. data/rbi/telnyx/models/ai/assistant_create_params.rbi +13 -0
  70. data/rbi/telnyx/models/ai/assistant_tool.rbi +56 -5
  71. data/rbi/telnyx/models/ai/assistant_update_params.rbi +13 -0
  72. data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +13 -0
  73. data/rbi/telnyx/models/ai/audio_transcribe_response.rbi +123 -10
  74. data/rbi/telnyx/models/ai/conversation_add_message_params.rbi +5 -5
  75. data/rbi/telnyx/models/ai/inference_embedding.rbi +11 -0
  76. data/rbi/telnyx/models/ai/observability.rbi +90 -0
  77. data/rbi/telnyx/models/ai/observability_req.rbi +92 -0
  78. data/rbi/telnyx/models/ai/telephony_settings.rbi +13 -0
  79. data/rbi/telnyx/models/call_dial_params.rbi +37 -0
  80. data/rbi/telnyx/models/calls/action_transfer_params.rbi +57 -0
  81. data/rbi/telnyx/models/enterprise_create_params.rbi +1 -1
  82. data/rbi/telnyx/models/enterprise_public.rbi +1 -1
  83. data/rbi/telnyx/models/enterprise_update_params.rbi +1 -1
  84. data/rbi/telnyx/models/enterprises/reputation/{number_create_params.rbi → number_associate_params.rbi} +2 -2
  85. data/rbi/telnyx/models/enterprises/reputation/{number_create_response.rbi → number_associate_response.rbi} +7 -7
  86. data/rbi/telnyx/models/enterprises/reputation/{number_delete_params.rbi → number_disassociate_params.rbi} +2 -2
  87. data/rbi/telnyx/models/enterprises/{reputation_list_params.rbi → reputation_disable_params.rbi} +2 -2
  88. data/rbi/telnyx/models/enterprises/{reputation_create_params.rbi → reputation_enable_params.rbi} +14 -14
  89. data/rbi/telnyx/models/enterprises/{reputation_create_response.rbi → reputation_enable_response.rbi} +2 -2
  90. data/rbi/telnyx/models/enterprises/{reputation_delete_all_params.rbi → reputation_retrieve_params.rbi} +2 -2
  91. data/rbi/telnyx/models/enterprises/{reputation_list_response.rbi → reputation_retrieve_response.rbi} +2 -2
  92. data/rbi/telnyx/models/porting_orders/phone_number_block_list_params.rbi +34 -34
  93. data/rbi/telnyx/models/pronunciation_dict_create_params.rbi +246 -0
  94. data/rbi/telnyx/models/pronunciation_dict_create_response.rbi +398 -0
  95. data/rbi/telnyx/models/pronunciation_dict_delete_params.rbi +38 -0
  96. data/rbi/telnyx/models/pronunciation_dict_list_params.rbi +57 -0
  97. data/rbi/telnyx/models/pronunciation_dict_list_response.rbi +353 -0
  98. data/rbi/telnyx/models/pronunciation_dict_retrieve_params.rbi +38 -0
  99. data/rbi/telnyx/models/pronunciation_dict_retrieve_response.rbi +398 -0
  100. data/rbi/telnyx/models/pronunciation_dict_update_params.rbi +268 -0
  101. data/rbi/telnyx/models/pronunciation_dict_update_response.rbi +398 -0
  102. data/rbi/telnyx/models/texml/accounts/call_calls_params.rbi +3719 -1011
  103. data/rbi/telnyx/models/texml_initiate_ai_call_params.rbi +1010 -0
  104. data/rbi/telnyx/models/texml_initiate_ai_call_response.rbi +58 -0
  105. data/rbi/telnyx/models/verification.rbi +1 -0
  106. data/rbi/telnyx/models/verification_trigger_whatsapp_verification_params.rbi +73 -0
  107. data/rbi/telnyx/models/verify_profile_create_params.rbi +85 -0
  108. data/rbi/telnyx/models/verify_profile_update_params.rbi +85 -0
  109. data/rbi/telnyx/models/voice_clone_create_from_upload_params.rbi +711 -136
  110. data/rbi/telnyx/models/voice_clone_create_params.rbi +345 -79
  111. data/rbi/telnyx/models/voice_clone_data.rbi +77 -4
  112. data/rbi/telnyx/models/whatsapp_message_content.rbi +492 -0
  113. data/rbi/telnyx/models/wireless_blocklist_update_params.rbi +6 -49
  114. data/rbi/telnyx/models.rbi +19 -10
  115. data/rbi/telnyx/resources/ai/assistants/versions.rbi +3 -0
  116. data/rbi/telnyx/resources/ai/assistants.rbi +4 -0
  117. data/rbi/telnyx/resources/calls/actions.rbi +5 -0
  118. data/rbi/telnyx/resources/calls.rbi +5 -0
  119. data/rbi/telnyx/resources/enterprises/reputation/numbers.rbi +34 -34
  120. data/rbi/telnyx/resources/enterprises/reputation.rbi +44 -44
  121. data/rbi/telnyx/resources/pronunciation_dicts.rbi +131 -0
  122. data/rbi/telnyx/resources/texml/accounts/calls.rbi +7 -163
  123. data/rbi/telnyx/resources/texml.rbi +164 -0
  124. data/rbi/telnyx/resources/verifications.rbi +23 -0
  125. data/rbi/telnyx/resources/verify_profiles.rbi +4 -0
  126. data/rbi/telnyx/resources/voice_clones.rbi +17 -41
  127. data/rbi/telnyx/resources/wireless_blocklists.rbi +3 -3
  128. data/sig/telnyx/client.rbs +2 -0
  129. data/sig/telnyx/internal/util.rbs +4 -0
  130. data/sig/telnyx/models/ai/assistant_create_params.rbs +9 -0
  131. data/sig/telnyx/models/ai/assistant_tool.rbs +17 -4
  132. data/sig/telnyx/models/ai/assistant_update_params.rbs +9 -0
  133. data/sig/telnyx/models/ai/assistants/update_assistant.rbs +9 -0
  134. data/sig/telnyx/models/ai/audio_transcribe_response.rbs +53 -3
  135. data/sig/telnyx/models/ai/conversation_add_message_params.rbs +5 -5
  136. data/sig/telnyx/models/ai/inference_embedding.rbs +9 -0
  137. data/sig/telnyx/models/ai/observability.rbs +58 -0
  138. data/sig/telnyx/models/ai/observability_req.rbs +58 -0
  139. data/sig/telnyx/models/ai/telephony_settings.rbs +7 -0
  140. data/sig/telnyx/models/call_dial_params.rbs +20 -0
  141. data/sig/telnyx/models/calls/action_transfer_params.rbs +20 -0
  142. data/sig/telnyx/models/enterprise_create_params.rbs +1 -1
  143. data/sig/telnyx/models/enterprise_public.rbs +1 -1
  144. data/sig/telnyx/models/enterprise_update_params.rbs +1 -1
  145. data/sig/telnyx/models/enterprises/reputation/{number_create_params.rbs → number_associate_params.rbs} +2 -2
  146. data/sig/telnyx/models/enterprises/reputation/{number_create_response.rbs → number_associate_response.rbs} +8 -8
  147. data/sig/telnyx/models/enterprises/reputation/{number_delete_params.rbs → number_disassociate_params.rbs} +2 -2
  148. data/sig/telnyx/models/enterprises/{reputation_list_params.rbs → reputation_disable_params.rbs} +2 -2
  149. data/sig/telnyx/models/enterprises/{reputation_create_params.rbs → reputation_enable_params.rbs} +9 -9
  150. data/sig/telnyx/models/enterprises/{reputation_create_response.rbs → reputation_enable_response.rbs} +2 -2
  151. data/sig/telnyx/models/enterprises/{reputation_delete_all_params.rbs → reputation_retrieve_params.rbs} +2 -2
  152. data/sig/telnyx/models/enterprises/{reputation_list_response.rbs → reputation_retrieve_response.rbs} +2 -2
  153. data/sig/telnyx/models/porting_orders/phone_number_block_list_params.rbs +9 -9
  154. data/sig/telnyx/models/pronunciation_dict_create_params.rbs +97 -0
  155. data/sig/telnyx/models/pronunciation_dict_create_response.rbs +167 -0
  156. data/sig/telnyx/models/pronunciation_dict_delete_params.rbs +20 -0
  157. data/sig/telnyx/models/pronunciation_dict_list_params.rbs +32 -0
  158. data/sig/telnyx/models/pronunciation_dict_list_response.rbs +144 -0
  159. data/sig/telnyx/models/pronunciation_dict_retrieve_params.rbs +20 -0
  160. data/sig/telnyx/models/pronunciation_dict_retrieve_response.rbs +167 -0
  161. data/sig/telnyx/models/pronunciation_dict_update_params.rbs +108 -0
  162. data/sig/telnyx/models/pronunciation_dict_update_response.rbs +167 -0
  163. data/sig/telnyx/models/texml/accounts/call_calls_params.rbs +1368 -331
  164. data/sig/telnyx/models/texml_initiate_ai_call_params.rbs +444 -0
  165. data/sig/telnyx/models/texml_initiate_ai_call_response.rbs +38 -0
  166. data/sig/telnyx/models/verification.rbs +2 -1
  167. data/sig/telnyx/models/verification_trigger_whatsapp_verification_params.rbs +43 -0
  168. data/sig/telnyx/models/verify_profile_create_params.rbs +43 -1
  169. data/sig/telnyx/models/verify_profile_update_params.rbs +43 -1
  170. data/sig/telnyx/models/voice_clone_create_from_upload_params.rbs +269 -58
  171. data/sig/telnyx/models/voice_clone_create_params.rbs +129 -44
  172. data/sig/telnyx/models/voice_clone_data.rbs +43 -0
  173. data/sig/telnyx/models/whatsapp_message_content.rbs +205 -0
  174. data/sig/telnyx/models/wireless_blocklist_update_params.rbs +5 -25
  175. data/sig/telnyx/models.rbs +14 -0
  176. data/sig/telnyx/resources/ai/assistants/versions.rbs +1 -0
  177. data/sig/telnyx/resources/ai/assistants.rbs +2 -0
  178. data/sig/telnyx/resources/calls/actions.rbs +1 -0
  179. data/sig/telnyx/resources/calls.rbs +1 -0
  180. data/sig/telnyx/resources/enterprises/reputation/numbers.rbs +7 -7
  181. data/sig/telnyx/resources/enterprises/reputation.rbs +8 -8
  182. data/sig/telnyx/resources/pronunciation_dicts.rbs +33 -0
  183. data/sig/telnyx/resources/texml/accounts/calls.rbs +1 -40
  184. data/sig/telnyx/resources/texml.rbs +44 -0
  185. data/sig/telnyx/resources/verifications.rbs +8 -0
  186. data/sig/telnyx/resources/verify_profiles.rbs +2 -0
  187. data/sig/telnyx/resources/voice_clones.rbs +2 -12
  188. data/sig/telnyx/resources/wireless_blocklists.rbs +1 -1
  189. metadata +71 -26
@@ -1,90 +1,301 @@
1
1
  module Telnyx
2
2
  module Models
3
3
  type voice_clone_create_from_upload_params =
4
- {
5
- audio_file: Telnyx::Internal::file_input,
6
- language: String,
7
- name: String,
8
- gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::gender,
9
- label: String,
10
- provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::provider,
11
- ref_text: String
12
- }
4
+ { body: Telnyx::Models::VoiceCloneCreateFromUploadParams::body }
13
5
  & Telnyx::Internal::Type::request_parameters
14
6
 
15
7
  class VoiceCloneCreateFromUploadParams < Telnyx::Internal::Type::BaseModel
16
8
  extend Telnyx::Internal::Type::RequestParameters::Converter
17
9
  include Telnyx::Internal::Type::RequestParameters
18
10
 
19
- attr_accessor audio_file: Telnyx::Internal::file_input
11
+ attr_accessor body: Telnyx::Models::VoiceCloneCreateFromUploadParams::body
20
12
 
21
- attr_accessor language: String
13
+ def initialize: (
14
+ body: Telnyx::Models::VoiceCloneCreateFromUploadParams::body,
15
+ ?request_options: Telnyx::request_opts
16
+ ) -> void
22
17
 
23
- attr_accessor name: String
18
+ def to_hash: -> {
19
+ body: Telnyx::Models::VoiceCloneCreateFromUploadParams::body,
20
+ request_options: Telnyx::RequestOptions
21
+ }
24
22
 
25
- attr_reader gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::gender?
23
+ type body =
24
+ Telnyx::VoiceCloneCreateFromUploadParams::Body::TelnyxQwen3TtsClone
25
+ | Telnyx::VoiceCloneCreateFromUploadParams::Body::TelnyxUltraClone
26
+ | Telnyx::VoiceCloneCreateFromUploadParams::Body::MinimaxClone
26
27
 
27
- def gender=: (
28
- Telnyx::Models::VoiceCloneCreateFromUploadParams::gender
29
- ) -> Telnyx::Models::VoiceCloneCreateFromUploadParams::gender
28
+ module Body
29
+ extend Telnyx::Internal::Type::Union
30
30
 
31
- attr_reader label: String?
31
+ type telnyx_qwen3_tts_clone =
32
+ {
33
+ audio_file: Telnyx::Internal::file_input,
34
+ gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxQwen3TtsClone::gender,
35
+ language: String,
36
+ name: String,
37
+ provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxQwen3TtsClone::provider,
38
+ label: String,
39
+ model_id: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxQwen3TtsClone::model_id?,
40
+ ref_text: String
41
+ }
32
42
 
33
- def label=: (String) -> String
43
+ class TelnyxQwen3TtsClone < Telnyx::Internal::Type::BaseModel
44
+ attr_accessor audio_file: Telnyx::Internal::file_input
34
45
 
35
- attr_reader provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::provider?
46
+ attr_accessor gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxQwen3TtsClone::gender
36
47
 
37
- def provider=: (
38
- Telnyx::Models::VoiceCloneCreateFromUploadParams::provider
39
- ) -> Telnyx::Models::VoiceCloneCreateFromUploadParams::provider
48
+ attr_accessor language: String
40
49
 
41
- attr_reader ref_text: String?
50
+ attr_accessor name: String
42
51
 
43
- def ref_text=: (String) -> String
52
+ attr_accessor provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxQwen3TtsClone::provider
44
53
 
45
- def initialize: (
46
- audio_file: Telnyx::Internal::file_input,
47
- language: String,
48
- name: String,
49
- ?gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::gender,
50
- ?label: String,
51
- ?provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::provider,
52
- ?ref_text: String,
53
- ?request_options: Telnyx::request_opts
54
- ) -> void
54
+ attr_reader label: String?
55
55
 
56
- def to_hash: -> {
57
- audio_file: Telnyx::Internal::file_input,
58
- language: String,
59
- name: String,
60
- gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::gender,
61
- label: String,
62
- provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::provider,
63
- ref_text: String,
64
- request_options: Telnyx::RequestOptions
65
- }
56
+ def label=: (String) -> String
66
57
 
67
- type gender = :male | :female | :neutral
58
+ attr_accessor model_id: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxQwen3TtsClone::model_id?
68
59
 
69
- module Gender
70
- extend Telnyx::Internal::Type::Enum
60
+ attr_reader ref_text: String?
71
61
 
72
- MALE: :male
73
- FEMALE: :female
74
- NEUTRAL: :neutral
62
+ def ref_text=: (String) -> String
75
63
 
76
- def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateFromUploadParams::gender]
77
- end
64
+ def initialize: (
65
+ audio_file: Telnyx::Internal::file_input,
66
+ gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxQwen3TtsClone::gender,
67
+ language: String,
68
+ name: String,
69
+ provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxQwen3TtsClone::provider,
70
+ ?label: String,
71
+ ?model_id: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxQwen3TtsClone::model_id?,
72
+ ?ref_text: String
73
+ ) -> void
74
+
75
+ def to_hash: -> {
76
+ audio_file: Telnyx::Internal::file_input,
77
+ gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxQwen3TtsClone::gender,
78
+ language: String,
79
+ name: String,
80
+ provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxQwen3TtsClone::provider,
81
+ label: String,
82
+ model_id: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxQwen3TtsClone::model_id?,
83
+ ref_text: String
84
+ }
85
+
86
+ type gender = :male | :female | :neutral
87
+
88
+ module Gender
89
+ extend Telnyx::Internal::Type::Enum
90
+
91
+ MALE: :male
92
+ FEMALE: :female
93
+ NEUTRAL: :neutral
94
+
95
+ def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxQwen3TtsClone::gender]
96
+ end
97
+
98
+ type provider = :telnyx | :Telnyx
99
+
100
+ module Provider
101
+ extend Telnyx::Internal::Type::Enum
102
+
103
+ TELNYX: :telnyx
104
+ TELNYX_2: :Telnyx
105
+
106
+ def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxQwen3TtsClone::provider]
107
+ end
108
+
109
+ type model_id = :Qwen3TTS
110
+
111
+ module ModelID
112
+ extend Telnyx::Internal::Type::Enum
113
+
114
+ QWEN3_TTS: :Qwen3TTS
115
+
116
+ def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxQwen3TtsClone::model_id]
117
+ end
118
+ end
119
+
120
+ type telnyx_ultra_clone =
121
+ {
122
+ audio_file: Telnyx::Internal::file_input,
123
+ gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxUltraClone::gender,
124
+ language: String,
125
+ model_id: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxUltraClone::model_id,
126
+ name: String,
127
+ provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxUltraClone::provider,
128
+ label: String,
129
+ ref_text: String
130
+ }
131
+
132
+ class TelnyxUltraClone < Telnyx::Internal::Type::BaseModel
133
+ attr_accessor audio_file: Telnyx::Internal::file_input
134
+
135
+ attr_accessor gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxUltraClone::gender
136
+
137
+ attr_accessor language: String
138
+
139
+ attr_accessor model_id: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxUltraClone::model_id
140
+
141
+ attr_accessor name: String
142
+
143
+ attr_accessor provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxUltraClone::provider
144
+
145
+ attr_reader label: String?
146
+
147
+ def label=: (String) -> String
148
+
149
+ attr_reader ref_text: String?
150
+
151
+ def ref_text=: (String) -> String
152
+
153
+ def initialize: (
154
+ audio_file: Telnyx::Internal::file_input,
155
+ gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxUltraClone::gender,
156
+ language: String,
157
+ model_id: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxUltraClone::model_id,
158
+ name: String,
159
+ provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxUltraClone::provider,
160
+ ?label: String,
161
+ ?ref_text: String
162
+ ) -> void
163
+
164
+ def to_hash: -> {
165
+ audio_file: Telnyx::Internal::file_input,
166
+ gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxUltraClone::gender,
167
+ language: String,
168
+ model_id: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxUltraClone::model_id,
169
+ name: String,
170
+ provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxUltraClone::provider,
171
+ label: String,
172
+ ref_text: String
173
+ }
174
+
175
+ type gender = :male | :female | :neutral
176
+
177
+ module Gender
178
+ extend Telnyx::Internal::Type::Enum
179
+
180
+ MALE: :male
181
+ FEMALE: :female
182
+ NEUTRAL: :neutral
183
+
184
+ def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxUltraClone::gender]
185
+ end
186
+
187
+ type model_id = :Ultra
188
+
189
+ module ModelID
190
+ extend Telnyx::Internal::Type::Enum
191
+
192
+ ULTRA: :Ultra
193
+
194
+ def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxUltraClone::model_id]
195
+ end
196
+
197
+ type provider = :telnyx | :Telnyx
198
+
199
+ module Provider
200
+ extend Telnyx::Internal::Type::Enum
201
+
202
+ TELNYX: :telnyx
203
+ TELNYX_2: :Telnyx
204
+
205
+ def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::TelnyxUltraClone::provider]
206
+ end
207
+ end
208
+
209
+ type minimax_clone =
210
+ {
211
+ audio_file: Telnyx::Internal::file_input,
212
+ gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::MinimaxClone::gender,
213
+ language: String,
214
+ name: String,
215
+ provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::MinimaxClone::provider,
216
+ label: String,
217
+ model_id: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::MinimaxClone::model_id?,
218
+ ref_text: String
219
+ }
220
+
221
+ class MinimaxClone < Telnyx::Internal::Type::BaseModel
222
+ attr_accessor audio_file: Telnyx::Internal::file_input
223
+
224
+ attr_accessor gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::MinimaxClone::gender
225
+
226
+ attr_accessor language: String
227
+
228
+ attr_accessor name: String
229
+
230
+ attr_accessor provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::MinimaxClone::provider
231
+
232
+ attr_reader label: String?
233
+
234
+ def label=: (String) -> String
235
+
236
+ attr_accessor model_id: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::MinimaxClone::model_id?
237
+
238
+ attr_reader ref_text: String?
239
+
240
+ def ref_text=: (String) -> String
241
+
242
+ def initialize: (
243
+ audio_file: Telnyx::Internal::file_input,
244
+ gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::MinimaxClone::gender,
245
+ language: String,
246
+ name: String,
247
+ provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::MinimaxClone::provider,
248
+ ?label: String,
249
+ ?model_id: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::MinimaxClone::model_id?,
250
+ ?ref_text: String
251
+ ) -> void
252
+
253
+ def to_hash: -> {
254
+ audio_file: Telnyx::Internal::file_input,
255
+ gender: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::MinimaxClone::gender,
256
+ language: String,
257
+ name: String,
258
+ provider: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::MinimaxClone::provider,
259
+ label: String,
260
+ model_id: Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::MinimaxClone::model_id?,
261
+ ref_text: String
262
+ }
263
+
264
+ type gender = :male | :female | :neutral
265
+
266
+ module Gender
267
+ extend Telnyx::Internal::Type::Enum
268
+
269
+ MALE: :male
270
+ FEMALE: :female
271
+ NEUTRAL: :neutral
272
+
273
+ def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::MinimaxClone::gender]
274
+ end
275
+
276
+ type provider = :minimax | :Minimax
277
+
278
+ module Provider
279
+ extend Telnyx::Internal::Type::Enum
280
+
281
+ MINIMAX: :minimax
282
+ MINIMAX_2: :Minimax
283
+
284
+ def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::MinimaxClone::provider]
285
+ end
286
+
287
+ type model_id = :"speech-2.8-turbo"
78
288
 
79
- type provider = :telnyx | :minimax
289
+ module ModelID
290
+ extend Telnyx::Internal::Type::Enum
80
291
 
81
- module Provider
82
- extend Telnyx::Internal::Type::Enum
292
+ SPEECH_2_8_TURBO: :"speech-2.8-turbo"
83
293
 
84
- TELNYX: :telnyx
85
- MINIMAX: :minimax
294
+ def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateFromUploadParams::Body::MinimaxClone::model_id]
295
+ end
296
+ end
86
297
 
87
- def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateFromUploadParams::provider]
298
+ def self?.variants: -> ::Array[Telnyx::Models::VoiceCloneCreateFromUploadParams::body]
88
299
  end
89
300
  end
90
301
  end
@@ -1,72 +1,157 @@
1
1
  module Telnyx
2
2
  module Models
3
3
  type voice_clone_create_params =
4
- {
5
- gender: Telnyx::Models::VoiceCloneCreateParams::gender,
6
- language: String,
7
- name: String,
8
- voice_design_id: String,
9
- provider: Telnyx::Models::VoiceCloneCreateParams::provider
10
- }
4
+ { body: Telnyx::Models::VoiceCloneCreateParams::body }
11
5
  & Telnyx::Internal::Type::request_parameters
12
6
 
13
7
  class VoiceCloneCreateParams < Telnyx::Internal::Type::BaseModel
14
8
  extend Telnyx::Internal::Type::RequestParameters::Converter
15
9
  include Telnyx::Internal::Type::RequestParameters
16
10
 
17
- attr_accessor gender: Telnyx::Models::VoiceCloneCreateParams::gender
18
-
19
- attr_accessor language: String
20
-
21
- attr_accessor name: String
22
-
23
- attr_accessor voice_design_id: String
24
-
25
- attr_reader provider: Telnyx::Models::VoiceCloneCreateParams::provider?
26
-
27
- def provider=: (
28
- Telnyx::Models::VoiceCloneCreateParams::provider
29
- ) -> Telnyx::Models::VoiceCloneCreateParams::provider
11
+ attr_accessor body: Telnyx::Models::VoiceCloneCreateParams::body
30
12
 
31
13
  def initialize: (
32
- gender: Telnyx::Models::VoiceCloneCreateParams::gender,
33
- language: String,
34
- name: String,
35
- voice_design_id: String,
36
- ?provider: Telnyx::Models::VoiceCloneCreateParams::provider,
14
+ body: Telnyx::Models::VoiceCloneCreateParams::body,
37
15
  ?request_options: Telnyx::request_opts
38
16
  ) -> void
39
17
 
40
18
  def to_hash: -> {
41
- gender: Telnyx::Models::VoiceCloneCreateParams::gender,
42
- language: String,
43
- name: String,
44
- voice_design_id: String,
45
- provider: Telnyx::Models::VoiceCloneCreateParams::provider,
19
+ body: Telnyx::Models::VoiceCloneCreateParams::body,
46
20
  request_options: Telnyx::RequestOptions
47
21
  }
48
22
 
49
- type gender = :male | :female | :neutral
23
+ type body =
24
+ Telnyx::VoiceCloneCreateParams::Body::TelnyxDesignClone
25
+ | Telnyx::VoiceCloneCreateParams::Body::MinimaxDesignClone
50
26
 
51
- module Gender
52
- extend Telnyx::Internal::Type::Enum
27
+ module Body
28
+ extend Telnyx::Internal::Type::Union
53
29
 
54
- MALE: :male
55
- FEMALE: :female
56
- NEUTRAL: :neutral
30
+ type telnyx_design_clone =
31
+ {
32
+ gender: Telnyx::Models::VoiceCloneCreateParams::Body::TelnyxDesignClone::gender,
33
+ language: String,
34
+ name: String,
35
+ voice_design_id: String,
36
+ provider: Telnyx::Models::VoiceCloneCreateParams::Body::TelnyxDesignClone::provider
37
+ }
57
38
 
58
- def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateParams::gender]
59
- end
39
+ class TelnyxDesignClone < Telnyx::Internal::Type::BaseModel
40
+ attr_accessor gender: Telnyx::Models::VoiceCloneCreateParams::Body::TelnyxDesignClone::gender
41
+
42
+ attr_accessor language: String
43
+
44
+ attr_accessor name: String
45
+
46
+ attr_accessor voice_design_id: String
47
+
48
+ attr_reader provider: Telnyx::Models::VoiceCloneCreateParams::Body::TelnyxDesignClone::provider?
49
+
50
+ def provider=: (
51
+ Telnyx::Models::VoiceCloneCreateParams::Body::TelnyxDesignClone::provider
52
+ ) -> Telnyx::Models::VoiceCloneCreateParams::Body::TelnyxDesignClone::provider
53
+
54
+ def initialize: (
55
+ gender: Telnyx::Models::VoiceCloneCreateParams::Body::TelnyxDesignClone::gender,
56
+ language: String,
57
+ name: String,
58
+ voice_design_id: String,
59
+ ?provider: Telnyx::Models::VoiceCloneCreateParams::Body::TelnyxDesignClone::provider
60
+ ) -> void
61
+
62
+ def to_hash: -> {
63
+ gender: Telnyx::Models::VoiceCloneCreateParams::Body::TelnyxDesignClone::gender,
64
+ language: String,
65
+ name: String,
66
+ voice_design_id: String,
67
+ provider: Telnyx::Models::VoiceCloneCreateParams::Body::TelnyxDesignClone::provider
68
+ }
69
+
70
+ type gender = :male | :female | :neutral
71
+
72
+ module Gender
73
+ extend Telnyx::Internal::Type::Enum
74
+
75
+ MALE: :male
76
+ FEMALE: :female
77
+ NEUTRAL: :neutral
78
+
79
+ def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateParams::Body::TelnyxDesignClone::gender]
80
+ end
81
+
82
+ type provider = :telnyx | :Telnyx
83
+
84
+ module Provider
85
+ extend Telnyx::Internal::Type::Enum
86
+
87
+ TELNYX: :telnyx
88
+ TELNYX_2: :Telnyx
89
+
90
+ def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateParams::Body::TelnyxDesignClone::provider]
91
+ end
92
+ end
93
+
94
+ type minimax_design_clone =
95
+ {
96
+ gender: Telnyx::Models::VoiceCloneCreateParams::Body::MinimaxDesignClone::gender,
97
+ language: String,
98
+ name: String,
99
+ provider: Telnyx::Models::VoiceCloneCreateParams::Body::MinimaxDesignClone::provider,
100
+ voice_design_id: String
101
+ }
102
+
103
+ class MinimaxDesignClone < Telnyx::Internal::Type::BaseModel
104
+ attr_accessor gender: Telnyx::Models::VoiceCloneCreateParams::Body::MinimaxDesignClone::gender
105
+
106
+ attr_accessor language: String
107
+
108
+ attr_accessor name: String
109
+
110
+ attr_accessor provider: Telnyx::Models::VoiceCloneCreateParams::Body::MinimaxDesignClone::provider
111
+
112
+ attr_accessor voice_design_id: String
113
+
114
+ def initialize: (
115
+ gender: Telnyx::Models::VoiceCloneCreateParams::Body::MinimaxDesignClone::gender,
116
+ language: String,
117
+ name: String,
118
+ provider: Telnyx::Models::VoiceCloneCreateParams::Body::MinimaxDesignClone::provider,
119
+ voice_design_id: String
120
+ ) -> void
121
+
122
+ def to_hash: -> {
123
+ gender: Telnyx::Models::VoiceCloneCreateParams::Body::MinimaxDesignClone::gender,
124
+ language: String,
125
+ name: String,
126
+ provider: Telnyx::Models::VoiceCloneCreateParams::Body::MinimaxDesignClone::provider,
127
+ voice_design_id: String
128
+ }
129
+
130
+ type gender = :male | :female | :neutral
131
+
132
+ module Gender
133
+ extend Telnyx::Internal::Type::Enum
134
+
135
+ MALE: :male
136
+ FEMALE: :female
137
+ NEUTRAL: :neutral
138
+
139
+ def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateParams::Body::MinimaxDesignClone::gender]
140
+ end
141
+
142
+ type provider = :minimax | :Minimax
60
143
 
61
- type provider = :telnyx | :minimax
144
+ module Provider
145
+ extend Telnyx::Internal::Type::Enum
62
146
 
63
- module Provider
64
- extend Telnyx::Internal::Type::Enum
147
+ MINIMAX: :minimax
148
+ MINIMAX_2: :Minimax
65
149
 
66
- TELNYX: :telnyx
67
- MINIMAX: :minimax
150
+ def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateParams::Body::MinimaxDesignClone::provider]
151
+ end
152
+ end
68
153
 
69
- def self?.values: -> ::Array[Telnyx::Models::VoiceCloneCreateParams::provider]
154
+ def self?.variants: -> ::Array[Telnyx::Models::VoiceCloneCreateParams::body]
70
155
  end
71
156
  end
72
157
  end
@@ -7,6 +7,7 @@ module Telnyx
7
7
  gender: Telnyx::Models::VoiceCloneData::gender?,
8
8
  label: String?,
9
9
  language: String?,
10
+ model_id: Telnyx::Models::VoiceCloneData::model_id,
10
11
  name: String,
11
12
  provider: Telnyx::Models::VoiceCloneData::provider,
12
13
  provider_supported_models: ::Array[String],
@@ -14,6 +15,7 @@ module Telnyx
14
15
  record_type: Telnyx::Models::VoiceCloneData::record_type,
15
16
  source_voice_design_id: String?,
16
17
  source_voice_design_version: Integer?,
18
+ status: Telnyx::Models::VoiceCloneData::status,
17
19
  updated_at: Time
18
20
  }
19
21
 
@@ -32,6 +34,12 @@ module Telnyx
32
34
 
33
35
  attr_accessor language: String?
34
36
 
37
+ attr_reader model_id: Telnyx::Models::VoiceCloneData::model_id?
38
+
39
+ def model_id=: (
40
+ Telnyx::Models::VoiceCloneData::model_id
41
+ ) -> Telnyx::Models::VoiceCloneData::model_id
42
+
35
43
  attr_reader name: String?
36
44
 
37
45
  def name=: (String) -> String
@@ -58,6 +66,12 @@ module Telnyx
58
66
 
59
67
  attr_accessor source_voice_design_version: Integer?
60
68
 
69
+ attr_reader status: Telnyx::Models::VoiceCloneData::status?
70
+
71
+ def status=: (
72
+ Telnyx::Models::VoiceCloneData::status
73
+ ) -> Telnyx::Models::VoiceCloneData::status
74
+
61
75
  attr_reader updated_at: Time?
62
76
 
63
77
  def updated_at=: (Time) -> Time
@@ -68,6 +82,7 @@ module Telnyx
68
82
  ?gender: Telnyx::Models::VoiceCloneData::gender?,
69
83
  ?label: String?,
70
84
  ?language: String?,
85
+ ?model_id: Telnyx::Models::VoiceCloneData::model_id,
71
86
  ?name: String,
72
87
  ?provider: Telnyx::Models::VoiceCloneData::provider,
73
88
  ?provider_supported_models: ::Array[String],
@@ -75,6 +90,7 @@ module Telnyx
75
90
  ?record_type: Telnyx::Models::VoiceCloneData::record_type,
76
91
  ?source_voice_design_id: String?,
77
92
  ?source_voice_design_version: Integer?,
93
+ ?status: Telnyx::Models::VoiceCloneData::status,
78
94
  ?updated_at: Time
79
95
  ) -> void
80
96
 
@@ -84,6 +100,7 @@ module Telnyx
84
100
  gender: Telnyx::Models::VoiceCloneData::gender?,
85
101
  label: String?,
86
102
  language: String?,
103
+ model_id: Telnyx::Models::VoiceCloneData::model_id,
87
104
  name: String,
88
105
  provider: Telnyx::Models::VoiceCloneData::provider,
89
106
  provider_supported_models: ::Array[String],
@@ -91,6 +108,7 @@ module Telnyx
91
108
  record_type: Telnyx::Models::VoiceCloneData::record_type,
92
109
  source_voice_design_id: String?,
93
110
  source_voice_design_version: Integer?,
111
+ status: Telnyx::Models::VoiceCloneData::status,
94
112
  updated_at: Time
95
113
  }
96
114
 
@@ -106,6 +124,18 @@ module Telnyx
106
124
  def self?.values: -> ::Array[Telnyx::Models::VoiceCloneData::gender]
107
125
  end
108
126
 
127
+ type model_id = :Qwen3TTS | :Ultra | :"speech-2.8-turbo"
128
+
129
+ module ModelID
130
+ extend Telnyx::Internal::Type::Enum
131
+
132
+ QWEN3_TTS: :Qwen3TTS
133
+ ULTRA: :Ultra
134
+ SPEECH_2_8_TURBO: :"speech-2.8-turbo"
135
+
136
+ def self?.values: -> ::Array[Telnyx::Models::VoiceCloneData::model_id]
137
+ end
138
+
109
139
  type provider = :telnyx | :minimax
110
140
 
111
141
  module Provider
@@ -126,6 +156,19 @@ module Telnyx
126
156
 
127
157
  def self?.values: -> ::Array[Telnyx::Models::VoiceCloneData::record_type]
128
158
  end
159
+
160
+ type status = :active | :pending | :failed | :expired
161
+
162
+ module Status
163
+ extend Telnyx::Internal::Type::Enum
164
+
165
+ ACTIVE: :active
166
+ PENDING: :pending
167
+ FAILED: :failed
168
+ EXPIRED: :expired
169
+
170
+ def self?.values: -> ::Array[Telnyx::Models::VoiceCloneData::status]
171
+ end
129
172
  end
130
173
  end
131
174
  end