telnyx 4.0.0 → 4.1.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 (154) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +15 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/internal/transport/pooled_net_requester.rb +7 -10
  5. data/lib/telnyx/models/{advanced_order_update_params.rb → advanced_order_update_requirement_group_params.rb} +9 -8
  6. data/lib/telnyx/models/{advanced_order_update_response.rb → advanced_order_update_requirement_group_response.rb} +1 -1
  7. data/lib/telnyx/models/calls/transcription_start_request.rb +444 -6
  8. data/lib/telnyx/models/legacy/reporting/batch_detail_records/cdr_detailed_req_response.rb +156 -0
  9. data/lib/telnyx/models/legacy/reporting/batch_detail_records/mdr_detail_report_response.rb +151 -0
  10. data/lib/telnyx/models/legacy/reporting/batch_detail_records/messaging_create_params.rb +3 -110
  11. data/lib/telnyx/models/legacy/reporting/batch_detail_records/messaging_create_response.rb +3 -252
  12. data/lib/telnyx/models/legacy/reporting/batch_detail_records/messaging_delete_response.rb +3 -252
  13. data/lib/telnyx/models/legacy/reporting/batch_detail_records/messaging_list_response.rb +3 -250
  14. data/lib/telnyx/models/legacy/reporting/batch_detail_records/messaging_retrieve_response.rb +3 -252
  15. data/lib/telnyx/models/legacy/reporting/batch_detail_records/speech_to_text_create_response.rb +3 -73
  16. data/lib/telnyx/models/legacy/reporting/batch_detail_records/speech_to_text_delete_response.rb +3 -73
  17. data/lib/telnyx/models/legacy/reporting/batch_detail_records/speech_to_text_list_response.rb +3 -71
  18. data/lib/telnyx/models/legacy/reporting/batch_detail_records/speech_to_text_retrieve_response.rb +3 -73
  19. data/lib/telnyx/models/legacy/reporting/batch_detail_records/stt_detail_report_response.rb +79 -0
  20. data/lib/telnyx/models/legacy/reporting/batch_detail_records/voice_create_params.rb +3 -110
  21. data/lib/telnyx/models/legacy/reporting/batch_detail_records/voice_create_response.rb +3 -256
  22. data/lib/telnyx/models/legacy/reporting/batch_detail_records/voice_delete_response.rb +3 -256
  23. data/lib/telnyx/models/legacy/reporting/batch_detail_records/voice_list_response.rb +3 -255
  24. data/lib/telnyx/models/legacy/reporting/batch_detail_records/voice_retrieve_response.rb +3 -256
  25. data/lib/telnyx/models/legacy/reporting/filter.rb +112 -0
  26. data/lib/telnyx/models/legacy/reporting/usage_reports/cdr_usage_report_response_legacy.rb +109 -0
  27. data/lib/telnyx/models/legacy/reporting/usage_reports/mdr_usage_report_response_legacy.rb +104 -0
  28. data/lib/telnyx/models/legacy/reporting/usage_reports/messaging_create_response.rb +3 -97
  29. data/lib/telnyx/models/legacy/reporting/usage_reports/messaging_delete_response.rb +3 -97
  30. data/lib/telnyx/models/legacy/reporting/usage_reports/messaging_list_response.rb +3 -96
  31. data/lib/telnyx/models/legacy/reporting/usage_reports/messaging_retrieve_response.rb +3 -97
  32. data/lib/telnyx/models/legacy/reporting/usage_reports/voice_create_response.rb +3 -102
  33. data/lib/telnyx/models/legacy/reporting/usage_reports/voice_delete_response.rb +3 -102
  34. data/lib/telnyx/models/legacy/reporting/usage_reports/voice_list_response.rb +3 -101
  35. data/lib/telnyx/models/legacy/reporting/usage_reports/voice_retrieve_response.rb +3 -102
  36. data/lib/telnyx/models/oauth_client.rb +173 -0
  37. data/lib/telnyx/models/oauth_client_create_response.rb +3 -172
  38. data/lib/telnyx/models/oauth_client_list_response.rb +3 -171
  39. data/lib/telnyx/models/oauth_client_retrieve_response.rb +3 -172
  40. data/lib/telnyx/models/oauth_client_update_response.rb +3 -172
  41. data/lib/telnyx/models/oauth_grant.rb +68 -0
  42. data/lib/telnyx/models/oauth_grant_delete_response.rb +3 -67
  43. data/lib/telnyx/models/oauth_grant_list_response.rb +3 -66
  44. data/lib/telnyx/models/oauth_grant_retrieve_response.rb +3 -67
  45. data/lib/telnyx/models/verify_profile_create_template_response.rb +3 -20
  46. data/lib/telnyx/models/verify_profile_message_template_response.rb +21 -0
  47. data/lib/telnyx/models/verify_profile_retrieve_templates_response.rb +3 -20
  48. data/lib/telnyx/models/verify_profile_update_template_response.rb +3 -20
  49. data/lib/telnyx/models.rb +7 -1
  50. data/lib/telnyx/resources/advanced_orders.rb +26 -26
  51. data/lib/telnyx/resources/calls/actions.rb +2 -2
  52. data/lib/telnyx/resources/legacy/reporting/batch_detail_records/messaging.rb +1 -1
  53. data/lib/telnyx/resources/legacy/reporting/batch_detail_records/voice.rb +1 -1
  54. data/lib/telnyx/version.rb +1 -1
  55. data/lib/telnyx.rb +11 -2
  56. data/rbi/telnyx/models/{advanced_order_update_params.rbi → advanced_order_update_requirement_group_params.rbi} +53 -25
  57. data/rbi/telnyx/models/{advanced_order_update_response.rbi → advanced_order_update_requirement_group_response.rbi} +1 -1
  58. data/rbi/telnyx/models/calls/transcription_start_request.rbi +1473 -3
  59. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/cdr_detailed_req_response.rbi +232 -0
  60. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/mdr_detail_report_response.rbi +346 -0
  61. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/messaging_create_params.rbi +4 -279
  62. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/messaging_create_response.rbi +4 -614
  63. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/messaging_delete_response.rbi +4 -614
  64. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/messaging_list_response.rbi +4 -614
  65. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/messaging_retrieve_response.rbi +4 -614
  66. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/speech_to_text_create_response.rbi +4 -155
  67. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/speech_to_text_delete_response.rbi +4 -155
  68. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/speech_to_text_list_response.rbi +4 -155
  69. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/speech_to_text_retrieve_response.rbi +4 -155
  70. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/stt_detail_report_response.rbi +162 -0
  71. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/voice_create_params.rbi +4 -279
  72. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/voice_create_response.rbi +4 -500
  73. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/voice_delete_response.rbi +4 -500
  74. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/voice_list_response.rbi +4 -500
  75. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/voice_retrieve_response.rbi +4 -500
  76. data/rbi/telnyx/models/legacy/reporting/filter.rbi +252 -0
  77. data/rbi/telnyx/models/legacy/reporting/usage_reports/cdr_usage_report_response_legacy.rbi +157 -0
  78. data/rbi/telnyx/models/legacy/reporting/usage_reports/mdr_usage_report_response_legacy.rbi +155 -0
  79. data/rbi/telnyx/models/legacy/reporting/usage_reports/messaging_create_response.rbi +4 -148
  80. data/rbi/telnyx/models/legacy/reporting/usage_reports/messaging_delete_response.rbi +4 -148
  81. data/rbi/telnyx/models/legacy/reporting/usage_reports/messaging_list_response.rbi +4 -148
  82. data/rbi/telnyx/models/legacy/reporting/usage_reports/messaging_retrieve_response.rbi +4 -148
  83. data/rbi/telnyx/models/legacy/reporting/usage_reports/voice_create_response.rbi +4 -150
  84. data/rbi/telnyx/models/legacy/reporting/usage_reports/voice_delete_response.rbi +4 -150
  85. data/rbi/telnyx/models/legacy/reporting/usage_reports/voice_list_response.rbi +4 -150
  86. data/rbi/telnyx/models/legacy/reporting/usage_reports/voice_retrieve_response.rbi +4 -150
  87. data/rbi/telnyx/models/oauth_client.rbi +250 -0
  88. data/rbi/telnyx/models/oauth_client_create_response.rbi +4 -317
  89. data/rbi/telnyx/models/oauth_client_list_response.rbi +4 -313
  90. data/rbi/telnyx/models/oauth_client_retrieve_response.rbi +4 -317
  91. data/rbi/telnyx/models/oauth_client_update_response.rbi +4 -317
  92. data/rbi/telnyx/models/oauth_grant.rbi +95 -0
  93. data/rbi/telnyx/models/oauth_grant_delete_response.rbi +4 -127
  94. data/rbi/telnyx/models/oauth_grant_list_response.rbi +4 -123
  95. data/rbi/telnyx/models/oauth_grant_retrieve_response.rbi +4 -129
  96. data/rbi/telnyx/models/verify_profile_create_template_response.rbi +4 -44
  97. data/rbi/telnyx/models/verify_profile_message_template_response.rbi +35 -0
  98. data/rbi/telnyx/models/verify_profile_retrieve_templates_response.rbi +3 -45
  99. data/rbi/telnyx/models/verify_profile_update_template_response.rbi +4 -44
  100. data/rbi/telnyx/models.rbi +9 -1
  101. data/rbi/telnyx/resources/advanced_orders.rbi +16 -14
  102. data/rbi/telnyx/resources/calls/actions.rbi +5 -1
  103. data/rbi/telnyx/resources/legacy/reporting/batch_detail_records/messaging.rbi +1 -4
  104. data/rbi/telnyx/resources/legacy/reporting/batch_detail_records/voice.rbi +1 -4
  105. data/sig/telnyx/models/{advanced_order_update_params.rbs → advanced_order_update_requirement_group_params.rbs} +16 -16
  106. data/sig/telnyx/models/advanced_order_update_requirement_group_response.rbs +5 -0
  107. data/sig/telnyx/models/calls/transcription_start_request.rbs +585 -2
  108. data/sig/telnyx/models/legacy/reporting/batch_detail_records/cdr_detailed_req_response.rbs +142 -0
  109. data/sig/telnyx/models/legacy/reporting/batch_detail_records/mdr_detail_report_response.rbs +163 -0
  110. data/sig/telnyx/models/legacy/reporting/batch_detail_records/messaging_create_params.rbs +6 -108
  111. data/sig/telnyx/models/legacy/reporting/batch_detail_records/messaging_create_response.rbs +6 -262
  112. data/sig/telnyx/models/legacy/reporting/batch_detail_records/messaging_delete_response.rbs +6 -262
  113. data/sig/telnyx/models/legacy/reporting/batch_detail_records/messaging_list_response.rbs +6 -262
  114. data/sig/telnyx/models/legacy/reporting/batch_detail_records/messaging_retrieve_response.rbs +6 -262
  115. data/sig/telnyx/models/legacy/reporting/batch_detail_records/speech_to_text_create_response.rbs +6 -82
  116. data/sig/telnyx/models/legacy/reporting/batch_detail_records/speech_to_text_delete_response.rbs +6 -82
  117. data/sig/telnyx/models/legacy/reporting/batch_detail_records/speech_to_text_list_response.rbs +6 -82
  118. data/sig/telnyx/models/legacy/reporting/batch_detail_records/speech_to_text_retrieve_response.rbs +6 -82
  119. data/sig/telnyx/models/legacy/reporting/batch_detail_records/stt_detail_report_response.rbs +85 -0
  120. data/sig/telnyx/models/legacy/reporting/batch_detail_records/voice_create_params.rbs +6 -108
  121. data/sig/telnyx/models/legacy/reporting/batch_detail_records/voice_create_response.rbs +6 -241
  122. data/sig/telnyx/models/legacy/reporting/batch_detail_records/voice_delete_response.rbs +6 -241
  123. data/sig/telnyx/models/legacy/reporting/batch_detail_records/voice_list_response.rbs +6 -241
  124. data/sig/telnyx/models/legacy/reporting/batch_detail_records/voice_retrieve_response.rbs +6 -241
  125. data/sig/telnyx/models/legacy/reporting/filter.rbs +109 -0
  126. data/sig/telnyx/models/legacy/reporting/usage_reports/cdr_usage_report_response_legacy.rbs +105 -0
  127. data/sig/telnyx/models/legacy/reporting/usage_reports/mdr_usage_report_response_legacy.rbs +105 -0
  128. data/sig/telnyx/models/legacy/reporting/usage_reports/messaging_create_response.rbs +6 -102
  129. data/sig/telnyx/models/legacy/reporting/usage_reports/messaging_delete_response.rbs +6 -102
  130. data/sig/telnyx/models/legacy/reporting/usage_reports/messaging_list_response.rbs +6 -102
  131. data/sig/telnyx/models/legacy/reporting/usage_reports/messaging_retrieve_response.rbs +6 -102
  132. data/sig/telnyx/models/legacy/reporting/usage_reports/voice_create_response.rbs +6 -102
  133. data/sig/telnyx/models/legacy/reporting/usage_reports/voice_delete_response.rbs +6 -102
  134. data/sig/telnyx/models/legacy/reporting/usage_reports/voice_list_response.rbs +6 -102
  135. data/sig/telnyx/models/legacy/reporting/usage_reports/voice_retrieve_response.rbs +6 -102
  136. data/sig/telnyx/models/oauth_client.rbs +137 -0
  137. data/sig/telnyx/models/oauth_client_create_response.rbs +5 -144
  138. data/sig/telnyx/models/oauth_client_list_response.rbs +5 -141
  139. data/sig/telnyx/models/oauth_client_retrieve_response.rbs +5 -146
  140. data/sig/telnyx/models/oauth_client_update_response.rbs +5 -144
  141. data/sig/telnyx/models/oauth_grant.rbs +55 -0
  142. data/sig/telnyx/models/oauth_grant_delete_response.rbs +5 -62
  143. data/sig/telnyx/models/oauth_grant_list_response.rbs +5 -59
  144. data/sig/telnyx/models/oauth_grant_retrieve_response.rbs +5 -62
  145. data/sig/telnyx/models/verify_profile_create_template_response.rbs +6 -24
  146. data/sig/telnyx/models/verify_profile_message_template_response.rbs +19 -0
  147. data/sig/telnyx/models/verify_profile_retrieve_templates_response.rbs +4 -22
  148. data/sig/telnyx/models/verify_profile_update_template_response.rbs +6 -24
  149. data/sig/telnyx/models.rbs +7 -1
  150. data/sig/telnyx/resources/advanced_orders.rbs +6 -6
  151. data/sig/telnyx/resources/legacy/reporting/batch_detail_records/messaging.rbs +1 -1
  152. data/sig/telnyx/resources/legacy/reporting/batch_detail_records/voice.rbs +1 -1
  153. metadata +35 -8
  154. data/sig/telnyx/models/advanced_order_update_response.rbs +0 -5
