imagekitio 4.7.0 → 4.8.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.
@@ -0,0 +1,1044 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Imagekitio
4
+ module Models
5
+ module Accounts
6
+ # @see Imagekitio::Resources::Accounts::UsageAnalytics#get
7
+ class UsageAnalyticsResponse < Imagekitio::Internal::Type::BaseModel
8
+ # @!attribute bandwidth_bytes
9
+ # Total bandwidth, in bytes, utilized during the specified date range.
10
+ #
11
+ # @return [Float]
12
+ required :bandwidth_bytes, Float, api_name: :bandwidthBytes
13
+
14
+ # @!attribute browser
15
+ # CDN traffic grouped by browser.
16
+ #
17
+ # @return [Imagekitio::Models::Accounts::UsageAnalyticsResponse::Browser]
18
+ required :browser, -> { Imagekitio::Accounts::UsageAnalyticsResponse::Browser }
19
+
20
+ # @!attribute cache
21
+ # CDN cache hit, miss and error counts for the date range.
22
+ #
23
+ # @return [Imagekitio::Models::Accounts::UsageAnalyticsResponse::Cache]
24
+ required :cache, -> { Imagekitio::Accounts::UsageAnalyticsResponse::Cache }
25
+
26
+ # @!attribute country
27
+ # CDN traffic grouped by country.
28
+ #
29
+ # @return [Imagekitio::Models::Accounts::UsageAnalyticsResponse::Country]
30
+ required :country, -> { Imagekitio::Accounts::UsageAnalyticsResponse::Country }
31
+
32
+ # @!attribute device
33
+ # CDN traffic grouped by device and operating system (e.g. `Desktop - Apple Mac`,
34
+ # `Smartphone - Apple iPhone`).
35
+ #
36
+ # @return [Imagekitio::Models::Accounts::UsageAnalyticsResponse::Device]
37
+ required :device, -> { Imagekitio::Accounts::UsageAnalyticsResponse::Device }
38
+
39
+ # @!attribute end_date
40
+ # End date of the computed analytics data.
41
+ #
42
+ # @return [Date]
43
+ required :end_date, Date, api_name: :endDate
44
+
45
+ # @!attribute error_reasons
46
+ # Request count grouped by origin error reason. This covers failed origin fetches,
47
+ # such as an asset not found at origin or an origin timeout. It is not the HTTP
48
+ # status code returned to the client, see `statusCodes` for that.
49
+ #
50
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::ErrorReason>]
51
+ required :error_reasons,
52
+ -> {
53
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::ErrorReason]
54
+ },
55
+ api_name: :errorReasons
56
+
57
+ # @!attribute extensions
58
+ # Raw per-extension operation counts for the date range. These are raw operation
59
+ # counts, not billable extension units. For billable usage, use the
60
+ # `/v1/accounts/usage` endpoint.
61
+ #
62
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::Extension>]
63
+ required :extensions,
64
+ -> { Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::Extension] }
65
+
66
+ # @!attribute format_
67
+ # CDN traffic grouped by response `Content-Type`.
68
+ #
69
+ # @return [Imagekitio::Models::Accounts::UsageAnalyticsResponse::Format]
70
+ required :format_, -> { Imagekitio::Accounts::UsageAnalyticsResponse::Format }, api_name: :format
71
+
72
+ # @!attribute generated_at
73
+ # Date and time when the analytics data was computed. Use this to gauge how fresh
74
+ # the returned data is. The date and time is in ISO8601 format.
75
+ #
76
+ # @return [Time]
77
+ required :generated_at, Time, api_name: :generatedAt
78
+
79
+ # @!attribute request_count
80
+ # Total number of requests made during the specified date range.
81
+ #
82
+ # @return [Float]
83
+ required :request_count, Float, api_name: :requestCount
84
+
85
+ # @!attribute start_date
86
+ # Start date of the computed analytics data.
87
+ #
88
+ # @return [Date]
89
+ required :start_date, Date, api_name: :startDate
90
+
91
+ # @!attribute status_codes
92
+ # Request count grouped by HTTP status code.
93
+ #
94
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::StatusCode>]
95
+ required :status_codes,
96
+ -> {
97
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::StatusCode]
98
+ },
99
+ api_name: :statusCodes
100
+
101
+ # @!attribute top404_assets
102
+ # Top URLs that returned a 404 response.
103
+ #
104
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::Top404Asset>]
105
+ required :top404_assets,
106
+ -> {
107
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::Top404Asset]
108
+ },
109
+ api_name: :top404Assets
110
+
111
+ # @!attribute top_images
112
+ # Top image assets by traffic.
113
+ #
114
+ # @return [Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopImages]
115
+ required :top_images,
116
+ -> {
117
+ Imagekitio::Accounts::UsageAnalyticsResponse::TopImages
118
+ },
119
+ api_name: :topImages
120
+
121
+ # @!attribute top_image_transforms
122
+ # Top image transformation strings by traffic.
123
+ #
124
+ # @return [Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopImageTransforms]
125
+ required :top_image_transforms,
126
+ -> { Imagekitio::Accounts::UsageAnalyticsResponse::TopImageTransforms },
127
+ api_name: :topImageTransforms
128
+
129
+ # @!attribute top_other_assets
130
+ # Top non-image, non-video assets by traffic.
131
+ #
132
+ # @return [Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopOtherAssets]
133
+ required :top_other_assets,
134
+ -> { Imagekitio::Accounts::UsageAnalyticsResponse::TopOtherAssets },
135
+ api_name: :topOtherAssets
136
+
137
+ # @!attribute top_referrers
138
+ # Top HTTP referrers by traffic.
139
+ #
140
+ # @return [Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopReferrers]
141
+ required :top_referrers,
142
+ -> { Imagekitio::Accounts::UsageAnalyticsResponse::TopReferrers },
143
+ api_name: :topReferrers
144
+
145
+ # @!attribute top_user_agents
146
+ # Top user agents by traffic.
147
+ #
148
+ # @return [Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopUserAgents]
149
+ required :top_user_agents,
150
+ -> { Imagekitio::Accounts::UsageAnalyticsResponse::TopUserAgents },
151
+ api_name: :topUserAgents
152
+
153
+ # @!attribute top_videos
154
+ # Top video assets by traffic.
155
+ #
156
+ # @return [Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopVideos]
157
+ required :top_videos,
158
+ -> {
159
+ Imagekitio::Accounts::UsageAnalyticsResponse::TopVideos
160
+ },
161
+ api_name: :topVideos
162
+
163
+ # @!attribute top_video_transforms
164
+ # Top video transformation strings by traffic.
165
+ #
166
+ # @return [Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopVideoTransforms]
167
+ required :top_video_transforms,
168
+ -> { Imagekitio::Accounts::UsageAnalyticsResponse::TopVideoTransforms },
169
+ api_name: :topVideoTransforms
170
+
171
+ # @!attribute url_endpoints
172
+ # CDN traffic grouped by configured URL endpoint. Traffic that does not match any
173
+ # named URL endpoint pattern is grouped under `Default`.
174
+ #
175
+ # @return [Imagekitio::Models::Accounts::UsageAnalyticsResponse::URLEndpoints]
176
+ required :url_endpoints,
177
+ -> { Imagekitio::Accounts::UsageAnalyticsResponse::URLEndpoints },
178
+ api_name: :urlEndpoints
179
+
180
+ # @!attribute video_processing
181
+ # Raw observed video transcode output duration, in seconds, grouped by resolution
182
+ # and codec. These are raw seconds, not billable Video Processing Units (VPU). For
183
+ # billable VPU totals, use the `/v1/accounts/usage` endpoint.
184
+ #
185
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::VideoProcessing>]
186
+ required :video_processing,
187
+ -> {
188
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::VideoProcessing]
189
+ },
190
+ api_name: :videoProcessing
191
+
192
+ # @!method initialize(bandwidth_bytes:, browser:, cache:, country:, device:, end_date:, error_reasons:, extensions:, format_:, generated_at:, request_count:, start_date:, status_codes:, top404_assets:, top_images:, top_image_transforms:, top_other_assets:, top_referrers:, top_user_agents:, top_videos:, top_video_transforms:, url_endpoints:, video_processing:)
193
+ # Some parameter documentations has been truncated, see
194
+ # {Imagekitio::Models::Accounts::UsageAnalyticsResponse} for more details.
195
+ #
196
+ # @param bandwidth_bytes [Float] Total bandwidth, in bytes, utilized during the specified date range.
197
+ #
198
+ # @param browser [Imagekitio::Models::Accounts::UsageAnalyticsResponse::Browser] CDN traffic grouped by browser.
199
+ #
200
+ # @param cache [Imagekitio::Models::Accounts::UsageAnalyticsResponse::Cache] CDN cache hit, miss and error counts for the date range.
201
+ #
202
+ # @param country [Imagekitio::Models::Accounts::UsageAnalyticsResponse::Country] CDN traffic grouped by country.
203
+ #
204
+ # @param device [Imagekitio::Models::Accounts::UsageAnalyticsResponse::Device] CDN traffic grouped by device and operating system (e.g. `Desktop - Apple Mac`,
205
+ #
206
+ # @param end_date [Date] End date of the computed analytics data.
207
+ #
208
+ # @param error_reasons [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::ErrorReason>] Request count grouped by origin error reason. This covers failed origin fetches,
209
+ #
210
+ # @param extensions [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::Extension>] Raw per-extension operation counts for the date range. These are raw operation c
211
+ #
212
+ # @param format_ [Imagekitio::Models::Accounts::UsageAnalyticsResponse::Format] CDN traffic grouped by response `Content-Type`.
213
+ #
214
+ # @param generated_at [Time] Date and time when the analytics data was computed. Use this to gauge how fresh
215
+ #
216
+ # @param request_count [Float] Total number of requests made during the specified date range.
217
+ #
218
+ # @param start_date [Date] Start date of the computed analytics data.
219
+ #
220
+ # @param status_codes [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::StatusCode>] Request count grouped by HTTP status code.
221
+ #
222
+ # @param top404_assets [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::Top404Asset>] Top URLs that returned a 404 response.
223
+ #
224
+ # @param top_images [Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopImages] Top image assets by traffic.
225
+ #
226
+ # @param top_image_transforms [Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopImageTransforms] Top image transformation strings by traffic.
227
+ #
228
+ # @param top_other_assets [Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopOtherAssets] Top non-image, non-video assets by traffic.
229
+ #
230
+ # @param top_referrers [Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopReferrers] Top HTTP referrers by traffic.
231
+ #
232
+ # @param top_user_agents [Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopUserAgents] Top user agents by traffic.
233
+ #
234
+ # @param top_videos [Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopVideos] Top video assets by traffic.
235
+ #
236
+ # @param top_video_transforms [Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopVideoTransforms] Top video transformation strings by traffic.
237
+ #
238
+ # @param url_endpoints [Imagekitio::Models::Accounts::UsageAnalyticsResponse::URLEndpoints] CDN traffic grouped by configured URL endpoint. Traffic that does not match any
239
+ #
240
+ # @param video_processing [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::VideoProcessing>] Raw observed video transcode output duration, in seconds, grouped by resolution
241
+
242
+ # @see Imagekitio::Models::Accounts::UsageAnalyticsResponse#browser
243
+ class Browser < Imagekitio::Internal::Type::BaseModel
244
+ # @!attribute by_bandwidth
245
+ # Top browsers sorted by bandwidth utilized.
246
+ #
247
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::Browser::ByBandwidth>]
248
+ required :by_bandwidth,
249
+ -> {
250
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::Browser::ByBandwidth]
251
+ },
252
+ api_name: :byBandwidth
253
+
254
+ # @!attribute by_requests
255
+ # Top browsers sorted by request count.
256
+ #
257
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::Browser::ByRequest>]
258
+ required :by_requests,
259
+ -> {
260
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::Browser::ByRequest]
261
+ },
262
+ api_name: :byRequests
263
+
264
+ # @!method initialize(by_bandwidth:, by_requests:)
265
+ # CDN traffic grouped by browser.
266
+ #
267
+ # @param by_bandwidth [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::Browser::ByBandwidth>] Top browsers sorted by bandwidth utilized.
268
+ #
269
+ # @param by_requests [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::Browser::ByRequest>] Top browsers sorted by request count.
270
+
271
+ class ByBandwidth < Imagekitio::Models::Accounts::RequestBandwidthEntry
272
+ # @!attribute name
273
+ # Browser name (e.g. `Chrome`).
274
+ #
275
+ # @return [String]
276
+ required :name, String
277
+
278
+ # @!method initialize(name:)
279
+ # @param name [String] Browser name (e.g. `Chrome`).
280
+ end
281
+
282
+ class ByRequest < Imagekitio::Models::Accounts::RequestBandwidthEntry
283
+ # @!attribute name
284
+ # Browser name (e.g. `Chrome`).
285
+ #
286
+ # @return [String]
287
+ required :name, String
288
+
289
+ # @!method initialize(name:)
290
+ # @param name [String] Browser name (e.g. `Chrome`).
291
+ end
292
+ end
293
+
294
+ # @see Imagekitio::Models::Accounts::UsageAnalyticsResponse#cache
295
+ class Cache < Imagekitio::Internal::Type::BaseModel
296
+ # @!attribute error_count
297
+ # Number of requests where the CDN encountered a cache error or exceeded capacity
298
+ # while serving the response.
299
+ #
300
+ # @return [Float]
301
+ required :error_count, Float, api_name: :errorCount
302
+
303
+ # @!attribute hit_count
304
+ # Number of requests served from cache, including full hits and revalidated hits.
305
+ #
306
+ # @return [Float]
307
+ required :hit_count, Float, api_name: :hitCount
308
+
309
+ # @!attribute miss_count
310
+ # Number of requests that were not found in cache and had to be fetched from
311
+ # origin.
312
+ #
313
+ # @return [Float]
314
+ required :miss_count, Float, api_name: :missCount
315
+
316
+ # @!method initialize(error_count:, hit_count:, miss_count:)
317
+ # Some parameter documentations has been truncated, see
318
+ # {Imagekitio::Models::Accounts::UsageAnalyticsResponse::Cache} for more details.
319
+ #
320
+ # CDN cache hit, miss and error counts for the date range.
321
+ #
322
+ # @param error_count [Float] Number of requests where the CDN encountered a cache error or exceeded capacity
323
+ #
324
+ # @param hit_count [Float] Number of requests served from cache, including full hits and revalidated hits.
325
+ #
326
+ # @param miss_count [Float] Number of requests that were not found in cache and had to be fetched from origi
327
+ end
328
+
329
+ # @see Imagekitio::Models::Accounts::UsageAnalyticsResponse#country
330
+ class Country < Imagekitio::Internal::Type::BaseModel
331
+ # @!attribute by_bandwidth
332
+ # Top requesting countries sorted by total bandwidth utilized.
333
+ #
334
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::Country::ByBandwidth>]
335
+ required :by_bandwidth,
336
+ -> {
337
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::Country::ByBandwidth]
338
+ },
339
+ api_name: :byBandwidth
340
+
341
+ # @!attribute by_requests
342
+ # Top requesting countries sorted by request count.
343
+ #
344
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::Country::ByRequest>]
345
+ required :by_requests,
346
+ -> {
347
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::Country::ByRequest]
348
+ },
349
+ api_name: :byRequests
350
+
351
+ # @!method initialize(by_bandwidth:, by_requests:)
352
+ # CDN traffic grouped by country.
353
+ #
354
+ # @param by_bandwidth [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::Country::ByBandwidth>] Top requesting countries sorted by total bandwidth utilized.
355
+ #
356
+ # @param by_requests [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::Country::ByRequest>] Top requesting countries sorted by request count.
357
+
358
+ class ByBandwidth < Imagekitio::Models::Accounts::RequestBandwidthEntry
359
+ # @!attribute code
360
+ # ISO country code.
361
+ #
362
+ # @return [String]
363
+ required :code, String
364
+
365
+ # @!attribute name
366
+ # Country name.
367
+ #
368
+ # @return [String]
369
+ required :name, String
370
+
371
+ # @!method initialize(code:, name:)
372
+ # @param code [String] ISO country code.
373
+ #
374
+ # @param name [String] Country name.
375
+ end
376
+
377
+ class ByRequest < Imagekitio::Models::Accounts::RequestBandwidthEntry
378
+ # @!attribute code
379
+ # ISO country code.
380
+ #
381
+ # @return [String]
382
+ required :code, String
383
+
384
+ # @!attribute name
385
+ # Country name.
386
+ #
387
+ # @return [String]
388
+ required :name, String
389
+
390
+ # @!method initialize(code:, name:)
391
+ # @param code [String] ISO country code.
392
+ #
393
+ # @param name [String] Country name.
394
+ end
395
+ end
396
+
397
+ # @see Imagekitio::Models::Accounts::UsageAnalyticsResponse#device
398
+ class Device < Imagekitio::Internal::Type::BaseModel
399
+ # @!attribute by_bandwidth
400
+ # Top device/OS combinations sorted by bandwidth utilized.
401
+ #
402
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::Device::ByBandwidth>]
403
+ required :by_bandwidth,
404
+ -> {
405
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::Device::ByBandwidth]
406
+ },
407
+ api_name: :byBandwidth
408
+
409
+ # @!attribute by_requests
410
+ # Top device/OS combinations sorted by request count.
411
+ #
412
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::Device::ByRequest>]
413
+ required :by_requests,
414
+ -> {
415
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::Device::ByRequest]
416
+ },
417
+ api_name: :byRequests
418
+
419
+ # @!method initialize(by_bandwidth:, by_requests:)
420
+ # CDN traffic grouped by device and operating system (e.g. `Desktop - Apple Mac`,
421
+ # `Smartphone - Apple iPhone`).
422
+ #
423
+ # @param by_bandwidth [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::Device::ByBandwidth>] Top device/OS combinations sorted by bandwidth utilized.
424
+ #
425
+ # @param by_requests [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::Device::ByRequest>] Top device/OS combinations sorted by request count.
426
+
427
+ class ByBandwidth < Imagekitio::Models::Accounts::RequestBandwidthEntry
428
+ # @!attribute name
429
+ # Device category combined with operating system or vendor (e.g.
430
+ # `Desktop - Windows PC`).
431
+ #
432
+ # @return [String]
433
+ required :name, String
434
+
435
+ # @!method initialize(name:)
436
+ # Some parameter documentations has been truncated, see
437
+ # {Imagekitio::Models::Accounts::UsageAnalyticsResponse::Device::ByBandwidth} for
438
+ # more details.
439
+ #
440
+ # @param name [String] Device category combined with operating system or vendor (e.g. `Desktop - Window
441
+ end
442
+
443
+ class ByRequest < Imagekitio::Models::Accounts::RequestBandwidthEntry
444
+ # @!attribute name
445
+ # Device category combined with operating system or vendor (e.g.
446
+ # `Desktop - Windows PC`).
447
+ #
448
+ # @return [String]
449
+ required :name, String
450
+
451
+ # @!method initialize(name:)
452
+ # Some parameter documentations has been truncated, see
453
+ # {Imagekitio::Models::Accounts::UsageAnalyticsResponse::Device::ByRequest} for
454
+ # more details.
455
+ #
456
+ # @param name [String] Device category combined with operating system or vendor (e.g. `Desktop - Window
457
+ end
458
+ end
459
+
460
+ class ErrorReason < Imagekitio::Internal::Type::BaseModel
461
+ # @!attribute name
462
+ # Description of the error reason.
463
+ #
464
+ # @return [String]
465
+ required :name, String
466
+
467
+ # @!attribute request_count
468
+ # Number of requests that failed with this error reason.
469
+ #
470
+ # @return [Float]
471
+ required :request_count, Float, api_name: :requestCount
472
+
473
+ # @!method initialize(name:, request_count:)
474
+ # @param name [String] Description of the error reason.
475
+ #
476
+ # @param request_count [Float] Number of requests that failed with this error reason.
477
+ end
478
+
479
+ class Extension < Imagekitio::Internal::Type::BaseModel
480
+ # @!attribute name
481
+ # Extension identifier.
482
+ #
483
+ # @return [String]
484
+ required :name, String
485
+
486
+ # @!attribute operation_count
487
+ # Number of times this extension ran during the date range.
488
+ #
489
+ # @return [Float]
490
+ required :operation_count, Float, api_name: :operationCount
491
+
492
+ # @!method initialize(name:, operation_count:)
493
+ # @param name [String] Extension identifier.
494
+ #
495
+ # @param operation_count [Float] Number of times this extension ran during the date range.
496
+ end
497
+
498
+ # @see Imagekitio::Models::Accounts::UsageAnalyticsResponse#format_
499
+ class Format < Imagekitio::Internal::Type::BaseModel
500
+ # @!attribute by_bandwidth
501
+ # Top content types sorted by bandwidth utilized.
502
+ #
503
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::Format::ByBandwidth>]
504
+ required :by_bandwidth,
505
+ -> {
506
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::Format::ByBandwidth]
507
+ },
508
+ api_name: :byBandwidth
509
+
510
+ # @!attribute by_requests
511
+ # Top content types sorted by request count.
512
+ #
513
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::Format::ByRequest>]
514
+ required :by_requests,
515
+ -> {
516
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::Format::ByRequest]
517
+ },
518
+ api_name: :byRequests
519
+
520
+ # @!method initialize(by_bandwidth:, by_requests:)
521
+ # CDN traffic grouped by response `Content-Type`.
522
+ #
523
+ # @param by_bandwidth [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::Format::ByBandwidth>] Top content types sorted by bandwidth utilized.
524
+ #
525
+ # @param by_requests [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::Format::ByRequest>] Top content types sorted by request count.
526
+
527
+ class ByBandwidth < Imagekitio::Models::Accounts::RequestBandwidthEntry
528
+ # @!attribute name
529
+ # MIME type (e.g. `image/webp`).
530
+ #
531
+ # @return [String]
532
+ required :name, String
533
+
534
+ # @!method initialize(name:)
535
+ # @param name [String] MIME type (e.g. `image/webp`).
536
+ end
537
+
538
+ class ByRequest < Imagekitio::Models::Accounts::RequestBandwidthEntry
539
+ # @!attribute name
540
+ # MIME type (e.g. `image/webp`).
541
+ #
542
+ # @return [String]
543
+ required :name, String
544
+
545
+ # @!method initialize(name:)
546
+ # @param name [String] MIME type (e.g. `image/webp`).
547
+ end
548
+ end
549
+
550
+ class StatusCode < Imagekitio::Internal::Type::BaseModel
551
+ # @!attribute name
552
+ # HTTP status code.
553
+ #
554
+ # @return [String]
555
+ required :name, String
556
+
557
+ # @!attribute request_count
558
+ # Number of requests that received this status code.
559
+ #
560
+ # @return [Float]
561
+ required :request_count, Float, api_name: :requestCount
562
+
563
+ # @!method initialize(name:, request_count:)
564
+ # @param name [String] HTTP status code.
565
+ #
566
+ # @param request_count [Float] Number of requests that received this status code.
567
+ end
568
+
569
+ class Top404Asset < Imagekitio::Internal::Type::BaseModel
570
+ # @!attribute name
571
+ # URL that returned a 404 response.
572
+ #
573
+ # @return [String]
574
+ required :name, String
575
+
576
+ # @!attribute request_count
577
+ # Number of requests to this URL that returned a 404 response.
578
+ #
579
+ # @return [Float]
580
+ required :request_count, Float, api_name: :requestCount
581
+
582
+ # @!method initialize(name:, request_count:)
583
+ # @param name [String] URL that returned a 404 response.
584
+ #
585
+ # @param request_count [Float] Number of requests to this URL that returned a 404 response.
586
+ end
587
+
588
+ # @see Imagekitio::Models::Accounts::UsageAnalyticsResponse#top_images
589
+ class TopImages < Imagekitio::Internal::Type::BaseModel
590
+ # @!attribute by_bandwidth
591
+ # Top image assets sorted by bandwidth utilized.
592
+ #
593
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopImages::ByBandwidth>]
594
+ required :by_bandwidth,
595
+ -> {
596
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::TopImages::ByBandwidth]
597
+ },
598
+ api_name: :byBandwidth
599
+
600
+ # @!attribute by_requests
601
+ # Top image assets sorted by request count.
602
+ #
603
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopImages::ByRequest>]
604
+ required :by_requests,
605
+ -> {
606
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::TopImages::ByRequest]
607
+ },
608
+ api_name: :byRequests
609
+
610
+ # @!method initialize(by_bandwidth:, by_requests:)
611
+ # Top image assets by traffic.
612
+ #
613
+ # @param by_bandwidth [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopImages::ByBandwidth>] Top image assets sorted by bandwidth utilized.
614
+ #
615
+ # @param by_requests [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopImages::ByRequest>] Top image assets sorted by request count.
616
+
617
+ class ByBandwidth < Imagekitio::Models::Accounts::RequestBandwidthEntry
618
+ # @!attribute name
619
+ # URL of the image asset.
620
+ #
621
+ # @return [String]
622
+ required :name, String
623
+
624
+ # @!method initialize(name:)
625
+ # @param name [String] URL of the image asset.
626
+ end
627
+
628
+ class ByRequest < Imagekitio::Models::Accounts::RequestBandwidthEntry
629
+ # @!attribute name
630
+ # URL of the image asset.
631
+ #
632
+ # @return [String]
633
+ required :name, String
634
+
635
+ # @!method initialize(name:)
636
+ # @param name [String] URL of the image asset.
637
+ end
638
+ end
639
+
640
+ # @see Imagekitio::Models::Accounts::UsageAnalyticsResponse#top_image_transforms
641
+ class TopImageTransforms < Imagekitio::Internal::Type::BaseModel
642
+ # @!attribute by_bandwidth
643
+ # Top image transformation strings sorted by bandwidth utilized.
644
+ #
645
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopImageTransforms::ByBandwidth>]
646
+ required :by_bandwidth,
647
+ -> {
648
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::TopImageTransforms::ByBandwidth]
649
+ },
650
+ api_name: :byBandwidth
651
+
652
+ # @!attribute by_requests
653
+ # Top image transformation strings sorted by request count.
654
+ #
655
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopImageTransforms::ByRequest>]
656
+ required :by_requests,
657
+ -> {
658
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::TopImageTransforms::ByRequest]
659
+ },
660
+ api_name: :byRequests
661
+
662
+ # @!method initialize(by_bandwidth:, by_requests:)
663
+ # Top image transformation strings by traffic.
664
+ #
665
+ # @param by_bandwidth [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopImageTransforms::ByBandwidth>] Top image transformation strings sorted by bandwidth utilized.
666
+ #
667
+ # @param by_requests [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopImageTransforms::ByRequest>] Top image transformation strings sorted by request count.
668
+
669
+ class ByBandwidth < Imagekitio::Models::Accounts::RequestBandwidthEntry
670
+ # @!attribute name
671
+ # Image transformation string (e.g. `tr:w-400,h-400`).
672
+ #
673
+ # @return [String]
674
+ required :name, String
675
+
676
+ # @!method initialize(name:)
677
+ # @param name [String] Image transformation string (e.g. `tr:w-400,h-400`).
678
+ end
679
+
680
+ class ByRequest < Imagekitio::Models::Accounts::RequestBandwidthEntry
681
+ # @!attribute name
682
+ # Image transformation string (e.g. `tr:w-400,h-400`).
683
+ #
684
+ # @return [String]
685
+ required :name, String
686
+
687
+ # @!method initialize(name:)
688
+ # @param name [String] Image transformation string (e.g. `tr:w-400,h-400`).
689
+ end
690
+ end
691
+
692
+ # @see Imagekitio::Models::Accounts::UsageAnalyticsResponse#top_other_assets
693
+ class TopOtherAssets < Imagekitio::Internal::Type::BaseModel
694
+ # @!attribute by_bandwidth
695
+ # Top non-image, non-video assets sorted by bandwidth utilized.
696
+ #
697
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopOtherAssets::ByBandwidth>]
698
+ required :by_bandwidth,
699
+ -> {
700
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::TopOtherAssets::ByBandwidth]
701
+ },
702
+ api_name: :byBandwidth
703
+
704
+ # @!attribute by_requests
705
+ # Top non-image, non-video assets sorted by request count.
706
+ #
707
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopOtherAssets::ByRequest>]
708
+ required :by_requests,
709
+ -> {
710
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::TopOtherAssets::ByRequest]
711
+ },
712
+ api_name: :byRequests
713
+
714
+ # @!method initialize(by_bandwidth:, by_requests:)
715
+ # Top non-image, non-video assets by traffic.
716
+ #
717
+ # @param by_bandwidth [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopOtherAssets::ByBandwidth>] Top non-image, non-video assets sorted by bandwidth utilized.
718
+ #
719
+ # @param by_requests [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopOtherAssets::ByRequest>] Top non-image, non-video assets sorted by request count.
720
+
721
+ class ByBandwidth < Imagekitio::Models::Accounts::RequestBandwidthEntry
722
+ # @!attribute name
723
+ # URL of the non-image, non-video asset.
724
+ #
725
+ # @return [String]
726
+ required :name, String
727
+
728
+ # @!method initialize(name:)
729
+ # @param name [String] URL of the non-image, non-video asset.
730
+ end
731
+
732
+ class ByRequest < Imagekitio::Models::Accounts::RequestBandwidthEntry
733
+ # @!attribute name
734
+ # URL of the non-image, non-video asset.
735
+ #
736
+ # @return [String]
737
+ required :name, String
738
+
739
+ # @!method initialize(name:)
740
+ # @param name [String] URL of the non-image, non-video asset.
741
+ end
742
+ end
743
+
744
+ # @see Imagekitio::Models::Accounts::UsageAnalyticsResponse#top_referrers
745
+ class TopReferrers < Imagekitio::Internal::Type::BaseModel
746
+ # @!attribute by_bandwidth
747
+ # Top HTTP referrers sorted by bandwidth utilized.
748
+ #
749
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopReferrers::ByBandwidth>]
750
+ required :by_bandwidth,
751
+ -> {
752
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::TopReferrers::ByBandwidth]
753
+ },
754
+ api_name: :byBandwidth
755
+
756
+ # @!attribute by_requests
757
+ # Top HTTP referrers sorted by request count.
758
+ #
759
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopReferrers::ByRequest>]
760
+ required :by_requests,
761
+ -> {
762
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::TopReferrers::ByRequest]
763
+ },
764
+ api_name: :byRequests
765
+
766
+ # @!method initialize(by_bandwidth:, by_requests:)
767
+ # Top HTTP referrers by traffic.
768
+ #
769
+ # @param by_bandwidth [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopReferrers::ByBandwidth>] Top HTTP referrers sorted by bandwidth utilized.
770
+ #
771
+ # @param by_requests [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopReferrers::ByRequest>] Top HTTP referrers sorted by request count.
772
+
773
+ class ByBandwidth < Imagekitio::Models::Accounts::RequestBandwidthEntry
774
+ # @!attribute name
775
+ # Referrer URL.
776
+ #
777
+ # @return [String]
778
+ required :name, String
779
+
780
+ # @!method initialize(name:)
781
+ # @param name [String] Referrer URL.
782
+ end
783
+
784
+ class ByRequest < Imagekitio::Models::Accounts::RequestBandwidthEntry
785
+ # @!attribute name
786
+ # Referrer URL.
787
+ #
788
+ # @return [String]
789
+ required :name, String
790
+
791
+ # @!method initialize(name:)
792
+ # @param name [String] Referrer URL.
793
+ end
794
+ end
795
+
796
+ # @see Imagekitio::Models::Accounts::UsageAnalyticsResponse#top_user_agents
797
+ class TopUserAgents < Imagekitio::Internal::Type::BaseModel
798
+ # @!attribute by_bandwidth
799
+ # Top user agents sorted by bandwidth utilized.
800
+ #
801
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopUserAgents::ByBandwidth>]
802
+ required :by_bandwidth,
803
+ -> {
804
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::TopUserAgents::ByBandwidth]
805
+ },
806
+ api_name: :byBandwidth
807
+
808
+ # @!attribute by_requests
809
+ # Top user agents sorted by request count.
810
+ #
811
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopUserAgents::ByRequest>]
812
+ required :by_requests,
813
+ -> {
814
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::TopUserAgents::ByRequest]
815
+ },
816
+ api_name: :byRequests
817
+
818
+ # @!method initialize(by_bandwidth:, by_requests:)
819
+ # Top user agents by traffic.
820
+ #
821
+ # @param by_bandwidth [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopUserAgents::ByBandwidth>] Top user agents sorted by bandwidth utilized.
822
+ #
823
+ # @param by_requests [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopUserAgents::ByRequest>] Top user agents sorted by request count.
824
+
825
+ class ByBandwidth < Imagekitio::Models::Accounts::RequestBandwidthEntry
826
+ # @!attribute name
827
+ # User agent string.
828
+ #
829
+ # @return [String]
830
+ required :name, String
831
+
832
+ # @!method initialize(name:)
833
+ # @param name [String] User agent string.
834
+ end
835
+
836
+ class ByRequest < Imagekitio::Models::Accounts::RequestBandwidthEntry
837
+ # @!attribute name
838
+ # User agent string.
839
+ #
840
+ # @return [String]
841
+ required :name, String
842
+
843
+ # @!method initialize(name:)
844
+ # @param name [String] User agent string.
845
+ end
846
+ end
847
+
848
+ # @see Imagekitio::Models::Accounts::UsageAnalyticsResponse#top_videos
849
+ class TopVideos < Imagekitio::Internal::Type::BaseModel
850
+ # @!attribute by_bandwidth
851
+ # Top video assets sorted by bandwidth utilized.
852
+ #
853
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopVideos::ByBandwidth>]
854
+ required :by_bandwidth,
855
+ -> {
856
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::TopVideos::ByBandwidth]
857
+ },
858
+ api_name: :byBandwidth
859
+
860
+ # @!attribute by_requests
861
+ # Top video assets sorted by request count.
862
+ #
863
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopVideos::ByRequest>]
864
+ required :by_requests,
865
+ -> {
866
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::TopVideos::ByRequest]
867
+ },
868
+ api_name: :byRequests
869
+
870
+ # @!method initialize(by_bandwidth:, by_requests:)
871
+ # Top video assets by traffic.
872
+ #
873
+ # @param by_bandwidth [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopVideos::ByBandwidth>] Top video assets sorted by bandwidth utilized.
874
+ #
875
+ # @param by_requests [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopVideos::ByRequest>] Top video assets sorted by request count.
876
+
877
+ class ByBandwidth < Imagekitio::Models::Accounts::RequestBandwidthEntry
878
+ # @!attribute name
879
+ # URL of the video asset.
880
+ #
881
+ # @return [String]
882
+ required :name, String
883
+
884
+ # @!method initialize(name:)
885
+ # @param name [String] URL of the video asset.
886
+ end
887
+
888
+ class ByRequest < Imagekitio::Models::Accounts::RequestBandwidthEntry
889
+ # @!attribute name
890
+ # Full URL of the video asset (e.g. `https://ik.imagekit.io/demo/clip.mp4`).
891
+ #
892
+ # @return [String]
893
+ required :name, String
894
+
895
+ # @!method initialize(name:)
896
+ # @param name [String] Full URL of the video asset (e.g. `https://ik.imagekit.io/demo/clip.mp4`).
897
+ end
898
+ end
899
+
900
+ # @see Imagekitio::Models::Accounts::UsageAnalyticsResponse#top_video_transforms
901
+ class TopVideoTransforms < Imagekitio::Internal::Type::BaseModel
902
+ # @!attribute by_bandwidth
903
+ # Top video transformation strings sorted by bandwidth utilized.
904
+ #
905
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopVideoTransforms::ByBandwidth>]
906
+ required :by_bandwidth,
907
+ -> {
908
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::TopVideoTransforms::ByBandwidth]
909
+ },
910
+ api_name: :byBandwidth
911
+
912
+ # @!attribute by_requests
913
+ # Top video transformation strings sorted by request count.
914
+ #
915
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopVideoTransforms::ByRequest>]
916
+ required :by_requests,
917
+ -> {
918
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::TopVideoTransforms::ByRequest]
919
+ },
920
+ api_name: :byRequests
921
+
922
+ # @!method initialize(by_bandwidth:, by_requests:)
923
+ # Top video transformation strings by traffic.
924
+ #
925
+ # @param by_bandwidth [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopVideoTransforms::ByBandwidth>] Top video transformation strings sorted by bandwidth utilized.
926
+ #
927
+ # @param by_requests [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::TopVideoTransforms::ByRequest>] Top video transformation strings sorted by request count.
928
+
929
+ class ByBandwidth < Imagekitio::Models::Accounts::RequestBandwidthEntry
930
+ # @!attribute name
931
+ # Video transformation string (e.g. `tr:h-720,f-mp4`).
932
+ #
933
+ # @return [String]
934
+ required :name, String
935
+
936
+ # @!method initialize(name:)
937
+ # @param name [String] Video transformation string (e.g. `tr:h-720,f-mp4`).
938
+ end
939
+
940
+ class ByRequest < Imagekitio::Models::Accounts::RequestBandwidthEntry
941
+ # @!attribute name
942
+ # Video transformation string (e.g. `tr:h-720,f-mp4`).
943
+ #
944
+ # @return [String]
945
+ required :name, String
946
+
947
+ # @!method initialize(name:)
948
+ # @param name [String] Video transformation string (e.g. `tr:h-720,f-mp4`).
949
+ end
950
+ end
951
+
952
+ # @see Imagekitio::Models::Accounts::UsageAnalyticsResponse#url_endpoints
953
+ class URLEndpoints < Imagekitio::Internal::Type::BaseModel
954
+ # @!attribute by_bandwidth
955
+ # Top URL endpoints sorted by bandwidth utilized.
956
+ #
957
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::URLEndpoints::ByBandwidth>]
958
+ required :by_bandwidth,
959
+ -> {
960
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::URLEndpoints::ByBandwidth]
961
+ },
962
+ api_name: :byBandwidth
963
+
964
+ # @!attribute by_requests
965
+ # Top URL endpoints sorted by request count.
966
+ #
967
+ # @return [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::URLEndpoints::ByRequest>]
968
+ required :by_requests,
969
+ -> {
970
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::UsageAnalyticsResponse::URLEndpoints::ByRequest]
971
+ },
972
+ api_name: :byRequests
973
+
974
+ # @!method initialize(by_bandwidth:, by_requests:)
975
+ # CDN traffic grouped by configured URL endpoint. Traffic that does not match any
976
+ # named URL endpoint pattern is grouped under `Default`.
977
+ #
978
+ # @param by_bandwidth [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::URLEndpoints::ByBandwidth>] Top URL endpoints sorted by bandwidth utilized.
979
+ #
980
+ # @param by_requests [Array<Imagekitio::Models::Accounts::UsageAnalyticsResponse::URLEndpoints::ByRequest>] Top URL endpoints sorted by request count.
981
+
982
+ class ByBandwidth < Imagekitio::Models::Accounts::RequestBandwidthEntry
983
+ # @!attribute name
984
+ # URL endpoint name, or `Default` for traffic that does not match a named
985
+ # endpoint.
986
+ #
987
+ # @return [String]
988
+ required :name, String
989
+
990
+ # @!method initialize(name:)
991
+ # Some parameter documentations has been truncated, see
992
+ # {Imagekitio::Models::Accounts::UsageAnalyticsResponse::URLEndpoints::ByBandwidth}
993
+ # for more details.
994
+ #
995
+ # @param name [String] URL endpoint name, or `Default` for traffic that does not match a named endpoint
996
+ end
997
+
998
+ class ByRequest < Imagekitio::Models::Accounts::RequestBandwidthEntry
999
+ # @!attribute name
1000
+ # URL endpoint name, or `Default` for traffic that does not match a named
1001
+ # endpoint.
1002
+ #
1003
+ # @return [String]
1004
+ required :name, String
1005
+
1006
+ # @!method initialize(name:)
1007
+ # Some parameter documentations has been truncated, see
1008
+ # {Imagekitio::Models::Accounts::UsageAnalyticsResponse::URLEndpoints::ByRequest}
1009
+ # for more details.
1010
+ #
1011
+ # @param name [String] URL endpoint name, or `Default` for traffic that does not match a named endpoint
1012
+ end
1013
+ end
1014
+
1015
+ class VideoProcessing < Imagekitio::Internal::Type::BaseModel
1016
+ # @!attribute codec
1017
+ # Video codec used for the output (e.g. `h264`, `av1`).
1018
+ #
1019
+ # @return [String]
1020
+ required :codec, String
1021
+
1022
+ # @!attribute duration_seconds
1023
+ # Total output duration, in seconds, for this resolution and codec combination.
1024
+ #
1025
+ # @return [Float]
1026
+ required :duration_seconds, Float, api_name: :durationSeconds
1027
+
1028
+ # @!attribute resolution
1029
+ # Output resolution tier (e.g. `SD`, `HD`, `4K`).
1030
+ #
1031
+ # @return [String]
1032
+ required :resolution, String
1033
+
1034
+ # @!method initialize(codec:, duration_seconds:, resolution:)
1035
+ # @param codec [String] Video codec used for the output (e.g. `h264`, `av1`).
1036
+ #
1037
+ # @param duration_seconds [Float] Total output duration, in seconds, for this resolution and codec combination.
1038
+ #
1039
+ # @param resolution [String] Output resolution tier (e.g. `SD`, `HD`, `4K`).
1040
+ end
1041
+ end
1042
+ end
1043
+ end
1044
+ end