tencentcloud-sdk-ecdn 1.0.200

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,1968 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved.
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ module TencentCloud
18
+ module Ecdn
19
+ module V20191012
20
+ # AddEcdnDomain请求参数结构体
21
+ class AddEcdnDomainRequest < TencentCloud::Common::AbstractModel
22
+ # @param Domain: 域名。
23
+ # @type Domain: String
24
+ # @param Origin: 源站配置。
25
+ # @type Origin: :class:`Tencentcloud::Ecdn.v20191012.models.Origin`
26
+ # @param Area: 域名加速区域,mainland,overseas或global,分别表示中国境内加速,海外加速或全球加速。
27
+ # @type Area: String
28
+ # @param ProjectId: 项目id,默认0。
29
+ # @type ProjectId: Integer
30
+ # @param IpFilter: IP黑白名单配置。
31
+ # @type IpFilter: :class:`Tencentcloud::Ecdn.v20191012.models.IpFilter`
32
+ # @param IpFreqLimit: IP限频配置。
33
+ # @type IpFreqLimit: :class:`Tencentcloud::Ecdn.v20191012.models.IpFreqLimit`
34
+ # @param ResponseHeader: 源站响应头部配置。
35
+ # @type ResponseHeader: :class:`Tencentcloud::Ecdn.v20191012.models.ResponseHeader`
36
+ # @param CacheKey: 节点缓存配置。
37
+ # @type CacheKey: :class:`Tencentcloud::Ecdn.v20191012.models.CacheKey`
38
+ # @param Cache: 缓存规则配置。
39
+ # @type Cache: :class:`Tencentcloud::Ecdn.v20191012.models.Cache`
40
+ # @param Https: Https配置。
41
+ # @type Https: :class:`Tencentcloud::Ecdn.v20191012.models.Https`
42
+ # @param ForceRedirect: 访问协议强制跳转配置。
43
+ # @type ForceRedirect: :class:`Tencentcloud::Ecdn.v20191012.models.ForceRedirect`
44
+ # @param Tag: 域名绑定的标签
45
+ # @type Tag: Array
46
+ # @param WebSocket: WebSocket配置
47
+ # @type WebSocket: :class:`Tencentcloud::Ecdn.v20191012.models.WebSocket`
48
+
49
+ attr_accessor :Domain, :Origin, :Area, :ProjectId, :IpFilter, :IpFreqLimit, :ResponseHeader, :CacheKey, :Cache, :Https, :ForceRedirect, :Tag, :WebSocket
50
+
51
+ def initialize(domain=nil, origin=nil, area=nil, projectid=nil, ipfilter=nil, ipfreqlimit=nil, responseheader=nil, cachekey=nil, cache=nil, https=nil, forceredirect=nil, tag=nil, websocket=nil)
52
+ @Domain = domain
53
+ @Origin = origin
54
+ @Area = area
55
+ @ProjectId = projectid
56
+ @IpFilter = ipfilter
57
+ @IpFreqLimit = ipfreqlimit
58
+ @ResponseHeader = responseheader
59
+ @CacheKey = cachekey
60
+ @Cache = cache
61
+ @Https = https
62
+ @ForceRedirect = forceredirect
63
+ @Tag = tag
64
+ @WebSocket = websocket
65
+ end
66
+
67
+ def deserialize(params)
68
+ @Domain = params['Domain']
69
+ unless params['Origin'].nil?
70
+ @Origin = Origin.new
71
+ @Origin.deserialize(params['Origin'])
72
+ end
73
+ @Area = params['Area']
74
+ @ProjectId = params['ProjectId']
75
+ unless params['IpFilter'].nil?
76
+ @IpFilter = IpFilter.new
77
+ @IpFilter.deserialize(params['IpFilter'])
78
+ end
79
+ unless params['IpFreqLimit'].nil?
80
+ @IpFreqLimit = IpFreqLimit.new
81
+ @IpFreqLimit.deserialize(params['IpFreqLimit'])
82
+ end
83
+ unless params['ResponseHeader'].nil?
84
+ @ResponseHeader = ResponseHeader.new
85
+ @ResponseHeader.deserialize(params['ResponseHeader'])
86
+ end
87
+ unless params['CacheKey'].nil?
88
+ @CacheKey = CacheKey.new
89
+ @CacheKey.deserialize(params['CacheKey'])
90
+ end
91
+ unless params['Cache'].nil?
92
+ @Cache = Cache.new
93
+ @Cache.deserialize(params['Cache'])
94
+ end
95
+ unless params['Https'].nil?
96
+ @Https = Https.new
97
+ @Https.deserialize(params['Https'])
98
+ end
99
+ unless params['ForceRedirect'].nil?
100
+ @ForceRedirect = ForceRedirect.new
101
+ @ForceRedirect.deserialize(params['ForceRedirect'])
102
+ end
103
+ unless params['Tag'].nil?
104
+ @Tag = []
105
+ params['Tag'].each do |i|
106
+ tag_tmp = Tag.new
107
+ tag_tmp.deserialize(i)
108
+ @Tag << tag_tmp
109
+ end
110
+ end
111
+ unless params['WebSocket'].nil?
112
+ @WebSocket = WebSocket.new
113
+ @WebSocket.deserialize(params['WebSocket'])
114
+ end
115
+ end
116
+ end
117
+
118
+ # AddEcdnDomain返回参数结构体
119
+ class AddEcdnDomainResponse < TencentCloud::Common::AbstractModel
120
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
121
+ # @type RequestId: String
122
+
123
+ attr_accessor :RequestId
124
+
125
+ def initialize(requestid=nil)
126
+ @RequestId = requestid
127
+ end
128
+
129
+ def deserialize(params)
130
+ @RequestId = params['RequestId']
131
+ end
132
+ end
133
+
134
+ # 缓存配置简单版本,该版本不支持设置源站未返回max-age情况下的缓存规则。
135
+ class Cache < TencentCloud::Common::AbstractModel
136
+ # @param CacheRules: 缓存配置规则数组。
137
+ # @type CacheRules: Array
138
+ # @param FollowOrigin: 遵循源站 Cache-Control: max-age 配置,白名单功能。
139
+ # on:开启
140
+ # off:关闭
141
+ # 开启后,未能匹配 CacheRules 规则的资源将根据源站返回的 max-age 值进行节点缓存;匹配了 CacheRules 规则的资源将按照 CacheRules 中设置的缓存过期时间在节点进行缓存
142
+ # 注意:此字段可能返回 null,表示取不到有效值。
143
+ # @type FollowOrigin: String
144
+
145
+ attr_accessor :CacheRules, :FollowOrigin
146
+
147
+ def initialize(cacherules=nil, followorigin=nil)
148
+ @CacheRules = cacherules
149
+ @FollowOrigin = followorigin
150
+ end
151
+
152
+ def deserialize(params)
153
+ unless params['CacheRules'].nil?
154
+ @CacheRules = []
155
+ params['CacheRules'].each do |i|
156
+ cacherule_tmp = CacheRule.new
157
+ cacherule_tmp.deserialize(i)
158
+ @CacheRules << cacherule_tmp
159
+ end
160
+ end
161
+ @FollowOrigin = params['FollowOrigin']
162
+ end
163
+ end
164
+
165
+ # 缓存相关配置。
166
+ class CacheKey < TencentCloud::Common::AbstractModel
167
+ # @param FullUrlCache: 是否开启全路径缓存,on或off。
168
+ # @type FullUrlCache: String
169
+
170
+ attr_accessor :FullUrlCache
171
+
172
+ def initialize(fullurlcache=nil)
173
+ @FullUrlCache = fullurlcache
174
+ end
175
+
176
+ def deserialize(params)
177
+ @FullUrlCache = params['FullUrlCache']
178
+ end
179
+ end
180
+
181
+ # 缓存配置规则。
182
+ class CacheRule < TencentCloud::Common::AbstractModel
183
+ # @param CacheType: 缓存类型,支持all,file,directory,path,index,分别表示全部文件,后缀类型,目录,完整路径,首页。
184
+ # @type CacheType: String
185
+ # @param CacheContents: 缓存内容列表。
186
+ # @type CacheContents: Array
187
+ # @param CacheTime: 缓存时间,单位秒。
188
+ # @type CacheTime: Integer
189
+
190
+ attr_accessor :CacheType, :CacheContents, :CacheTime
191
+
192
+ def initialize(cachetype=nil, cachecontents=nil, cachetime=nil)
193
+ @CacheType = cachetype
194
+ @CacheContents = cachecontents
195
+ @CacheTime = cachetime
196
+ end
197
+
198
+ def deserialize(params)
199
+ @CacheType = params['CacheType']
200
+ @CacheContents = params['CacheContents']
201
+ @CacheTime = params['CacheTime']
202
+ end
203
+ end
204
+
205
+ # https客户端证书配置。
206
+ class ClientCert < TencentCloud::Common::AbstractModel
207
+ # @param Certificate: 客户端证书,pem格式。
208
+ # 注意:此字段可能返回 null,表示取不到有效值。
209
+ # @type Certificate: String
210
+ # @param CertName: 客户端证书名称。
211
+ # 注意:此字段可能返回 null,表示取不到有效值。
212
+ # @type CertName: String
213
+ # @param ExpireTime: 证书过期时间。
214
+ # 注意:此字段可能返回 null,表示取不到有效值。
215
+ # @type ExpireTime: String
216
+ # @param DeployTime: 证书颁发时间。
217
+ # 注意:此字段可能返回 null,表示取不到有效值。
218
+ # @type DeployTime: String
219
+
220
+ attr_accessor :Certificate, :CertName, :ExpireTime, :DeployTime
221
+
222
+ def initialize(certificate=nil, certname=nil, expiretime=nil, deploytime=nil)
223
+ @Certificate = certificate
224
+ @CertName = certname
225
+ @ExpireTime = expiretime
226
+ @DeployTime = deploytime
227
+ end
228
+
229
+ def deserialize(params)
230
+ @Certificate = params['Certificate']
231
+ @CertName = params['CertName']
232
+ @ExpireTime = params['ExpireTime']
233
+ @DeployTime = params['DeployTime']
234
+ end
235
+ end
236
+
237
+ # CreateVerifyRecord请求参数结构体
238
+ class CreateVerifyRecordRequest < TencentCloud::Common::AbstractModel
239
+ # @param Domain: 要取回的域名
240
+ # @type Domain: String
241
+
242
+ attr_accessor :Domain
243
+
244
+ def initialize(domain=nil)
245
+ @Domain = domain
246
+ end
247
+
248
+ def deserialize(params)
249
+ @Domain = params['Domain']
250
+ end
251
+ end
252
+
253
+ # CreateVerifyRecord返回参数结构体
254
+ class CreateVerifyRecordResponse < TencentCloud::Common::AbstractModel
255
+ # @param SubDomain: 子解析
256
+ # @type SubDomain: String
257
+ # @param Record: 解析值
258
+ # @type Record: String
259
+ # @param RecordType: 解析类型
260
+ # @type RecordType: String
261
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
262
+ # @type RequestId: String
263
+
264
+ attr_accessor :SubDomain, :Record, :RecordType, :RequestId
265
+
266
+ def initialize(subdomain=nil, record=nil, recordtype=nil, requestid=nil)
267
+ @SubDomain = subdomain
268
+ @Record = record
269
+ @RecordType = recordtype
270
+ @RequestId = requestid
271
+ end
272
+
273
+ def deserialize(params)
274
+ @SubDomain = params['SubDomain']
275
+ @Record = params['Record']
276
+ @RecordType = params['RecordType']
277
+ @RequestId = params['RequestId']
278
+ end
279
+ end
280
+
281
+ # DeleteEcdnDomain请求参数结构体
282
+ class DeleteEcdnDomainRequest < TencentCloud::Common::AbstractModel
283
+ # @param Domain: 待删除域名。
284
+ # @type Domain: String
285
+
286
+ attr_accessor :Domain
287
+
288
+ def initialize(domain=nil)
289
+ @Domain = domain
290
+ end
291
+
292
+ def deserialize(params)
293
+ @Domain = params['Domain']
294
+ end
295
+ end
296
+
297
+ # DeleteEcdnDomain返回参数结构体
298
+ class DeleteEcdnDomainResponse < TencentCloud::Common::AbstractModel
299
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
300
+ # @type RequestId: String
301
+
302
+ attr_accessor :RequestId
303
+
304
+ def initialize(requestid=nil)
305
+ @RequestId = requestid
306
+ end
307
+
308
+ def deserialize(params)
309
+ @RequestId = params['RequestId']
310
+ end
311
+ end
312
+
313
+ # DescribeDomainsConfig请求参数结构体
314
+ class DescribeDomainsConfigRequest < TencentCloud::Common::AbstractModel
315
+ # @param Offset: 分页查询的偏移地址,默认0。
316
+ # @type Offset: Integer
317
+ # @param Limit: 分页查询的域名个数,默认100。
318
+ # @type Limit: Integer
319
+ # @param Filters: 查询条件过滤器。
320
+ # @type Filters: Array
321
+ # @param Sort: 查询结果排序规则。
322
+ # @type Sort: :class:`Tencentcloud::Ecdn.v20191012.models.Sort`
323
+
324
+ attr_accessor :Offset, :Limit, :Filters, :Sort
325
+
326
+ def initialize(offset=nil, limit=nil, filters=nil, sort=nil)
327
+ @Offset = offset
328
+ @Limit = limit
329
+ @Filters = filters
330
+ @Sort = sort
331
+ end
332
+
333
+ def deserialize(params)
334
+ @Offset = params['Offset']
335
+ @Limit = params['Limit']
336
+ unless params['Filters'].nil?
337
+ @Filters = []
338
+ params['Filters'].each do |i|
339
+ domainfilter_tmp = DomainFilter.new
340
+ domainfilter_tmp.deserialize(i)
341
+ @Filters << domainfilter_tmp
342
+ end
343
+ end
344
+ unless params['Sort'].nil?
345
+ @Sort = Sort.new
346
+ @Sort.deserialize(params['Sort'])
347
+ end
348
+ end
349
+ end
350
+
351
+ # DescribeDomainsConfig返回参数结构体
352
+ class DescribeDomainsConfigResponse < TencentCloud::Common::AbstractModel
353
+ # @param Domains: 域名列表。
354
+ # @type Domains: Array
355
+ # @param TotalCount: 符合查询条件的域名总数,用于分页查询。
356
+ # @type TotalCount: Integer
357
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
358
+ # @type RequestId: String
359
+
360
+ attr_accessor :Domains, :TotalCount, :RequestId
361
+
362
+ def initialize(domains=nil, totalcount=nil, requestid=nil)
363
+ @Domains = domains
364
+ @TotalCount = totalcount
365
+ @RequestId = requestid
366
+ end
367
+
368
+ def deserialize(params)
369
+ unless params['Domains'].nil?
370
+ @Domains = []
371
+ params['Domains'].each do |i|
372
+ domaindetailinfo_tmp = DomainDetailInfo.new
373
+ domaindetailinfo_tmp.deserialize(i)
374
+ @Domains << domaindetailinfo_tmp
375
+ end
376
+ end
377
+ @TotalCount = params['TotalCount']
378
+ @RequestId = params['RequestId']
379
+ end
380
+ end
381
+
382
+ # DescribeDomains请求参数结构体
383
+ class DescribeDomainsRequest < TencentCloud::Common::AbstractModel
384
+ # @param Offset: 分页查询的偏移地址,默认0。
385
+ # @type Offset: Integer
386
+ # @param Limit: 分页查询的域名个数,默认100,最大支持1000。
387
+ # @type Limit: Integer
388
+ # @param Filters: 查询条件过滤器。
389
+ # @type Filters: Array
390
+
391
+ attr_accessor :Offset, :Limit, :Filters
392
+
393
+ def initialize(offset=nil, limit=nil, filters=nil)
394
+ @Offset = offset
395
+ @Limit = limit
396
+ @Filters = filters
397
+ end
398
+
399
+ def deserialize(params)
400
+ @Offset = params['Offset']
401
+ @Limit = params['Limit']
402
+ unless params['Filters'].nil?
403
+ @Filters = []
404
+ params['Filters'].each do |i|
405
+ domainfilter_tmp = DomainFilter.new
406
+ domainfilter_tmp.deserialize(i)
407
+ @Filters << domainfilter_tmp
408
+ end
409
+ end
410
+ end
411
+ end
412
+
413
+ # DescribeDomains返回参数结构体
414
+ class DescribeDomainsResponse < TencentCloud::Common::AbstractModel
415
+ # @param Domains: 域名信息列表。
416
+ # @type Domains: Array
417
+ # @param TotalCount: 域名总个数。
418
+ # @type TotalCount: Integer
419
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
420
+ # @type RequestId: String
421
+
422
+ attr_accessor :Domains, :TotalCount, :RequestId
423
+
424
+ def initialize(domains=nil, totalcount=nil, requestid=nil)
425
+ @Domains = domains
426
+ @TotalCount = totalcount
427
+ @RequestId = requestid
428
+ end
429
+
430
+ def deserialize(params)
431
+ unless params['Domains'].nil?
432
+ @Domains = []
433
+ params['Domains'].each do |i|
434
+ domainbriefinfo_tmp = DomainBriefInfo.new
435
+ domainbriefinfo_tmp.deserialize(i)
436
+ @Domains << domainbriefinfo_tmp
437
+ end
438
+ end
439
+ @TotalCount = params['TotalCount']
440
+ @RequestId = params['RequestId']
441
+ end
442
+ end
443
+
444
+ # DescribeEcdnDomainLogs请求参数结构体
445
+ class DescribeEcdnDomainLogsRequest < TencentCloud::Common::AbstractModel
446
+ # @param Domain: 待查询域名。
447
+ # @type Domain: String
448
+ # @param StartTime: 日志起始时间。如:2019-10-01 00:00:00
449
+ # @type StartTime: String
450
+ # @param EndTime: 日志结束时间,只支持最近30天内日志查询。2019-10-02 00:00:00
451
+ # @type EndTime: String
452
+ # @param Offset: 日志链接列表分页起始地址,默认0。
453
+ # @type Offset: Integer
454
+ # @param Limit: 日志链接列表分页记录条数,默认100,最大1000。
455
+ # @type Limit: Integer
456
+
457
+ attr_accessor :Domain, :StartTime, :EndTime, :Offset, :Limit
458
+
459
+ def initialize(domain=nil, starttime=nil, endtime=nil, offset=nil, limit=nil)
460
+ @Domain = domain
461
+ @StartTime = starttime
462
+ @EndTime = endtime
463
+ @Offset = offset
464
+ @Limit = limit
465
+ end
466
+
467
+ def deserialize(params)
468
+ @Domain = params['Domain']
469
+ @StartTime = params['StartTime']
470
+ @EndTime = params['EndTime']
471
+ @Offset = params['Offset']
472
+ @Limit = params['Limit']
473
+ end
474
+ end
475
+
476
+ # DescribeEcdnDomainLogs返回参数结构体
477
+ class DescribeEcdnDomainLogsResponse < TencentCloud::Common::AbstractModel
478
+ # @param DomainLogs: 日志链接列表。
479
+ # 注意:此字段可能返回 null,表示取不到有效值。
480
+ # @type DomainLogs: Array
481
+ # @param TotalCount: 日志链接总条数。
482
+ # @type TotalCount: Integer
483
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
484
+ # @type RequestId: String
485
+
486
+ attr_accessor :DomainLogs, :TotalCount, :RequestId
487
+
488
+ def initialize(domainlogs=nil, totalcount=nil, requestid=nil)
489
+ @DomainLogs = domainlogs
490
+ @TotalCount = totalcount
491
+ @RequestId = requestid
492
+ end
493
+
494
+ def deserialize(params)
495
+ unless params['DomainLogs'].nil?
496
+ @DomainLogs = []
497
+ params['DomainLogs'].each do |i|
498
+ domainlogs_tmp = DomainLogs.new
499
+ domainlogs_tmp.deserialize(i)
500
+ @DomainLogs << domainlogs_tmp
501
+ end
502
+ end
503
+ @TotalCount = params['TotalCount']
504
+ @RequestId = params['RequestId']
505
+ end
506
+ end
507
+
508
+ # DescribeEcdnDomainStatistics请求参数结构体
509
+ class DescribeEcdnDomainStatisticsRequest < TencentCloud::Common::AbstractModel
510
+ # @param StartTime: 查询起始时间,如:2019-12-13 00:00:00。
511
+ # 起止时间不超过90天。
512
+ # @type StartTime: String
513
+ # @param EndTime: 查询结束时间,如:2019-12-13 23:59:59。
514
+ # 起止时间不超过90天。
515
+ # @type EndTime: String
516
+ # @param Metrics: 统计指标名称:
517
+ # flux:流量,单位为 byte
518
+ # bandwidth:带宽,单位为 bps
519
+ # request:请求数,单位为 次
520
+ # @type Metrics: Array
521
+ # @param Domains: 指定查询域名列表
522
+ # @type Domains: Array
523
+ # @param Projects: 指定要查询的项目 ID,[前往查看项目 ID](https://console.cloud.tencent.com/project)
524
+ # 未填充域名情况下,指定项目查询,若填充了具体域名信息,以域名为主
525
+ # @type Projects: Array
526
+ # @param Offset: 列表分页起始地址,默认0。
527
+ # @type Offset: Integer
528
+ # @param Limit: 列表分页记录条数,默认1000,最大3000。
529
+ # @type Limit: Integer
530
+ # @param Area: 统计区域:
531
+ # mainland: 境内
532
+ # oversea: 境外
533
+ # global: 全部
534
+ # 默认 global
535
+ # @type Area: String
536
+
537
+ attr_accessor :StartTime, :EndTime, :Metrics, :Domains, :Projects, :Offset, :Limit, :Area
538
+
539
+ def initialize(starttime=nil, endtime=nil, metrics=nil, domains=nil, projects=nil, offset=nil, limit=nil, area=nil)
540
+ @StartTime = starttime
541
+ @EndTime = endtime
542
+ @Metrics = metrics
543
+ @Domains = domains
544
+ @Projects = projects
545
+ @Offset = offset
546
+ @Limit = limit
547
+ @Area = area
548
+ end
549
+
550
+ def deserialize(params)
551
+ @StartTime = params['StartTime']
552
+ @EndTime = params['EndTime']
553
+ @Metrics = params['Metrics']
554
+ @Domains = params['Domains']
555
+ @Projects = params['Projects']
556
+ @Offset = params['Offset']
557
+ @Limit = params['Limit']
558
+ @Area = params['Area']
559
+ end
560
+ end
561
+
562
+ # DescribeEcdnDomainStatistics返回参数结构体
563
+ class DescribeEcdnDomainStatisticsResponse < TencentCloud::Common::AbstractModel
564
+ # @param Data: 域名数据
565
+ # @type Data: Array
566
+ # @param TotalCount: 数量
567
+ # @type TotalCount: Integer
568
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
569
+ # @type RequestId: String
570
+
571
+ attr_accessor :Data, :TotalCount, :RequestId
572
+
573
+ def initialize(data=nil, totalcount=nil, requestid=nil)
574
+ @Data = data
575
+ @TotalCount = totalcount
576
+ @RequestId = requestid
577
+ end
578
+
579
+ def deserialize(params)
580
+ unless params['Data'].nil?
581
+ @Data = []
582
+ params['Data'].each do |i|
583
+ domaindata_tmp = DomainData.new
584
+ domaindata_tmp.deserialize(i)
585
+ @Data << domaindata_tmp
586
+ end
587
+ end
588
+ @TotalCount = params['TotalCount']
589
+ @RequestId = params['RequestId']
590
+ end
591
+ end
592
+
593
+ # DescribeEcdnStatistics请求参数结构体
594
+ class DescribeEcdnStatisticsRequest < TencentCloud::Common::AbstractModel
595
+ # @param StartTime: 查询起始时间,如:2019-12-13 00:00:00
596
+ # @type StartTime: String
597
+ # @param EndTime: 查询结束时间,如:2019-12-13 23:59:59
598
+ # @type EndTime: String
599
+ # @param Metrics: 指定查询指标,支持的类型有:
600
+ # flux:流量,单位为 byte
601
+ # bandwidth:带宽,单位为 bps
602
+ # request:请求数,单位为 次
603
+ # 2xx:返回 2xx 状态码汇总或者 2 开头状态码数据,单位为 个
604
+ # 3xx:返回 3xx 状态码汇总或者 3 开头状态码数据,单位为 个
605
+ # 4xx:返回 4xx 状态码汇总或者 4 开头状态码数据,单位为 个
606
+ # 5xx:返回 5xx 状态码汇总或者 5 开头状态码数据,单位为 个
607
+ # @type Metrics: Array
608
+ # @param Interval: 时间粒度,支持以下几种模式:
609
+ # 1 天 1,5,15,30,60,120,240,1440
610
+ # 2 ~ 3 天 15,30,60,120,240,1440
611
+ # 4 ~ 7 天 30,60,120,240,1440
612
+ # 8 ~ 31 天 60,120,240,1440
613
+ # @type Interval: Integer
614
+ # @param Domains: 指定查询域名列表
615
+
616
+ # 最多可一次性查询30个加速域名。
617
+ # @type Domains: Array
618
+ # @param Projects: 指定要查询的项目 ID,[前往查看项目 ID](https://console.cloud.tencent.com/project)
619
+ # 未填充域名情况下,指定项目查询,若填充了具体域名信息,以域名为主
620
+ # @type Projects: Array
621
+ # @param Area: 统计区域:
622
+ # mainland: 境内
623
+ # oversea: 境外
624
+ # global: 全部
625
+ # 默认 global
626
+ # @type Area: String
627
+
628
+ attr_accessor :StartTime, :EndTime, :Metrics, :Interval, :Domains, :Projects, :Area
629
+
630
+ def initialize(starttime=nil, endtime=nil, metrics=nil, interval=nil, domains=nil, projects=nil, area=nil)
631
+ @StartTime = starttime
632
+ @EndTime = endtime
633
+ @Metrics = metrics
634
+ @Interval = interval
635
+ @Domains = domains
636
+ @Projects = projects
637
+ @Area = area
638
+ end
639
+
640
+ def deserialize(params)
641
+ @StartTime = params['StartTime']
642
+ @EndTime = params['EndTime']
643
+ @Metrics = params['Metrics']
644
+ @Interval = params['Interval']
645
+ @Domains = params['Domains']
646
+ @Projects = params['Projects']
647
+ @Area = params['Area']
648
+ end
649
+ end
650
+
651
+ # DescribeEcdnStatistics返回参数结构体
652
+ class DescribeEcdnStatisticsResponse < TencentCloud::Common::AbstractModel
653
+ # @param Data: 指定条件查询得到的数据明细
654
+ # @type Data: Array
655
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
656
+ # @type RequestId: String
657
+
658
+ attr_accessor :Data, :RequestId
659
+
660
+ def initialize(data=nil, requestid=nil)
661
+ @Data = data
662
+ @RequestId = requestid
663
+ end
664
+
665
+ def deserialize(params)
666
+ unless params['Data'].nil?
667
+ @Data = []
668
+ params['Data'].each do |i|
669
+ resourcedata_tmp = ResourceData.new
670
+ resourcedata_tmp.deserialize(i)
671
+ @Data << resourcedata_tmp
672
+ end
673
+ end
674
+ @RequestId = params['RequestId']
675
+ end
676
+ end
677
+
678
+ # DescribeIpStatus请求参数结构体
679
+ class DescribeIpStatusRequest < TencentCloud::Common::AbstractModel
680
+ # @param Domain: 加速域名
681
+ # @type Domain: String
682
+ # @param Area: 查询区域:
683
+ # mainland: 国内节点
684
+ # overseas: 海外节点
685
+ # global: 全球节点
686
+ # @type Area: String
687
+
688
+ attr_accessor :Domain, :Area
689
+
690
+ def initialize(domain=nil, area=nil)
691
+ @Domain = domain
692
+ @Area = area
693
+ end
694
+
695
+ def deserialize(params)
696
+ @Domain = params['Domain']
697
+ @Area = params['Area']
698
+ end
699
+ end
700
+
701
+ # DescribeIpStatus返回参数结构体
702
+ class DescribeIpStatusResponse < TencentCloud::Common::AbstractModel
703
+ # @param Ips: 节点列表
704
+ # @type Ips: Array
705
+ # @param TotalCount: 节点总个数
706
+ # @type TotalCount: Integer
707
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
708
+ # @type RequestId: String
709
+
710
+ attr_accessor :Ips, :TotalCount, :RequestId
711
+
712
+ def initialize(ips=nil, totalcount=nil, requestid=nil)
713
+ @Ips = ips
714
+ @TotalCount = totalcount
715
+ @RequestId = requestid
716
+ end
717
+
718
+ def deserialize(params)
719
+ unless params['Ips'].nil?
720
+ @Ips = []
721
+ params['Ips'].each do |i|
722
+ ipstatus_tmp = IpStatus.new
723
+ ipstatus_tmp.deserialize(i)
724
+ @Ips << ipstatus_tmp
725
+ end
726
+ end
727
+ @TotalCount = params['TotalCount']
728
+ @RequestId = params['RequestId']
729
+ end
730
+ end
731
+
732
+ # DescribePurgeQuota请求参数结构体
733
+ class DescribePurgeQuotaRequest < TencentCloud::Common::AbstractModel
734
+
735
+
736
+ def initialize()
737
+ end
738
+
739
+ def deserialize(params)
740
+ end
741
+ end
742
+
743
+ # DescribePurgeQuota返回参数结构体
744
+ class DescribePurgeQuotaResponse < TencentCloud::Common::AbstractModel
745
+ # @param UrlPurge: Url刷新用量及配额。
746
+ # @type UrlPurge: :class:`Tencentcloud::Ecdn.v20191012.models.Quota`
747
+ # @param PathPurge: 目录刷新用量及配额。
748
+ # @type PathPurge: :class:`Tencentcloud::Ecdn.v20191012.models.Quota`
749
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
750
+ # @type RequestId: String
751
+
752
+ attr_accessor :UrlPurge, :PathPurge, :RequestId
753
+
754
+ def initialize(urlpurge=nil, pathpurge=nil, requestid=nil)
755
+ @UrlPurge = urlpurge
756
+ @PathPurge = pathpurge
757
+ @RequestId = requestid
758
+ end
759
+
760
+ def deserialize(params)
761
+ unless params['UrlPurge'].nil?
762
+ @UrlPurge = Quota.new
763
+ @UrlPurge.deserialize(params['UrlPurge'])
764
+ end
765
+ unless params['PathPurge'].nil?
766
+ @PathPurge = Quota.new
767
+ @PathPurge.deserialize(params['PathPurge'])
768
+ end
769
+ @RequestId = params['RequestId']
770
+ end
771
+ end
772
+
773
+ # DescribePurgeTasks请求参数结构体
774
+ class DescribePurgeTasksRequest < TencentCloud::Common::AbstractModel
775
+ # @param PurgeType: 查询刷新类型。url:查询 url 刷新记录;path:查询目录刷新记录。
776
+ # @type PurgeType: String
777
+ # @param StartTime: 开始时间,如2018-08-08 00:00:00。
778
+ # @type StartTime: String
779
+ # @param EndTime: 结束时间,如2018-08-08 23:59:59。
780
+ # @type EndTime: String
781
+ # @param TaskId: 提交时返回的任务 Id,查询时 TaskId 和起始时间必须指定一项。
782
+ # @type TaskId: String
783
+ # @param Offset: 分页查询偏移量,默认为0(从第0条开始)。
784
+ # @type Offset: Integer
785
+ # @param Limit: 分页查询限制数目,默认为20。
786
+ # @type Limit: Integer
787
+ # @param Keyword: 查询关键字,请输入域名或 http(s):// 开头完整 URL。
788
+ # @type Keyword: String
789
+ # @param Status: 查询指定任务状态,fail表示失败,done表示成功,process表示刷新中。
790
+ # @type Status: String
791
+
792
+ attr_accessor :PurgeType, :StartTime, :EndTime, :TaskId, :Offset, :Limit, :Keyword, :Status
793
+
794
+ def initialize(purgetype=nil, starttime=nil, endtime=nil, taskid=nil, offset=nil, limit=nil, keyword=nil, status=nil)
795
+ @PurgeType = purgetype
796
+ @StartTime = starttime
797
+ @EndTime = endtime
798
+ @TaskId = taskid
799
+ @Offset = offset
800
+ @Limit = limit
801
+ @Keyword = keyword
802
+ @Status = status
803
+ end
804
+
805
+ def deserialize(params)
806
+ @PurgeType = params['PurgeType']
807
+ @StartTime = params['StartTime']
808
+ @EndTime = params['EndTime']
809
+ @TaskId = params['TaskId']
810
+ @Offset = params['Offset']
811
+ @Limit = params['Limit']
812
+ @Keyword = params['Keyword']
813
+ @Status = params['Status']
814
+ end
815
+ end
816
+
817
+ # DescribePurgeTasks返回参数结构体
818
+ class DescribePurgeTasksResponse < TencentCloud::Common::AbstractModel
819
+ # @param PurgeLogs: 刷新历史记录。
820
+ # @type PurgeLogs: Array
821
+ # @param TotalCount: 任务总数,用于分页。
822
+ # @type TotalCount: Integer
823
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
824
+ # @type RequestId: String
825
+
826
+ attr_accessor :PurgeLogs, :TotalCount, :RequestId
827
+
828
+ def initialize(purgelogs=nil, totalcount=nil, requestid=nil)
829
+ @PurgeLogs = purgelogs
830
+ @TotalCount = totalcount
831
+ @RequestId = requestid
832
+ end
833
+
834
+ def deserialize(params)
835
+ unless params['PurgeLogs'].nil?
836
+ @PurgeLogs = []
837
+ params['PurgeLogs'].each do |i|
838
+ purgetask_tmp = PurgeTask.new
839
+ purgetask_tmp.deserialize(i)
840
+ @PurgeLogs << purgetask_tmp
841
+ end
842
+ end
843
+ @TotalCount = params['TotalCount']
844
+ @RequestId = params['RequestId']
845
+ end
846
+ end
847
+
848
+ # 排序类型的数据结构
849
+ class DetailData < TencentCloud::Common::AbstractModel
850
+ # @param Name: 数据类型的名称
851
+ # @type Name: String
852
+ # @param Value: 数据值
853
+ # @type Value: Float
854
+
855
+ attr_accessor :Name, :Value
856
+
857
+ def initialize(name=nil, value=nil)
858
+ @Name = name
859
+ @Value = value
860
+ end
861
+
862
+ def deserialize(params)
863
+ @Name = params['Name']
864
+ @Value = params['Value']
865
+ end
866
+ end
867
+
868
+ # CDN域名简要信息。
869
+ class DomainBriefInfo < TencentCloud::Common::AbstractModel
870
+ # @param ResourceId: 域名ID。
871
+ # @type ResourceId: String
872
+ # @param AppId: 腾讯云账号ID。
873
+ # @type AppId: Integer
874
+ # @param Domain: CDN加速域名。
875
+ # @type Domain: String
876
+ # @param Cname: 域名CName。
877
+ # @type Cname: String
878
+ # @param Status: 域名状态,pending,rejected,processing, online,offline,deleted分别表示审核中,审核未通过,审核通过部署中,已开启,已关闭,已删除。
879
+ # @type Status: String
880
+ # @param ProjectId: 项目ID。
881
+ # @type ProjectId: Integer
882
+ # @param CreateTime: 域名创建时间。
883
+ # @type CreateTime: String
884
+ # @param UpdateTime: 域名更新时间。
885
+ # @type UpdateTime: String
886
+ # @param Origin: 源站配置详情。
887
+ # @type Origin: :class:`Tencentcloud::Ecdn.v20191012.models.Origin`
888
+ # @param Disable: 域名封禁状态,normal,overdue,quota,malicious,ddos,idle,unlicensed,capping,readonly分别表示 正常,欠费停服,试用客户流量包耗尽,恶意用户,ddos攻击,无流量域名,未备案,带宽封顶,只读
889
+ # @type Disable: String
890
+ # @param Area: 加速区域,mainland,oversea或global。
891
+ # @type Area: String
892
+ # @param Readonly: 域名锁定状态,normal、global,分别表示未被锁定、全球锁定。
893
+ # @type Readonly: String
894
+
895
+ attr_accessor :ResourceId, :AppId, :Domain, :Cname, :Status, :ProjectId, :CreateTime, :UpdateTime, :Origin, :Disable, :Area, :Readonly
896
+
897
+ def initialize(resourceid=nil, appid=nil, domain=nil, cname=nil, status=nil, projectid=nil, createtime=nil, updatetime=nil, origin=nil, disable=nil, area=nil, readonly=nil)
898
+ @ResourceId = resourceid
899
+ @AppId = appid
900
+ @Domain = domain
901
+ @Cname = cname
902
+ @Status = status
903
+ @ProjectId = projectid
904
+ @CreateTime = createtime
905
+ @UpdateTime = updatetime
906
+ @Origin = origin
907
+ @Disable = disable
908
+ @Area = area
909
+ @Readonly = readonly
910
+ end
911
+
912
+ def deserialize(params)
913
+ @ResourceId = params['ResourceId']
914
+ @AppId = params['AppId']
915
+ @Domain = params['Domain']
916
+ @Cname = params['Cname']
917
+ @Status = params['Status']
918
+ @ProjectId = params['ProjectId']
919
+ @CreateTime = params['CreateTime']
920
+ @UpdateTime = params['UpdateTime']
921
+ unless params['Origin'].nil?
922
+ @Origin = Origin.new
923
+ @Origin.deserialize(params['Origin'])
924
+ end
925
+ @Disable = params['Disable']
926
+ @Area = params['Area']
927
+ @Readonly = params['Readonly']
928
+ end
929
+ end
930
+
931
+ # 排序类型数据结构
932
+ class DomainData < TencentCloud::Common::AbstractModel
933
+ # @param Resource: 域名
934
+ # @type Resource: String
935
+ # @param DetailData: 结果详情
936
+ # @type DetailData: Array
937
+
938
+ attr_accessor :Resource, :DetailData
939
+
940
+ def initialize(resource=nil, detaildata=nil)
941
+ @Resource = resource
942
+ @DetailData = detaildata
943
+ end
944
+
945
+ def deserialize(params)
946
+ @Resource = params['Resource']
947
+ unless params['DetailData'].nil?
948
+ @DetailData = []
949
+ params['DetailData'].each do |i|
950
+ detaildata_tmp = DetailData.new
951
+ detaildata_tmp.deserialize(i)
952
+ @DetailData << detaildata_tmp
953
+ end
954
+ end
955
+ end
956
+ end
957
+
958
+ # ECDN域名详细配置信息。
959
+ class DomainDetailInfo < TencentCloud::Common::AbstractModel
960
+ # @param ResourceId: 域名ID。
961
+ # @type ResourceId: String
962
+ # @param AppId: 腾讯云账号ID。
963
+ # @type AppId: Integer
964
+ # @param Domain: 加速域名。
965
+ # @type Domain: String
966
+ # @param Cname: 域名CName。
967
+ # 注意:此字段可能返回 null,表示取不到有效值。
968
+ # @type Cname: String
969
+ # @param Status: 域名状态,pending,rejected,processing, online,offline,deleted分别表示审核中,审核未通过,审核通过部署中,已开启,已关闭,已删除。
970
+ # @type Status: String
971
+ # @param ProjectId: 项目ID。
972
+ # @type ProjectId: Integer
973
+ # @param CreateTime: 域名创建时间。
974
+ # @type CreateTime: String
975
+ # @param UpdateTime: 域名更新时间。
976
+ # @type UpdateTime: String
977
+ # @param Origin: 源站配置。
978
+ # @type Origin: :class:`Tencentcloud::Ecdn.v20191012.models.Origin`
979
+ # @param IpFilter: IP黑白名单配置。
980
+ # 注意:此字段可能返回 null,表示取不到有效值。
981
+ # @type IpFilter: :class:`Tencentcloud::Ecdn.v20191012.models.IpFilter`
982
+ # @param IpFreqLimit: IP限频配置。
983
+ # 注意:此字段可能返回 null,表示取不到有效值。
984
+ # @type IpFreqLimit: :class:`Tencentcloud::Ecdn.v20191012.models.IpFreqLimit`
985
+ # @param ResponseHeader: 源站响应头部配置。
986
+ # 注意:此字段可能返回 null,表示取不到有效值。
987
+ # @type ResponseHeader: :class:`Tencentcloud::Ecdn.v20191012.models.ResponseHeader`
988
+ # @param CacheKey: 节点缓存配置。
989
+ # 注意:此字段可能返回 null,表示取不到有效值。
990
+ # @type CacheKey: :class:`Tencentcloud::Ecdn.v20191012.models.CacheKey`
991
+ # @param Cache: 缓存规则配置。
992
+ # 注意:此字段可能返回 null,表示取不到有效值。
993
+ # @type Cache: :class:`Tencentcloud::Ecdn.v20191012.models.Cache`
994
+ # @param Https: Https配置。
995
+ # 注意:此字段可能返回 null,表示取不到有效值。
996
+ # @type Https: :class:`Tencentcloud::Ecdn.v20191012.models.Https`
997
+ # @param Disable: 域名封禁状态,normal,overdue,quota,malicious,ddos,idle,unlicensed,capping,readonly分别表示 正常,欠费停服,试用客户流量包耗尽,恶意用户,ddos攻击,无流量域名,未备案,带宽封顶,只读。
998
+ # 注意:此字段可能返回 null,表示取不到有效值。
999
+ # @type Disable: String
1000
+ # @param ForceRedirect: 访问协议强制跳转配置。
1001
+ # 注意:此字段可能返回 null,表示取不到有效值。
1002
+ # @type ForceRedirect: :class:`Tencentcloud::Ecdn.v20191012.models.ForceRedirect`
1003
+ # @param Area: 加速区域,mainland,overseas或global。
1004
+ # 注意:此字段可能返回 null,表示取不到有效值。
1005
+ # @type Area: String
1006
+ # @param Readonly: 域名锁定状态,normal、global 分别表示未被锁定,全球锁定。
1007
+ # 注意:此字段可能返回 null,表示取不到有效值。
1008
+ # @type Readonly: String
1009
+ # @param Tag: 域名标签。
1010
+ # 注意:此字段可能返回 null,表示取不到有效值。
1011
+ # @type Tag: Array
1012
+ # @param WebSocket: WebSocket配置。
1013
+ # 注意:此字段可能返回 null,表示取不到有效值。
1014
+ # @type WebSocket: :class:`Tencentcloud::Ecdn.v20191012.models.WebSocket`
1015
+
1016
+ attr_accessor :ResourceId, :AppId, :Domain, :Cname, :Status, :ProjectId, :CreateTime, :UpdateTime, :Origin, :IpFilter, :IpFreqLimit, :ResponseHeader, :CacheKey, :Cache, :Https, :Disable, :ForceRedirect, :Area, :Readonly, :Tag, :WebSocket
1017
+
1018
+ def initialize(resourceid=nil, appid=nil, domain=nil, cname=nil, status=nil, projectid=nil, createtime=nil, updatetime=nil, origin=nil, ipfilter=nil, ipfreqlimit=nil, responseheader=nil, cachekey=nil, cache=nil, https=nil, disable=nil, forceredirect=nil, area=nil, readonly=nil, tag=nil, websocket=nil)
1019
+ @ResourceId = resourceid
1020
+ @AppId = appid
1021
+ @Domain = domain
1022
+ @Cname = cname
1023
+ @Status = status
1024
+ @ProjectId = projectid
1025
+ @CreateTime = createtime
1026
+ @UpdateTime = updatetime
1027
+ @Origin = origin
1028
+ @IpFilter = ipfilter
1029
+ @IpFreqLimit = ipfreqlimit
1030
+ @ResponseHeader = responseheader
1031
+ @CacheKey = cachekey
1032
+ @Cache = cache
1033
+ @Https = https
1034
+ @Disable = disable
1035
+ @ForceRedirect = forceredirect
1036
+ @Area = area
1037
+ @Readonly = readonly
1038
+ @Tag = tag
1039
+ @WebSocket = websocket
1040
+ end
1041
+
1042
+ def deserialize(params)
1043
+ @ResourceId = params['ResourceId']
1044
+ @AppId = params['AppId']
1045
+ @Domain = params['Domain']
1046
+ @Cname = params['Cname']
1047
+ @Status = params['Status']
1048
+ @ProjectId = params['ProjectId']
1049
+ @CreateTime = params['CreateTime']
1050
+ @UpdateTime = params['UpdateTime']
1051
+ unless params['Origin'].nil?
1052
+ @Origin = Origin.new
1053
+ @Origin.deserialize(params['Origin'])
1054
+ end
1055
+ unless params['IpFilter'].nil?
1056
+ @IpFilter = IpFilter.new
1057
+ @IpFilter.deserialize(params['IpFilter'])
1058
+ end
1059
+ unless params['IpFreqLimit'].nil?
1060
+ @IpFreqLimit = IpFreqLimit.new
1061
+ @IpFreqLimit.deserialize(params['IpFreqLimit'])
1062
+ end
1063
+ unless params['ResponseHeader'].nil?
1064
+ @ResponseHeader = ResponseHeader.new
1065
+ @ResponseHeader.deserialize(params['ResponseHeader'])
1066
+ end
1067
+ unless params['CacheKey'].nil?
1068
+ @CacheKey = CacheKey.new
1069
+ @CacheKey.deserialize(params['CacheKey'])
1070
+ end
1071
+ unless params['Cache'].nil?
1072
+ @Cache = Cache.new
1073
+ @Cache.deserialize(params['Cache'])
1074
+ end
1075
+ unless params['Https'].nil?
1076
+ @Https = Https.new
1077
+ @Https.deserialize(params['Https'])
1078
+ end
1079
+ @Disable = params['Disable']
1080
+ unless params['ForceRedirect'].nil?
1081
+ @ForceRedirect = ForceRedirect.new
1082
+ @ForceRedirect.deserialize(params['ForceRedirect'])
1083
+ end
1084
+ @Area = params['Area']
1085
+ @Readonly = params['Readonly']
1086
+ unless params['Tag'].nil?
1087
+ @Tag = []
1088
+ params['Tag'].each do |i|
1089
+ tag_tmp = Tag.new
1090
+ tag_tmp.deserialize(i)
1091
+ @Tag << tag_tmp
1092
+ end
1093
+ end
1094
+ unless params['WebSocket'].nil?
1095
+ @WebSocket = WebSocket.new
1096
+ @WebSocket.deserialize(params['WebSocket'])
1097
+ end
1098
+ end
1099
+ end
1100
+
1101
+ # 域名查询时过滤条件。
1102
+ class DomainFilter < TencentCloud::Common::AbstractModel
1103
+ # @param Name: 过滤字段名,支持的列表如下:
1104
+ # - origin:主源站。
1105
+ # - domain:域名。
1106
+ # - resourceId:域名id。
1107
+ # - status:域名状态,online,offline,processing。
1108
+ # - disable:域名封禁状态,normal,unlicensed。
1109
+ # - projectId:项目ID。
1110
+ # - fullUrlCache:全路径缓存,on或off。
1111
+ # - https:是否配置https,on,off或processing。
1112
+ # - originPullProtocol:回源协议类型,支持http,follow或https。
1113
+ # - area:加速区域,支持mainland,overseas或global。
1114
+ # - tagKey:标签键。
1115
+ # @type Name: String
1116
+ # @param Value: 过滤字段值。
1117
+ # @type Value: Array
1118
+ # @param Fuzzy: 是否启用模糊查询,仅支持过滤字段名为origin,domain。
1119
+ # @type Fuzzy: Boolean
1120
+
1121
+ attr_accessor :Name, :Value, :Fuzzy
1122
+
1123
+ def initialize(name=nil, value=nil, fuzzy=nil)
1124
+ @Name = name
1125
+ @Value = value
1126
+ @Fuzzy = fuzzy
1127
+ end
1128
+
1129
+ def deserialize(params)
1130
+ @Name = params['Name']
1131
+ @Value = params['Value']
1132
+ @Fuzzy = params['Fuzzy']
1133
+ end
1134
+ end
1135
+
1136
+ # 域名日志信息
1137
+ class DomainLogs < TencentCloud::Common::AbstractModel
1138
+ # @param StartTime: 日志起始时间。
1139
+ # @type StartTime: String
1140
+ # @param EndTime: 日志结束时间。
1141
+ # @type EndTime: String
1142
+ # @param LogPath: 日志下载路径。
1143
+ # @type LogPath: String
1144
+
1145
+ attr_accessor :StartTime, :EndTime, :LogPath
1146
+
1147
+ def initialize(starttime=nil, endtime=nil, logpath=nil)
1148
+ @StartTime = starttime
1149
+ @EndTime = endtime
1150
+ @LogPath = logpath
1151
+ end
1152
+
1153
+ def deserialize(params)
1154
+ @StartTime = params['StartTime']
1155
+ @EndTime = params['EndTime']
1156
+ @LogPath = params['LogPath']
1157
+ end
1158
+ end
1159
+
1160
+ # 访问明细数据类型
1161
+ class EcdnData < TencentCloud::Common::AbstractModel
1162
+ # @param Metrics: 查询指定的指标名称:Bandwidth,Flux,Request,Delay,状态码,LogBandwidth,LogFlux,LogRequest
1163
+ # @type Metrics: Array
1164
+ # @param DetailData: 明细数据组合
1165
+ # @type DetailData: Array
1166
+
1167
+ attr_accessor :Metrics, :DetailData
1168
+
1169
+ def initialize(metrics=nil, detaildata=nil)
1170
+ @Metrics = metrics
1171
+ @DetailData = detaildata
1172
+ end
1173
+
1174
+ def deserialize(params)
1175
+ @Metrics = params['Metrics']
1176
+ unless params['DetailData'].nil?
1177
+ @DetailData = []
1178
+ params['DetailData'].each do |i|
1179
+ timestampdata_tmp = TimestampData.new
1180
+ timestampdata_tmp.deserialize(i)
1181
+ @DetailData << timestampdata_tmp
1182
+ end
1183
+ end
1184
+ end
1185
+ end
1186
+
1187
+ # 访问协议强制跳转配置。
1188
+ class ForceRedirect < TencentCloud::Common::AbstractModel
1189
+ # @param Switch: 访问协议强制跳转配置开关,on或off。
1190
+ # 注意:此字段可能返回 null,表示取不到有效值。
1191
+ # @type Switch: String
1192
+ # @param RedirectType: 强制跳转访问协议类型,支持http,https,分别表示请求强制跳转http协议,请求强制跳转https协议。
1193
+ # 注意:此字段可能返回 null,表示取不到有效值。
1194
+ # @type RedirectType: String
1195
+ # @param RedirectStatusCode: 强制跳转开启时返回的http状态码,支持301或302。
1196
+ # 注意:此字段可能返回 null,表示取不到有效值。
1197
+ # @type RedirectStatusCode: Integer
1198
+
1199
+ attr_accessor :Switch, :RedirectType, :RedirectStatusCode
1200
+
1201
+ def initialize(switch=nil, redirecttype=nil, redirectstatuscode=nil)
1202
+ @Switch = switch
1203
+ @RedirectType = redirecttype
1204
+ @RedirectStatusCode = redirectstatuscode
1205
+ end
1206
+
1207
+ def deserialize(params)
1208
+ @Switch = params['Switch']
1209
+ @RedirectType = params['RedirectType']
1210
+ @RedirectStatusCode = params['RedirectStatusCode']
1211
+ end
1212
+ end
1213
+
1214
+ # HSTS 配置。
1215
+ class Hsts < TencentCloud::Common::AbstractModel
1216
+ # @param Switch: 是否开启,on或off。
1217
+ # @type Switch: String
1218
+ # @param MaxAge: MaxAge数值。
1219
+ # 注意:此字段可能返回 null,表示取不到有效值。
1220
+ # @type MaxAge: Integer
1221
+ # @param IncludeSubDomains: 是否包含子域名,on或off。
1222
+ # 注意:此字段可能返回 null,表示取不到有效值。
1223
+ # @type IncludeSubDomains: String
1224
+
1225
+ attr_accessor :Switch, :MaxAge, :IncludeSubDomains
1226
+
1227
+ def initialize(switch=nil, maxage=nil, includesubdomains=nil)
1228
+ @Switch = switch
1229
+ @MaxAge = maxage
1230
+ @IncludeSubDomains = includesubdomains
1231
+ end
1232
+
1233
+ def deserialize(params)
1234
+ @Switch = params['Switch']
1235
+ @MaxAge = params['MaxAge']
1236
+ @IncludeSubDomains = params['IncludeSubDomains']
1237
+ end
1238
+ end
1239
+
1240
+ # 分路径的http头部设置规则。
1241
+ class HttpHeaderPathRule < TencentCloud::Common::AbstractModel
1242
+ # @param HeaderMode: http头部设置方式,支持add,set或del,分别表示新增,设置或删除头部。
1243
+ # 请求头部暂不支持set。
1244
+ # 注意:此字段可能返回 null,表示取不到有效值。
1245
+ # @type HeaderMode: String
1246
+ # @param HeaderName: http头部名称。
1247
+ # 注意:此字段可能返回 null,表示取不到有效值。
1248
+ # @type HeaderName: String
1249
+ # @param HeaderValue: http头部值。del时可不填写该字段。
1250
+ # 注意:此字段可能返回 null,表示取不到有效值。
1251
+ # @type HeaderValue: String
1252
+ # @param RuleType: 生效的url路径规则类型,支持all,file,directory或path,分别表示全部路径,文件后缀类型,目录或绝对路径生效。
1253
+ # 注意:此字段可能返回 null,表示取不到有效值。
1254
+ # @type RuleType: String
1255
+ # @param RulePaths: url路径或文件类型列表。
1256
+ # 注意:此字段可能返回 null,表示取不到有效值。
1257
+ # @type RulePaths: Array
1258
+
1259
+ attr_accessor :HeaderMode, :HeaderName, :HeaderValue, :RuleType, :RulePaths
1260
+
1261
+ def initialize(headermode=nil, headername=nil, headervalue=nil, ruletype=nil, rulepaths=nil)
1262
+ @HeaderMode = headermode
1263
+ @HeaderName = headername
1264
+ @HeaderValue = headervalue
1265
+ @RuleType = ruletype
1266
+ @RulePaths = rulepaths
1267
+ end
1268
+
1269
+ def deserialize(params)
1270
+ @HeaderMode = params['HeaderMode']
1271
+ @HeaderName = params['HeaderName']
1272
+ @HeaderValue = params['HeaderValue']
1273
+ @RuleType = params['RuleType']
1274
+ @RulePaths = params['RulePaths']
1275
+ end
1276
+ end
1277
+
1278
+ # 域名https配置。
1279
+ class Https < TencentCloud::Common::AbstractModel
1280
+ # @param Switch: https配置开关,on或off。开启https配置的域名在部署中状态,开关保持off。
1281
+ # 注意:此字段可能返回 null,表示取不到有效值。
1282
+ # @type Switch: String
1283
+ # @param Http2: 是否开启http2,on或off。
1284
+ # 注意:此字段可能返回 null,表示取不到有效值。
1285
+ # @type Http2: String
1286
+ # @param OcspStapling: 是否开启OCSP功能,on或off。
1287
+ # 注意:此字段可能返回 null,表示取不到有效值。
1288
+ # @type OcspStapling: String
1289
+ # @param VerifyClient: 是否开启客户端证书校验功能,on或off,开启时必选上传客户端证书信息。
1290
+ # 注意:此字段可能返回 null,表示取不到有效值。
1291
+ # @type VerifyClient: String
1292
+ # @param CertInfo: 服务器证书配置信息。
1293
+ # 注意:此字段可能返回 null,表示取不到有效值。
1294
+ # @type CertInfo: :class:`Tencentcloud::Ecdn.v20191012.models.ServerCert`
1295
+ # @param ClientCertInfo: 客户端证书配置信息。
1296
+ # 注意:此字段可能返回 null,表示取不到有效值。
1297
+ # @type ClientCertInfo: :class:`Tencentcloud::Ecdn.v20191012.models.ClientCert`
1298
+ # @param Spdy: 是否开启Spdy,on或off。
1299
+ # 注意:此字段可能返回 null,表示取不到有效值。
1300
+ # @type Spdy: String
1301
+ # @param SslStatus: https证书部署状态,closed,deploying,deployed,failed分别表示已关闭,部署中,部署成功,部署失败。不可作为入参使用。
1302
+ # 注意:此字段可能返回 null,表示取不到有效值。
1303
+ # @type SslStatus: String
1304
+ # @param Hsts: Hsts配置
1305
+ # 注意:此字段可能返回 null,表示取不到有效值。
1306
+ # @type Hsts: :class:`Tencentcloud::Ecdn.v20191012.models.Hsts`
1307
+
1308
+ attr_accessor :Switch, :Http2, :OcspStapling, :VerifyClient, :CertInfo, :ClientCertInfo, :Spdy, :SslStatus, :Hsts
1309
+
1310
+ def initialize(switch=nil, http2=nil, ocspstapling=nil, verifyclient=nil, certinfo=nil, clientcertinfo=nil, spdy=nil, sslstatus=nil, hsts=nil)
1311
+ @Switch = switch
1312
+ @Http2 = http2
1313
+ @OcspStapling = ocspstapling
1314
+ @VerifyClient = verifyclient
1315
+ @CertInfo = certinfo
1316
+ @ClientCertInfo = clientcertinfo
1317
+ @Spdy = spdy
1318
+ @SslStatus = sslstatus
1319
+ @Hsts = hsts
1320
+ end
1321
+
1322
+ def deserialize(params)
1323
+ @Switch = params['Switch']
1324
+ @Http2 = params['Http2']
1325
+ @OcspStapling = params['OcspStapling']
1326
+ @VerifyClient = params['VerifyClient']
1327
+ unless params['CertInfo'].nil?
1328
+ @CertInfo = ServerCert.new
1329
+ @CertInfo.deserialize(params['CertInfo'])
1330
+ end
1331
+ unless params['ClientCertInfo'].nil?
1332
+ @ClientCertInfo = ClientCert.new
1333
+ @ClientCertInfo.deserialize(params['ClientCertInfo'])
1334
+ end
1335
+ @Spdy = params['Spdy']
1336
+ @SslStatus = params['SslStatus']
1337
+ unless params['Hsts'].nil?
1338
+ @Hsts = Hsts.new
1339
+ @Hsts.deserialize(params['Hsts'])
1340
+ end
1341
+ end
1342
+ end
1343
+
1344
+ # IP黑白名单。
1345
+ class IpFilter < TencentCloud::Common::AbstractModel
1346
+ # @param Switch: IP黑白名单开关,on或off。
1347
+ # @type Switch: String
1348
+ # @param FilterType: IP黑白名单类型,whitelist或blacklist。
1349
+ # 注意:此字段可能返回 null,表示取不到有效值。
1350
+ # @type FilterType: String
1351
+ # @param Filters: IP黑白名单列表。
1352
+ # 注意:此字段可能返回 null,表示取不到有效值。
1353
+ # @type Filters: Array
1354
+
1355
+ attr_accessor :Switch, :FilterType, :Filters
1356
+
1357
+ def initialize(switch=nil, filtertype=nil, filters=nil)
1358
+ @Switch = switch
1359
+ @FilterType = filtertype
1360
+ @Filters = filters
1361
+ end
1362
+
1363
+ def deserialize(params)
1364
+ @Switch = params['Switch']
1365
+ @FilterType = params['FilterType']
1366
+ @Filters = params['Filters']
1367
+ end
1368
+ end
1369
+
1370
+ # IP限频配置。
1371
+ class IpFreqLimit < TencentCloud::Common::AbstractModel
1372
+ # @param Switch: IP限频配置开关,on或off。
1373
+ # @type Switch: String
1374
+ # @param Qps: 每秒请求数。
1375
+ # 注意:此字段可能返回 null,表示取不到有效值。
1376
+ # @type Qps: Integer
1377
+
1378
+ attr_accessor :Switch, :Qps
1379
+
1380
+ def initialize(switch=nil, qps=nil)
1381
+ @Switch = switch
1382
+ @Qps = qps
1383
+ end
1384
+
1385
+ def deserialize(params)
1386
+ @Switch = params['Switch']
1387
+ @Qps = params['Qps']
1388
+ end
1389
+ end
1390
+
1391
+ # 节点 IP 信息
1392
+ class IpStatus < TencentCloud::Common::AbstractModel
1393
+ # @param Ip: 节点 IP
1394
+ # @type Ip: String
1395
+ # @param District: 节点所属区域
1396
+ # @type District: String
1397
+ # @param Isp: 节点所属运营商
1398
+ # @type Isp: String
1399
+ # @param City: 节点所在城市
1400
+ # @type City: String
1401
+ # @param Status: 节点状态
1402
+ # online:上线状态,正常调度服务中
1403
+ # offline:下线状态
1404
+ # @type Status: String
1405
+ # @param CreateTime: 节点 IP 添加时间
1406
+ # @type CreateTime: String
1407
+
1408
+ attr_accessor :Ip, :District, :Isp, :City, :Status, :CreateTime
1409
+
1410
+ def initialize(ip=nil, district=nil, isp=nil, city=nil, status=nil, createtime=nil)
1411
+ @Ip = ip
1412
+ @District = district
1413
+ @Isp = isp
1414
+ @City = city
1415
+ @Status = status
1416
+ @CreateTime = createtime
1417
+ end
1418
+
1419
+ def deserialize(params)
1420
+ @Ip = params['Ip']
1421
+ @District = params['District']
1422
+ @Isp = params['Isp']
1423
+ @City = params['City']
1424
+ @Status = params['Status']
1425
+ @CreateTime = params['CreateTime']
1426
+ end
1427
+ end
1428
+
1429
+ # 源站配置。
1430
+ class Origin < TencentCloud::Common::AbstractModel
1431
+ # @param Origins: 主源站列表,IP与域名源站不可混填。配置源站端口["origin1:port1", "origin2:port2"],配置回源权重["origin1::weight1", "origin2::weight2"],同时配置端口与权重 ["origin1:port1:weight1", "origin2:port2:weight2"],权重值有效范围为0-100。
1432
+ # @type Origins: Array
1433
+ # @param OriginType: 主源站类型,支持domain,ip,分别表示域名源站,ip源站。
1434
+ # 设置Origins时必须填写。
1435
+ # 注意:此字段可能返回 null,表示取不到有效值。
1436
+ # @type OriginType: String
1437
+ # @param ServerName: 回源时Host头部值。
1438
+ # 注意:此字段可能返回 null,表示取不到有效值。
1439
+ # @type ServerName: String
1440
+ # @param OriginPullProtocol: 回源协议类型,支持http,follow,https,分别表示强制http回源,协议跟随回源,https回源。
1441
+ # 不传入的情况下默认为http回源.
1442
+ # 注意:此字段可能返回 null,表示取不到有效值。
1443
+ # @type OriginPullProtocol: String
1444
+ # @param BackupOrigins: 备份源站列表。
1445
+ # @type BackupOrigins: Array
1446
+ # @param BackupOriginType: 备份源站类型,同OriginType。
1447
+ # 设置BackupOrigins时必须填写。
1448
+ # 注意:此字段可能返回 null,表示取不到有效值。
1449
+ # @type BackupOriginType: String
1450
+
1451
+ attr_accessor :Origins, :OriginType, :ServerName, :OriginPullProtocol, :BackupOrigins, :BackupOriginType
1452
+
1453
+ def initialize(origins=nil, origintype=nil, servername=nil, originpullprotocol=nil, backuporigins=nil, backuporigintype=nil)
1454
+ @Origins = origins
1455
+ @OriginType = origintype
1456
+ @ServerName = servername
1457
+ @OriginPullProtocol = originpullprotocol
1458
+ @BackupOrigins = backuporigins
1459
+ @BackupOriginType = backuporigintype
1460
+ end
1461
+
1462
+ def deserialize(params)
1463
+ @Origins = params['Origins']
1464
+ @OriginType = params['OriginType']
1465
+ @ServerName = params['ServerName']
1466
+ @OriginPullProtocol = params['OriginPullProtocol']
1467
+ @BackupOrigins = params['BackupOrigins']
1468
+ @BackupOriginType = params['BackupOriginType']
1469
+ end
1470
+ end
1471
+
1472
+ # PurgePathCache请求参数结构体
1473
+ class PurgePathCacheRequest < TencentCloud::Common::AbstractModel
1474
+ # @param Paths: 要刷新的目录列表,必须包含协议头部。
1475
+ # @type Paths: Array
1476
+ # @param FlushType: 刷新类型,flush 代表刷新有更新的资源,delete 表示刷新全部资源。
1477
+ # @type FlushType: String
1478
+
1479
+ attr_accessor :Paths, :FlushType
1480
+
1481
+ def initialize(paths=nil, flushtype=nil)
1482
+ @Paths = paths
1483
+ @FlushType = flushtype
1484
+ end
1485
+
1486
+ def deserialize(params)
1487
+ @Paths = params['Paths']
1488
+ @FlushType = params['FlushType']
1489
+ end
1490
+ end
1491
+
1492
+ # PurgePathCache返回参数结构体
1493
+ class PurgePathCacheResponse < TencentCloud::Common::AbstractModel
1494
+ # @param TaskId: 刷新任务Id,前十位为提交任务时的UTC时间。
1495
+ # @type TaskId: String
1496
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1497
+ # @type RequestId: String
1498
+
1499
+ attr_accessor :TaskId, :RequestId
1500
+
1501
+ def initialize(taskid=nil, requestid=nil)
1502
+ @TaskId = taskid
1503
+ @RequestId = requestid
1504
+ end
1505
+
1506
+ def deserialize(params)
1507
+ @TaskId = params['TaskId']
1508
+ @RequestId = params['RequestId']
1509
+ end
1510
+ end
1511
+
1512
+ # 刷新任务日志详情
1513
+ class PurgeTask < TencentCloud::Common::AbstractModel
1514
+ # @param TaskId: 刷新任务ID。
1515
+ # @type TaskId: String
1516
+ # @param Url: 刷新Url。
1517
+ # @type Url: String
1518
+ # @param Status: 刷新任务状态,fail表示失败,done表示成功,process表示刷新中。
1519
+ # @type Status: String
1520
+ # @param PurgeType: 刷新类型,url表示url刷新,path表示目录刷新。
1521
+ # @type PurgeType: String
1522
+ # @param FlushType: 刷新资源方式,flush代表刷新更新资源,delete代表刷新全部资源。
1523
+ # @type FlushType: String
1524
+ # @param CreateTime: 刷新任务提交时间
1525
+ # @type CreateTime: String
1526
+
1527
+ attr_accessor :TaskId, :Url, :Status, :PurgeType, :FlushType, :CreateTime
1528
+
1529
+ def initialize(taskid=nil, url=nil, status=nil, purgetype=nil, flushtype=nil, createtime=nil)
1530
+ @TaskId = taskid
1531
+ @Url = url
1532
+ @Status = status
1533
+ @PurgeType = purgetype
1534
+ @FlushType = flushtype
1535
+ @CreateTime = createtime
1536
+ end
1537
+
1538
+ def deserialize(params)
1539
+ @TaskId = params['TaskId']
1540
+ @Url = params['Url']
1541
+ @Status = params['Status']
1542
+ @PurgeType = params['PurgeType']
1543
+ @FlushType = params['FlushType']
1544
+ @CreateTime = params['CreateTime']
1545
+ end
1546
+ end
1547
+
1548
+ # PurgeUrlsCache请求参数结构体
1549
+ class PurgeUrlsCacheRequest < TencentCloud::Common::AbstractModel
1550
+ # @param Urls: 要刷新的Url列表,必须包含协议头部。
1551
+ # @type Urls: Array
1552
+
1553
+ attr_accessor :Urls
1554
+
1555
+ def initialize(urls=nil)
1556
+ @Urls = urls
1557
+ end
1558
+
1559
+ def deserialize(params)
1560
+ @Urls = params['Urls']
1561
+ end
1562
+ end
1563
+
1564
+ # PurgeUrlsCache返回参数结构体
1565
+ class PurgeUrlsCacheResponse < TencentCloud::Common::AbstractModel
1566
+ # @param TaskId: 刷新任务Id,前十位为提交任务时的UTC时间。
1567
+ # @type TaskId: String
1568
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1569
+ # @type RequestId: String
1570
+
1571
+ attr_accessor :TaskId, :RequestId
1572
+
1573
+ def initialize(taskid=nil, requestid=nil)
1574
+ @TaskId = taskid
1575
+ @RequestId = requestid
1576
+ end
1577
+
1578
+ def deserialize(params)
1579
+ @TaskId = params['TaskId']
1580
+ @RequestId = params['RequestId']
1581
+ end
1582
+ end
1583
+
1584
+ # 刷新用量及刷新配额
1585
+ class Quota < TencentCloud::Common::AbstractModel
1586
+ # @param Batch: 单次批量提交配额上限。
1587
+ # @type Batch: Integer
1588
+ # @param Total: 每日提交配额上限。
1589
+ # @type Total: Integer
1590
+ # @param Available: 每日剩余的可提交配额。
1591
+ # @type Available: Integer
1592
+
1593
+ attr_accessor :Batch, :Total, :Available
1594
+
1595
+ def initialize(batch=nil, total=nil, available=nil)
1596
+ @Batch = batch
1597
+ @Total = total
1598
+ @Available = available
1599
+ end
1600
+
1601
+ def deserialize(params)
1602
+ @Batch = params['Batch']
1603
+ @Total = params['Total']
1604
+ @Available = params['Available']
1605
+ end
1606
+ end
1607
+
1608
+ # 查询对象及其对应的访问明细数据
1609
+ class ResourceData < TencentCloud::Common::AbstractModel
1610
+ # @param Resource: 资源名称,根据查询条件不同分为以下几类:
1611
+ # 具体域名:表示该域名明细数据
1612
+ # multiDomains:表示多域名汇总明细数据
1613
+ # 项目 ID:指定项目查询时,显示为项目 ID
1614
+ # all:账号维度明细数据
1615
+ # @type Resource: String
1616
+ # @param EcdnData: 资源对应的数据明细
1617
+ # @type EcdnData: :class:`Tencentcloud::Ecdn.v20191012.models.EcdnData`
1618
+
1619
+ attr_accessor :Resource, :EcdnData
1620
+
1621
+ def initialize(resource=nil, ecdndata=nil)
1622
+ @Resource = resource
1623
+ @EcdnData = ecdndata
1624
+ end
1625
+
1626
+ def deserialize(params)
1627
+ @Resource = params['Resource']
1628
+ unless params['EcdnData'].nil?
1629
+ @EcdnData = EcdnData.new
1630
+ @EcdnData.deserialize(params['EcdnData'])
1631
+ end
1632
+ end
1633
+ end
1634
+
1635
+ # 自定义响应头配置。
1636
+ class ResponseHeader < TencentCloud::Common::AbstractModel
1637
+ # @param Switch: 自定义响应头开关,on或off。
1638
+ # @type Switch: String
1639
+ # @param HeaderRules: 自定义响应头规则数组。
1640
+ # 注意:此字段可能返回 null,表示取不到有效值。
1641
+ # @type HeaderRules: Array
1642
+
1643
+ attr_accessor :Switch, :HeaderRules
1644
+
1645
+ def initialize(switch=nil, headerrules=nil)
1646
+ @Switch = switch
1647
+ @HeaderRules = headerrules
1648
+ end
1649
+
1650
+ def deserialize(params)
1651
+ @Switch = params['Switch']
1652
+ unless params['HeaderRules'].nil?
1653
+ @HeaderRules = []
1654
+ params['HeaderRules'].each do |i|
1655
+ httpheaderpathrule_tmp = HttpHeaderPathRule.new
1656
+ httpheaderpathrule_tmp.deserialize(i)
1657
+ @HeaderRules << httpheaderpathrule_tmp
1658
+ end
1659
+ end
1660
+ end
1661
+ end
1662
+
1663
+ # https服务端证书配置。
1664
+ class ServerCert < TencentCloud::Common::AbstractModel
1665
+ # @param CertId: 服务器证书id,当证书为腾讯云托管证书时必填。
1666
+ # 注意:此字段可能返回 null,表示取不到有效值。
1667
+ # @type CertId: String
1668
+ # @param CertName: 服务器证书名称,当证书为腾讯云托管证书时必填。
1669
+ # 注意:此字段可能返回 null,表示取不到有效值。
1670
+ # @type CertName: String
1671
+ # @param Certificate: 服务器证书信息,上传自有证书时必填,必须包含完整的证书链信息。
1672
+ # 注意:此字段可能返回 null,表示取不到有效值。
1673
+ # @type Certificate: String
1674
+ # @param PrivateKey: 服务器密钥信息,上传自有证书时必填。
1675
+ # 注意:此字段可能返回 null,表示取不到有效值。
1676
+ # @type PrivateKey: String
1677
+ # @param ExpireTime: 证书过期时间。
1678
+ # 注意:此字段可能返回 null,表示取不到有效值。
1679
+ # @type ExpireTime: String
1680
+ # @param DeployTime: 证书颁发时间。
1681
+ # 注意:此字段可能返回 null,表示取不到有效值。
1682
+ # @type DeployTime: String
1683
+ # @param Message: 证书备注信息。
1684
+ # 注意:此字段可能返回 null,表示取不到有效值。
1685
+ # @type Message: String
1686
+
1687
+ attr_accessor :CertId, :CertName, :Certificate, :PrivateKey, :ExpireTime, :DeployTime, :Message
1688
+
1689
+ def initialize(certid=nil, certname=nil, certificate=nil, privatekey=nil, expiretime=nil, deploytime=nil, message=nil)
1690
+ @CertId = certid
1691
+ @CertName = certname
1692
+ @Certificate = certificate
1693
+ @PrivateKey = privatekey
1694
+ @ExpireTime = expiretime
1695
+ @DeployTime = deploytime
1696
+ @Message = message
1697
+ end
1698
+
1699
+ def deserialize(params)
1700
+ @CertId = params['CertId']
1701
+ @CertName = params['CertName']
1702
+ @Certificate = params['Certificate']
1703
+ @PrivateKey = params['PrivateKey']
1704
+ @ExpireTime = params['ExpireTime']
1705
+ @DeployTime = params['DeployTime']
1706
+ @Message = params['Message']
1707
+ end
1708
+ end
1709
+
1710
+ # 查询结果排序条件。
1711
+ class Sort < TencentCloud::Common::AbstractModel
1712
+ # @param Key: 排序字段,当前支持:
1713
+ # createTime,域名创建时间
1714
+ # certExpireTime,证书过期时间
1715
+ # @type Key: String
1716
+ # @param Sequence: asc/desc,默认desc。
1717
+ # @type Sequence: String
1718
+
1719
+ attr_accessor :Key, :Sequence
1720
+
1721
+ def initialize(key=nil, sequence=nil)
1722
+ @Key = key
1723
+ @Sequence = sequence
1724
+ end
1725
+
1726
+ def deserialize(params)
1727
+ @Key = params['Key']
1728
+ @Sequence = params['Sequence']
1729
+ end
1730
+ end
1731
+
1732
+ # StartEcdnDomain请求参数结构体
1733
+ class StartEcdnDomainRequest < TencentCloud::Common::AbstractModel
1734
+ # @param Domain: 待启用域名。
1735
+ # @type Domain: String
1736
+
1737
+ attr_accessor :Domain
1738
+
1739
+ def initialize(domain=nil)
1740
+ @Domain = domain
1741
+ end
1742
+
1743
+ def deserialize(params)
1744
+ @Domain = params['Domain']
1745
+ end
1746
+ end
1747
+
1748
+ # StartEcdnDomain返回参数结构体
1749
+ class StartEcdnDomainResponse < TencentCloud::Common::AbstractModel
1750
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1751
+ # @type RequestId: String
1752
+
1753
+ attr_accessor :RequestId
1754
+
1755
+ def initialize(requestid=nil)
1756
+ @RequestId = requestid
1757
+ end
1758
+
1759
+ def deserialize(params)
1760
+ @RequestId = params['RequestId']
1761
+ end
1762
+ end
1763
+
1764
+ # StopEcdnDomain请求参数结构体
1765
+ class StopEcdnDomainRequest < TencentCloud::Common::AbstractModel
1766
+ # @param Domain: 待停用域名。
1767
+ # @type Domain: String
1768
+
1769
+ attr_accessor :Domain
1770
+
1771
+ def initialize(domain=nil)
1772
+ @Domain = domain
1773
+ end
1774
+
1775
+ def deserialize(params)
1776
+ @Domain = params['Domain']
1777
+ end
1778
+ end
1779
+
1780
+ # StopEcdnDomain返回参数结构体
1781
+ class StopEcdnDomainResponse < TencentCloud::Common::AbstractModel
1782
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1783
+ # @type RequestId: String
1784
+
1785
+ attr_accessor :RequestId
1786
+
1787
+ def initialize(requestid=nil)
1788
+ @RequestId = requestid
1789
+ end
1790
+
1791
+ def deserialize(params)
1792
+ @RequestId = params['RequestId']
1793
+ end
1794
+ end
1795
+
1796
+ # 标签键和标签值
1797
+ class Tag < TencentCloud::Common::AbstractModel
1798
+ # @param TagKey: 标签键
1799
+ # 注意:此字段可能返回 null,表示取不到有效值。
1800
+ # @type TagKey: String
1801
+ # @param TagValue: 标签值
1802
+ # 注意:此字段可能返回 null,表示取不到有效值。
1803
+ # @type TagValue: String
1804
+
1805
+ attr_accessor :TagKey, :TagValue
1806
+
1807
+ def initialize(tagkey=nil, tagvalue=nil)
1808
+ @TagKey = tagkey
1809
+ @TagValue = tagvalue
1810
+ end
1811
+
1812
+ def deserialize(params)
1813
+ @TagKey = params['TagKey']
1814
+ @TagValue = params['TagValue']
1815
+ end
1816
+ end
1817
+
1818
+ # 时间戳与其对应的数值
1819
+ class TimestampData < TencentCloud::Common::AbstractModel
1820
+ # @param Time: 数据统计时间点,采用向前汇总模式
1821
+ # 以 5 分钟粒度为例,13:35:00 时间点代表的统计数据区间为 13:35:00 至 13:39:59
1822
+ # @type Time: String
1823
+ # @param Value: 数据值
1824
+ # @type Value: Array
1825
+
1826
+ attr_accessor :Time, :Value
1827
+
1828
+ def initialize(time=nil, value=nil)
1829
+ @Time = time
1830
+ @Value = value
1831
+ end
1832
+
1833
+ def deserialize(params)
1834
+ @Time = params['Time']
1835
+ @Value = params['Value']
1836
+ end
1837
+ end
1838
+
1839
+ # UpdateDomainConfig请求参数结构体
1840
+ class UpdateDomainConfigRequest < TencentCloud::Common::AbstractModel
1841
+ # @param Domain: 域名。
1842
+ # @type Domain: String
1843
+ # @param Origin: 源站配置。
1844
+ # @type Origin: :class:`Tencentcloud::Ecdn.v20191012.models.Origin`
1845
+ # @param ProjectId: 项目id。
1846
+ # @type ProjectId: Integer
1847
+ # @param IpFilter: IP黑白名单配置。
1848
+ # @type IpFilter: :class:`Tencentcloud::Ecdn.v20191012.models.IpFilter`
1849
+ # @param IpFreqLimit: IP限频配置。
1850
+ # @type IpFreqLimit: :class:`Tencentcloud::Ecdn.v20191012.models.IpFreqLimit`
1851
+ # @param ResponseHeader: 源站响应头部配置。
1852
+ # @type ResponseHeader: :class:`Tencentcloud::Ecdn.v20191012.models.ResponseHeader`
1853
+ # @param CacheKey: 节点缓存配置。
1854
+ # @type CacheKey: :class:`Tencentcloud::Ecdn.v20191012.models.CacheKey`
1855
+ # @param Cache: 缓存规则配置。
1856
+ # @type Cache: :class:`Tencentcloud::Ecdn.v20191012.models.Cache`
1857
+ # @param Https: Https配置。
1858
+ # @type Https: :class:`Tencentcloud::Ecdn.v20191012.models.Https`
1859
+ # @param ForceRedirect: 访问协议强制跳转配置。
1860
+ # @type ForceRedirect: :class:`Tencentcloud::Ecdn.v20191012.models.ForceRedirect`
1861
+ # @param Area: 域名加速区域,mainland,overseas或global,分别表示中国境内加速,海外加速或全球加速。
1862
+ # @type Area: String
1863
+ # @param WebSocket: WebSocket配置
1864
+ # @type WebSocket: :class:`Tencentcloud::Ecdn.v20191012.models.WebSocket`
1865
+
1866
+ attr_accessor :Domain, :Origin, :ProjectId, :IpFilter, :IpFreqLimit, :ResponseHeader, :CacheKey, :Cache, :Https, :ForceRedirect, :Area, :WebSocket
1867
+
1868
+ def initialize(domain=nil, origin=nil, projectid=nil, ipfilter=nil, ipfreqlimit=nil, responseheader=nil, cachekey=nil, cache=nil, https=nil, forceredirect=nil, area=nil, websocket=nil)
1869
+ @Domain = domain
1870
+ @Origin = origin
1871
+ @ProjectId = projectid
1872
+ @IpFilter = ipfilter
1873
+ @IpFreqLimit = ipfreqlimit
1874
+ @ResponseHeader = responseheader
1875
+ @CacheKey = cachekey
1876
+ @Cache = cache
1877
+ @Https = https
1878
+ @ForceRedirect = forceredirect
1879
+ @Area = area
1880
+ @WebSocket = websocket
1881
+ end
1882
+
1883
+ def deserialize(params)
1884
+ @Domain = params['Domain']
1885
+ unless params['Origin'].nil?
1886
+ @Origin = Origin.new
1887
+ @Origin.deserialize(params['Origin'])
1888
+ end
1889
+ @ProjectId = params['ProjectId']
1890
+ unless params['IpFilter'].nil?
1891
+ @IpFilter = IpFilter.new
1892
+ @IpFilter.deserialize(params['IpFilter'])
1893
+ end
1894
+ unless params['IpFreqLimit'].nil?
1895
+ @IpFreqLimit = IpFreqLimit.new
1896
+ @IpFreqLimit.deserialize(params['IpFreqLimit'])
1897
+ end
1898
+ unless params['ResponseHeader'].nil?
1899
+ @ResponseHeader = ResponseHeader.new
1900
+ @ResponseHeader.deserialize(params['ResponseHeader'])
1901
+ end
1902
+ unless params['CacheKey'].nil?
1903
+ @CacheKey = CacheKey.new
1904
+ @CacheKey.deserialize(params['CacheKey'])
1905
+ end
1906
+ unless params['Cache'].nil?
1907
+ @Cache = Cache.new
1908
+ @Cache.deserialize(params['Cache'])
1909
+ end
1910
+ unless params['Https'].nil?
1911
+ @Https = Https.new
1912
+ @Https.deserialize(params['Https'])
1913
+ end
1914
+ unless params['ForceRedirect'].nil?
1915
+ @ForceRedirect = ForceRedirect.new
1916
+ @ForceRedirect.deserialize(params['ForceRedirect'])
1917
+ end
1918
+ @Area = params['Area']
1919
+ unless params['WebSocket'].nil?
1920
+ @WebSocket = WebSocket.new
1921
+ @WebSocket.deserialize(params['WebSocket'])
1922
+ end
1923
+ end
1924
+ end
1925
+
1926
+ # UpdateDomainConfig返回参数结构体
1927
+ class UpdateDomainConfigResponse < TencentCloud::Common::AbstractModel
1928
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1929
+ # @type RequestId: String
1930
+
1931
+ attr_accessor :RequestId
1932
+
1933
+ def initialize(requestid=nil)
1934
+ @RequestId = requestid
1935
+ end
1936
+
1937
+ def deserialize(params)
1938
+ @RequestId = params['RequestId']
1939
+ end
1940
+ end
1941
+
1942
+ # WebSocket配置。
1943
+ class WebSocket < TencentCloud::Common::AbstractModel
1944
+ # @param Switch: WebSocket 超时配置开关, 开关为off时,平台仍支持WebSocket连接,此时超时时间默认为15秒,若需要调整超时时间,将开关置为on.
1945
+
1946
+ # * WebSocket 为内测功能,如需使用,请联系腾讯云工程师开白.
1947
+ # @type Switch: String
1948
+ # @param Timeout: 设置超时时间,单位为秒,最大超时时间65秒。
1949
+ # 注意:此字段可能返回 null,表示取不到有效值。
1950
+ # @type Timeout: Integer
1951
+
1952
+ attr_accessor :Switch, :Timeout
1953
+
1954
+ def initialize(switch=nil, timeout=nil)
1955
+ @Switch = switch
1956
+ @Timeout = timeout
1957
+ end
1958
+
1959
+ def deserialize(params)
1960
+ @Switch = params['Switch']
1961
+ @Timeout = params['Timeout']
1962
+ end
1963
+ end
1964
+
1965
+ end
1966
+ end
1967
+ end
1968
+