@@ -0,0 +1,252 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ module Legacy
6
+ module Reporting
7
+ class Filter < Telnyx::Internal::Type::BaseModel
8
+ OrHash =
9
+ T.type_alias do
10
+ T.any(
11
+ Telnyx::Legacy::Reporting::Filter,
12
+ Telnyx::Internal::AnyHash
13
+ )
14
+ end
15
+
16
+ # Billing group UUID to filter by
17
+ sig { returns(T.nilable(String)) }
18
+ attr_reader :billing_group
19
+
20
+ sig { params(billing_group: String).void }
21
+ attr_writer :billing_group
22
+
23
+ # Called line identification (destination number)
24
+ sig { returns(T.nilable(String)) }
25
+ attr_reader :cld
26
+
27
+ sig { params(cld: String).void }
28
+ attr_writer :cld
29
+
30
+ # Filter type for CLD matching
31
+ sig do
32
+ returns(
33
+ T.nilable(Telnyx::Legacy::Reporting::Filter::CldFilter::OrSymbol)
34
+ )
35
+ end
36
+ attr_reader :cld_filter
37
+
38
+ sig do
39
+ params(
40
+ cld_filter: Telnyx::Legacy::Reporting::Filter::CldFilter::OrSymbol
41
+ ).void
42
+ end
43
+ attr_writer :cld_filter
44
+
45
+ # Calling line identification (caller ID)
46
+ sig { returns(T.nilable(String)) }
47
+ attr_reader :cli
48
+
49
+ sig { params(cli: String).void }
50
+ attr_writer :cli
51
+
52
+ # Filter type for CLI matching
53
+ sig do
54
+ returns(
55
+ T.nilable(Telnyx::Legacy::Reporting::Filter::CliFilter::OrSymbol)
56
+ )
57
+ end
58
+ attr_reader :cli_filter
59
+
60
+ sig do
61
+ params(
62
+ cli_filter: Telnyx::Legacy::Reporting::Filter::CliFilter::OrSymbol
63
+ ).void
64
+ end
65
+ attr_writer :cli_filter
66
+
67
+ # Logical operator for combining filters
68
+ sig do
69
+ returns(
70
+ T.nilable(Telnyx::Legacy::Reporting::Filter::FilterType::OrSymbol)
71
+ )
72
+ end
73
+ attr_reader :filter_type
74
+
75
+ sig do
76
+ params(
77
+ filter_type:
78
+ Telnyx::Legacy::Reporting::Filter::FilterType::OrSymbol
79
+ ).void
80
+ end
81
+ attr_writer :filter_type
82
+
83
+ # Tag name to filter by
84
+ sig { returns(T.nilable(String)) }
85
+ attr_reader :tags_list
86
+
87
+ sig { params(tags_list: String).void }
88
+ attr_writer :tags_list
89
+
90
+ # Query filter criteria. Note: The first filter object must specify filter_type as
91
+ # 'and'. You cannot follow an 'or' with another 'and'.
92
+ sig do
93
+ params(
94
+ billing_group: String,
95
+ cld: String,
96
+ cld_filter:
97
+ Telnyx::Legacy::Reporting::Filter::CldFilter::OrSymbol,
98
+ cli: String,
99
+ cli_filter:
100
+ Telnyx::Legacy::Reporting::Filter::CliFilter::OrSymbol,
101
+ filter_type:
102
+ Telnyx::Legacy::Reporting::Filter::FilterType::OrSymbol,
103
+ tags_list: String
104
+ ).returns(T.attached_class)
105
+ end
106
+ def self.new(
107
+ # Billing group UUID to filter by
108
+ billing_group: nil,
109
+ # Called line identification (destination number)
110
+ cld: nil,
111
+ # Filter type for CLD matching
112
+ cld_filter: nil,
113
+ # Calling line identification (caller ID)
114
+ cli: nil,
115
+ # Filter type for CLI matching
116
+ cli_filter: nil,
117
+ # Logical operator for combining filters
118
+ filter_type: nil,
119
+ # Tag name to filter by
120
+ tags_list: nil
121
+ )
122
+ end
123
+
124
+ sig do
125
+ override.returns(
126
+ {
127
+ billing_group: String,
128
+ cld: String,
129
+ cld_filter:
130
+ Telnyx::Legacy::Reporting::Filter::CldFilter::OrSymbol,
131
+ cli: String,
132
+ cli_filter:
133
+ Telnyx::Legacy::Reporting::Filter::CliFilter::OrSymbol,
134
+ filter_type:
135
+ Telnyx::Legacy::Reporting::Filter::FilterType::OrSymbol,
136
+ tags_list: String
137
+ }
138
+ )
139
+ end
140
+ def to_hash
141
+ end
142
+
143
+ # Filter type for CLD matching
144
+ module CldFilter
145
+ extend Telnyx::Internal::Type::Enum
146
+
147
+ TaggedSymbol =
148
+ T.type_alias do
149
+ T.all(Symbol, Telnyx::Legacy::Reporting::Filter::CldFilter)
150
+ end
151
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
152
+
153
+ CONTAINS =
154
+ T.let(
155
+ :contains,
156
+ Telnyx::Legacy::Reporting::Filter::CldFilter::TaggedSymbol
157
+ )
158
+ STARTS_WITH =
159
+ T.let(
160
+ :starts_with,
161
+ Telnyx::Legacy::Reporting::Filter::CldFilter::TaggedSymbol
162
+ )
163
+ ENDS_WITH =
164
+ T.let(
165
+ :ends_with,
166
+ Telnyx::Legacy::Reporting::Filter::CldFilter::TaggedSymbol
167
+ )
168
+
169
+ sig do
170
+ override.returns(
171
+ T::Array[
172
+ Telnyx::Legacy::Reporting::Filter::CldFilter::TaggedSymbol
173
+ ]
174
+ )
175
+ end
176
+ def self.values
177
+ end
178
+ end
179
+
180
+ # Filter type for CLI matching
181
+ module CliFilter
182
+ extend Telnyx::Internal::Type::Enum
183
+
184
+ TaggedSymbol =
185
+ T.type_alias do
186
+ T.all(Symbol, Telnyx::Legacy::Reporting::Filter::CliFilter)
187
+ end
188
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
189
+
190
+ CONTAINS =
191
+ T.let(
192
+ :contains,
193
+ Telnyx::Legacy::Reporting::Filter::CliFilter::TaggedSymbol
194
+ )
195
+ STARTS_WITH =
196
+ T.let(
197
+ :starts_with,
198
+ Telnyx::Legacy::Reporting::Filter::CliFilter::TaggedSymbol
199
+ )
200
+ ENDS_WITH =
201
+ T.let(
202
+ :ends_with,
203
+ Telnyx::Legacy::Reporting::Filter::CliFilter::TaggedSymbol
204
+ )
205
+
206
+ sig do
207
+ override.returns(
208
+ T::Array[
209
+ Telnyx::Legacy::Reporting::Filter::CliFilter::TaggedSymbol
210
+ ]
211
+ )
212
+ end
213
+ def self.values
214
+ end
215
+ end
216
+
217
+ # Logical operator for combining filters
218
+ module FilterType
219
+ extend Telnyx::Internal::Type::Enum
220
+
221
+ TaggedSymbol =
222
+ T.type_alias do
223
+ T.all(Symbol, Telnyx::Legacy::Reporting::Filter::FilterType)
224
+ end
225
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
226
+
227
+ AND =
228
+ T.let(
229
+ :and,
230
+ Telnyx::Legacy::Reporting::Filter::FilterType::TaggedSymbol
231
+ )
232
+ OR =
233
+ T.let(
234
+ :or,
235
+ Telnyx::Legacy::Reporting::Filter::FilterType::TaggedSymbol
236
+ )
237
+
238
+ sig do
239
+ override.returns(
240
+ T::Array[
241
+ Telnyx::Legacy::Reporting::Filter::FilterType::TaggedSymbol
242
+ ]
243
+ )
244
+ end
245
+ def self.values
246
+ end
247
+ end
248
+ end
249
+ end
250
+ end
251
+ end
252
+ end
@@ -0,0 +1,157 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ module Legacy
6
+ module Reporting
7
+ module UsageReports
8
+ class CdrUsageReportResponseLegacy < Telnyx::Internal::Type::BaseModel
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ Telnyx::Legacy::Reporting::UsageReports::CdrUsageReportResponseLegacy,
13
+ Telnyx::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ # Identifies the resource
18
+ sig { returns(T.nilable(String)) }
19
+ attr_reader :id
20
+
21
+ sig { params(id: String).void }
22
+ attr_writer :id
23
+
24
+ # Aggregation type: All = 0, By Connections = 1, By Tags = 2, By Billing Group = 3
25
+ sig { returns(T.nilable(Integer)) }
26
+ attr_reader :aggregation_type
27
+
28
+ sig { params(aggregation_type: Integer).void }
29
+ attr_writer :aggregation_type
30
+
31
+ sig { returns(T.nilable(T::Array[Integer])) }
32
+ attr_reader :connections
33
+
34
+ sig { params(connections: T::Array[Integer]).void }
35
+ attr_writer :connections
36
+
37
+ sig { returns(T.nilable(Time)) }
38
+ attr_reader :created_at
39
+
40
+ sig { params(created_at: Time).void }
41
+ attr_writer :created_at
42
+
43
+ sig { returns(T.nilable(Time)) }
44
+ attr_reader :end_time
45
+
46
+ sig { params(end_time: Time).void }
47
+ attr_writer :end_time
48
+
49
+ # Product breakdown type: No breakdown = 0, DID vs Toll-free = 1, Country = 2, DID
50
+ # vs Toll-free per Country = 3
51
+ sig { returns(T.nilable(Integer)) }
52
+ attr_reader :product_breakdown
53
+
54
+ sig { params(product_breakdown: Integer).void }
55
+ attr_writer :product_breakdown
56
+
57
+ sig { returns(T.nilable(String)) }
58
+ attr_reader :record_type
59
+
60
+ sig { params(record_type: String).void }
61
+ attr_writer :record_type
62
+
63
+ sig { returns(T.nilable(String)) }
64
+ attr_reader :report_url
65
+
66
+ sig { params(report_url: String).void }
67
+ attr_writer :report_url
68
+
69
+ sig { returns(T.nilable(T.anything)) }
70
+ attr_reader :result
71
+
72
+ sig { params(result: T.anything).void }
73
+ attr_writer :result
74
+
75
+ sig { returns(T.nilable(Time)) }
76
+ attr_reader :start_time
77
+
78
+ sig { params(start_time: Time).void }
79
+ attr_writer :start_time
80
+
81
+ # Status of the report: Pending = 1, Complete = 2, Failed = 3, Expired = 4
82
+ sig { returns(T.nilable(Integer)) }
83
+ attr_reader :status
84
+
85
+ sig { params(status: Integer).void }
86
+ attr_writer :status
87
+
88
+ sig { returns(T.nilable(Time)) }
89
+ attr_reader :updated_at
90
+
91
+ sig { params(updated_at: Time).void }
92
+ attr_writer :updated_at
93
+
94
+ # Legacy V2 CDR usage report response
95
+ sig do
96
+ params(
97
+ id: String,
98
+ aggregation_type: Integer,
99
+ connections: T::Array[Integer],
100
+ created_at: Time,
101
+ end_time: Time,
102
+ product_breakdown: Integer,
103
+ record_type: String,
104
+ report_url: String,
105
+ result: T.anything,
106
+ start_time: Time,
107
+ status: Integer,
108
+ updated_at: Time
109
+ ).returns(T.attached_class)
110
+ end
111
+ def self.new(
112
+ # Identifies the resource
113
+ id: nil,
114
+ # Aggregation type: All = 0, By Connections = 1, By Tags = 2, By Billing Group = 3
115
+ aggregation_type: nil,
116
+ connections: nil,
117
+ created_at: nil,
118
+ end_time: nil,
119
+ # Product breakdown type: No breakdown = 0, DID vs Toll-free = 1, Country = 2, DID
120
+ # vs Toll-free per Country = 3
121
+ product_breakdown: nil,
122
+ record_type: nil,
123
+ report_url: nil,
124
+ result: nil,
125
+ start_time: nil,
126
+ # Status of the report: Pending = 1, Complete = 2, Failed = 3, Expired = 4
127
+ status: nil,
128
+ updated_at: nil
129
+ )
130
+ end
131
+
132
+ sig do
133
+ override.returns(
134
+ {
135
+ id: String,
136
+ aggregation_type: Integer,
137
+ connections: T::Array[Integer],
138
+ created_at: Time,
139
+ end_time: Time,
140
+ product_breakdown: Integer,
141
+ record_type: String,
142
+ report_url: String,
143
+ result: T.anything,
144
+ start_time: Time,
145
+ status: Integer,
146
+ updated_at: Time
147
+ }
148
+ )
149
+ end
150
+ def to_hash
151
+ end
152
+ end
153
+ end
154
+ end
155
+ end
156
+ end
157
+ end
@@ -0,0 +1,155 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ module Legacy
6
+ module Reporting
7
+ module UsageReports
8
+ class MdrUsageReportResponseLegacy < Telnyx::Internal::Type::BaseModel
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ Telnyx::Legacy::Reporting::UsageReports::MdrUsageReportResponseLegacy,
13
+ Telnyx::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ # Identifies the resource
18
+ sig { returns(T.nilable(String)) }
19
+ attr_reader :id
20
+
21
+ sig { params(id: String).void }
22
+ attr_writer :id
23
+
24
+ # Aggregation type: No aggregation = 0, By Messaging Profile = 1, By Tags = 2
25
+ sig { returns(T.nilable(Integer)) }
26
+ attr_reader :aggregation_type
27
+
28
+ sig { params(aggregation_type: Integer).void }
29
+ attr_writer :aggregation_type
30
+
31
+ sig { returns(T.nilable(T::Array[Integer])) }
32
+ attr_reader :connections
33
+
34
+ sig { params(connections: T::Array[Integer]).void }
35
+ attr_writer :connections
36
+
37
+ sig { returns(T.nilable(Time)) }
38
+ attr_reader :created_at
39
+
40
+ sig { params(created_at: Time).void }
41
+ attr_writer :created_at
42
+
43
+ sig { returns(T.nilable(Time)) }
44
+ attr_reader :end_time
45
+
46
+ sig { params(end_time: Time).void }
47
+ attr_writer :end_time
48
+
49
+ # List of messaging profile IDs
50
+ sig { returns(T.nilable(T::Array[String])) }
51
+ attr_reader :profiles
52
+
53
+ sig { params(profiles: T::Array[String]).void }
54
+ attr_writer :profiles
55
+
56
+ sig { returns(T.nilable(String)) }
57
+ attr_reader :record_type
58
+
59
+ sig { params(record_type: String).void }
60
+ attr_writer :record_type
61
+
62
+ sig { returns(T.nilable(String)) }
63
+ attr_reader :report_url
64
+
65
+ sig { params(report_url: String).void }
66
+ attr_writer :report_url
67
+
68
+ sig { returns(T.nilable(T.anything)) }
69
+ attr_reader :result
70
+
71
+ sig { params(result: T.anything).void }
72
+ attr_writer :result
73
+
74
+ sig { returns(T.nilable(Time)) }
75
+ attr_reader :start_time
76
+
77
+ sig { params(start_time: Time).void }
78
+ attr_writer :start_time
79
+
80
+ # Status of the report (Pending = 1, Complete = 2, Failed = 3, Expired = 4)
81
+ sig { returns(T.nilable(Integer)) }
82
+ attr_reader :status
83
+
84
+ sig { params(status: Integer).void }
85
+ attr_writer :status
86
+
87
+ sig { returns(T.nilable(Time)) }
88
+ attr_reader :updated_at
89
+
90
+ sig { params(updated_at: Time).void }
91
+ attr_writer :updated_at
92
+
93
+ # Legacy V2 MDR usage report response
94
+ sig do
95
+ params(
96
+ id: String,
97
+ aggregation_type: Integer,
98
+ connections: T::Array[Integer],
99
+ created_at: Time,
100
+ end_time: Time,
101
+ profiles: T::Array[String],
102
+ record_type: String,
103
+ report_url: String,
104
+ result: T.anything,
105
+ start_time: Time,
106
+ status: Integer,
107
+ updated_at: Time
108
+ ).returns(T.attached_class)
109
+ end
110
+ def self.new(
111
+ # Identifies the resource
112
+ id: nil,
113
+ # Aggregation type: No aggregation = 0, By Messaging Profile = 1, By Tags = 2
114
+ aggregation_type: nil,
115
+ connections: nil,
116
+ created_at: nil,
117
+ end_time: nil,
118
+ # List of messaging profile IDs
119
+ profiles: nil,
120
+ record_type: nil,
121
+ report_url: nil,
122
+ result: nil,
123
+ start_time: nil,
124
+ # Status of the report (Pending = 1, Complete = 2, Failed = 3, Expired = 4)
125
+ status: nil,
126
+ updated_at: nil
127
+ )
128
+ end
129
+
130
+ sig do
131
+ override.returns(
132
+ {
133
+ id: String,
134
+ aggregation_type: Integer,
135
+ connections: T::Array[Integer],
136
+ created_at: Time,
137
+ end_time: Time,
138
+ profiles: T::Array[String],
139
+ record_type: String,
140
+ report_url: String,
141
+ result: T.anything,
142
+ start_time: Time,
143
+ status: Integer,
144
+ updated_at: Time
145
+ }
146
+ )
147
+ end
148
+ def to_hash
149
+ end
150
+ end
151
+ end
152
+ end
153
+ end
154
+ end
155
+ end