# frozen_string_literal: true # Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. module TencentCloud module Teo module V20220901 # 加速类型 class AccelerateType < TencentCloud::Common::AbstractModel # @param Switch: 加速开关。取值范围: #
  • on:打开;
  • #
  • off:关闭。
  • # @type Switch: String attr_accessor :Switch def initialize(switch=nil) @Switch = switch end def deserialize(params) @Switch = params['Switch'] end end # 加速域名 class AccelerationDomain < TencentCloud::Common::AbstractModel # @param OriginDetail: 源站信息。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type OriginDetail: :class:`Tencentcloud::Teo.v20220901.models.OriginDetail` # @param CreatedOn: 创建时间。 # @type CreatedOn: String # @param DomainName: 加速域名名称。 # @type DomainName: String # @param ModifiedOn: 修改时间。 # @type ModifiedOn: String # @param ZoneId: 站点 ID。 # @type ZoneId: String # @param DomainStatus: 加速域名状态,取值有: #
  • online:已生效;
  • #
  • process:部署中;
  • #
  • offline:已停用;
  • #
  • forbidden:已封禁;
  • #
  • init:未生效,待激活站点;
  • # @type DomainStatus: String # @param Cname: CNAME 地址。 # @type Cname: String # @param IdentificationStatus: 加速域名归属权验证状态,取值有:
  • pending:待验证;
  • finished:已完成验证。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type IdentificationStatus: String attr_accessor :OriginDetail, :CreatedOn, :DomainName, :ModifiedOn, :ZoneId, :DomainStatus, :Cname, :IdentificationStatus def initialize(origindetail=nil, createdon=nil, domainname=nil, modifiedon=nil, zoneid=nil, domainstatus=nil, cname=nil, identificationstatus=nil) @OriginDetail = origindetail @CreatedOn = createdon @DomainName = domainname @ModifiedOn = modifiedon @ZoneId = zoneid @DomainStatus = domainstatus @Cname = cname @IdentificationStatus = identificationstatus end def deserialize(params) unless params['OriginDetail'].nil? @OriginDetail = OriginDetail.new @OriginDetail.deserialize(params['OriginDetail']) end @CreatedOn = params['CreatedOn'] @DomainName = params['DomainName'] @ModifiedOn = params['ModifiedOn'] @ZoneId = params['ZoneId'] @DomainStatus = params['DomainStatus'] @Cname = params['Cname'] @IdentificationStatus = params['IdentificationStatus'] end end # 精准防护条件 class AclCondition < TencentCloud::Common::AbstractModel # @param MatchFrom: 匹配字段,取值有: #
  • host:请求域名;
  • #
  • sip:客户端IP;
  • #
  • ua:User-Agent;
  • #
  • cookie:会话 Cookie;
  • #
  • cgi:CGI 脚本;
  • #
  • xff:XFF 扩展头部;
  • #
  • url:请求 URL;
  • #
  • accept:请求内容类型;
  • #
  • method:请求方式;
  • #
  • header:请求头部;
  • #
  • app_proto:应用层协议;
  • #
  • sip_proto:网络层协议。
  • # @type MatchFrom: String # @param MatchParam: 匹配字符串。当 MatchFrom 为 header 时,可以填入 header 的 key 作为参数。 # @type MatchParam: String # @param Operator: 匹配关系,取值有: #
  • equal:字符串等于;
  • #
  • not_equal:数值不等于;
  • #
  • include:字符包含;
  • #
  • not_include:字符不包含;
  • #
  • match:ip匹配;
  • #
  • not_match:ip不匹配;
  • #
  • include_area:地域包含;
  • #
  • is_empty:存在字段但值为空;
  • #
  • not_exists:不存在关键字段;
  • #
  • regexp:正则匹配;
  • #
  • len_gt:数值大于;
  • #
  • len_lt:数值小于;
  • #
  • len_eq:数值等于;
  • #
  • match_prefix:前缀匹配;
  • #
  • match_suffix:后缀匹配;
  • #
  • wildcard:通配符。
  • # @type Operator: String # @param MatchContent: 匹配内容。 # @type MatchContent: String attr_accessor :MatchFrom, :MatchParam, :Operator, :MatchContent def initialize(matchfrom=nil, matchparam=nil, operator=nil, matchcontent=nil) @MatchFrom = matchfrom @MatchParam = matchparam @Operator = operator @MatchContent = matchcontent end def deserialize(params) @MatchFrom = params['MatchFrom'] @MatchParam = params['MatchParam'] @Operator = params['Operator'] @MatchContent = params['MatchContent'] end end # ACL配置 class AclConfig < TencentCloud::Common::AbstractModel # @param Switch: 开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String # @param AclUserRules: 用户自定义规则。 # @type AclUserRules: Array # @param Customizes: 托管定制规则 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Customizes: Array attr_accessor :Switch, :AclUserRules, :Customizes def initialize(switch=nil, acluserrules=nil, customizes=nil) @Switch = switch @AclUserRules = acluserrules @Customizes = customizes end def deserialize(params) @Switch = params['Switch'] unless params['AclUserRules'].nil? @AclUserRules = [] params['AclUserRules'].each do |i| acluserrule_tmp = AclUserRule.new acluserrule_tmp.deserialize(i) @AclUserRules << acluserrule_tmp end end unless params['Customizes'].nil? @Customizes = [] params['Customizes'].each do |i| acluserrule_tmp = AclUserRule.new acluserrule_tmp.deserialize(i) @Customizes << acluserrule_tmp end end end end # 用户自定义规则 class AclUserRule < TencentCloud::Common::AbstractModel # @param RuleName: 规则名。 # @type RuleName: String # @param Action: 处罚动作,取值有: #
  • trans:放行;
  • #
  • drop:拦截;
  • #
  • monitor:观察;
  • #
  • ban:IP封禁;
  • #
  • redirect:重定向;
  • #
  • page:指定页面;
  • #
  • alg:Javascript挑战。
  • # @type Action: String # @param RuleStatus: 规则状态,取值有: #
  • on:生效;
  • #
  • off:失效。
  • # @type RuleStatus: String # @param AclConditions: 自定义规则。 # @type AclConditions: Array # @param RulePriority: 规则优先级,取值范围0-100。 # @type RulePriority: Integer # @param RuleID: 规则Id。仅出参使用。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type RuleID: Integer # @param UpdateTime: 更新时间。仅出参使用。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type UpdateTime: String # @param PunishTime: ip封禁的惩罚时间,取值范围0-2天。默认为0。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type PunishTime: Integer # @param PunishTimeUnit: ip封禁的惩罚时间单位,取值有: #
  • second:秒;
  • #
  • minutes:分;
  • #
  • hour:小时。
  • 默认为second。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type PunishTimeUnit: String # @param Name: 自定义返回页面的名称。默认为空字符串。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Name: String # @param PageId: 自定义返回页面的实例id。默认为0。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type PageId: Integer # @param RedirectUrl: 重定向时候的地址,必须为本用户接入的站点子域名。默认为空字符串。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type RedirectUrl: String # @param ResponseCode: 重定向时候的返回码。默认为0。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ResponseCode: Integer attr_accessor :RuleName, :Action, :RuleStatus, :AclConditions, :RulePriority, :RuleID, :UpdateTime, :PunishTime, :PunishTimeUnit, :Name, :PageId, :RedirectUrl, :ResponseCode def initialize(rulename=nil, action=nil, rulestatus=nil, aclconditions=nil, rulepriority=nil, ruleid=nil, updatetime=nil, punishtime=nil, punishtimeunit=nil, name=nil, pageid=nil, redirecturl=nil, responsecode=nil) @RuleName = rulename @Action = action @RuleStatus = rulestatus @AclConditions = aclconditions @RulePriority = rulepriority @RuleID = ruleid @UpdateTime = updatetime @PunishTime = punishtime @PunishTimeUnit = punishtimeunit @Name = name @PageId = pageid @RedirectUrl = redirecturl @ResponseCode = responsecode end def deserialize(params) @RuleName = params['RuleName'] @Action = params['Action'] @RuleStatus = params['RuleStatus'] unless params['AclConditions'].nil? @AclConditions = [] params['AclConditions'].each do |i| aclcondition_tmp = AclCondition.new aclcondition_tmp.deserialize(i) @AclConditions << aclcondition_tmp end end @RulePriority = params['RulePriority'] @RuleID = params['RuleID'] @UpdateTime = params['UpdateTime'] @PunishTime = params['PunishTime'] @PunishTimeUnit = params['PunishTimeUnit'] @Name = params['Name'] @PageId = params['PageId'] @RedirectUrl = params['RedirectUrl'] @ResponseCode = params['ResponseCode'] end end # 规则引擎功能项操作,对于一种功能只对应下面三种类型的其中一种,RuleAction 数组中的每一项只能是其中一个类型,更多功能项的填写规范可调用接口 [查询规则引擎的设置参数](https://tcloud4api.woa.com/document/product/1657/79433?!preview&!document=1) 查看。 class Action < TencentCloud::Common::AbstractModel # @param NormalAction: 常规功能操作,选择该类型的功能项有: #
  • 访问URL 重写(AccessUrlRedirect);
  • #
  • 回源 URL 重写 (UpstreamUrlRedirect);
  • #
  • QUIC(QUIC);
  • #
  • WebSocket (WebSocket);
  • #
  • 视频拖拽(VideoSeek);
  • #
  • Token 鉴权(Authentication);
  • #
  • 自定义CacheKey(CacheKey);
  • #
  • 节点缓存 TTL (Cache);
  • #
  • 浏览器缓存 TTL(MaxAge);
  • #
  • 离线缓存(OfflineCache);
  • #
  • 智能加速(SmartRouting);
  • #
  • 分片回源(RangeOriginPull);
  • #
  • HTTP/2 回源(UpstreamHttp2);
  • #
  • Host Header 重写(HostHeader);
  • #
  • 强制 HTTPS(ForceRedirect);
  • #
  • 回源 HTTPS(OriginPullProtocol);
  • #
  • 缓存预刷新(CachePrefresh);
  • #
  • 智能压缩(Compression);
  • #
  • Hsts;
  • #
  • ClientIpHeader;
  • #
  • TlsVersion;
  • #
  • OcspStapling;
  • #
  • HTTP/2 访问(Http2);
  • #
  • 回源跟随重定向(UpstreamFollowRedirect);
  • #
  • 修改源站(Origin)。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type NormalAction: :class:`Tencentcloud::Teo.v20220901.models.NormalAction` # @param RewriteAction: 带有请求头/响应头的功能操作,选择该类型的功能项有: #
  • 修改 HTTP 请求头(RequestHeader);
  • #
  • 修改HTTP响应头(ResponseHeader)。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type RewriteAction: :class:`Tencentcloud::Teo.v20220901.models.RewriteAction` # @param CodeAction: 带有状态码的功能操作,选择该类型的功能项有: #
  • 自定义错误页面(ErrorPage);
  • #
  • 状态码缓存 TTL(StatusCodeCache)。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type CodeAction: :class:`Tencentcloud::Teo.v20220901.models.CodeAction` attr_accessor :NormalAction, :RewriteAction, :CodeAction def initialize(normalaction=nil, rewriteaction=nil, codeaction=nil) @NormalAction = normalaction @RewriteAction = rewriteaction @CodeAction = codeaction end def deserialize(params) unless params['NormalAction'].nil? @NormalAction = NormalAction.new @NormalAction.deserialize(params['NormalAction']) end unless params['RewriteAction'].nil? @RewriteAction = RewriteAction.new @RewriteAction.deserialize(params['RewriteAction']) end unless params['CodeAction'].nil? @CodeAction = CodeAction.new @CodeAction.deserialize(params['CodeAction']) end end end # 描述键值对过滤器,用于条件过滤查询,支持模糊查询。例如过滤ID、名称、状态等。 # 若存在多个Filter时,Filter间的关系为逻辑与(AND)关系。 # 若同一个Filter存在多个Values,同一Filter下Values间的关系为逻辑或(OR)关系。 class AdvancedFilter < TencentCloud::Common::AbstractModel # @param Name: 需要过滤的字段。 # @type Name: String # @param Values: 字段的过滤值。 # @type Values: Array # @param Fuzzy: 是否启用模糊查询。 # @type Fuzzy: Boolean attr_accessor :Name, :Values, :Fuzzy def initialize(name=nil, values=nil, fuzzy=nil) @Name = name @Values = values @Fuzzy = fuzzy end def deserialize(params) @Name = params['Name'] @Values = params['Values'] @Fuzzy = params['Fuzzy'] end end # AI规则引擎防护 class AiRule < TencentCloud::Common::AbstractModel # @param Mode: AI规则引擎状态,取值有: #
  • smart_status_close:关闭;
  • #
  • smart_status_open:拦截处置;
  • #
  • smart_status_observe:观察处置。
  • # @type Mode: String attr_accessor :Mode def initialize(mode=nil) @Mode = mode end def deserialize(params) @Mode = params['Mode'] end end # 别称域名信息。 class AliasDomain < TencentCloud::Common::AbstractModel # @param AliasName: 别称域名名称。 # @type AliasName: String # @param ZoneId: 站点 ID。 # @type ZoneId: String # @param TargetName: 目标域名名称。 # @type TargetName: String # @param Status: 别称域名状态,取值有: #
  • active:已生效;
  • #
  • pending:部署中;
  • #
  • conflict:被找回。
  • #
  • stop:已停用;
  • # @type Status: String # @param ForbidMode: 封禁模式,取值有: #
  • 0:未封禁;
  • #
  • 11:合规封禁;
  • #
  • 14:未备案封禁。
  • # @type ForbidMode: Integer # @param CreatedOn: 别称域名创建时间。 # @type CreatedOn: String # @param ModifiedOn: 别称域名修改时间。 # @type ModifiedOn: String attr_accessor :AliasName, :ZoneId, :TargetName, :Status, :ForbidMode, :CreatedOn, :ModifiedOn def initialize(aliasname=nil, zoneid=nil, targetname=nil, status=nil, forbidmode=nil, createdon=nil, modifiedon=nil) @AliasName = aliasname @ZoneId = zoneid @TargetName = targetname @Status = status @ForbidMode = forbidmode @CreatedOn = createdon @ModifiedOn = modifiedon end def deserialize(params) @AliasName = params['AliasName'] @ZoneId = params['ZoneId'] @TargetName = params['TargetName'] @Status = params['Status'] @ForbidMode = params['ForbidMode'] @CreatedOn = params['CreatedOn'] @ModifiedOn = params['ModifiedOn'] end end # 应用代理实例 class ApplicationProxy < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param ZoneName: 站点名称。 # @type ZoneName: String # @param ProxyId: 代理ID。 # @type ProxyId: String # @param ProxyName: 当ProxyType=hostname时,表示域名或子域名; # 当ProxyType=instance时,表示代理名称。 # @type ProxyName: String # @param ProxyType: 四层代理模式,取值有: #
  • hostname:表示子域名模式;
  • #
  • instance:表示实例模式。
  • # @type ProxyType: String # @param PlatType: 调度模式,取值有: #
  • ip:表示Anycast IP调度;
  • #
  • domain:表示CNAME调度。
  • # @type PlatType: String # @param Area: 加速区域,取值有: #
  • mainland:中国大陆境内;
  • #
  • overseas:全球(不含中国大陆)。
  • # 默认值:overseas # @type Area: String # @param SecurityType: 是否开启安全,取值有: #
  • 0:关闭安全;
  • #
  • 1:开启安全。
  • # @type SecurityType: Integer # @param AccelerateType: 是否开启加速,取值有: #
  • 0:关闭加速;
  • #
  • 1:开启加速。
  • # @type AccelerateType: Integer # @param SessionPersistTime: 会话保持时间。 # @type SessionPersistTime: Integer # @param Status: 状态,取值有: #
  • online:启用;
  • #
  • offline:停用;
  • #
  • progress:部署中;
  • #
  • stopping:停用中;
  • #
  • fail:部署失败/停用失败。
  • # @type Status: String # @param BanStatus: 封禁状态,取值有: #
  • banned:已封禁;
  • #
  • banning:封禁中;
  • #
  • recover:已解封;
  • #
  • recovering:解封禁中。
  • # @type BanStatus: String # @param ScheduleValue: 调度信息。 # @type ScheduleValue: Array # @param HostId: 当ProxyType=hostname时: # 表示代理加速唯一标识。 # @type HostId: String # @param Ipv6: Ipv6访问配置。 # @type Ipv6: :class:`Tencentcloud::Teo.v20220901.models.Ipv6` # @param UpdateTime: 更新时间。 # @type UpdateTime: String # @param ApplicationProxyRules: 规则列表。 # @type ApplicationProxyRules: Array attr_accessor :ZoneId, :ZoneName, :ProxyId, :ProxyName, :ProxyType, :PlatType, :Area, :SecurityType, :AccelerateType, :SessionPersistTime, :Status, :BanStatus, :ScheduleValue, :HostId, :Ipv6, :UpdateTime, :ApplicationProxyRules def initialize(zoneid=nil, zonename=nil, proxyid=nil, proxyname=nil, proxytype=nil, plattype=nil, area=nil, securitytype=nil, acceleratetype=nil, sessionpersisttime=nil, status=nil, banstatus=nil, schedulevalue=nil, hostid=nil, ipv6=nil, updatetime=nil, applicationproxyrules=nil) @ZoneId = zoneid @ZoneName = zonename @ProxyId = proxyid @ProxyName = proxyname @ProxyType = proxytype @PlatType = plattype @Area = area @SecurityType = securitytype @AccelerateType = acceleratetype @SessionPersistTime = sessionpersisttime @Status = status @BanStatus = banstatus @ScheduleValue = schedulevalue @HostId = hostid @Ipv6 = ipv6 @UpdateTime = updatetime @ApplicationProxyRules = applicationproxyrules end def deserialize(params) @ZoneId = params['ZoneId'] @ZoneName = params['ZoneName'] @ProxyId = params['ProxyId'] @ProxyName = params['ProxyName'] @ProxyType = params['ProxyType'] @PlatType = params['PlatType'] @Area = params['Area'] @SecurityType = params['SecurityType'] @AccelerateType = params['AccelerateType'] @SessionPersistTime = params['SessionPersistTime'] @Status = params['Status'] @BanStatus = params['BanStatus'] @ScheduleValue = params['ScheduleValue'] @HostId = params['HostId'] unless params['Ipv6'].nil? @Ipv6 = Ipv6.new @Ipv6.deserialize(params['Ipv6']) end @UpdateTime = params['UpdateTime'] unless params['ApplicationProxyRules'].nil? @ApplicationProxyRules = [] params['ApplicationProxyRules'].each do |i| applicationproxyrule_tmp = ApplicationProxyRule.new applicationproxyrule_tmp.deserialize(i) @ApplicationProxyRules << applicationproxyrule_tmp end end end end # 应用代理规则 class ApplicationProxyRule < TencentCloud::Common::AbstractModel # @param Proto: 协议,取值有: #
  • TCP:TCP协议;
  • #
  • UDP:UDP协议。
  • # @type Proto: String # @param Port: 端口,支持格式: #
  • 单个端口,如:80。
  • #
  • 端口段,如:81-82。表示81,82两个端口。
  • # 注意:一条规则最多可填写20个端口。 # @type Port: Array # @param OriginType: 源站类型,取值有: #
  • custom:手动添加;
  • #
  • origins:源站组。
  • # @type OriginType: String # @param OriginValue: 源站信息: #
  • 当 OriginType 为 custom 时,表示一个或多个源站,如`["8.8.8.8","9.9.9.9"]` 或 `OriginValue=["test.com"]`;
  • #
  • 当 OriginType 为 origins 时,要求有且仅有一个元素,表示源站组ID,如`["origin-537f5b41-162a-11ed-abaa-525400c5da15"]`。
  • # @type OriginValue: Array # @param RuleId: 规则ID。 # @type RuleId: String # @param Status: 状态,取值有: #
  • online:启用;
  • #
  • offline:停用;
  • #
  • progress:部署中;
  • #
  • stopping:停用中;
  • #
  • fail:部署失败/停用失败。
  • # @type Status: String # @param ForwardClientIp: 传递客户端IP,取值有: #
  • TOA:TOA(仅Proto=TCP时可选);
  • #
  • PPV1:Proxy Protocol传递,协议版本V1(仅Proto=TCP时可选);
  • #
  • PPV2:Proxy Protocol传递,协议版本V2;
  • #
  • OFF:不传递。
  • 默认值:OFF。 # @type ForwardClientIp: String # @param SessionPersist: 是否开启会话保持,取值有: #
  • true:开启;
  • #
  • false:关闭。
  • 默认值:false。 # @type SessionPersist: Boolean # @param OriginPort: 源站端口,支持格式: #
  • 单端口,如:80。
  • #
  • 端口段:81-82,表示81,82两个端口。
  • # @type OriginPort: String attr_accessor :Proto, :Port, :OriginType, :OriginValue, :RuleId, :Status, :ForwardClientIp, :SessionPersist, :OriginPort def initialize(proto=nil, port=nil, origintype=nil, originvalue=nil, ruleid=nil, status=nil, forwardclientip=nil, sessionpersist=nil, originport=nil) @Proto = proto @Port = port @OriginType = origintype @OriginValue = originvalue @RuleId = ruleid @Status = status @ForwardClientIp = forwardclientip @SessionPersist = sessionpersist @OriginPort = originport end def deserialize(params) @Proto = params['Proto'] @Port = params['Port'] @OriginType = params['OriginType'] @OriginValue = params['OriginValue'] @RuleId = params['RuleId'] @Status = params['Status'] @ForwardClientIp = params['ForwardClientIp'] @SessionPersist = params['SessionPersist'] @OriginPort = params['OriginPort'] end end # 站点归属信息 class AscriptionInfo < TencentCloud::Common::AbstractModel # @param Subdomain: 主机记录。 # @type Subdomain: String # @param RecordType: 记录类型。 # @type RecordType: String # @param RecordValue: 记录值。 # @type RecordValue: String attr_accessor :Subdomain, :RecordType, :RecordValue def initialize(subdomain=nil, recordtype=nil, recordvalue=nil) @Subdomain = subdomain @RecordType = recordtype @RecordValue = recordvalue end def deserialize(params) @Subdomain = params['Subdomain'] @RecordType = params['RecordType'] @RecordValue = params['RecordValue'] end end # BindZoneToPlan请求参数结构体 class BindZoneToPlanRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 未绑定套餐的站点ID。 # @type ZoneId: String # @param PlanId: 待绑定的目标套餐ID。 # @type PlanId: String attr_accessor :ZoneId, :PlanId def initialize(zoneid=nil, planid=nil) @ZoneId = zoneid @PlanId = planid end def deserialize(params) @ZoneId = params['ZoneId'] @PlanId = params['PlanId'] end end # BindZoneToPlan返回参数结构体 class BindZoneToPlanResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # 安全Bot配置 class BotConfig < TencentCloud::Common::AbstractModel # @param Switch: bot开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String # @param BotManagedRule: 通用详细基础规则。如果为null,默认使用历史配置。 # @type BotManagedRule: :class:`Tencentcloud::Teo.v20220901.models.BotManagedRule` # @param BotPortraitRule: 用户画像规则。如果为null,默认使用历史配置。 # @type BotPortraitRule: :class:`Tencentcloud::Teo.v20220901.models.BotPortraitRule` # @param IntelligenceRule: Bot智能分析。如果为null,默认使用历史配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type IntelligenceRule: :class:`Tencentcloud::Teo.v20220901.models.IntelligenceRule` attr_accessor :Switch, :BotManagedRule, :BotPortraitRule, :IntelligenceRule def initialize(switch=nil, botmanagedrule=nil, botportraitrule=nil, intelligencerule=nil) @Switch = switch @BotManagedRule = botmanagedrule @BotPortraitRule = botportraitrule @IntelligenceRule = intelligencerule end def deserialize(params) @Switch = params['Switch'] unless params['BotManagedRule'].nil? @BotManagedRule = BotManagedRule.new @BotManagedRule.deserialize(params['BotManagedRule']) end unless params['BotPortraitRule'].nil? @BotPortraitRule = BotPortraitRule.new @BotPortraitRule.deserialize(params['BotPortraitRule']) end unless params['IntelligenceRule'].nil? @IntelligenceRule = IntelligenceRule.new @IntelligenceRule.deserialize(params['IntelligenceRule']) end end end # Bot 规则,下列规则ID可参考接口 DescribeBotManagedRules返回的ID信息 class BotManagedRule < TencentCloud::Common::AbstractModel # @param Action: 触发规则后的处置方式,取值有: #
  • drop:拦截;
  • #
  • trans:放行;
  • #
  • alg:Javascript挑战;
  • #
  • monitor:观察。
  • # @type Action: String # @param RuleID: 本规则的ID。仅出参使用。 # @type RuleID: Integer # @param TransManagedIds: 放行的规则ID。默认所有规则不配置放行。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type TransManagedIds: Array # @param AlgManagedIds: JS挑战的规则ID。默认所有规则不配置JS挑战。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type AlgManagedIds: Array # @param CapManagedIds: 数字验证码的规则ID。默认所有规则不配置数字验证码。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CapManagedIds: Array # @param MonManagedIds: 观察的规则ID。默认所有规则不配置观察。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type MonManagedIds: Array # @param DropManagedIds: 拦截的规则ID。默认所有规则不配置拦截。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type DropManagedIds: Array attr_accessor :Action, :RuleID, :TransManagedIds, :AlgManagedIds, :CapManagedIds, :MonManagedIds, :DropManagedIds def initialize(action=nil, ruleid=nil, transmanagedids=nil, algmanagedids=nil, capmanagedids=nil, monmanagedids=nil, dropmanagedids=nil) @Action = action @RuleID = ruleid @TransManagedIds = transmanagedids @AlgManagedIds = algmanagedids @CapManagedIds = capmanagedids @MonManagedIds = monmanagedids @DropManagedIds = dropmanagedids end def deserialize(params) @Action = params['Action'] @RuleID = params['RuleID'] @TransManagedIds = params['TransManagedIds'] @AlgManagedIds = params['AlgManagedIds'] @CapManagedIds = params['CapManagedIds'] @MonManagedIds = params['MonManagedIds'] @DropManagedIds = params['DropManagedIds'] end end # bot 用户画像规则 class BotPortraitRule < TencentCloud::Common::AbstractModel # @param Switch: 本功能的开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String # @param RuleID: 本规则的ID。仅出参使用。 # @type RuleID: Integer # @param AlgManagedIds: JS挑战的规则ID。默认所有规则不配置JS挑战。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type AlgManagedIds: Array # @param CapManagedIds: 数字验证码的规则ID。默认所有规则不配置数字验证码。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CapManagedIds: Array # @param MonManagedIds: 观察的规则ID。默认所有规则不配置观察。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type MonManagedIds: Array # @param DropManagedIds: 拦截的规则ID。默认所有规则不配置拦截。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type DropManagedIds: Array attr_accessor :Switch, :RuleID, :AlgManagedIds, :CapManagedIds, :MonManagedIds, :DropManagedIds def initialize(switch=nil, ruleid=nil, algmanagedids=nil, capmanagedids=nil, monmanagedids=nil, dropmanagedids=nil) @Switch = switch @RuleID = ruleid @AlgManagedIds = algmanagedids @CapManagedIds = capmanagedids @MonManagedIds = monmanagedids @DropManagedIds = dropmanagedids end def deserialize(params) @Switch = params['Switch'] @RuleID = params['RuleID'] @AlgManagedIds = params['AlgManagedIds'] @CapManagedIds = params['CapManagedIds'] @MonManagedIds = params['MonManagedIds'] @DropManagedIds = params['DropManagedIds'] end end # cc配置项。 class CC < TencentCloud::Common::AbstractModel # @param Switch: Waf开关,取值为: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String # @param PolicyId: 策略ID。 # @type PolicyId: Integer attr_accessor :Switch, :PolicyId def initialize(switch=nil, policyid=nil) @Switch = switch @PolicyId = policyid end def deserialize(params) @Switch = params['Switch'] @PolicyId = params['PolicyId'] end end # 缓存时间设置 class Cache < TencentCloud::Common::AbstractModel # @param Switch: 缓存配置开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String # @param CacheTime: 缓存过期时间设置。 # 单位为秒,最大可设置为 365 天。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CacheTime: Integer # @param IgnoreCacheControl: 是否开启强制缓存,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type IgnoreCacheControl: String attr_accessor :Switch, :CacheTime, :IgnoreCacheControl def initialize(switch=nil, cachetime=nil, ignorecachecontrol=nil) @Switch = switch @CacheTime = cachetime @IgnoreCacheControl = ignorecachecontrol end def deserialize(params) @Switch = params['Switch'] @CacheTime = params['CacheTime'] @IgnoreCacheControl = params['IgnoreCacheControl'] end end # 缓存规则配置。 class CacheConfig < TencentCloud::Common::AbstractModel # @param Cache: 缓存配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Cache: :class:`Tencentcloud::Teo.v20220901.models.Cache` # @param NoCache: 不缓存配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type NoCache: :class:`Tencentcloud::Teo.v20220901.models.NoCache` # @param FollowOrigin: 遵循源站配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type FollowOrigin: :class:`Tencentcloud::Teo.v20220901.models.FollowOrigin` attr_accessor :Cache, :NoCache, :FollowOrigin def initialize(cache=nil, nocache=nil, followorigin=nil) @Cache = cache @NoCache = nocache @FollowOrigin = followorigin end def deserialize(params) unless params['Cache'].nil? @Cache = Cache.new @Cache.deserialize(params['Cache']) end unless params['NoCache'].nil? @NoCache = NoCache.new @NoCache.deserialize(params['NoCache']) end unless params['FollowOrigin'].nil? @FollowOrigin = FollowOrigin.new @FollowOrigin.deserialize(params['FollowOrigin']) end end end # 缓存键配置。 class CacheKey < TencentCloud::Common::AbstractModel # @param FullUrlCache: 是否开启全路径缓存,取值有: #
  • on:开启全路径缓存(即关闭参数忽略);
  • #
  • off:关闭全路径缓存(即开启参数忽略)。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type FullUrlCache: String # @param IgnoreCase: 是否忽略大小写缓存,取值有: #
  • on:忽略;
  • #
  • off:不忽略。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type IgnoreCase: String # @param QueryString: CacheKey中包含请求参数。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type QueryString: :class:`Tencentcloud::Teo.v20220901.models.QueryString` attr_accessor :FullUrlCache, :IgnoreCase, :QueryString def initialize(fullurlcache=nil, ignorecase=nil, querystring=nil) @FullUrlCache = fullurlcache @IgnoreCase = ignorecase @QueryString = querystring end def deserialize(params) @FullUrlCache = params['FullUrlCache'] @IgnoreCase = params['IgnoreCase'] unless params['QueryString'].nil? @QueryString = QueryString.new @QueryString.deserialize(params['QueryString']) end end end # 缓存预刷新 class CachePrefresh < TencentCloud::Common::AbstractModel # @param Switch: 缓存预刷新配置开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String # @param Percent: 缓存预刷新百分比,取值范围:1-99。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Percent: Integer attr_accessor :Switch, :Percent def initialize(switch=nil, percent=nil) @Switch = switch @Percent = percent end def deserialize(params) @Switch = params['Switch'] @Percent = params['Percent'] end end # CheckCertificate请求参数结构体 class CheckCertificateRequest < TencentCloud::Common::AbstractModel # @param Certificate: 证书内容。 # @type Certificate: String # @param PrivateKey: 私钥内容。 # @type PrivateKey: String attr_accessor :Certificate, :PrivateKey def initialize(certificate=nil, privatekey=nil) @Certificate = certificate @PrivateKey = privatekey end def deserialize(params) @Certificate = params['Certificate'] @PrivateKey = params['PrivateKey'] end end # CheckCertificate返回参数结构体 class CheckCertificateResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # 回源时携带客户端IP所属地域信息,值的格式为ISO-3166-1两位字母代码。 class ClientIpCountry < TencentCloud::Common::AbstractModel # @param Switch: 配置开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String # @param HeaderName: 存放客户端IP所属地域信息的请求头名称,当Switch=on时有效。 # 为空则使用默认值:EO-Client-IPCountry。 # @type HeaderName: String attr_accessor :Switch, :HeaderName def initialize(switch=nil, headername=nil) @Switch = switch @HeaderName = headername end def deserialize(params) @Switch = params['Switch'] @HeaderName = params['HeaderName'] end end # 存储客户端请求IP的头部信息配置 class ClientIpHeader < TencentCloud::Common::AbstractModel # @param Switch: 配置开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String # @param HeaderName: 回源时,存放客户端IP的请求头名称。 # 为空则使用默认值:X-Forwarded-IP。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type HeaderName: String attr_accessor :Switch, :HeaderName def initialize(switch=nil, headername=nil) @Switch = switch @HeaderName = headername end def deserialize(params) @Switch = params['Switch'] @HeaderName = params['HeaderName'] end end # 客户端规则信息 class ClientRule < TencentCloud::Common::AbstractModel # @param ClientIp: 客户端ip。 # @type ClientIp: String # @param RuleType: 规则类型。 # @type RuleType: String # @param RuleId: 规则id。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type RuleId: Integer # @param Description: 规则描述。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Description: String # @param IpStatus: 封禁状态,取值有: #
  • block :封禁 ;
  • #
  • allow :放行 。
  • # @type IpStatus: String # @param BlockTime: 封禁时间,采用unix秒级时间戳。 # @type BlockTime: Integer # @param Id: 每条数据的唯一标识id。 # @type Id: String attr_accessor :ClientIp, :RuleType, :RuleId, :Description, :IpStatus, :BlockTime, :Id def initialize(clientip=nil, ruletype=nil, ruleid=nil, description=nil, ipstatus=nil, blocktime=nil, id=nil) @ClientIp = clientip @RuleType = ruletype @RuleId = ruleid @Description = description @IpStatus = ipstatus @BlockTime = blocktime @Id = id end def deserialize(params) @ClientIp = params['ClientIp'] @RuleType = params['RuleType'] @RuleId = params['RuleId'] @Description = params['Description'] @IpStatus = params['IpStatus'] @BlockTime = params['BlockTime'] @Id = params['Id'] end end # 日志任务主题信息 class ClsLogTopicInfo < TencentCloud::Common::AbstractModel # @param TaskName: 任务名。 # @type TaskName: String # @param ZoneName: 站点名称。 # @type ZoneName: String # @param LogSetId: 日志集ID。 # @type LogSetId: String # @param TopicId: 日志主题ID。 # @type TopicId: String # @param EntityType: 任务类型。 # @type EntityType: String # @param Period: 任务主题保存时间。 # @type Period: Integer # @param Enabled: 任务主题是否开启。 # @type Enabled: Boolean # @param Deleted: 任务主题是否异常。 # @type Deleted: String # @param CreateTime: 创建时间。 # @type CreateTime: String # @param Target: 推送目标地址,取值有: #
  • cls: 推送到cls;
  • #
  • custom_enpoint: 自定义推送地址。
  • # @type Target: String # @param LogSetRegion: 日志集所属地区。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type LogSetRegion: String # @param ZoneId: 站点id。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ZoneId: String # @param Area: 加速区域,取值有: #
  • mainland:中国大陆境内;
  • #
  • overseas:全球(不含中国大陆)。
  • # @type Area: String # @param LogSetType: 推送任务类型,取值有: #
  • cls:推送到cls;
  • #
  • custom_endpoint:推送到自定义接口。
  • # @type LogSetType: String attr_accessor :TaskName, :ZoneName, :LogSetId, :TopicId, :EntityType, :Period, :Enabled, :Deleted, :CreateTime, :Target, :LogSetRegion, :ZoneId, :Area, :LogSetType def initialize(taskname=nil, zonename=nil, logsetid=nil, topicid=nil, entitytype=nil, period=nil, enabled=nil, deleted=nil, createtime=nil, target=nil, logsetregion=nil, zoneid=nil, area=nil, logsettype=nil) @TaskName = taskname @ZoneName = zonename @LogSetId = logsetid @TopicId = topicid @EntityType = entitytype @Period = period @Enabled = enabled @Deleted = deleted @CreateTime = createtime @Target = target @LogSetRegion = logsetregion @ZoneId = zoneid @Area = area @LogSetType = logsettype end def deserialize(params) @TaskName = params['TaskName'] @ZoneName = params['ZoneName'] @LogSetId = params['LogSetId'] @TopicId = params['TopicId'] @EntityType = params['EntityType'] @Period = params['Period'] @Enabled = params['Enabled'] @Deleted = params['Deleted'] @CreateTime = params['CreateTime'] @Target = params['Target'] @LogSetRegion = params['LogSetRegion'] @ZoneId = params['ZoneId'] @Area = params['Area'] @LogSetType = params['LogSetType'] end end # 规则引擎带有状态码的动作 class CodeAction < TencentCloud::Common::AbstractModel # @param Action: 功能名称,功能名称填写规范可调用接口 [查询规则引擎的设置参数](https://tcloud4api.woa.com/document/product/1657/79433?!preview&!document=1) 查看。 # @type Action: String # @param Parameters: 操作参数。 # @type Parameters: Array attr_accessor :Action, :Parameters def initialize(action=nil, parameters=nil) @Action = action @Parameters = parameters end def deserialize(params) @Action = params['Action'] unless params['Parameters'].nil? @Parameters = [] params['Parameters'].each do |i| rulecodeactionparams_tmp = RuleCodeActionParams.new rulecodeactionparams_tmp.deserialize(i) @Parameters << rulecodeactionparams_tmp end end end end # 智能压缩配置。 class Compression < TencentCloud::Common::AbstractModel # @param Switch: 智能压缩配置开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String # @param Algorithms: 支持的压缩算法列表,取值有: #
  • brotli:brotli算法;
  • #
  • gzip:gzip算法。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type Algorithms: Array attr_accessor :Switch, :Algorithms def initialize(switch=nil, algorithms=nil) @Switch = switch @Algorithms = algorithms end def deserialize(params) @Switch = params['Switch'] @Algorithms = params['Algorithms'] end end # CreateAccelerationDomain请求参数结构体 class CreateAccelerationDomainRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 加速域名所属站点ID。 # @type ZoneId: String # @param DomainName: 加速域名名称。 # @type DomainName: String # @param OriginInfo: 源站信息。 # @type OriginInfo: :class:`Tencentcloud::Teo.v20220901.models.OriginInfo` attr_accessor :ZoneId, :DomainName, :OriginInfo def initialize(zoneid=nil, domainname=nil, origininfo=nil) @ZoneId = zoneid @DomainName = domainname @OriginInfo = origininfo end def deserialize(params) @ZoneId = params['ZoneId'] @DomainName = params['DomainName'] unless params['OriginInfo'].nil? @OriginInfo = OriginInfo.new @OriginInfo.deserialize(params['OriginInfo']) end end end # CreateAccelerationDomain返回参数结构体 class CreateAccelerationDomainResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # CreateAliasDomain请求参数结构体 class CreateAliasDomainRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点 ID。 # @type ZoneId: String # @param AliasName: 别称域名名称。 # @type AliasName: String # @param TargetName: 目标域名名称。 # @type TargetName: String # @param CertType: 证书配置,取值有: #
  • none:不配置;
  • #
  • hosting:SSL托管证书。
  • 默认取值为 none。 # @type CertType: String # @param CertId: 当 CertType 取值为 hosting 时需填入相应证书 ID。 # @type CertId: Array attr_accessor :ZoneId, :AliasName, :TargetName, :CertType, :CertId def initialize(zoneid=nil, aliasname=nil, targetname=nil, certtype=nil, certid=nil) @ZoneId = zoneid @AliasName = aliasname @TargetName = targetname @CertType = certtype @CertId = certid end def deserialize(params) @ZoneId = params['ZoneId'] @AliasName = params['AliasName'] @TargetName = params['TargetName'] @CertType = params['CertType'] @CertId = params['CertId'] end end # CreateAliasDomain返回参数结构体 class CreateAliasDomainResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # CreateApplicationProxy请求参数结构体 class CreateApplicationProxyRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param ProxyName: 当ProxyType=hostname时,表示域名或子域名; # 当ProxyType=instance时,表示代理名称。 # @type ProxyName: String # @param PlatType: 调度模式,取值有: #
  • ip:表示Anycast IP调度;
  • #
  • domain:表示CNAME调度。
  • # @type PlatType: String # @param SecurityType: 是否开启安全,取值有: #
  • 0:关闭安全;
  • #
  • 1:开启安全。
  • # @type SecurityType: Integer # @param AccelerateType: 是否开启加速,取值有: #
  • 0:关闭加速;
  • #
  • 1:开启加速。
  • # @type AccelerateType: Integer # @param ProxyType: 四层代理模式,取值有: #
  • hostname:表示子域名模式;
  • #
  • instance:表示实例模式。
  • 不填写使用默认值instance。 # @type ProxyType: String # @param SessionPersistTime: 会话保持时间,取值范围:30-3600,单位:秒。 # 不填写使用默认值600。 # @type SessionPersistTime: Integer # @param Ipv6: Ipv6访问配置。 # 不填写表示关闭Ipv6访问。 # @type Ipv6: :class:`Tencentcloud::Teo.v20220901.models.Ipv6` # @param ApplicationProxyRules: 规则详细信息。 # 不填写则不创建规则。 # @type ApplicationProxyRules: Array attr_accessor :ZoneId, :ProxyName, :PlatType, :SecurityType, :AccelerateType, :ProxyType, :SessionPersistTime, :Ipv6, :ApplicationProxyRules def initialize(zoneid=nil, proxyname=nil, plattype=nil, securitytype=nil, acceleratetype=nil, proxytype=nil, sessionpersisttime=nil, ipv6=nil, applicationproxyrules=nil) @ZoneId = zoneid @ProxyName = proxyname @PlatType = plattype @SecurityType = securitytype @AccelerateType = acceleratetype @ProxyType = proxytype @SessionPersistTime = sessionpersisttime @Ipv6 = ipv6 @ApplicationProxyRules = applicationproxyrules end def deserialize(params) @ZoneId = params['ZoneId'] @ProxyName = params['ProxyName'] @PlatType = params['PlatType'] @SecurityType = params['SecurityType'] @AccelerateType = params['AccelerateType'] @ProxyType = params['ProxyType'] @SessionPersistTime = params['SessionPersistTime'] unless params['Ipv6'].nil? @Ipv6 = Ipv6.new @Ipv6.deserialize(params['Ipv6']) end unless params['ApplicationProxyRules'].nil? @ApplicationProxyRules = [] params['ApplicationProxyRules'].each do |i| applicationproxyrule_tmp = ApplicationProxyRule.new applicationproxyrule_tmp.deserialize(i) @ApplicationProxyRules << applicationproxyrule_tmp end end end end # CreateApplicationProxy返回参数结构体 class CreateApplicationProxyResponse < TencentCloud::Common::AbstractModel # @param ProxyId: 新增的四层代理应用ID。 # @type ProxyId: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :ProxyId, :RequestId def initialize(proxyid=nil, requestid=nil) @ProxyId = proxyid @RequestId = requestid end def deserialize(params) @ProxyId = params['ProxyId'] @RequestId = params['RequestId'] end end # CreateApplicationProxyRule请求参数结构体 class CreateApplicationProxyRuleRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param ProxyId: 代理ID。 # @type ProxyId: String # @param Proto: 协议,取值有: #
  • TCP:TCP协议;
  • #
  • UDP:UDP协议。
  • # @type Proto: String # @param Port: 端口,支持格式: #
  • 80:80端口;
  • #
  • 81-90:81至90端口。
  • # @type Port: Array # @param OriginType: 源站类型,取值有: #
  • custom:手动添加;
  • #
  • origins:源站组。
  • # @type OriginType: String # @param OriginValue: 源站信息: #
  • 当 OriginType 为 custom 时,表示一个或多个源站,如`["8.8.8.8","9.9.9.9"]` 或 `OriginValue=["test.com"]`;
  • #
  • 当 OriginType 为 origins 时,要求有且仅有一个元素,表示源站组ID,如`["origin-537f5b41-162a-11ed-abaa-525400c5da15"]`。
  • # @type OriginValue: Array # @param ForwardClientIp: 传递客户端IP,取值有: #
  • TOA:TOA(仅Proto=TCP时可选);
  • #
  • PPV1:Proxy Protocol传递,协议版本V1(仅Proto=TCP时可选);
  • #
  • PPV2:Proxy Protocol传递,协议版本V2;
  • #
  • OFF:不传递。
  • 默认值:OFF。 # @type ForwardClientIp: String # @param SessionPersist: 是否开启会话保持,取值有: #
  • true:开启;
  • #
  • false:关闭。
  • 默认值:false。 # @type SessionPersist: Boolean # @param OriginPort: 源站端口,支持格式: #
  • 单端口:80;
  • #
  • 端口段:81-90,81至90端口。
  • # @type OriginPort: String attr_accessor :ZoneId, :ProxyId, :Proto, :Port, :OriginType, :OriginValue, :ForwardClientIp, :SessionPersist, :OriginPort def initialize(zoneid=nil, proxyid=nil, proto=nil, port=nil, origintype=nil, originvalue=nil, forwardclientip=nil, sessionpersist=nil, originport=nil) @ZoneId = zoneid @ProxyId = proxyid @Proto = proto @Port = port @OriginType = origintype @OriginValue = originvalue @ForwardClientIp = forwardclientip @SessionPersist = sessionpersist @OriginPort = originport end def deserialize(params) @ZoneId = params['ZoneId'] @ProxyId = params['ProxyId'] @Proto = params['Proto'] @Port = params['Port'] @OriginType = params['OriginType'] @OriginValue = params['OriginValue'] @ForwardClientIp = params['ForwardClientIp'] @SessionPersist = params['SessionPersist'] @OriginPort = params['OriginPort'] end end # CreateApplicationProxyRule返回参数结构体 class CreateApplicationProxyRuleResponse < TencentCloud::Common::AbstractModel # @param RuleId: 规则ID # @type RuleId: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RuleId, :RequestId def initialize(ruleid=nil, requestid=nil) @RuleId = ruleid @RequestId = requestid end def deserialize(params) @RuleId = params['RuleId'] @RequestId = params['RequestId'] end end # CreateCredential请求参数结构体 class CreateCredentialRequest < TencentCloud::Common::AbstractModel def initialize() end def deserialize(params) end end # CreateCredential返回参数结构体 class CreateCredentialResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # CreateOriginGroup请求参数结构体 class CreateOriginGroupRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param OriginType: 源站类型,取值有: #
  • self:自有源站;
  • #
  • third_party:第三方源站;
  • #
  • cos:腾讯云COS源站。
  • # @type OriginType: String # @param OriginGroupName: 源站组名称。 # @type OriginGroupName: String # @param ConfigurationType: 源站配置类型,当OriginType=self时,取值有: #
  • area:按区域配置;
  • #
  • weight: 按权重配置;
  • #
  • proto: 按HTTP协议配置。
  • 当OriginType=third_party/cos时放空。 # @type ConfigurationType: String # @param OriginRecords: 源站记录信息。 # @type OriginRecords: Array # @param HostHeader: 回源Host,仅当OriginType=self时可以设置。 # @type HostHeader: String attr_accessor :ZoneId, :OriginType, :OriginGroupName, :ConfigurationType, :OriginRecords, :HostHeader def initialize(zoneid=nil, origintype=nil, origingroupname=nil, configurationtype=nil, originrecords=nil, hostheader=nil) @ZoneId = zoneid @OriginType = origintype @OriginGroupName = origingroupname @ConfigurationType = configurationtype @OriginRecords = originrecords @HostHeader = hostheader end def deserialize(params) @ZoneId = params['ZoneId'] @OriginType = params['OriginType'] @OriginGroupName = params['OriginGroupName'] @ConfigurationType = params['ConfigurationType'] unless params['OriginRecords'].nil? @OriginRecords = [] params['OriginRecords'].each do |i| originrecord_tmp = OriginRecord.new originrecord_tmp.deserialize(i) @OriginRecords << originrecord_tmp end end @HostHeader = params['HostHeader'] end end # CreateOriginGroup返回参数结构体 class CreateOriginGroupResponse < TencentCloud::Common::AbstractModel # @param OriginGroupId: 源站组ID。 # @type OriginGroupId: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :OriginGroupId, :RequestId def initialize(origingroupid=nil, requestid=nil) @OriginGroupId = origingroupid @RequestId = requestid end def deserialize(params) @OriginGroupId = params['OriginGroupId'] @RequestId = params['RequestId'] end end # CreatePlanForZone请求参数结构体 class CreatePlanForZoneRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param PlanType: 所要购买套餐的类型,取值有: #
  • sta: 全球内容分发网络(不包括中国大陆)标准版套餐;
  • #
  • sta_with_bot: 全球内容分发网络(不包括中国大陆)标准版套餐附带bot管理;
  • #
  • sta_cm: 中国大陆内容分发网络标准版套餐;
  • #
  • sta_cm_with_bot: 中国大陆内容分发网络标准版套餐附带bot管理;
  • #
  • sta_global :全球内容分发网络(包括中国大陆)标准版套餐;
  • #
  • sta_global_with_bot :全球内容分发网络(包括中国大陆)标准版套餐附带bot管理;
  • #
  • ent: 全球内容分发网络(不包括中国大陆)企业版套餐;
  • #
  • ent_with_bot: 全球内容分发网络(不包括中国大陆)企业版套餐附带bot管理;
  • #
  • ent_cm: 中国大陆内容分发网络企业版套餐;
  • #
  • ent_cm_with_bot: 中国大陆内容分发网络企业版套餐附带bot管理。
  • #
  • ent_global :全球内容分发网络(包括中国大陆)企业版套餐;
  • #
  • ent_global_with_bot :全球内容分发网络(包括中国大陆)企业版套餐附带bot管理。
  • 当前账户可购买套餐类型请以DescribeAvailablePlans返回为准。 # @type PlanType: String attr_accessor :ZoneId, :PlanType def initialize(zoneid=nil, plantype=nil) @ZoneId = zoneid @PlanType = plantype end def deserialize(params) @ZoneId = params['ZoneId'] @PlanType = params['PlanType'] end end # CreatePlanForZone返回参数结构体 class CreatePlanForZoneResponse < TencentCloud::Common::AbstractModel # @param ResourceNames: 购买的资源名字列表。 # @type ResourceNames: Array # @param DealNames: 购买的订单号列表。 # @type DealNames: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :ResourceNames, :DealNames, :RequestId def initialize(resourcenames=nil, dealnames=nil, requestid=nil) @ResourceNames = resourcenames @DealNames = dealnames @RequestId = requestid end def deserialize(params) @ResourceNames = params['ResourceNames'] @DealNames = params['DealNames'] @RequestId = params['RequestId'] end end # CreatePrefetchTask请求参数结构体 class CreatePrefetchTaskRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点 ID。 # @type ZoneId: String # @param Targets: 要预热的资源列表,每个元素格式类似如下: # http://www.example.com/example.txt。 # @type Targets: Array # @param EncodeUrl: 是否对url进行encode,若内容含有非 ASCII 字符集的字符,请开启此开关进行编码转换(编码规则遵循 RFC3986)。 # @type EncodeUrl: Boolean # @param Headers: 附带的http头部信息。 # @type Headers: Array attr_accessor :ZoneId, :Targets, :EncodeUrl, :Headers def initialize(zoneid=nil, targets=nil, encodeurl=nil, headers=nil) @ZoneId = zoneid @Targets = targets @EncodeUrl = encodeurl @Headers = headers end def deserialize(params) @ZoneId = params['ZoneId'] @Targets = params['Targets'] @EncodeUrl = params['EncodeUrl'] unless params['Headers'].nil? @Headers = [] params['Headers'].each do |i| header_tmp = Header.new header_tmp.deserialize(i) @Headers << header_tmp end end end end # CreatePrefetchTask返回参数结构体 class CreatePrefetchTaskResponse < TencentCloud::Common::AbstractModel # @param JobId: 任务 ID。 # @type JobId: String # @param FailedList: 失败的任务列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type FailedList: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :JobId, :FailedList, :RequestId def initialize(jobid=nil, failedlist=nil, requestid=nil) @JobId = jobid @FailedList = failedlist @RequestId = requestid end def deserialize(params) @JobId = params['JobId'] unless params['FailedList'].nil? @FailedList = [] params['FailedList'].each do |i| failreason_tmp = FailReason.new failreason_tmp.deserialize(i) @FailedList << failreason_tmp end end @RequestId = params['RequestId'] end end # CreatePurgeTask请求参数结构体 class CreatePurgeTaskRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param Type: 清除缓存类型,取值有: #
  • purge_url:URL;
  • #
  • purge_prefix:前缀;
  • #
  • purge_host:Hostname;
  • #
  • purge_all:全部缓存;
  • #
  • purge_cache_tag:cache-tag刷新。
  • # @type Type: String # @param Targets: 要清除缓存的资源列表,每个元素格式依据Type而定: # 1) Type = purge_host 时: # 形如:www.example.com 或 foo.bar.example.com。 # 2) Type = purge_prefix 时: # 形如:http://www.example.com/example。 # 3) Type = purge_url 时: # 形如:https://www.example.com/example.jpg。 # 4)Type = purge_all 时: # Targets可为空,不需要填写。 # 5)Type = purge_cache_tag 时: # 形如:tag1。 # @type Targets: Array # @param EncodeUrl: 若有编码转换,仅清除编码转换后匹配的资源。 # 若内容含有非 ASCII 字符集的字符,请开启此开关进行编码转换(编码规则遵循 RFC3986)。 # @type EncodeUrl: Boolean attr_accessor :ZoneId, :Type, :Targets, :EncodeUrl def initialize(zoneid=nil, type=nil, targets=nil, encodeurl=nil) @ZoneId = zoneid @Type = type @Targets = targets @EncodeUrl = encodeurl end def deserialize(params) @ZoneId = params['ZoneId'] @Type = params['Type'] @Targets = params['Targets'] @EncodeUrl = params['EncodeUrl'] end end # CreatePurgeTask返回参数结构体 class CreatePurgeTaskResponse < TencentCloud::Common::AbstractModel # @param JobId: 任务ID。 # @type JobId: String # @param FailedList: 失败的任务列表及原因。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type FailedList: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :JobId, :FailedList, :RequestId def initialize(jobid=nil, failedlist=nil, requestid=nil) @JobId = jobid @FailedList = failedlist @RequestId = requestid end def deserialize(params) @JobId = params['JobId'] unless params['FailedList'].nil? @FailedList = [] params['FailedList'].each do |i| failreason_tmp = FailReason.new failreason_tmp.deserialize(i) @FailedList << failreason_tmp end end @RequestId = params['RequestId'] end end # CreateReplayTask请求参数结构体 class CreateReplayTaskRequest < TencentCloud::Common::AbstractModel # @param Ids: 重放任务的 ID 列表。 # @type Ids: Array attr_accessor :Ids def initialize(ids=nil) @Ids = ids end def deserialize(params) @Ids = params['Ids'] end end # CreateReplayTask返回参数结构体 class CreateReplayTaskResponse < TencentCloud::Common::AbstractModel # @param JobId: 此次任务ID。 # @type JobId: String # @param FailedList: 失败的任务列表及原因。 # @type FailedList: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :JobId, :FailedList, :RequestId def initialize(jobid=nil, failedlist=nil, requestid=nil) @JobId = jobid @FailedList = failedlist @RequestId = requestid end def deserialize(params) @JobId = params['JobId'] unless params['FailedList'].nil? @FailedList = [] params['FailedList'].each do |i| failreason_tmp = FailReason.new failreason_tmp.deserialize(i) @FailedList << failreason_tmp end end @RequestId = params['RequestId'] end end # CreateRule请求参数结构体 class CreateRuleRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点 ID。 # @type ZoneId: String # @param RuleName: 规则名称,名称字符串长度 1~255。 # @type RuleName: String # @param Status: 规则状态,取值有: #
  • enable: 启用;
  • #
  • disable: 未启用。
  • # @type Status: String # @param Rules: 规则内容。 # @type Rules: Array # @param Tags: 规则标签。 # @type Tags: Array attr_accessor :ZoneId, :RuleName, :Status, :Rules, :Tags def initialize(zoneid=nil, rulename=nil, status=nil, rules=nil, tags=nil) @ZoneId = zoneid @RuleName = rulename @Status = status @Rules = rules @Tags = tags end def deserialize(params) @ZoneId = params['ZoneId'] @RuleName = params['RuleName'] @Status = params['Status'] unless params['Rules'].nil? @Rules = [] params['Rules'].each do |i| rule_tmp = Rule.new rule_tmp.deserialize(i) @Rules << rule_tmp end end @Tags = params['Tags'] end end # CreateRule返回参数结构体 class CreateRuleResponse < TencentCloud::Common::AbstractModel # @param RuleId: 规则 ID。 # @type RuleId: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RuleId, :RequestId def initialize(ruleid=nil, requestid=nil) @RuleId = ruleid @RequestId = requestid end def deserialize(params) @RuleId = params['RuleId'] @RequestId = params['RequestId'] end end # CreateSpeedTesting请求参数结构体 class CreateSpeedTestingRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点 ID。 # @type ZoneId: String # @param Host: 拨测子域名。 # @type Host: String attr_accessor :ZoneId, :Host def initialize(zoneid=nil, host=nil) @ZoneId = zoneid @Host = host end def deserialize(params) @ZoneId = params['ZoneId'] @Host = params['Host'] end end # CreateSpeedTesting返回参数结构体 class CreateSpeedTestingResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # CreateZone请求参数结构体 class CreateZoneRequest < TencentCloud::Common::AbstractModel # @param ZoneName: 站点名称。 # @type ZoneName: String # @param Type: 接入方式,取值有: #
  • full:NS接入;
  • #
  • partial:CNAME接入,请先调用认证站点API(IdentifyZone)进行站点归属权校验,校验通过后继续调用本接口创建站点。
  • 不填写使用默认值full。 # @type Type: String # @param JumpStart: 是否跳过站点现有的DNS记录扫描。默认值:false。 # @type JumpStart: Boolean # @param Tags: 资源标签。 # @type Tags: Array # @param AllowDuplicates: 是否允许重复接入。 #
  • true:允许重复接入;
  • #
  • false:不允许重复接入。
  • 不填写使用默认值false。 # @type AllowDuplicates: Boolean # @param AliasZoneName: 站点别名。数字、英文、-和_组合,限制20个字符。 # @type AliasZoneName: String attr_accessor :ZoneName, :Type, :JumpStart, :Tags, :AllowDuplicates, :AliasZoneName def initialize(zonename=nil, type=nil, jumpstart=nil, tags=nil, allowduplicates=nil, aliaszonename=nil) @ZoneName = zonename @Type = type @JumpStart = jumpstart @Tags = tags @AllowDuplicates = allowduplicates @AliasZoneName = aliaszonename end def deserialize(params) @ZoneName = params['ZoneName'] @Type = params['Type'] @JumpStart = params['JumpStart'] unless params['Tags'].nil? @Tags = [] params['Tags'].each do |i| tag_tmp = Tag.new tag_tmp.deserialize(i) @Tags << tag_tmp end end @AllowDuplicates = params['AllowDuplicates'] @AliasZoneName = params['AliasZoneName'] end end # CreateZone返回参数结构体 class CreateZoneResponse < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :ZoneId, :RequestId def initialize(zoneid=nil, requestid=nil) @ZoneId = zoneid @RequestId = requestid end def deserialize(params) @ZoneId = params['ZoneId'] @RequestId = params['RequestId'] end end # DDoS配置 class DDoS < TencentCloud::Common::AbstractModel # @param Switch: 开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String attr_accessor :Switch def initialize(switch=nil) @Switch = switch end def deserialize(params) @Switch = params['Switch'] end end # https 服务端证书配置 class DefaultServerCertInfo < TencentCloud::Common::AbstractModel # @param CertId: 服务器证书 ID。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CertId: String # @param Alias: 证书备注名。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Alias: String # @param Type: 证书类型,取值有: #
  • default: 默认证书;
  • #
  • upload:用户上传;
  • #
  • managed:腾讯云托管。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type Type: String # @param ExpireTime: 证书过期时间。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ExpireTime: String # @param EffectiveTime: 证书生效时间。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type EffectiveTime: String # @param CommonName: 证书公用名。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CommonName: String # @param SubjectAltName: 证书SAN域名。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type SubjectAltName: Array # @param Status: 部署状态,取值有: #
  • processing: 部署中;
  • #
  • deployed: 已部署;
  • #
  • failed: 部署失败。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type Status: String # @param Message: Status为失败时,此字段返回失败原因。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Message: String # @param SignAlgo: 证书算法。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type SignAlgo: String attr_accessor :CertId, :Alias, :Type, :ExpireTime, :EffectiveTime, :CommonName, :SubjectAltName, :Status, :Message, :SignAlgo def initialize(certid=nil, _alias=nil, type=nil, expiretime=nil, effectivetime=nil, commonname=nil, subjectaltname=nil, status=nil, message=nil, signalgo=nil) @CertId = certid @Alias = _alias @Type = type @ExpireTime = expiretime @EffectiveTime = effectivetime @CommonName = commonname @SubjectAltName = subjectaltname @Status = status @Message = message @SignAlgo = signalgo end def deserialize(params) @CertId = params['CertId'] @Alias = params['Alias'] @Type = params['Type'] @ExpireTime = params['ExpireTime'] @EffectiveTime = params['EffectiveTime'] @CommonName = params['CommonName'] @SubjectAltName = params['SubjectAltName'] @Status = params['Status'] @Message = params['Message'] @SignAlgo = params['SignAlgo'] end end # DeleteAccelerationDomains请求参数结构体 class DeleteAccelerationDomainsRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 加速域名所属站点ID。 # @type ZoneId: String # @param DomainNames: 需要删除的加速域名ID列表。 # @type DomainNames: Array # @param Force: 是否强制删除。当域名存在关联资源(如马甲域名、流量调度功能)时,是否强制删除该域名,取值有: #
  • true:删除该域名及所有关联资源;
  • #
  • false:当该加速域名存在关联资源时,不允许删除。
  • 不填写,默认值为:false。 # @type Force: Boolean attr_accessor :ZoneId, :DomainNames, :Force def initialize(zoneid=nil, domainnames=nil, force=nil) @ZoneId = zoneid @DomainNames = domainnames @Force = force end def deserialize(params) @ZoneId = params['ZoneId'] @DomainNames = params['DomainNames'] @Force = params['Force'] end end # DeleteAccelerationDomains返回参数结构体 class DeleteAccelerationDomainsResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # DeleteAliasDomain请求参数结构体 class DeleteAliasDomainRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点 ID。 # @type ZoneId: String # @param AliasNames: 待删除别称域名名称。如果为空,则不执行删除操作。 # @type AliasNames: Array attr_accessor :ZoneId, :AliasNames def initialize(zoneid=nil, aliasnames=nil) @ZoneId = zoneid @AliasNames = aliasnames end def deserialize(params) @ZoneId = params['ZoneId'] @AliasNames = params['AliasNames'] end end # DeleteAliasDomain返回参数结构体 class DeleteAliasDomainResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # DeleteApplicationProxy请求参数结构体 class DeleteApplicationProxyRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param ProxyId: 代理ID。 # @type ProxyId: String attr_accessor :ZoneId, :ProxyId def initialize(zoneid=nil, proxyid=nil) @ZoneId = zoneid @ProxyId = proxyid end def deserialize(params) @ZoneId = params['ZoneId'] @ProxyId = params['ProxyId'] end end # DeleteApplicationProxy返回参数结构体 class DeleteApplicationProxyResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # DeleteApplicationProxyRule请求参数结构体 class DeleteApplicationProxyRuleRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param ProxyId: 代理ID。 # @type ProxyId: String # @param RuleId: 规则ID。 # @type RuleId: String attr_accessor :ZoneId, :ProxyId, :RuleId def initialize(zoneid=nil, proxyid=nil, ruleid=nil) @ZoneId = zoneid @ProxyId = proxyid @RuleId = ruleid end def deserialize(params) @ZoneId = params['ZoneId'] @ProxyId = params['ProxyId'] @RuleId = params['RuleId'] end end # DeleteApplicationProxyRule返回参数结构体 class DeleteApplicationProxyRuleResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # DeleteOriginGroup请求参数结构体 class DeleteOriginGroupRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param OriginGroupId: 源站组ID。 # @type OriginGroupId: String attr_accessor :ZoneId, :OriginGroupId def initialize(zoneid=nil, origingroupid=nil) @ZoneId = zoneid @OriginGroupId = origingroupid end def deserialize(params) @ZoneId = params['ZoneId'] @OriginGroupId = params['OriginGroupId'] end end # DeleteOriginGroup返回参数结构体 class DeleteOriginGroupResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # DeleteRules请求参数结构体 class DeleteRulesRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点 ID。 # @type ZoneId: String # @param RuleIds: 指定删除的规则 ID 列表。 # @type RuleIds: Array attr_accessor :ZoneId, :RuleIds def initialize(zoneid=nil, ruleids=nil) @ZoneId = zoneid @RuleIds = ruleids end def deserialize(params) @ZoneId = params['ZoneId'] @RuleIds = params['RuleIds'] end end # DeleteRules返回参数结构体 class DeleteRulesResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # DeleteZone请求参数结构体 class DeleteZoneRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点 ID。 # @type ZoneId: String attr_accessor :ZoneId def initialize(zoneid=nil) @ZoneId = zoneid end def deserialize(params) @ZoneId = params['ZoneId'] end end # DeleteZone返回参数结构体 class DeleteZoneResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # DescribeAccelerationDomains请求参数结构体 class DescribeAccelerationDomainsRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 加速域名所属站点ID。不填写该参数默认返回所有站点下的加速域名。 # @type ZoneId: String # @param Filters: 过滤条件,Filters.Values的上限为20。详细的过滤条件如下: #
  • domain-name
       按照【加速域名名称】进行过滤。
       类型:String
       必选:否 #
  • origin-type
       按照【源站类型】进行过滤。
       类型:String
       必选:否 #
  • origin
       按照【主源站地址】进行过滤。
       类型:String
       必选:否 #
  • backup-origin
       按照【备用源站地址】进行过滤。
       类型:String
       必选:否 # @type Filters: Array # @param Direction: 列表排序方式,取值有: #
  • asc:升序排列;
  • #
  • desc:降序排列。
  • 默认值为asc。 # @type Direction: String # @param Match: 匹配方式,取值有: #
  • all:返回匹配所有查询条件的加速域名;
  • #
  • any:返回匹配任意一个查询条件的加速域名。
  • 默认值为all。 # @type Match: String # @param Limit: 分页查询限制数目,默认值:20,上限:200。 # @type Limit: Integer # @param Offset: 分页查询偏移量,默认为 0。 # @type Offset: Integer # @param Order: 排序依据,取值有: #
  • created_on:加速域名创建时间;
  • #
  • domain-name:加速域名名称;
  • # 默认根据domain-name属性排序。 # @type Order: String attr_accessor :ZoneId, :Filters, :Direction, :Match, :Limit, :Offset, :Order def initialize(zoneid=nil, filters=nil, direction=nil, match=nil, limit=nil, offset=nil, order=nil) @ZoneId = zoneid @Filters = filters @Direction = direction @Match = match @Limit = limit @Offset = offset @Order = order end def deserialize(params) @ZoneId = params['ZoneId'] unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| advancedfilter_tmp = AdvancedFilter.new advancedfilter_tmp.deserialize(i) @Filters << advancedfilter_tmp end end @Direction = params['Direction'] @Match = params['Match'] @Limit = params['Limit'] @Offset = params['Offset'] @Order = params['Order'] end end # DescribeAccelerationDomains返回参数结构体 class DescribeAccelerationDomainsResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 加速域名总数。 # @type TotalCount: Integer # @param AccelerationDomains: 加速域名列表。 # @type AccelerationDomains: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :AccelerationDomains, :RequestId def initialize(totalcount=nil, accelerationdomains=nil, requestid=nil) @TotalCount = totalcount @AccelerationDomains = accelerationdomains @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['AccelerationDomains'].nil? @AccelerationDomains = [] params['AccelerationDomains'].each do |i| accelerationdomain_tmp = AccelerationDomain.new accelerationdomain_tmp.deserialize(i) @AccelerationDomains << accelerationdomain_tmp end end @RequestId = params['RequestId'] end end # DescribeAddableEntityList请求参数结构体 class DescribeAddableEntityListRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param EntityType: 推送数据类型,取值有: #
  • domain:七层加速日志;
  • #
  • application:四层加速日志;
  • #
  • web-rateLiming:速率限制日志;
  • #
  • web-attack:web攻击防护日志;
  • #
  • web-rule:自定义规则日志;
  • #
  • web-bot:Bot管理日志。
  • # @type EntityType: String # @param Area: 服务区域,取值有: #
  • mainland:中国大陆境内;
  • #
  • overseas:全球(不含中国大陆)。
  • 若为国内站账号,则默认取值为mainland;若为国际站账号,则默认取值为overseas。 # @type Area: String attr_accessor :ZoneId, :EntityType, :Area def initialize(zoneid=nil, entitytype=nil, area=nil) @ZoneId = zoneid @EntityType = entitytype @Area = area end def deserialize(params) @ZoneId = params['ZoneId'] @EntityType = params['EntityType'] @Area = params['Area'] end end # DescribeAddableEntityList返回参数结构体 class DescribeAddableEntityListResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 查询结果的总条数。 # @type TotalCount: Integer # @param EntityList: 可添加的实体列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type EntityList: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :EntityList, :RequestId def initialize(totalcount=nil, entitylist=nil, requestid=nil) @TotalCount = totalcount @EntityList = entitylist @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] @EntityList = params['EntityList'] @RequestId = params['RequestId'] end end # DescribeAliasDomains请求参数结构体 class DescribeAliasDomainsRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点 ID。 # @type ZoneId: String # @param Offset: 分页查询偏移量。默认值:0。 # @type Offset: Integer # @param Limit: 分页查询限制数目。默认值:20,最大值:1000。 # @type Limit: Integer # @param Filters: 过滤条件,Filters.Values的上限为20。详细的过滤条件如下: #
  • target-name
       按照【目标域名名称】进行过滤。
       类型:String
       必选:否
  • alias-name
       按照【别称域名名称】进行过滤。
       类型:String
       必选:否
  • 模糊查询时仅支持过滤字段名为alias-name。 # @type Filters: Array attr_accessor :ZoneId, :Offset, :Limit, :Filters def initialize(zoneid=nil, offset=nil, limit=nil, filters=nil) @ZoneId = zoneid @Offset = offset @Limit = limit @Filters = filters end def deserialize(params) @ZoneId = params['ZoneId'] @Offset = params['Offset'] @Limit = params['Limit'] unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| advancedfilter_tmp = AdvancedFilter.new advancedfilter_tmp.deserialize(i) @Filters << advancedfilter_tmp end end end end # DescribeAliasDomains返回参数结构体 class DescribeAliasDomainsResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 符合条件的别称域名个数。 # @type TotalCount: Integer # @param AliasDomains: 别称域名详细信息列表。 # @type AliasDomains: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :AliasDomains, :RequestId def initialize(totalcount=nil, aliasdomains=nil, requestid=nil) @TotalCount = totalcount @AliasDomains = aliasdomains @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['AliasDomains'].nil? @AliasDomains = [] params['AliasDomains'].each do |i| aliasdomain_tmp = AliasDomain.new aliasdomain_tmp.deserialize(i) @AliasDomains << aliasdomain_tmp end end @RequestId = params['RequestId'] end end # DescribeApplicationProxies请求参数结构体 class DescribeApplicationProxiesRequest < TencentCloud::Common::AbstractModel # @param Offset: 分页查询偏移量。默认为0。 # @type Offset: Integer # @param Limit: 分页查询限制数目。默认值:20,最大值:1000。 # @type Limit: Integer # @param Filters: 过滤条件,Filters.Values的上限为20。详细的过滤条件如下:
  • proxy-id
       按照【代理ID】进行过滤。代理ID形如:proxy-ev2sawbwfd。
       类型:String
       必选:否
  • zone-id
       按照【站点ID】进行过滤。站点ID形如:zone-vawer2vadg。
       类型:String
       必选:否
  • # @type Filters: Array attr_accessor :Offset, :Limit, :Filters def initialize(offset=nil, limit=nil, filters=nil) @Offset = offset @Limit = limit @Filters = filters end def deserialize(params) @Offset = params['Offset'] @Limit = params['Limit'] unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| filter_tmp = Filter.new filter_tmp.deserialize(i) @Filters << filter_tmp end end end end # DescribeApplicationProxies返回参数结构体 class DescribeApplicationProxiesResponse < TencentCloud::Common::AbstractModel # @param ApplicationProxies: 应用代理列表。 # @type ApplicationProxies: Array # @param TotalCount: 记录总数。 # @type TotalCount: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :ApplicationProxies, :TotalCount, :RequestId def initialize(applicationproxies=nil, totalcount=nil, requestid=nil) @ApplicationProxies = applicationproxies @TotalCount = totalcount @RequestId = requestid end def deserialize(params) unless params['ApplicationProxies'].nil? @ApplicationProxies = [] params['ApplicationProxies'].each do |i| applicationproxy_tmp = ApplicationProxy.new applicationproxy_tmp.deserialize(i) @ApplicationProxies << applicationproxy_tmp end end @TotalCount = params['TotalCount'] @RequestId = params['RequestId'] end end # DescribeAvailablePlans请求参数结构体 class DescribeAvailablePlansRequest < TencentCloud::Common::AbstractModel def initialize() end def deserialize(params) end end # DescribeAvailablePlans返回参数结构体 class DescribeAvailablePlansResponse < TencentCloud::Common::AbstractModel # @param PlanInfo: 当前账户可购买套餐类型及相关信息。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type PlanInfo: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :PlanInfo, :RequestId def initialize(planinfo=nil, requestid=nil) @PlanInfo = planinfo @RequestId = requestid end def deserialize(params) unless params['PlanInfo'].nil? @PlanInfo = [] params['PlanInfo'].each do |i| planinfo_tmp = PlanInfo.new planinfo_tmp.deserialize(i) @PlanInfo << planinfo_tmp end end @RequestId = params['RequestId'] end end # DescribeClientRuleList请求参数结构体 class DescribeClientRuleListRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 查询的站点ID. # @type ZoneId: String # @param Domain: 查询的子域名。 # @type Domain: String # @param RuleType: 规则类型,取值有: #
  • acl:自定义规则;
  • #
  • rate:限速规则。
  • 不填表示查询所有规则。 # @type RuleType: String # @param RuleId: 规则ID。 # @type RuleId: Integer # @param SourceClientIp: 客户端IP。 # @type SourceClientIp: String # @param Limit: 分页查询的限制数目,默认值为20,最大查询条目为1000。 # @type Limit: Integer # @param Offset: 分页的偏移量,默认值为0。 # @type Offset: Integer # @param Area: 数据归属地区,取值有: #
  • overseas:全球(除中国大陆地区)数据;
  • #
  • mainland:中国大陆地区数据。
  • 不填将根据用户所在地智能选择地区。 # @type Area: String attr_accessor :ZoneId, :Domain, :RuleType, :RuleId, :SourceClientIp, :Limit, :Offset, :Area def initialize(zoneid=nil, domain=nil, ruletype=nil, ruleid=nil, sourceclientip=nil, limit=nil, offset=nil, area=nil) @ZoneId = zoneid @Domain = domain @RuleType = ruletype @RuleId = ruleid @SourceClientIp = sourceclientip @Limit = limit @Offset = offset @Area = area end def deserialize(params) @ZoneId = params['ZoneId'] @Domain = params['Domain'] @RuleType = params['RuleType'] @RuleId = params['RuleId'] @SourceClientIp = params['SourceClientIp'] @Limit = params['Limit'] @Offset = params['Offset'] @Area = params['Area'] end end # DescribeClientRuleList返回参数结构体 class DescribeClientRuleListResponse < TencentCloud::Common::AbstractModel # @param Data: 封禁客户端数据列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: Array # @param TotalCount: 查询结果的总条数。 # @type TotalCount: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Data, :TotalCount, :RequestId def initialize(data=nil, totalcount=nil, requestid=nil) @Data = data @TotalCount = totalcount @RequestId = requestid end def deserialize(params) unless params['Data'].nil? @Data = [] params['Data'].each do |i| clientrule_tmp = ClientRule.new clientrule_tmp.deserialize(i) @Data << clientrule_tmp end end @TotalCount = params['TotalCount'] @RequestId = params['RequestId'] end end # DescribeContentQuota请求参数结构体 class DescribeContentQuotaRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点 ID。 # @type ZoneId: String attr_accessor :ZoneId def initialize(zoneid=nil) @ZoneId = zoneid end def deserialize(params) @ZoneId = params['ZoneId'] end end # DescribeContentQuota返回参数结构体 class DescribeContentQuotaResponse < TencentCloud::Common::AbstractModel # @param PurgeQuota: 刷新相关配额。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type PurgeQuota: Array # @param PrefetchQuota: 预热相关配额。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type PrefetchQuota: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :PurgeQuota, :PrefetchQuota, :RequestId def initialize(purgequota=nil, prefetchquota=nil, requestid=nil) @PurgeQuota = purgequota @PrefetchQuota = prefetchquota @RequestId = requestid end def deserialize(params) unless params['PurgeQuota'].nil? @PurgeQuota = [] params['PurgeQuota'].each do |i| quota_tmp = Quota.new quota_tmp.deserialize(i) @PurgeQuota << quota_tmp end end unless params['PrefetchQuota'].nil? @PrefetchQuota = [] params['PrefetchQuota'].each do |i| quota_tmp = Quota.new quota_tmp.deserialize(i) @PrefetchQuota << quota_tmp end end @RequestId = params['RequestId'] end end # DescribeDDoSAttackData请求参数结构体 class DescribeDDoSAttackDataRequest < TencentCloud::Common::AbstractModel # @param StartTime: 开始时间。 # @type StartTime: String # @param EndTime: 结束时间。 # @type EndTime: String # @param MetricNames: 统计指标列表,取值有: #
  • ddos_attackMaxBandwidth:攻击带宽峰值;
  • #
  • ddos_attackMaxPackageRate:攻击包速率峰值 ;
  • #
  • ddos_attackBandwidth:攻击带宽曲线;
  • #
  • ddos_attackPackageRate:攻击包速率曲线。
  • # @type MetricNames: Array # @param ZoneIds: 站点集合,不填默认选择全部站点。 # @type ZoneIds: Array # @param PolicyIds: DDoS策略组ID列表,不填默认选择全部策略ID。 # @type PolicyIds: Array # @param Interval: 查询时间粒度,取值有: #
  • min:1分钟;
  • #
  • 5min:5分钟;
  • #
  • hour:1小时;
  • #
  • day:1天。
  • 不填将根据开始时间与结束时间的间隔自动推算粒度,具体为:1小时范围内以min粒度查询,2天范围内以5min粒度查询,7天范围内以hour粒度查询,超过7天以day粒度查询。 # @type Interval: String # @param Area: 数据归属地区,取值有: #
  • overseas:全球(除中国大陆地区)数据;
  • #
  • mainland:中国大陆地区数据;
  • #
  • global:全球数据。
  • 不填默认取值为global。 # @type Area: String attr_accessor :StartTime, :EndTime, :MetricNames, :ZoneIds, :PolicyIds, :Interval, :Area def initialize(starttime=nil, endtime=nil, metricnames=nil, zoneids=nil, policyids=nil, interval=nil, area=nil) @StartTime = starttime @EndTime = endtime @MetricNames = metricnames @ZoneIds = zoneids @PolicyIds = policyids @Interval = interval @Area = area end def deserialize(params) @StartTime = params['StartTime'] @EndTime = params['EndTime'] @MetricNames = params['MetricNames'] @ZoneIds = params['ZoneIds'] @PolicyIds = params['PolicyIds'] @Interval = params['Interval'] @Area = params['Area'] end end # DescribeDDoSAttackData返回参数结构体 class DescribeDDoSAttackDataResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 查询结果的总条数。 # @type TotalCount: Integer # @param Data: DDoS攻击数据内容列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :Data, :RequestId def initialize(totalcount=nil, data=nil, requestid=nil) @TotalCount = totalcount @Data = data @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['Data'].nil? @Data = [] params['Data'].each do |i| secentry_tmp = SecEntry.new secentry_tmp.deserialize(i) @Data << secentry_tmp end end @RequestId = params['RequestId'] end end # DescribeDDoSAttackTopData请求参数结构体 class DescribeDDoSAttackTopDataRequest < TencentCloud::Common::AbstractModel # @param StartTime: 开始时间。 # @type StartTime: String # @param EndTime: 结束时间。 # @type EndTime: String # @param MetricName: 查询的统计指标,取值有: #
  • ddos_attackFlux_protocol:按各协议的攻击流量排行;
  • #
  • ddos_attackPackageNum_protocol:按各协议的攻击包量排行;
  • #
  • ddos_attackNum_attackType:按各攻击类型的攻击数量排行;
  • #
  • ddos_attackNum_sregion:按攻击源地区的攻击数量排行;
  • #
  • ddos_attackFlux_sip:按攻击源IP的攻击数量排行;
  • #
  • ddos_attackFlux_sregion:按攻击源地区的攻击数量排行。
  • # @type MetricName: String # @param ZoneIds: 站点ID集合,不填默认选择全部站点。 # @type ZoneIds: Array # @param PolicyIds: DDoS策略组ID集合,不填默认选择全部策略ID。 # @type PolicyIds: Array # @param AttackType: 攻击类型,取值有: #
  • flood:洪泛攻击;
  • #
  • icmpFlood:icmp洪泛攻击;
  • #
  • all:所有的攻击类型。
  • 不填默认为all,表示查询全部攻击类型。 # @type AttackType: String # @param ProtocolType: 协议类型,取值有: #
  • tcp:tcp协议;
  • #
  • udp:udp协议;
  • #
  • all:所有的协议类型。
  • 不填默认为all,表示查询所有协议。 # @type ProtocolType: String # @param Port: 端口号。 # @type Port: Integer # @param Limit: 查询前多少个数据,不填默认默认为10, 表示查询前top 10的数据。 # @type Limit: Integer # @param Area: 数据归属地区,取值有: #
  • overseas:全球(除中国大陆地区)数据;
  • #
  • mainland:中国大陆地区数据。
  • 不填将根据用户所在地智能选择地区。 # @type Area: String attr_accessor :StartTime, :EndTime, :MetricName, :ZoneIds, :PolicyIds, :AttackType, :ProtocolType, :Port, :Limit, :Area def initialize(starttime=nil, endtime=nil, metricname=nil, zoneids=nil, policyids=nil, attacktype=nil, protocoltype=nil, port=nil, limit=nil, area=nil) @StartTime = starttime @EndTime = endtime @MetricName = metricname @ZoneIds = zoneids @PolicyIds = policyids @AttackType = attacktype @ProtocolType = protocoltype @Port = port @Limit = limit @Area = area end def deserialize(params) @StartTime = params['StartTime'] @EndTime = params['EndTime'] @MetricName = params['MetricName'] @ZoneIds = params['ZoneIds'] @PolicyIds = params['PolicyIds'] @AttackType = params['AttackType'] @ProtocolType = params['ProtocolType'] @Port = params['Port'] @Limit = params['Limit'] @Area = params['Area'] end end # DescribeDDoSAttackTopData返回参数结构体 class DescribeDDoSAttackTopDataResponse < TencentCloud::Common::AbstractModel # @param Data: DDoS攻击Top数据列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: Array # @param TotalCount: 查询结果的总条数。 # @type TotalCount: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Data, :TotalCount, :RequestId def initialize(data=nil, totalcount=nil, requestid=nil) @Data = data @TotalCount = totalcount @RequestId = requestid end def deserialize(params) unless params['Data'].nil? @Data = [] params['Data'].each do |i| topentry_tmp = TopEntry.new topentry_tmp.deserialize(i) @Data << topentry_tmp end end @TotalCount = params['TotalCount'] @RequestId = params['RequestId'] end end # DescribeDefaultCertificates请求参数结构体 class DescribeDefaultCertificatesRequest < TencentCloud::Common::AbstractModel # @param Filters: 过滤条件,Filters.Values的上限为5。详细的过滤条件如下: #
  • zone-id
       按照【站点ID】进行过滤。站点ID形如:zone-xxx。
       类型:String
       必选:是
  • # @type Filters: Array # @param Offset: 分页查询偏移量。默认值:0。 # @type Offset: Integer # @param Limit: 分页查询限制数目。默认值:20,最大值:100。 # @type Limit: Integer attr_accessor :Filters, :Offset, :Limit def initialize(filters=nil, offset=nil, limit=nil) @Filters = filters @Offset = offset @Limit = limit end def deserialize(params) unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| filter_tmp = Filter.new filter_tmp.deserialize(i) @Filters << filter_tmp end end @Offset = params['Offset'] @Limit = params['Limit'] end end # DescribeDefaultCertificates返回参数结构体 class DescribeDefaultCertificatesResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 证书总数。 # @type TotalCount: Integer # @param DefaultServerCertInfo: 默认证书列表。 # @type DefaultServerCertInfo: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :DefaultServerCertInfo, :RequestId def initialize(totalcount=nil, defaultservercertinfo=nil, requestid=nil) @TotalCount = totalcount @DefaultServerCertInfo = defaultservercertinfo @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['DefaultServerCertInfo'].nil? @DefaultServerCertInfo = [] params['DefaultServerCertInfo'].each do |i| defaultservercertinfo_tmp = DefaultServerCertInfo.new defaultservercertinfo_tmp.deserialize(i) @DefaultServerCertInfo << defaultservercertinfo_tmp end end @RequestId = params['RequestId'] end end # DescribeDnsData请求参数结构体 class DescribeDnsDataRequest < TencentCloud::Common::AbstractModel # @param StartTime: 起始时间。 # @type StartTime: String # @param EndTime: 结束时间。 # @type EndTime: String # @param Filters: 过滤条件,Filters.Values的上限为20。详细的过滤条件如下: #
  • zone
       按照【站点名称】进行过滤。站点名称形如:tencent.com
       类型:String
       必选:否,仅支持填写一个站点 #
  • host
       按照【域名】进行过滤。域名形如:test.tencent.com
       类型:String
       必选:否,仅支持填写一个域名 #
  • type
       按照【DNS解析类型】进行过滤
       类型:String
       必选:否
       可选项:
       A:A记录
       AAAA:AAAA记录
       CNAME:CNAME记录
       MX:MX记录
       TXT:TXT记录
       NS:NS记录
       SRV:SRV记录
       CAA:CAA记录 #
  • code
       按照【DNS解析状态码】进行过滤。
       类型:String
       必选:否
       可选项:
       NoError:成功
       NXDomain:请求域不存在
       NotImp:不支持的请求类型
       Refused:域名服务器因为策略的原因拒绝执行请求 #
  • area
       按照【DNS解析地域】进行过滤。
       类型:String
       必选:否。
       可选项:
       亚洲:Asia
       欧洲:Europe
       非洲:Africa
       大洋洲:Oceania
       美洲:Americas # @type Filters: Array # @param Interval: 时间粒度,取值有: #
  • min:1分钟粒度;
  • #
  • 5min:5分钟粒度;
  • #
  • hour:1小时粒度;
  • #
  • day:天粒度。
  • 不填写,默认值为:min。 # @type Interval: String attr_accessor :StartTime, :EndTime, :Filters, :Interval def initialize(starttime=nil, endtime=nil, filters=nil, interval=nil) @StartTime = starttime @EndTime = endtime @Filters = filters @Interval = interval end def deserialize(params) @StartTime = params['StartTime'] @EndTime = params['EndTime'] unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| filter_tmp = Filter.new filter_tmp.deserialize(i) @Filters << filter_tmp end end @Interval = params['Interval'] end end # DescribeDnsData返回参数结构体 class DescribeDnsDataResponse < TencentCloud::Common::AbstractModel # @param Data: 统计数据。 # @type Data: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Data, :RequestId def initialize(data=nil, requestid=nil) @Data = data @RequestId = requestid end def deserialize(params) unless params['Data'].nil? @Data = [] params['Data'].each do |i| dnsdata_tmp = DnsData.new dnsdata_tmp.deserialize(i) @Data << dnsdata_tmp end end @RequestId = params['RequestId'] end end # DescribeHostsSetting请求参数结构体 class DescribeHostsSettingRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param Offset: 分页查询偏移量。默认值: 0,最小值:0。 # @type Offset: Integer # @param Limit: 分页查询限制数目。默认值: 100,最大值:1000。 # @type Limit: Integer # @param Filters: 过滤条件,Filters.Values的上限为20。详细的过滤条件如下: #
  • host
       按照【域名】进行过滤。
       类型:string
       必选:否
  • # @type Filters: Array attr_accessor :ZoneId, :Offset, :Limit, :Filters def initialize(zoneid=nil, offset=nil, limit=nil, filters=nil) @ZoneId = zoneid @Offset = offset @Limit = limit @Filters = filters end def deserialize(params) @ZoneId = params['ZoneId'] @Offset = params['Offset'] @Limit = params['Limit'] unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| filter_tmp = Filter.new filter_tmp.deserialize(i) @Filters << filter_tmp end end end end # DescribeHostsSetting返回参数结构体 class DescribeHostsSettingResponse < TencentCloud::Common::AbstractModel # @param DetailHosts: 域名列表。 # @type DetailHosts: Array # @param TotalNumber: 域名数量。 # @type TotalNumber: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :DetailHosts, :TotalNumber, :RequestId def initialize(detailhosts=nil, totalnumber=nil, requestid=nil) @DetailHosts = detailhosts @TotalNumber = totalnumber @RequestId = requestid end def deserialize(params) unless params['DetailHosts'].nil? @DetailHosts = [] params['DetailHosts'].each do |i| detailhost_tmp = DetailHost.new detailhost_tmp.deserialize(i) @DetailHosts << detailhost_tmp end end @TotalNumber = params['TotalNumber'] @RequestId = params['RequestId'] end end # DescribeIdentifications请求参数结构体 class DescribeIdentificationsRequest < TencentCloud::Common::AbstractModel # @param Filters: 过滤条件,Filters.Values的上限为20。详细的过滤条件如下: #
  • zone-name
       按照【站点名称】进行过滤。
       类型:String
       必选:是
  • # @type Filters: Array # @param Offset: 分页查询偏移量。默认值:0。 # @type Offset: Integer # @param Limit: 分页查询限制数目。默认值:20,最大值:1000。 # @type Limit: Integer attr_accessor :Filters, :Offset, :Limit def initialize(filters=nil, offset=nil, limit=nil) @Filters = filters @Offset = offset @Limit = limit end def deserialize(params) unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| filter_tmp = Filter.new filter_tmp.deserialize(i) @Filters << filter_tmp end end @Offset = params['Offset'] @Limit = params['Limit'] end end # DescribeIdentifications返回参数结构体 class DescribeIdentificationsResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 符合条件的站点个数。 # @type TotalCount: Integer # @param Identifications: 站点验证信息列表。 # @type Identifications: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :Identifications, :RequestId def initialize(totalcount=nil, identifications=nil, requestid=nil) @TotalCount = totalcount @Identifications = identifications @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['Identifications'].nil? @Identifications = [] params['Identifications'].each do |i| identification_tmp = Identification.new identification_tmp.deserialize(i) @Identifications << identification_tmp end end @RequestId = params['RequestId'] end end # DescribeLogSets请求参数结构体 class DescribeLogSetsRequest < TencentCloud::Common::AbstractModel # @param LogSetRegion: 日志集所属的地域。 # @type LogSetRegion: String # @param LogSetId: 日志集ID。 # @type LogSetId: String # @param LogSetName: 日志集名称。 # @type LogSetName: String attr_accessor :LogSetRegion, :LogSetId, :LogSetName def initialize(logsetregion=nil, logsetid=nil, logsetname=nil) @LogSetRegion = logsetregion @LogSetId = logsetid @LogSetName = logsetname end def deserialize(params) @LogSetRegion = params['LogSetRegion'] @LogSetId = params['LogSetId'] @LogSetName = params['LogSetName'] end end # DescribeLogSets返回参数结构体 class DescribeLogSetsResponse < TencentCloud::Common::AbstractModel # @param LogSetList: 日志集列表数据。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type LogSetList: Array # @param TotalCount: 查询结果的总条数。 # @type TotalCount: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :LogSetList, :TotalCount, :RequestId def initialize(logsetlist=nil, totalcount=nil, requestid=nil) @LogSetList = logsetlist @TotalCount = totalcount @RequestId = requestid end def deserialize(params) unless params['LogSetList'].nil? @LogSetList = [] params['LogSetList'].each do |i| logsetinfo_tmp = LogSetInfo.new logsetinfo_tmp.deserialize(i) @LogSetList << logsetinfo_tmp end end @TotalCount = params['TotalCount'] @RequestId = params['RequestId'] end end # DescribeLogTopicTasks请求参数结构体 class DescribeLogTopicTasksRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param Limit: 分页查询的限制数目,默认值为20,最大查询条目为1000。 # @type Limit: Integer # @param Offset: 分页的偏移量,默认值为0。 # @type Offset: Integer attr_accessor :ZoneId, :Limit, :Offset def initialize(zoneid=nil, limit=nil, offset=nil) @ZoneId = zoneid @Limit = limit @Offset = offset end def deserialize(params) @ZoneId = params['ZoneId'] @Limit = params['Limit'] @Offset = params['Offset'] end end # DescribeLogTopicTasks返回参数结构体 class DescribeLogTopicTasksResponse < TencentCloud::Common::AbstractModel # @param TopicList: 推送任务列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type TopicList: Array # @param TotalCount: 查询结果的总条数。 # @type TotalCount: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TopicList, :TotalCount, :RequestId def initialize(topiclist=nil, totalcount=nil, requestid=nil) @TopicList = topiclist @TotalCount = totalcount @RequestId = requestid end def deserialize(params) unless params['TopicList'].nil? @TopicList = [] params['TopicList'].each do |i| clslogtopicinfo_tmp = ClsLogTopicInfo.new clslogtopicinfo_tmp.deserialize(i) @TopicList << clslogtopicinfo_tmp end end @TotalCount = params['TotalCount'] @RequestId = params['RequestId'] end end # DescribeOriginGroup请求参数结构体 class DescribeOriginGroupRequest < TencentCloud::Common::AbstractModel # @param Offset: 分页查询偏移量,默认为0。 # @type Offset: Integer # @param Limit: 分页查询限制数目,默认为10,取值:1-1000。 # @type Limit: Integer # @param Filters: 过滤条件,Filters.Values的上限为20。详细的过滤条件如下: #
  • zone-id
       按照【站点ID】进行过滤。站点ID形如:zone-20hzkd4rdmy0
       类型:String
       必选:否
       模糊查询:不支持
  • origin-group-id
       按照【源站组ID】进行过滤。源站组ID形如:origin-2ccgtb24-7dc5-46s2-9r3e-95825d53dwe3a
       类型:String
       必选:否
       模糊查询:不支持
  • origin-group-name
       按照【源站组名称】进行过滤
       类型:String
       必选:否
       模糊查询:支持。使用模糊查询时,仅支持填写一个源站组名称
  • # @type Filters: Array attr_accessor :Offset, :Limit, :Filters def initialize(offset=nil, limit=nil, filters=nil) @Offset = offset @Limit = limit @Filters = filters end def deserialize(params) @Offset = params['Offset'] @Limit = params['Limit'] unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| advancedfilter_tmp = AdvancedFilter.new advancedfilter_tmp.deserialize(i) @Filters << advancedfilter_tmp end end end end # DescribeOriginGroup返回参数结构体 class DescribeOriginGroupResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 记录总数。 # @type TotalCount: Integer # @param OriginGroups: 源站组信息。 # @type OriginGroups: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :OriginGroups, :RequestId def initialize(totalcount=nil, origingroups=nil, requestid=nil) @TotalCount = totalcount @OriginGroups = origingroups @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['OriginGroups'].nil? @OriginGroups = [] params['OriginGroups'].each do |i| origingroup_tmp = OriginGroup.new origingroup_tmp.deserialize(i) @OriginGroups << origingroup_tmp end end @RequestId = params['RequestId'] end end # DescribeOriginProtection请求参数结构体 class DescribeOriginProtectionRequest < TencentCloud::Common::AbstractModel # @param ZoneIds: 查询的站点集合,不填默认查询所有站点。 # @type ZoneIds: Array # @param Filters: 过滤条件,Filters.Values的上限为20。详细的过滤条件如下: #
  • need-update
       按照【站点是否需要更新源站防护IP白名单】进行过滤。
       类型:String
       必选:否
       可选项:
       true:需要更新
       false:无需更新
  • #
  • plan-support
       按照【站点套餐是否支持源站防护】进行过滤。
       类型:String
       必选:否
       可选项:
       true:支持
       false:不支持
  • # @type Filters: Array # @param Offset: 分页查询偏移量,默认为0。 # @type Offset: Integer # @param Limit: 分页查询限制数目。默认值:20,最大值:1000。 # @type Limit: Integer attr_accessor :ZoneIds, :Filters, :Offset, :Limit def initialize(zoneids=nil, filters=nil, offset=nil, limit=nil) @ZoneIds = zoneids @Filters = filters @Offset = offset @Limit = limit end def deserialize(params) @ZoneIds = params['ZoneIds'] unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| filter_tmp = Filter.new filter_tmp.deserialize(i) @Filters << filter_tmp end end @Offset = params['Offset'] @Limit = params['Limit'] end end # DescribeOriginProtection返回参数结构体 class DescribeOriginProtectionResponse < TencentCloud::Common::AbstractModel # @param OriginProtectionInfo: 源站防护信息。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type OriginProtectionInfo: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :OriginProtectionInfo, :RequestId def initialize(originprotectioninfo=nil, requestid=nil) @OriginProtectionInfo = originprotectioninfo @RequestId = requestid end def deserialize(params) unless params['OriginProtectionInfo'].nil? @OriginProtectionInfo = [] params['OriginProtectionInfo'].each do |i| originprotectioninfo_tmp = OriginProtectionInfo.new originprotectioninfo_tmp.deserialize(i) @OriginProtectionInfo << originprotectioninfo_tmp end end @RequestId = params['RequestId'] end end # DescribeOverviewL7Data请求参数结构体 class DescribeOverviewL7DataRequest < TencentCloud::Common::AbstractModel # @param StartTime: 开始时间。 # @type StartTime: String # @param EndTime: 结束时间。 # @type EndTime: String # @param MetricNames: 查询的指标,取值有: #
  • l7Flow_outFlux: 访问流量;
  • #
  • l7Flow_request: 访问请求数;
  • #
  • l7Flow_outBandwidth: 访问带宽;
  • #
  • l7Flow_hit_outFlux: 缓存命中流量。
  • # @type MetricNames: Array # @param ZoneIds: 站点集合。 # 若不填写,默认选择全部站点,且最多只能查询近30天的数据;若填写,则可查询站点绑定套餐支持的数据分析最大查询范围。 # @type ZoneIds: Array # @param Domains: 查询的域名集合,不填默认查询所有子域名。 # @type Domains: Array # @param Protocol: 查询的协议类型,取值有: #
  • http: http协议;
  • #
  • https: https协议;
  • #
  • http2: http2协议;
  • #
  • all: 所有协议。
  • 不填默认为all,此参数暂未生效。 # @type Protocol: String # @param Interval: 查询时间粒度,取值有: #
  • min:1分钟;
  • #
  • 5min:5分钟;
  • #
  • hour:1小时;
  • #
  • day:1天。
  • 不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:1小时范围内以min粒度查询,2天范围内以5min粒度查询,7天范围内以hour粒度查询,超过7天以day粒度查询。 # @type Interval: String # @param Filters: 过滤条件,详细的过滤条件Key值如下: #
  • socket
       按照【HTTP协议类型】进行过滤。
       对应的Value可选项如下:
       HTTP:HTTP 协议;
       HTTPS:HTTPS协议;
       QUIC:QUIC协议。
  • #
  • tagKey
       按照【标签Key】进行过滤。
  • #
  • tagValue
       按照【标签Value】进行过滤。
  • # @type Filters: Array # @param Area: 数据归属地区,取值有: #
  • overseas:全球(除中国大陆地区)数据;
  • #
  • mainland:中国大陆地区数据;
  • #
  • global:全球数据。
  • 不填默认取值为global。 # @type Area: String attr_accessor :StartTime, :EndTime, :MetricNames, :ZoneIds, :Domains, :Protocol, :Interval, :Filters, :Area def initialize(starttime=nil, endtime=nil, metricnames=nil, zoneids=nil, domains=nil, protocol=nil, interval=nil, filters=nil, area=nil) @StartTime = starttime @EndTime = endtime @MetricNames = metricnames @ZoneIds = zoneids @Domains = domains @Protocol = protocol @Interval = interval @Filters = filters @Area = area end def deserialize(params) @StartTime = params['StartTime'] @EndTime = params['EndTime'] @MetricNames = params['MetricNames'] @ZoneIds = params['ZoneIds'] @Domains = params['Domains'] @Protocol = params['Protocol'] @Interval = params['Interval'] unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| querycondition_tmp = QueryCondition.new querycondition_tmp.deserialize(i) @Filters << querycondition_tmp end end @Area = params['Area'] end end # DescribeOverviewL7Data返回参数结构体 class DescribeOverviewL7DataResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 查询结果的总条数。 # @type TotalCount: Integer # @param Data: 七层监控类时序流量数据列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :Data, :RequestId def initialize(totalcount=nil, data=nil, requestid=nil) @TotalCount = totalcount @Data = data @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['Data'].nil? @Data = [] params['Data'].each do |i| timingdatarecord_tmp = TimingDataRecord.new timingdatarecord_tmp.deserialize(i) @Data << timingdatarecord_tmp end end @RequestId = params['RequestId'] end end # DescribePrefetchTasks请求参数结构体 class DescribePrefetchTasksRequest < TencentCloud::Common::AbstractModel # @param StartTime: 查询起始时间。 # @type StartTime: String # @param EndTime: 查询结束时间。 # @type EndTime: String # @param Offset: 分页查询偏移量,默认为 0。 # @type Offset: Integer # @param Limit: 分页查询限制数目,默认值:20,上限:1000。 # @type Limit: Integer # @param Filters: 过滤条件,Filters.Values的上限为20。详细的过滤条件如下: #
  • zone-id
       按照【站点 ID】进行过滤。zone-id形如:zone-1379afjk91u32h,暂不支持多值。
       类型:String
       必选:否。
       模糊查询:不支持。
  • job-id
       按照【任务ID】进行过滤。job-id形如:1379afjk91u32h,暂不支持多值。
       类型:String
       必选:否。
       模糊查询:不支持。
  • target
       按照【目标资源信息】进行过滤。target形如:http://www.qq.com/1.txt,暂不支持多值。
       类型:String
       必选:否。
       模糊查询:不支持。
  • domains
       按照【域名】进行过滤。domains形如:www.qq.com。
       类型:String
       必选:否。
       模糊查询:不支持。
  • statuses
       按照【任务状态】进行过滤。
       必选:否
       模糊查询:不支持。
       可选项:
       processing:处理中
       success:成功
       failed:失败
       timeout:超时
  • # @type Filters: Array attr_accessor :StartTime, :EndTime, :Offset, :Limit, :Filters def initialize(starttime=nil, endtime=nil, offset=nil, limit=nil, filters=nil) @StartTime = starttime @EndTime = endtime @Offset = offset @Limit = limit @Filters = filters end def deserialize(params) @StartTime = params['StartTime'] @EndTime = params['EndTime'] @Offset = params['Offset'] @Limit = params['Limit'] unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| advancedfilter_tmp = AdvancedFilter.new advancedfilter_tmp.deserialize(i) @Filters << advancedfilter_tmp end end end end # DescribePrefetchTasks返回参数结构体 class DescribePrefetchTasksResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 该查询条件总共条目数。 # @type TotalCount: Integer # @param Tasks: 任务结果列表。 # @type Tasks: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :Tasks, :RequestId def initialize(totalcount=nil, tasks=nil, requestid=nil) @TotalCount = totalcount @Tasks = tasks @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['Tasks'].nil? @Tasks = [] params['Tasks'].each do |i| task_tmp = Task.new task_tmp.deserialize(i) @Tasks << task_tmp end end @RequestId = params['RequestId'] end end # DescribePurgeTasks请求参数结构体 class DescribePurgeTasksRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 字段已废弃,请使用Filters中的zone-id。 # @type ZoneId: String # @param StartTime: 查询起始时间。 # @type StartTime: String # @param EndTime: 查询结束时间。 # @type EndTime: String # @param Offset: 分页查询偏移量,默认为0。 # @type Offset: Integer # @param Limit: 分页查限制数目,默认值:20,最大值:1000。 # @type Limit: Integer # @param Filters: 过滤条件,Filters.Values的上限为20。详细的过滤条件如下:
  • zone-id
       按照【站点 ID】进行过滤。zone-id形如:zone-xxx,暂不支持多值
       类型:String
       必选:否
       模糊查询:不支持
  • job-id
       按照【任务ID】进行过滤。job-id形如:1379afjk91u32h,暂不支持多值。
       类型:String
       必选:否
       模糊查询:不支持
  • target
       按照【目标资源信息】进行过滤,target形如:http://www.qq.com/1.txt或者tag1,暂不支持多值
       类型:String
       必选:否
       模糊查询:不支持
  • domains
       按照【域名】进行过滤,domains形如:www.qq.com
       类型:String
       必选:否
       模糊查询:不支持。
  • statuses
       按照【任务状态】进行过滤
       必选:否
       模糊查询:不支持。
       可选项:
       processing:处理中
       success:成功
       failed:失败
       timeout:超时
  • type
       按照【清除缓存类型】进行过滤,暂不支持多值。
       类型:String
       必选:否
       模糊查询:不支持
       可选项:
       purge_url:URL
       purge_prefix:前缀
       purge_all:全部缓存内容
       purge_host:Hostname
       purge_cache_tag:CacheTag
  • # @type Filters: Array attr_accessor :ZoneId, :StartTime, :EndTime, :Offset, :Limit, :Filters def initialize(zoneid=nil, starttime=nil, endtime=nil, offset=nil, limit=nil, filters=nil) @ZoneId = zoneid @StartTime = starttime @EndTime = endtime @Offset = offset @Limit = limit @Filters = filters end def deserialize(params) @ZoneId = params['ZoneId'] @StartTime = params['StartTime'] @EndTime = params['EndTime'] @Offset = params['Offset'] @Limit = params['Limit'] unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| advancedfilter_tmp = AdvancedFilter.new advancedfilter_tmp.deserialize(i) @Filters << advancedfilter_tmp end end end end # DescribePurgeTasks返回参数结构体 class DescribePurgeTasksResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 该查询条件总共条目数。 # @type TotalCount: Integer # @param Tasks: 任务结果列表。 # @type Tasks: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :Tasks, :RequestId def initialize(totalcount=nil, tasks=nil, requestid=nil) @TotalCount = totalcount @Tasks = tasks @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['Tasks'].nil? @Tasks = [] params['Tasks'].each do |i| task_tmp = Task.new task_tmp.deserialize(i) @Tasks << task_tmp end end @RequestId = params['RequestId'] end end # DescribeRules请求参数结构体 class DescribeRulesRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点 ID。 # @type ZoneId: String # @param Filters: 过滤条件,Filters.Values的上限为20。详细的过滤条件如下: #
  • rule-id
       按照【规则ID】进行过滤。
       类型:string
       必选:否
  • # @type Filters: Array attr_accessor :ZoneId, :Filters def initialize(zoneid=nil, filters=nil) @ZoneId = zoneid @Filters = filters end def deserialize(params) @ZoneId = params['ZoneId'] unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| filter_tmp = Filter.new filter_tmp.deserialize(i) @Filters << filter_tmp end end end end # DescribeRules返回参数结构体 class DescribeRulesResponse < TencentCloud::Common::AbstractModel # @param ZoneId: 站点 ID。 # @type ZoneId: String # @param RuleItems: 规则列表,按规则执行顺序从先往后排序。 # @type RuleItems: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :ZoneId, :RuleItems, :RequestId def initialize(zoneid=nil, ruleitems=nil, requestid=nil) @ZoneId = zoneid @RuleItems = ruleitems @RequestId = requestid end def deserialize(params) @ZoneId = params['ZoneId'] unless params['RuleItems'].nil? @RuleItems = [] params['RuleItems'].each do |i| ruleitem_tmp = RuleItem.new ruleitem_tmp.deserialize(i) @RuleItems << ruleitem_tmp end end @RequestId = params['RequestId'] end end # DescribeRulesSetting请求参数结构体 class DescribeRulesSettingRequest < TencentCloud::Common::AbstractModel def initialize() end def deserialize(params) end end # DescribeRulesSetting返回参数结构体 class DescribeRulesSettingResponse < TencentCloud::Common::AbstractModel # @param Actions: 规则引擎可应用匹配请求的设置列表及其详细建议配置信息。 # @type Actions: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Actions, :RequestId def initialize(actions=nil, requestid=nil) @Actions = actions @RequestId = requestid end def deserialize(params) unless params['Actions'].nil? @Actions = [] params['Actions'].each do |i| rulessettingaction_tmp = RulesSettingAction.new rulessettingaction_tmp.deserialize(i) @Actions << rulessettingaction_tmp end end @RequestId = params['RequestId'] end end # DescribeSingleL7AnalysisData请求参数结构体 class DescribeSingleL7AnalysisDataRequest < TencentCloud::Common::AbstractModel # @param StartTime: 开始时间。 # @type StartTime: String # @param EndTime: 结束时间。 # @type EndTime: String # @param MetricNames: 查询的指标,取值有: #
  • l7Flow_singleIpRequest:独立IP请求数。
  • # @type MetricNames: Array # @param ZoneIds: 站点集合。 # 若不填写,默认选择全部站点,且最多只能查询近30天的数据; # 若填写,则可查询站点绑定套餐支持的数据分析最大查询范围。 # @type ZoneIds: Array # @param Filters: 过滤条件,详细的过滤条件Key值如下: #
  • country
       按照【国家/地区】进行过滤,国家/地区遵循ISO 3166规范。
  • #
  • domain
       按照【子域名】进行过滤,子域名形如: test.example.com。
  • #
  • protocol
       按照【HTTP协议版本】进行过滤。
       对应的Value可选项如下:
       HTTP/1.0:HTTP 1.0;
       HTTP/1.1:HTTP 1.1;
       HTTP/2.0:HTTP 2.0;
       HTTP/3.0:HTTP 3.0;
       WebSocket:WebSocket。
  • #
  • socket
       按照【HTTP协议类型】进行过滤。
       对应的Value可选项如下:
       HTTP:HTTP 协议;
       HTTPS:HTTPS协议;
       QUIC:QUIC协议。
  • #
  • tagKey
       按照【标签Key】进行过滤。
  • #
  • tagValue
       按照【标签Value】进行过滤。
  • # @type Filters: Array # @param Interval: 查询时间粒度,取值有: #
  • min:1分钟;
  • #
  • 5min:5分钟;
  • #
  • hour:1小时;
  • #
  • day:1天;。
  • 不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:1小时范围内以min粒度查询,2天范围内以5min粒度查询,7天范围内以hour粒度查询,超过7天以day粒度查询。 # @type Interval: String # @param Area: 数据归属地区,取值有: #
  • overseas:全球(除中国大陆地区)数据;
  • #
  • mainland:中国大陆地区数据;
  • #
  • global:全球数据。
  • 不填默认取值为global。 # @type Area: String attr_accessor :StartTime, :EndTime, :MetricNames, :ZoneIds, :Filters, :Interval, :Area def initialize(starttime=nil, endtime=nil, metricnames=nil, zoneids=nil, filters=nil, interval=nil, area=nil) @StartTime = starttime @EndTime = endtime @MetricNames = metricnames @ZoneIds = zoneids @Filters = filters @Interval = interval @Area = area end def deserialize(params) @StartTime = params['StartTime'] @EndTime = params['EndTime'] @MetricNames = params['MetricNames'] @ZoneIds = params['ZoneIds'] unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| querycondition_tmp = QueryCondition.new querycondition_tmp.deserialize(i) @Filters << querycondition_tmp end end @Interval = params['Interval'] @Area = params['Area'] end end # DescribeSingleL7AnalysisData返回参数结构体 class DescribeSingleL7AnalysisDataResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 查询结果的总条数。 # @type TotalCount: Integer # @param Data: 单值流量数据列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :Data, :RequestId def initialize(totalcount=nil, data=nil, requestid=nil) @TotalCount = totalcount @Data = data @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['Data'].nil? @Data = [] params['Data'].each do |i| singledatarecord_tmp = SingleDataRecord.new singledatarecord_tmp.deserialize(i) @Data << singledatarecord_tmp end end @RequestId = params['RequestId'] end end # DescribeSpeedTestingDetails请求参数结构体 class DescribeSpeedTestingDetailsRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String attr_accessor :ZoneId def initialize(zoneid=nil) @ZoneId = zoneid end def deserialize(params) @ZoneId = params['ZoneId'] end end # DescribeSpeedTestingDetails返回参数结构体 class DescribeSpeedTestingDetailsResponse < TencentCloud::Common::AbstractModel # @param SpeedTestingDetailData: 分地域拨测统计数据。 # @type SpeedTestingDetailData: :class:`Tencentcloud::Teo.v20220901.models.SpeedTestingDetailData` # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :SpeedTestingDetailData, :RequestId def initialize(speedtestingdetaildata=nil, requestid=nil) @SpeedTestingDetailData = speedtestingdetaildata @RequestId = requestid end def deserialize(params) unless params['SpeedTestingDetailData'].nil? @SpeedTestingDetailData = SpeedTestingDetailData.new @SpeedTestingDetailData.deserialize(params['SpeedTestingDetailData']) end @RequestId = params['RequestId'] end end # DescribeSpeedTestingMetricData请求参数结构体 class DescribeSpeedTestingMetricDataRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String attr_accessor :ZoneId def initialize(zoneid=nil) @ZoneId = zoneid end def deserialize(params) @ZoneId = params['ZoneId'] end end # DescribeSpeedTestingMetricData返回参数结构体 class DescribeSpeedTestingMetricDataResponse < TencentCloud::Common::AbstractModel # @param SpeedTestingMetricData: 站点拨测维度数据。 # @type SpeedTestingMetricData: :class:`Tencentcloud::Teo.v20220901.models.SpeedTestingMetricData` # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :SpeedTestingMetricData, :RequestId def initialize(speedtestingmetricdata=nil, requestid=nil) @SpeedTestingMetricData = speedtestingmetricdata @RequestId = requestid end def deserialize(params) unless params['SpeedTestingMetricData'].nil? @SpeedTestingMetricData = SpeedTestingMetricData.new @SpeedTestingMetricData.deserialize(params['SpeedTestingMetricData']) end @RequestId = params['RequestId'] end end # DescribeSpeedTestingQuota请求参数结构体 class DescribeSpeedTestingQuotaRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String attr_accessor :ZoneId def initialize(zoneid=nil) @ZoneId = zoneid end def deserialize(params) @ZoneId = params['ZoneId'] end end # DescribeSpeedTestingQuota返回参数结构体 class DescribeSpeedTestingQuotaResponse < TencentCloud::Common::AbstractModel # @param SpeedTestingQuota: 配额数据。 # @type SpeedTestingQuota: :class:`Tencentcloud::Teo.v20220901.models.SpeedTestingQuota` # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :SpeedTestingQuota, :RequestId def initialize(speedtestingquota=nil, requestid=nil) @SpeedTestingQuota = speedtestingquota @RequestId = requestid end def deserialize(params) unless params['SpeedTestingQuota'].nil? @SpeedTestingQuota = SpeedTestingQuota.new @SpeedTestingQuota.deserialize(params['SpeedTestingQuota']) end @RequestId = params['RequestId'] end end # DescribeTimingL4Data请求参数结构体 class DescribeTimingL4DataRequest < TencentCloud::Common::AbstractModel # @param StartTime: 开始时间。 # @type StartTime: String # @param EndTime: 结束时间。 # @type EndTime: String # @param MetricNames: 查询指标,取值有: #
  • l4Flow_connections: 访问连接数;
  • #
  • l4Flow_flux: 访问总流量;
  • #
  • l4Flow_inFlux: 访问入流量;
  • #
  • l4Flow_outFlux: 访问出流量;
  • #
  • l4Flow_outPkt: 访问出包量。
  • # @type MetricNames: Array # @param ZoneIds: 站点集合。 # 若不填写,默认选择全部站点,且最多只能查询近30天的数据; # 若填写,则可查询站点绑定套餐支持的数据分析最大查询范围。 # @type ZoneIds: Array # @param ProxyIds: 四层实例列表, 不填表示选择全部实例。 # @type ProxyIds: Array # @param Interval: 查询时间粒度,取值有: #
  • min: 1分钟 ;
  • #
  • 5min: 5分钟 ;
  • #
  • hour: 1小时 ;
  • #
  • day: 1天 。
  • 不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:1小时范围内以min粒度查询,2天范围内以5min粒度查询,7天范围内以hour粒度查询,超过7天以day粒度查询。 # @type Interval: String # @param Filters: 过滤条件,详细的过滤条件Key值如下: #
  • ruleId
       按照【转发规则ID】进行过滤。
  • #
  • proxyId
       按照【四层代理实例ID】进行过滤。
  • # @type Filters: Array # @param Area: 数据归属地区,取值有: #
  • overseas:全球(除中国大陆地区)数据;
  • #
  • mainland:中国大陆地区数据;
  • #
  • global:全球数据。
  • 不填默认取值为global。 # @type Area: String attr_accessor :StartTime, :EndTime, :MetricNames, :ZoneIds, :ProxyIds, :Interval, :Filters, :Area def initialize(starttime=nil, endtime=nil, metricnames=nil, zoneids=nil, proxyids=nil, interval=nil, filters=nil, area=nil) @StartTime = starttime @EndTime = endtime @MetricNames = metricnames @ZoneIds = zoneids @ProxyIds = proxyids @Interval = interval @Filters = filters @Area = area end def deserialize(params) @StartTime = params['StartTime'] @EndTime = params['EndTime'] @MetricNames = params['MetricNames'] @ZoneIds = params['ZoneIds'] @ProxyIds = params['ProxyIds'] @Interval = params['Interval'] unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| querycondition_tmp = QueryCondition.new querycondition_tmp.deserialize(i) @Filters << querycondition_tmp end end @Area = params['Area'] end end # DescribeTimingL4Data返回参数结构体 class DescribeTimingL4DataResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 查询结果的总条数。 # @type TotalCount: Integer # @param Data: 四层时序流量数据列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :Data, :RequestId def initialize(totalcount=nil, data=nil, requestid=nil) @TotalCount = totalcount @Data = data @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['Data'].nil? @Data = [] params['Data'].each do |i| timingdatarecord_tmp = TimingDataRecord.new timingdatarecord_tmp.deserialize(i) @Data << timingdatarecord_tmp end end @RequestId = params['RequestId'] end end # DescribeTimingL7AnalysisData请求参数结构体 class DescribeTimingL7AnalysisDataRequest < TencentCloud::Common::AbstractModel # @param StartTime: 开始时间。 # @type StartTime: String # @param EndTime: 结束时间。 # @type EndTime: String # @param MetricNames: 指标列表,取值有: #
  • l7Flow_outFlux: 访问流量;
  • #
  • l7Flow_request: 访问请求数;
  • #
  • l7Flow_outBandwidth: 访问带宽。
  • # @type MetricNames: Array # @param ZoneIds: 站点集合。 # 若不填写,默认选择全部站点,且最多只能查询近30天的数据;若填写,则可查询站点绑定套餐支持的数据分析最大查询范围。 # @type ZoneIds: Array # @param Interval: 查询时间粒度,取值有: #
  • min: 1分钟;
  • #
  • 5min: 5分钟;
  • #
  • hour: 1小时;
  • #
  • day: 1天。
  • 不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:1小时范围内以min粒度查询,2天范围内以5min粒度查询,7天范围内以hour粒度查询,超过7天以day粒度查询。 # @type Interval: String # @param Filters: 过滤条件,详细的过滤条件Key值如下: #
  • country
       按照【国家/地区】进行过滤,国家/地区遵循ISO 3166规范。
  • #
  • province
       按照【省份】进行过滤,此参数只支持服务区域为中国大陆。
  • #
  • isp
       按照【运营商】进行过滤,此参数只支持服务区域为中国大陆。
       对应的Value可选项如下:
       2:中国电信;
       26:中国联通;
       1046:中国移动;
       3947:中国铁通;
       38:教育网;
       43:长城宽带;
       0:其他运营商。
  • #
  • domain
       按照【子域名】进行过滤,子域名形如: test.example.com。
  • #
  • url
       按照【URL Path】进行过滤,URL Path形如:/content或/content/test.jpg。
       若只填写url参数,则最多可查询近30天的数据;
       若同时填写url+Zonelds参数,则支持的查询数据范围为套餐支持的数据分析最大查询范围与30天两者中的较小值。
  • #
  • referer
       按照【Referer头信息】进行过滤, Referer形如:example.com。
       若只填写referer参数,则最多可查询近30天的数据;
       若同时填写referer+Zonelds参数,则支持的查询数据范围为套餐支持的数据分析最大查询范围与30天两者中的较小值。
  • #
  • resourceType
       按照【资源类型】进行过滤,资源类型一般是文件后缀,形如: .jpg, .css。
       若只填写resourceType参数,则最多可查询近30天的数据;
       若同时填写resourceType+Zonelds参数,则支持的查询数据范围为套餐支持的数据分析最大查询范围与30天两者中的较小值。
  • #
  • protocol
       按照【HTTP协议版本】进行过滤。
       对应的Value可选项如下:
       HTTP/1.0:HTTP 1.0;
       HTTP/1.1:HTTP 1.1;
       HTTP/2.0:HTTP 2.0;
       HTTP/3.0:HTTP 3.0;
       WebSocket:WebSocket。
  • #
  • socket
       按照【HTTP协议类型】进行过滤。
       对应的Value可选项如下:
       HTTP:HTTP 协议;
       HTTPS:HTTPS协议;
       QUIC:QUIC协议。
  • #
  • statusCode
       按照【状态码】进行过滤。
       若只填写statusCode参数,则最多可查询近30天的数据;
       若同时填写statusCode+Zonelds参数,则支持的查询数据范围为套餐支持的数据分析最大查询范围与30天两者中的较小值。
       对应的Value可选项如下:
       1XX:1xx类型的状态码;
       100:100状态码;
       101:101状态码;
       102:102状态码;
       2XX:2xx类型的状态码;
       200:200状态码;
       201:201状态码;
       202:202状态码;
       203:203状态码;
       204:204状态码;
       205:205状态码;
       206:206状态码;
       207:207状态码;
       3XX:3xx类型的状态码;
       300:300状态码;
       301:301状态码;
       302:302状态码;
       303:303状态码;
       304:304状态码;
       305:305状态码;
       307:307状态码;
       4XX:4xx类型的状态码;
       400:400状态码;
       401:401状态码;
       402:402状态码;
       403:403状态码;
       404:404状态码;
       405:405状态码;
       406:406状态码;
       407:407状态码;
       408:408状态码;
       409:409状态码;
       410:410状态码;
       411:411状态码;
       412:412状态码;
       412:413状态码;
       414:414状态码;
       415:415状态码;
       416:416状态码;
       417:417状态码;
       422:422状态码;
       423:423状态码;
       424:424状态码;
       426:426状态码;
       451:451状态码;
       5XX:5xx类型的状态码;
       500:500状态码;
       501:501状态码;
       502:502状态码;
       503:503状态码;
       504:504状态码;
       505:505状态码;
       506:506状态码;
       507:507状态码;
       510:510状态码;
       514:514状态码;
       544:544状态码。
  • #
  • browserType
       按照【浏览器类型】进行过滤。
       若只填写browserType参数,则最多可查询近30天的数据;
       若同时填写browserType+Zonelds参数,则支持的查询数据范围为套餐支持的数据分析最大查询范围与30天两者中的较小值。
       对应Value的可选项如下:
       Firefox:Firefox浏览器;
       Chrome:Chrome浏览器;
       Safari:Safari浏览器;
       Other:其他浏览器类型;
       Empty:浏览器类型为空;
       Bot:搜索引擎爬虫;
       MicrosoftEdge:MicrosoftEdge浏览器;
       IE:IE浏览器;
       Opera:Opera浏览器;
       QQBrowser:QQ浏览器;
       LBBrowser:LB浏览器;
       MaxthonBrowser:Maxthon浏览器;
       SouGouBrowser:搜狗浏览器;
       BIDUBrowser:百度浏览器;
       TaoBrowser:淘浏览器;
       UBrowser:UC浏览器。
  • #
  • deviceType
       按照【设备类型】进行过滤。
       若只填写deviceType参数,则最多可查询近30天的数据;
       若同时填写deviceType+Zonelds参数,则支持的查询数据范围为套餐支持的数据分析最大查询范围与30天两者中的较小值。
       对应Value的可选项如下:
       TV:TV设备;
       Tablet:Tablet设备;
       Mobile:Mobile设备;
       Desktop:Desktop设备;
       Other:其他设备类型;
       Empty:设备类型为空。
  • #
  • operatingSystemType
       按照【操作系统类型】进行过滤。
       若只填写operatingSystemType参数,则最多可查询近30天的数据;
       若同时填写operatingSystemType+Zonelds参数,则支持的查询数据范围为套餐支持的数据分析最大查询范围与30天两者中的较小值。
       对应Value的可选项如下:
       Linux:Linux操作系统;
       MacOS:MacOs操作系统;
       Android:Android操作系统;
       IOS:IOS操作系统;
       Windows:Windows操作系统;
       NetBSD:NetBSD;
       ChromiumOS:ChromiumOS;
       Bot:搜索引擎爬虫;
       Other:其他类型的操作系统;
       Empty:操作系统为空。
  • #
  • tlsVersion
       按照【TLS版本】进行过滤。
       若只填写tlsVersion参数,则最多可查询近30天的数据;
       若同时填写tlsVersion+Zonelds参数,则支持的查询数据范围为套餐支持的数据分析最大查询范围与30天两者中的较小值。
       对应Value的可选项如下:
       TLS1.0:TLS 1.0;
       TLS1.1:TLS 1.1;
       TLS1.2:TLS 1.2;
       TLS1.3:TLS 1.3。
  • #
  • ipVersion
       按照【IP版本】进行过滤。
       对应Value的可选项如下:
       4:Ipv4;
       6:Ipv6。
  • #
  • tagKey
       按照【标签Key】进行过滤。
  • #
  • tagValue
       按照【标签Value】进行过滤。
  • # @type Filters: Array # @param Area: 数据归属地区,取值有: #
  • overseas:全球(除中国大陆地区)数据;
  • #
  • mainland:中国大陆地区数据;
  • #
  • global:全球数据。
  • 不填默认取值为global。 # @type Area: String attr_accessor :StartTime, :EndTime, :MetricNames, :ZoneIds, :Interval, :Filters, :Area def initialize(starttime=nil, endtime=nil, metricnames=nil, zoneids=nil, interval=nil, filters=nil, area=nil) @StartTime = starttime @EndTime = endtime @MetricNames = metricnames @ZoneIds = zoneids @Interval = interval @Filters = filters @Area = area end def deserialize(params) @StartTime = params['StartTime'] @EndTime = params['EndTime'] @MetricNames = params['MetricNames'] @ZoneIds = params['ZoneIds'] @Interval = params['Interval'] unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| querycondition_tmp = QueryCondition.new querycondition_tmp.deserialize(i) @Filters << querycondition_tmp end end @Area = params['Area'] end end # DescribeTimingL7AnalysisData返回参数结构体 class DescribeTimingL7AnalysisDataResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 查询结果的总条数。 # @type TotalCount: Integer # @param Data: 时序流量数据列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :Data, :RequestId def initialize(totalcount=nil, data=nil, requestid=nil) @TotalCount = totalcount @Data = data @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['Data'].nil? @Data = [] params['Data'].each do |i| timingdatarecord_tmp = TimingDataRecord.new timingdatarecord_tmp.deserialize(i) @Data << timingdatarecord_tmp end end @RequestId = params['RequestId'] end end # DescribeTimingL7CacheData请求参数结构体 class DescribeTimingL7CacheDataRequest < TencentCloud::Common::AbstractModel # @param StartTime: 开始时间。 # @type StartTime: String # @param EndTime: 结束时间。 # @type EndTime: String # @param MetricNames: 查询的指标,取值有: #
  • l7Cache_outFlux:响应流量;
  • #
  • l7Cache_request:响应请求数;
  • #
  • l7Cache_outBandwidth:响应带宽。
  • # @type MetricNames: Array # @param ZoneIds: 站点集合,不填默认选择全部站点。 # @type ZoneIds: Array # @param Filters: 过滤条件,详细的过滤条件如下: #
  • domain
       按照【子域名】进行过滤,子域名形如: test.example.com。
       类型:String
       必选:否
  • #
  • url
       按照【URL】进行过滤,此参数只支持30天的时间范围,URL形如:/content。
       类型:String
       必选:否
  • #
  • resourceType
       按照【资源类型】进行过滤,此参数只支持30天的时间范围,资源类型形如:jpg,png。
       类型:String
       必选:否
  • #
  • cacheType
       按照【缓存类型】进行过滤。
       类型:String
       必选:否
       可选项:
       hit:命中缓存;
       dynamic:资源不可缓存;
       miss:未命中缓存。
  • #
  • statusCode
       按照【状态码】进行过滤,此参数只支持30天的时间范围。
       类型:String
       必选:否
       可选项:
       1XX:1xx类型的状态码;
       100:100状态码;
       101:101状态码;
       102:102状态码;
       2XX:2xx类型的状态码;
       200:200状态码;
       201:201状态码;
       202:202状态码;
       203:203状态码;
       204:204状态码;
       100:100状态码;
       206:206状态码;
       207:207状态码;
       3XX:3xx类型的状态码;
       300:300状态码;
       301:301状态码;
       302:302状态码;
       303:303状态码;
       304:304状态码;
       305:305状态码;
       307:307状态码;
       4XX:4xx类型的状态码;
       400:400状态码;
       401:401状态码;
       402:402状态码;
       403:403状态码;
       404:404状态码;
       405:405状态码;
       406:406状态码;
       407:407状态码;
       408:408状态码;
       409:409状态码;
       410:410状态码;
       411:411状态码;
       412:412状态码;
       412:413状态码;
       414:414状态码;
       415:415状态码;
       416:416状态码;
       417:417状态码;
       422:422状态码;
       423:423状态码;
       424:424状态码;
       426:426状态码;
       451:451状态码;
       5XX:5xx类型的状态码;
       500:500状态码;
       501:501状态码;
       502:502状态码;
       503:503状态码;
       504:504状态码;
       505:505状态码;
       506:506状态码;
       507:507状态码;
       510:510状态码;
       514:514状态码;
       544:544状态码。
  • #
  • tagKey
       按照【标签Key】进行过滤。
       类型:String
       必选:否
  • #
  • tagValue
       按照【标签Value】进行过滤。
       类型:String
       必选:否
  • # @type Filters: Array # @param Interval: 查询时间粒度,可选的值有: #
  • min:1分钟的时间粒度;
  • #
  • 5min:5分钟的时间粒度;
  • #
  • hour:1小时的时间粒度;
  • #
  • day:1天的时间粒度。
  • 不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:一小时范围内以min粒度查询,两天范围内以5min粒度查询,七天范围内以hour粒度查询,超过七天以day粒度查询。 # @type Interval: String # @param Area: 数据归属地区,取值有: #
  • overseas:全球(除中国大陆地区)数据;
  • #
  • mainland:中国大陆地区数据;
  • #
  • global:全球数据。
  • 不填默认取值为global。 # @type Area: String attr_accessor :StartTime, :EndTime, :MetricNames, :ZoneIds, :Filters, :Interval, :Area def initialize(starttime=nil, endtime=nil, metricnames=nil, zoneids=nil, filters=nil, interval=nil, area=nil) @StartTime = starttime @EndTime = endtime @MetricNames = metricnames @ZoneIds = zoneids @Filters = filters @Interval = interval @Area = area end def deserialize(params) @StartTime = params['StartTime'] @EndTime = params['EndTime'] @MetricNames = params['MetricNames'] @ZoneIds = params['ZoneIds'] unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| querycondition_tmp = QueryCondition.new querycondition_tmp.deserialize(i) @Filters << querycondition_tmp end end @Interval = params['Interval'] @Area = params['Area'] end end # DescribeTimingL7CacheData返回参数结构体 class DescribeTimingL7CacheDataResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 查询结果的总条数。 # @type TotalCount: Integer # @param Data: 七层缓存分析时序类流量数据列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :Data, :RequestId def initialize(totalcount=nil, data=nil, requestid=nil) @TotalCount = totalcount @Data = data @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['Data'].nil? @Data = [] params['Data'].each do |i| timingdatarecord_tmp = TimingDataRecord.new timingdatarecord_tmp.deserialize(i) @Data << timingdatarecord_tmp end end @RequestId = params['RequestId'] end end # DescribeTimingL7SourceData请求参数结构体 class DescribeTimingL7SourceDataRequest < TencentCloud::Common::AbstractModel # @param StartTime: 开始时间。 # @type StartTime: String # @param EndTime: 结束时间。 # @type EndTime: String # @param MetricNames: 指标列表,取值有: #
  • l7Flow_outFlux_hy: Edgeone请求流量;
  • #
  • l7Flow_outBandwidth_hy: Edgeone请求带宽;
  • #
  • l7Flow_inFlux_hy: 源站响应流量;
  • #
  • l7Flow_inBandwidth_hy: 源站响应带宽;
  • #
  • l7Flow_request_hy: 回源请求数;
  • # @type MetricNames: Array # @param ZoneIds: 站点集合,不填默认选择全部站点。 # @type ZoneIds: Array # @param Interval: 查询时间粒度,取值有: #
  • min: 1分钟;
  • #
  • 5min: 5分钟;
  • #
  • hour: 1小时;
  • #
  • day: 1天。
  • 不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:一小时范围内以min粒度查询,两天范围内以5min粒度查询,七天范围内以hour粒度查询,超过七天以day粒度查询。 # @type Interval: String # @param Filters: 过滤条件,详细的过滤条件如下: #
  • domain
       按照【回源Host】进行过滤。
       类型:String
       必选:否
  • #
  • origin
       按照【源站】进行过滤。
       类型:String
       必选:否
  • #
  • originGroup
       按照【源站组】进行过滤,源站组形如:origin-xxxxx。
       类型:String
       必选:否
  • #
  • flowType
       按照【源站响应类型】进行过滤,优先级高于 MetricNames.N 参数。
       类型:String
       必选:否
       可选项:
       inFlow:源站响应流量,对应MetricNames中l7Flow_inFlux_hy、l7Flow_inBandwidth_hy、l7Flow_request_hy三个指标;
       outFlow:EdgeOne请求流量,对应MetricNames中l7Flow_outFlux_hy、l7Flow_outBandwidth_hy、l7Flow_request_hy三个指标。
  • # @type Filters: Array # @param Area: 数据归属地区,取值有: #
  • overseas:全球(除中国大陆地区)数据;
  • #
  • mainland:中国大陆地区数据;
  • #
  • global:全球数据。
  • 不填默认取值为global。 # @type Area: String attr_accessor :StartTime, :EndTime, :MetricNames, :ZoneIds, :Interval, :Filters, :Area def initialize(starttime=nil, endtime=nil, metricnames=nil, zoneids=nil, interval=nil, filters=nil, area=nil) @StartTime = starttime @EndTime = endtime @MetricNames = metricnames @ZoneIds = zoneids @Interval = interval @Filters = filters @Area = area end def deserialize(params) @StartTime = params['StartTime'] @EndTime = params['EndTime'] @MetricNames = params['MetricNames'] @ZoneIds = params['ZoneIds'] @Interval = params['Interval'] unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| querycondition_tmp = QueryCondition.new querycondition_tmp.deserialize(i) @Filters << querycondition_tmp end end @Area = params['Area'] end end # DescribeTimingL7SourceData返回参数结构体 class DescribeTimingL7SourceDataResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 查询结果的总条数。 # @type TotalCount: Integer # @param TimingDataRecords: 时序流量数据列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type TimingDataRecords: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :TimingDataRecords, :RequestId def initialize(totalcount=nil, timingdatarecords=nil, requestid=nil) @TotalCount = totalcount @TimingDataRecords = timingdatarecords @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['TimingDataRecords'].nil? @TimingDataRecords = [] params['TimingDataRecords'].each do |i| timingdatarecord_tmp = TimingDataRecord.new timingdatarecord_tmp.deserialize(i) @TimingDataRecords << timingdatarecord_tmp end end @RequestId = params['RequestId'] end end # DescribeTopL7AnalysisData请求参数结构体 class DescribeTopL7AnalysisDataRequest < TencentCloud::Common::AbstractModel # @param StartTime: 开始时间。 # @type StartTime: String # @param EndTime: 结束时间。 # @type EndTime: String # @param MetricName: 查询的指标,取值有: #
  • l7Flow_outFlux_country:请求的国家;
  • #
  • l7Flow_outFlux_statusCode:请求的状态码;
  • #
  • l7Flow_outFlux_domain:请求域名;
  • #
  • l7Flow_outFlux_url:请求的URL;
  • #
  • l7Flow_outFlux_resourceType:请求的资源类型;
  • #
  • l7Flow_outFlux_sip:客户端的源IP;
  • #
  • l7Flow_outFlux_referers:refer信息;
  • #
  • l7Flow_outFlux_ua_device:设备类型;
  • #
  • l7Flow_outFlux_ua_browser:浏览器类型;
  • #
  • l7Flow_outFlux_us_os:操作系统类型。
  • # @type MetricName: String # @param ZoneIds: 站点集合,不填默认选择全部站点。 # @type ZoneIds: Array # @param Limit: 查询前多少个数据,最大值为1000,不填默认默认为: 10, 表示查询前top10的数据。 # @type Limit: Integer # @param Filters: 过滤条件,详细的过滤条件Key值如下: #
  • country
       按照【国家/地区】进行过滤,国家/地区遵循ISO 3166规范。
  • #
  • province
       按照【省份】进行过滤,此参数只支持服务区域为中国大陆。
  • #
  • isp
       按照【运营商】进行过滤,此参数只支持服务区域为中国大陆。
       对应的Value可选项如下:
       2:中国电信;
       26:中国联通;
       1046:中国移动;
       3947:中国铁通;
       38:教育网;
       43:长城宽带;
       0:其他运营商。
  • #
  • domain
       按照【子域名】进行过滤,子域名形如: test.example.com。
  • #
  • url
       按照【URL Path】进行过滤,URL Path形如:/content或/content/test.jpg。
       若只填写url参数,则最多可查询近30天的数据;
       若同时填写url+Zonelds参数,则支持的查询数据范围为套餐支持的数据分析最大查询范围与30天两者中的较小值。
  • #
  • referer
       按照【Referer头信息】进行过滤, Referer形如:example.com。
       若只填写referer参数,则最多可查询近30天的数据;
       若同时填写referer+Zonelds参数,则支持的查询数据范围为套餐支持的数据分析最大查询范围与30天两者中的较小值。
  • #
  • resourceType
       按照【资源类型】进行过滤,资源类型一般是文件后缀,形如: .jpg, .css。
       若只填写resourceType参数,则最多可查询近30天的数据;
       若同时填写resourceType+Zonelds参数,则支持的查询数据范围为套餐支持的数据分析最大查询范围与30天两者中的较小值。
  • #
  • protocol
       按照【HTTP协议版本】进行过滤。
       对应的Value可选项如下:
       HTTP/1.0:HTTP 1.0;
       HTTP/1.1:HTTP 1.1;
       HTTP/2.0:HTTP 2.0;
       HTTP/3.0:HTTP 3.0;
       WebSocket:WebSocket。
  • #
  • socket
       按照【HTTP协议类型】进行过滤。
       对应的Value可选项如下:
       HTTP:HTTP 协议;
       HTTPS:HTTPS协议;
       QUIC:QUIC协议。
  • #
  • statusCode
       按照【状态码】进行过滤。
       若只填写statusCode参数,则最多可查询近30天的数据;
       若同时填写statusCode+Zonelds参数,则支持的查询数据范围为套餐支持的数据分析最大查询范围与30天两者中的较小值。
       对应的Value可选项如下:
       1XX:1xx类型的状态码;
       100:100状态码;
       101:101状态码;
       102:102状态码;
       2XX:2xx类型的状态码;
       200:200状态码;
       201:201状态码;
       202:202状态码;
       203:203状态码;
       204:204状态码;
       205:205状态码;
       206:206状态码;
       207:207状态码;
       3XX:3xx类型的状态码;
       300:300状态码;
       301:301状态码;
       302:302状态码;
       303:303状态码;
       304:304状态码;
       305:305状态码;
       307:307状态码;
       4XX:4xx类型的状态码;
       400:400状态码;
       401:401状态码;
       402:402状态码;
       403:403状态码;
       404:404状态码;
       405:405状态码;
       406:406状态码;
       407:407状态码;
       408:408状态码;
       409:409状态码;
       410:410状态码;
       411:411状态码;
       412:412状态码;
       412:413状态码;
       414:414状态码;
       415:415状态码;
       416:416状态码;
       417:417状态码;
       422:422状态码;
       423:423状态码;
       424:424状态码;
       426:426状态码;
       451:451状态码;
       5XX:5xx类型的状态码;
       500:500状态码;
       501:501状态码;
       502:502状态码;
       503:503状态码;
       504:504状态码;
       505:505状态码;
       506:506状态码;
       507:507状态码;
       510:510状态码;
       514:514状态码;
       544:544状态码。
  • #
  • browserType
       按照【浏览器类型】进行过滤。
       若只填写browserType参数,则最多可查询近30天的数据;
       若同时填写browserType+Zonelds参数,则支持的查询数据范围为套餐支持的数据分析最大查询范围与30天两者中的较小值。
       对应Value的可选项如下:
       Firefox:Firefox浏览器;
       Chrome:Chrome浏览器;
       Safari:Safari浏览器;
       Other:其他浏览器类型;
       Empty:浏览器类型为空;
       Bot:搜索引擎爬虫;
       MicrosoftEdge:MicrosoftEdge浏览器;
       IE:IE浏览器;
       Opera:Opera浏览器;
       QQBrowser:QQ浏览器;
       LBBrowser:LB浏览器;
       MaxthonBrowser:Maxthon浏览器;
       SouGouBrowser:搜狗浏览器;
       BIDUBrowser:百度浏览器;
       TaoBrowser:淘浏览器;
       UBrowser:UC浏览器。
  • #
  • deviceType
       按照【设备类型】进行过滤。
       若只填写deviceType参数,则最多可查询近30天的数据;
       若同时填写deviceType+Zonelds参数,则支持的查询数据范围为套餐支持的数据分析最大查询范围与30天两者中的较小值。
       对应Value的可选项如下:
       TV:TV设备;
       Tablet:Tablet设备;
       Mobile:Mobile设备;
       Desktop:Desktop设备;
       Other:其他设备类型;
       Empty:设备类型为空。
  • #
  • operatingSystemType
       按照【操作系统类型】进行过滤。
       若只填写operatingSystemType参数,则最多可查询近30天的数据;
       若同时填写operatingSystemType+Zonelds参数,则支持的查询数据范围为套餐支持的数据分析最大查询范围与30天两者中的较小值。
       对应Value的可选项如下:
       Linux:Linux操作系统;
       MacOS:MacOs操作系统;
       Android:Android操作系统;
       IOS:IOS操作系统;
       Windows:Windows操作系统;
       NetBSD:NetBSD;
       ChromiumOS:ChromiumOS;
       Bot:搜索引擎爬虫;
       Other:其他类型的操作系统;
       Empty:操作系统为空。
  • #
  • tlsVersion
       按照【TLS版本】进行过滤。
       若只填写tlsVersion参数,则最多可查询近30天的数据;
       若同时填写tlsVersion+Zonelds参数,则支持的查询数据范围为套餐支持的数据分析最大查询范围与30天两者中的较小值。
       对应Value的可选项如下:
       TLS1.0:TLS 1.0;
       TLS1.1:TLS 1.1;
       TLS1.2:TLS 1.2;
       TLS1.3:TLS 1.3。
  • #
  • ipVersion
       按照【IP版本】进行过滤。
       对应Value的可选项如下:
       4:Ipv4;
       6:Ipv6。
  • #
  • tagKey
       按照【标签Key】进行过滤。
  • #
  • tagValue
       按照【标签Value】进行过滤。
  • # @type Filters: Array # @param Interval: 查询时间粒度,取值有: #
  • min:1分钟;
  • #
  • 5min:5分钟;
  • #
  • hour:1小时;
  • #
  • day:1天。
  • 不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:一小时范围内以min粒度查询,两天范围内以5min粒度查询,七天范围内以hour粒度查询,超过七天以day粒度查询。 # @type Interval: String # @param Area: 数据归属地区,取值有: #
  • overseas:全球(除中国大陆地区)数据;
  • #
  • mainland:中国大陆地区数据;
  • #
  • global:全球数据。
  • 不填默认取值为global。 # @type Area: String attr_accessor :StartTime, :EndTime, :MetricName, :ZoneIds, :Limit, :Filters, :Interval, :Area def initialize(starttime=nil, endtime=nil, metricname=nil, zoneids=nil, limit=nil, filters=nil, interval=nil, area=nil) @StartTime = starttime @EndTime = endtime @MetricName = metricname @ZoneIds = zoneids @Limit = limit @Filters = filters @Interval = interval @Area = area end def deserialize(params) @StartTime = params['StartTime'] @EndTime = params['EndTime'] @MetricName = params['MetricName'] @ZoneIds = params['ZoneIds'] @Limit = params['Limit'] unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| querycondition_tmp = QueryCondition.new querycondition_tmp.deserialize(i) @Filters << querycondition_tmp end end @Interval = params['Interval'] @Area = params['Area'] end end # DescribeTopL7AnalysisData返回参数结构体 class DescribeTopL7AnalysisDataResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 查询结果的总条数。 # @type TotalCount: Integer # @param Data: 七层流量前topN数据列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :Data, :RequestId def initialize(totalcount=nil, data=nil, requestid=nil) @TotalCount = totalcount @Data = data @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['Data'].nil? @Data = [] params['Data'].each do |i| topdatarecord_tmp = TopDataRecord.new topdatarecord_tmp.deserialize(i) @Data << topdatarecord_tmp end end @RequestId = params['RequestId'] end end # DescribeTopL7CacheData请求参数结构体 class DescribeTopL7CacheDataRequest < TencentCloud::Common::AbstractModel # @param StartTime: 开始时间。 # @type StartTime: String # @param EndTime: 结束时间。 # @type EndTime: String # @param MetricName: 查询的指标,取值有: #
  • l7Cache_outFlux_domain:host/域名;
  • #
  • l7Cache_outFlux_url:url地址;
  • #
  • l7Cache_outFlux_resourceType:资源类型;
  • #
  • l7Cache_outFlux_statusCode:状态码。
  • # @type MetricName: String # @param ZoneIds: 站点id集合,不填默认选择全部站点。 # @type ZoneIds: Array # @param Limit: 查询前多少个数据,不填默认默认为10, 表示查询前top 10的数据。 # @type Limit: Integer # @param Filters: 过滤条件,详细的过滤条件如下: #
  • domain
       按照【子域名】进行过滤,子域名形如: test.example.com。
       类型:String
       必选:否
  • #
  • url
       按照【URL】进行过滤,此参数只支持30天的时间范围,URL形如:/content。
       类型:String
       必选:否
  • #
  • resourceType
       按照【资源类型】进行过滤,此参数只支持30天的时间范围,资源类型形如:jpg,png。
       类型:String
       必选:否
  • #
  • cacheType
       按照【缓存类型】进行过滤。
       类型:String
       必选:否
       可选项:
       hit:命中缓存;
       dynamic:资源不可缓存;
       miss:未命中缓存。
  • #
  • statusCode
       按照【状态码】进行过滤,此参数只支持30天的时间范围。
       类型:String
       必选:否
       可选项:
       1XX:1xx类型的状态码;
       100:100状态码;
       101:101状态码;
       102:102状态码;
       2XX:2xx类型的状态码;
       200:200状态码;
       201:201状态码;
       202:202状态码;
       203:203状态码;
       204:204状态码;
       100:100状态码;
       206:206状态码;
       207:207状态码;
       3XX:3xx类型的状态码;
       300:300状态码;
       301:301状态码;
       302:302状态码;
       303:303状态码;
       304:304状态码;
       305:305状态码;
       307:307状态码;
       4XX:4xx类型的状态码;
       400:400状态码;
       401:401状态码;
       402:402状态码;
       403:403状态码;
       404:404状态码;
       405:405状态码;
       406:406状态码;
       407:407状态码;
       408:408状态码;
       409:409状态码;
       410:410状态码;
       411:411状态码;
       412:412状态码;
       412:413状态码;
       414:414状态码;
       415:415状态码;
       416:416状态码;
       417:417状态码;
       422:422状态码;
       423:423状态码;
       424:424状态码;
       426:426状态码;
       451:451状态码;
       5XX:5xx类型的状态码;
       500:500状态码;
       501:501状态码;
       502:502状态码;
       503:503状态码;
       504:504状态码;
       505:505状态码;
       506:506状态码;
       507:507状态码;
       510:510状态码;
       514:514状态码;
       544:544状态码。
  • #
  • tagKey
       按照【标签Key】进行过滤。
       类型:String
       必选:否
  • #
  • tagValue
       按照【标签Value】进行过滤。
       类型:String
       必选:否
  • # @type Filters: Array # @param Interval: 查询时间粒度,取值有: #
  • min: 1分钟;
  • #
  • 5min: 5分钟;
  • #
  • hour: 1小时;
  • #
  • day: 1天。
  • 不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:一小时范围内以min粒度查询,两天范围内以5min粒度查询,七天范围内以hour粒度查询,超过七天以day粒度查询。 # @type Interval: String # @param Area: 数据归属地区,取值有: #
  • overseas:全球(除中国大陆地区)数据;
  • #
  • mainland:中国大陆地区数据;
  • #
  • global:全球数据。
  • 不填默认取值为global。 # @type Area: String attr_accessor :StartTime, :EndTime, :MetricName, :ZoneIds, :Limit, :Filters, :Interval, :Area def initialize(starttime=nil, endtime=nil, metricname=nil, zoneids=nil, limit=nil, filters=nil, interval=nil, area=nil) @StartTime = starttime @EndTime = endtime @MetricName = metricname @ZoneIds = zoneids @Limit = limit @Filters = filters @Interval = interval @Area = area end def deserialize(params) @StartTime = params['StartTime'] @EndTime = params['EndTime'] @MetricName = params['MetricName'] @ZoneIds = params['ZoneIds'] @Limit = params['Limit'] unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| querycondition_tmp = QueryCondition.new querycondition_tmp.deserialize(i) @Filters << querycondition_tmp end end @Interval = params['Interval'] @Area = params['Area'] end end # DescribeTopL7CacheData返回参数结构体 class DescribeTopL7CacheDataResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 查询结果的总条数。 # @type TotalCount: Integer # @param Data: 七层缓存TopN流量数据列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :Data, :RequestId def initialize(totalcount=nil, data=nil, requestid=nil) @TotalCount = totalcount @Data = data @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['Data'].nil? @Data = [] params['Data'].each do |i| topdatarecord_tmp = TopDataRecord.new topdatarecord_tmp.deserialize(i) @Data << topdatarecord_tmp end end @RequestId = params['RequestId'] end end # DescribeWebManagedRulesData请求参数结构体 class DescribeWebManagedRulesDataRequest < TencentCloud::Common::AbstractModel # @param StartTime: 开始时间。 # @type StartTime: String # @param EndTime: 结束时间。 # @type EndTime: String # @param MetricNames: 统计指标列表,取值有: #
  • waf_interceptNum:waf拦截次数。
  • # @type MetricNames: Array # @param ZoneIds: 站点集合,不填默认选择全部站点。 # @type ZoneIds: Array # @param Domains: 子域名集合,不填默认选择全部子域名。 # @type Domains: Array # @param QueryCondition: 筛选条件,key可选的值有: #
  • action:执行动作。
  • # @type QueryCondition: Array # @param Interval: 查询时间粒度,取值有: #
  • min:1分钟;
  • #
  • 5min:5分钟;
  • #
  • hour:1小时;
  • #
  • day:1天。
  • 不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:一小时范围内以min粒度查询,两天范围内以5min粒度查询,七天范围内以hour粒度查询,超过七天以day粒度查询。 # @type Interval: String # @param Area: 数据归属地区,取值有: #
  • overseas:全球(除中国大陆地区)数据;
  • #
  • mainland:中国大陆地区数据。
  • 不填将根据用户所在地智能选择地区。 # @type Area: String attr_accessor :StartTime, :EndTime, :MetricNames, :ZoneIds, :Domains, :QueryCondition, :Interval, :Area def initialize(starttime=nil, endtime=nil, metricnames=nil, zoneids=nil, domains=nil, querycondition=nil, interval=nil, area=nil) @StartTime = starttime @EndTime = endtime @MetricNames = metricnames @ZoneIds = zoneids @Domains = domains @QueryCondition = querycondition @Interval = interval @Area = area end def deserialize(params) @StartTime = params['StartTime'] @EndTime = params['EndTime'] @MetricNames = params['MetricNames'] @ZoneIds = params['ZoneIds'] @Domains = params['Domains'] unless params['QueryCondition'].nil? @QueryCondition = [] params['QueryCondition'].each do |i| querycondition_tmp = QueryCondition.new querycondition_tmp.deserialize(i) @QueryCondition << querycondition_tmp end end @Interval = params['Interval'] @Area = params['Area'] end end # DescribeWebManagedRulesData返回参数结构体 class DescribeWebManagedRulesDataResponse < TencentCloud::Common::AbstractModel # @param Data: WAF攻击的时序数据列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: Array # @param TotalCount: 查询结果的总条数。 # @type TotalCount: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Data, :TotalCount, :RequestId def initialize(data=nil, totalcount=nil, requestid=nil) @Data = data @TotalCount = totalcount @RequestId = requestid end def deserialize(params) unless params['Data'].nil? @Data = [] params['Data'].each do |i| secentry_tmp = SecEntry.new secentry_tmp.deserialize(i) @Data << secentry_tmp end end @TotalCount = params['TotalCount'] @RequestId = params['RequestId'] end end # DescribeWebManagedRulesHitRuleDetail请求参数结构体 class DescribeWebManagedRulesHitRuleDetailRequest < TencentCloud::Common::AbstractModel # @param StartTime: 开始时间。 # @type StartTime: String # @param EndTime: 结束时间。 # @type EndTime: String # @param ZoneIds: 站点集合,不填默认选择全部站点。 # @type ZoneIds: Array # @param Domains: 子域名列表,不填默认选择全部全部子域名。 # @type Domains: Array # @param Interval: 查询时间粒度,取值有: #
  • min:1分钟;
  • #
  • 5min:5分钟;
  • #
  • hour:1小时;
  • #
  • day:1天 。
  • 不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:一小时范围内以min粒度查询,两天范围内以5min粒度查询,七天范围内以hour粒度查询,超过七天以day粒度查询。 # @type Interval: String # @param QueryCondition: 筛选条件,key可选的值有: #
  • action :执行动作 。
  • # @type QueryCondition: Array # @param Limit: 分页查询的限制数目,默认值为20,最大查询条目为1000。 # @type Limit: Integer # @param Offset: 分页的偏移量,默认值为0。 # @type Offset: Integer # @param Area: 数据归属地区,取值有: #
  • overseas:全球(除中国大陆地区)数据;
  • #
  • mainland:中国大陆地区数据。
  • 不填将根据用户所在地智能选择地区。 # @type Area: String attr_accessor :StartTime, :EndTime, :ZoneIds, :Domains, :Interval, :QueryCondition, :Limit, :Offset, :Area def initialize(starttime=nil, endtime=nil, zoneids=nil, domains=nil, interval=nil, querycondition=nil, limit=nil, offset=nil, area=nil) @StartTime = starttime @EndTime = endtime @ZoneIds = zoneids @Domains = domains @Interval = interval @QueryCondition = querycondition @Limit = limit @Offset = offset @Area = area end def deserialize(params) @StartTime = params['StartTime'] @EndTime = params['EndTime'] @ZoneIds = params['ZoneIds'] @Domains = params['Domains'] @Interval = params['Interval'] unless params['QueryCondition'].nil? @QueryCondition = [] params['QueryCondition'].each do |i| querycondition_tmp = QueryCondition.new querycondition_tmp.deserialize(i) @QueryCondition << querycondition_tmp end end @Limit = params['Limit'] @Offset = params['Offset'] @Area = params['Area'] end end # DescribeWebManagedRulesHitRuleDetail返回参数结构体 class DescribeWebManagedRulesHitRuleDetailResponse < TencentCloud::Common::AbstractModel # @param Data: 命中规则的详细列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: Array # @param TotalCount: 查询结果的总条数。 # @type TotalCount: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Data, :TotalCount, :RequestId def initialize(data=nil, totalcount=nil, requestid=nil) @Data = data @TotalCount = totalcount @RequestId = requestid end def deserialize(params) unless params['Data'].nil? @Data = [] params['Data'].each do |i| sechitruleinfo_tmp = SecHitRuleInfo.new sechitruleinfo_tmp.deserialize(i) @Data << sechitruleinfo_tmp end end @TotalCount = params['TotalCount'] @RequestId = params['RequestId'] end end # DescribeWebManagedRulesLog请求参数结构体 class DescribeWebManagedRulesLogRequest < TencentCloud::Common::AbstractModel # @param StartTime: 开始时间。 # @type StartTime: String # @param EndTime: 结束时间。 # @type EndTime: String # @param ZoneIds: 站点集合,不填默认选择全部站点。 # @type ZoneIds: Array # @param Domains: 域名集合,不填默认选择全部子域名。 # @type Domains: Array # @param Limit: 分页查询的限制数目,默认值为20,最大查询条目为1000。 # @type Limit: Integer # @param Offset: 分页的偏移量,默认值为0。 # @type Offset: Integer # @param QueryCondition: 筛选条件,key可选的值有: #
  • attackType:攻击类型;
  • #
  • riskLevel:风险等级;
  • #
  • action:执行动作(处置方式);
  • #
  • ruleId:规则id;
  • #
  • sipCountryCode:ip所在国家;
  • #
  • attackIp:攻击ip;
  • #
  • realClientIp:真实客户端ip;
  • #
  • oriDomain:被攻击的子域名;
  • #
  • eventId:事件id;
  • #
  • ua:用户代理;
  • #
  • requestMethod:请求方法;
  • #
  • uri:统一资源标识符。
  • # @type QueryCondition: Array # @param Area: 数据归属地区,取值有: #
  • overseas:全球(除中国大陆地区)数据;
  • #
  • mainland:中国大陆地区数据。
  • 不填将根据用户所在地智能选择地区。 # @type Area: String attr_accessor :StartTime, :EndTime, :ZoneIds, :Domains, :Limit, :Offset, :QueryCondition, :Area def initialize(starttime=nil, endtime=nil, zoneids=nil, domains=nil, limit=nil, offset=nil, querycondition=nil, area=nil) @StartTime = starttime @EndTime = endtime @ZoneIds = zoneids @Domains = domains @Limit = limit @Offset = offset @QueryCondition = querycondition @Area = area end def deserialize(params) @StartTime = params['StartTime'] @EndTime = params['EndTime'] @ZoneIds = params['ZoneIds'] @Domains = params['Domains'] @Limit = params['Limit'] @Offset = params['Offset'] unless params['QueryCondition'].nil? @QueryCondition = [] params['QueryCondition'].each do |i| querycondition_tmp = QueryCondition.new querycondition_tmp.deserialize(i) @QueryCondition << querycondition_tmp end end @Area = params['Area'] end end # DescribeWebManagedRulesLog返回参数结构体 class DescribeWebManagedRulesLogResponse < TencentCloud::Common::AbstractModel # @param Data: Web攻击日志数据列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: Array # @param TotalCount: 查询结果的总条数。 # @type TotalCount: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Data, :TotalCount, :RequestId def initialize(data=nil, totalcount=nil, requestid=nil) @Data = data @TotalCount = totalcount @RequestId = requestid end def deserialize(params) unless params['Data'].nil? @Data = [] params['Data'].each do |i| weblogs_tmp = WebLogs.new weblogs_tmp.deserialize(i) @Data << weblogs_tmp end end @TotalCount = params['TotalCount'] @RequestId = params['RequestId'] end end # DescribeWebProtectionClientIpList请求参数结构体 class DescribeWebProtectionClientIpListRequest < TencentCloud::Common::AbstractModel # @param StartTime: 开始时间。 # @type StartTime: String # @param EndTime: 结束时间。 # @type EndTime: String # @param ZoneIds: 站点集合,不填默认选择全部站点。 # @type ZoneIds: Array # @param Domains: 域名集合,不填默认选择全部子域名。 # @type Domains: Array # @param Interval: 查询的时间粒度,支持的粒度有: #
  • min:1分钟;
  • #
  • 5min:5分钟;
  • #
  • hour:1小时;
  • #
  • day:1天。
  • 不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:一小时范围内以min粒度查询,两天范围内以5min粒度查询,七天范围内以hour粒度查询,超过七天以day粒度查询。 # @type Interval: String # @param QueryCondition: 筛选条件,key可选的值有: #
  • action:执行动作。
  • # @type QueryCondition: Array # @param Limit: 分页查询的限制数目,默认值为20,最大查询条目为1000。 # @type Limit: Integer # @param Offset: 分页的偏移量,默认值为0。 # @type Offset: Integer # @param Area: 数据归属地区,取值有: #
  • overseas:全球(除中国大陆地区)数据;
  • #
  • mainland:中国大陆地区数据。
  • 不填将根据用户所在地智能选择地区。 # @type Area: String attr_accessor :StartTime, :EndTime, :ZoneIds, :Domains, :Interval, :QueryCondition, :Limit, :Offset, :Area def initialize(starttime=nil, endtime=nil, zoneids=nil, domains=nil, interval=nil, querycondition=nil, limit=nil, offset=nil, area=nil) @StartTime = starttime @EndTime = endtime @ZoneIds = zoneids @Domains = domains @Interval = interval @QueryCondition = querycondition @Limit = limit @Offset = offset @Area = area end def deserialize(params) @StartTime = params['StartTime'] @EndTime = params['EndTime'] @ZoneIds = params['ZoneIds'] @Domains = params['Domains'] @Interval = params['Interval'] unless params['QueryCondition'].nil? @QueryCondition = [] params['QueryCondition'].each do |i| querycondition_tmp = QueryCondition.new querycondition_tmp.deserialize(i) @QueryCondition << querycondition_tmp end end @Limit = params['Limit'] @Offset = params['Offset'] @Area = params['Area'] end end # DescribeWebProtectionClientIpList返回参数结构体 class DescribeWebProtectionClientIpListResponse < TencentCloud::Common::AbstractModel # @param Data: CC防护客户端(攻击源)ip信息列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: Array # @param TotalCount: 查询结果的总条数。 # @type TotalCount: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Data, :TotalCount, :RequestId def initialize(data=nil, totalcount=nil, requestid=nil) @Data = data @TotalCount = totalcount @RequestId = requestid end def deserialize(params) unless params['Data'].nil? @Data = [] params['Data'].each do |i| secclientip_tmp = SecClientIp.new secclientip_tmp.deserialize(i) @Data << secclientip_tmp end end @TotalCount = params['TotalCount'] @RequestId = params['RequestId'] end end # DescribeWebProtectionData请求参数结构体 class DescribeWebProtectionDataRequest < TencentCloud::Common::AbstractModel # @param StartTime: 开始时间。 # @type StartTime: String # @param EndTime: 结束时间。 # @type EndTime: String # @param MetricNames: 统计指标,取值有: #
  • ccRate_interceptNum:速率限制规则限制次数;
  • #
  • ccAcl_interceptNum:自定义规则拦截次数。
  • # @type MetricNames: Array # @param ZoneIds: 站点集合,不填默认选择全部站点。 # @type ZoneIds: Array # @param Domains: 域名集合,不填默认选择全部子域名。 # @type Domains: Array # @param Interval: 查询时间粒度,支持的时间粒度有: #
  • min:1分钟;
  • #
  • 5min:5分钟;
  • #
  • hour:1小时;
  • #
  • day:1天。
  • 不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:一小时范围内以min粒度查询,两天范围内以5min粒度查询,七天范围内以hour粒度查询,超过七天以day粒度查询。 # @type Interval: String # @param QueryCondition: 筛选条件,key可选的值有: #
  • action:执行动作。
  • # @type QueryCondition: Array # @param Area: 数据归属地区,取值有: #
  • overseas:全球(除中国大陆地区)数据;
  • #
  • mainland:中国大陆地区数据。
  • 不填将根据用户所在地智能选择地区。 # @type Area: String attr_accessor :StartTime, :EndTime, :MetricNames, :ZoneIds, :Domains, :Interval, :QueryCondition, :Area def initialize(starttime=nil, endtime=nil, metricnames=nil, zoneids=nil, domains=nil, interval=nil, querycondition=nil, area=nil) @StartTime = starttime @EndTime = endtime @MetricNames = metricnames @ZoneIds = zoneids @Domains = domains @Interval = interval @QueryCondition = querycondition @Area = area end def deserialize(params) @StartTime = params['StartTime'] @EndTime = params['EndTime'] @MetricNames = params['MetricNames'] @ZoneIds = params['ZoneIds'] @Domains = params['Domains'] @Interval = params['Interval'] unless params['QueryCondition'].nil? @QueryCondition = [] params['QueryCondition'].each do |i| querycondition_tmp = QueryCondition.new querycondition_tmp.deserialize(i) @QueryCondition << querycondition_tmp end end @Area = params['Area'] end end # DescribeWebProtectionData返回参数结构体 class DescribeWebProtectionDataResponse < TencentCloud::Common::AbstractModel # @param Data: CC防护时序数据列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: Array # @param TotalCount: 查询结果的总条数。 # @type TotalCount: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Data, :TotalCount, :RequestId def initialize(data=nil, totalcount=nil, requestid=nil) @Data = data @TotalCount = totalcount @RequestId = requestid end def deserialize(params) unless params['Data'].nil? @Data = [] params['Data'].each do |i| secentry_tmp = SecEntry.new secentry_tmp.deserialize(i) @Data << secentry_tmp end end @TotalCount = params['TotalCount'] @RequestId = params['RequestId'] end end # DescribeWebProtectionHitRuleDetail请求参数结构体 class DescribeWebProtectionHitRuleDetailRequest < TencentCloud::Common::AbstractModel # @param StartTime: 开始时间。 # @type StartTime: String # @param EndTime: 结束时间。 # @type EndTime: String # @param EntityType: 所属规则数据类型,支持的规则有: #
  • rate:限速规则;
  • #
  • acl:自定义规则。
  • # @type EntityType: String # @param ZoneIds: 站点集合,不填默认选择全部站点。 # @type ZoneIds: Array # @param Domains: 域名列表,不填默认选择全部子域名。 # @type Domains: Array # @param QueryCondition: 筛选条件,key可选的值有: #
  • action:执行动作。
  • # @type QueryCondition: Array # @param Limit: 分页查询的限制数目,默认值为20,最大查询条目为1000。 # @type Limit: Integer # @param Offset: 分页的偏移量,默认值为0。 # @type Offset: Integer # @param Interval: 查询时间粒度,支持的时间粒度有: #
  • min:1分钟;
  • #
  • 5min:5分钟;
  • #
  • hour:1小时;
  • #
  • day:1天。
  • 不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:一小时范围内以min粒度查询,两天范围内以5min粒度查询,七天范围内以hour粒度查询,超过七天以day粒度查询。 # @type Interval: String # @param Area: 数据归属地区,取值有: #
  • overseas:全球(除中国大陆地区)数据;
  • #
  • mainland:中国大陆地区数据。
  • 不填将根据用户所在地智能选择地区。 # @type Area: String attr_accessor :StartTime, :EndTime, :EntityType, :ZoneIds, :Domains, :QueryCondition, :Limit, :Offset, :Interval, :Area def initialize(starttime=nil, endtime=nil, entitytype=nil, zoneids=nil, domains=nil, querycondition=nil, limit=nil, offset=nil, interval=nil, area=nil) @StartTime = starttime @EndTime = endtime @EntityType = entitytype @ZoneIds = zoneids @Domains = domains @QueryCondition = querycondition @Limit = limit @Offset = offset @Interval = interval @Area = area end def deserialize(params) @StartTime = params['StartTime'] @EndTime = params['EndTime'] @EntityType = params['EntityType'] @ZoneIds = params['ZoneIds'] @Domains = params['Domains'] unless params['QueryCondition'].nil? @QueryCondition = [] params['QueryCondition'].each do |i| querycondition_tmp = QueryCondition.new querycondition_tmp.deserialize(i) @QueryCondition << querycondition_tmp end end @Limit = params['Limit'] @Offset = params['Offset'] @Interval = params['Interval'] @Area = params['Area'] end end # DescribeWebProtectionHitRuleDetail返回参数结构体 class DescribeWebProtectionHitRuleDetailResponse < TencentCloud::Common::AbstractModel # @param Data: cc防护命中规则列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: Array # @param TotalCount: 查询结果的总条数。 # @type TotalCount: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Data, :TotalCount, :RequestId def initialize(data=nil, totalcount=nil, requestid=nil) @Data = data @TotalCount = totalcount @RequestId = requestid end def deserialize(params) unless params['Data'].nil? @Data = [] params['Data'].each do |i| sechitruleinfo_tmp = SecHitRuleInfo.new sechitruleinfo_tmp.deserialize(i) @Data << sechitruleinfo_tmp end end @TotalCount = params['TotalCount'] @RequestId = params['RequestId'] end end # DescribeWebProtectionTopData请求参数结构体 class DescribeWebProtectionTopDataRequest < TencentCloud::Common::AbstractModel # @param StartTime: 开始时间。 # @type StartTime: String # @param EndTime: 结束时间。 # @type EndTime: String # @param MetricName: 统计指标列表,取值有: #
  • ccRate_requestNum_url:速率限制规则请求次数url分布排行;
  • #
  • ccRate_cipRequestNum_region:速率限制规则请求次数区域客户端ip分布排行;
  • #
  • ccAcl_requestNum_url:自定义规则请求次数url分布排行;
  • #
  • ccAcl_requestNum_cip:自定义规则请求次数客户端ip分布排行;
  • #
  • ccAcl_cipRequestNum_region:自定义规则请求次数客户端区域分布排行。
  • # @type MetricName: String # @param Interval: 查询时间粒度,取值有: #
  • min:1分钟;
  • #
  • 5min:5分钟;
  • #
  • hour:1小时;
  • #
  • day:1天。
  • 不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:一小时范围内以min粒度查询,两天范围内以5min粒度查询,七天范围内以hour粒度查询,超过七天以day粒度查询。 # @type Interval: String # @param ZoneIds: 站点集合,不填默认选择全部站点。 # @type ZoneIds: Array # @param Domains: 域名集合,不填默认选择全部子域名。 # @type Domains: Array # @param Limit: 查询前多少个数据,不填默认默认为10, 表示查询前top 10的数据。 # @type Limit: Integer # @param QueryCondition: 筛选条件,key可选的值有: #
  • action:执行动作 。
  • # @type QueryCondition: Array # @param Area: 数据归属地区,取值有: #
  • overseas:全球(除中国大陆地区)数据;
  • #
  • mainland:中国大陆地区数据。
  • 不填将根据用户所在地智能选择地区。 # @type Area: String attr_accessor :StartTime, :EndTime, :MetricName, :Interval, :ZoneIds, :Domains, :Limit, :QueryCondition, :Area def initialize(starttime=nil, endtime=nil, metricname=nil, interval=nil, zoneids=nil, domains=nil, limit=nil, querycondition=nil, area=nil) @StartTime = starttime @EndTime = endtime @MetricName = metricname @Interval = interval @ZoneIds = zoneids @Domains = domains @Limit = limit @QueryCondition = querycondition @Area = area end def deserialize(params) @StartTime = params['StartTime'] @EndTime = params['EndTime'] @MetricName = params['MetricName'] @Interval = params['Interval'] @ZoneIds = params['ZoneIds'] @Domains = params['Domains'] @Limit = params['Limit'] unless params['QueryCondition'].nil? @QueryCondition = [] params['QueryCondition'].each do |i| querycondition_tmp = QueryCondition.new querycondition_tmp.deserialize(i) @QueryCondition << querycondition_tmp end end @Area = params['Area'] end end # DescribeWebProtectionTopData返回参数结构体 class DescribeWebProtectionTopDataResponse < TencentCloud::Common::AbstractModel # @param Data: CC防护的TopN数据列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: Array # @param TotalCount: 查询结果的总条数。 # @type TotalCount: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Data, :TotalCount, :RequestId def initialize(data=nil, totalcount=nil, requestid=nil) @Data = data @TotalCount = totalcount @RequestId = requestid end def deserialize(params) unless params['Data'].nil? @Data = [] params['Data'].each do |i| topentry_tmp = TopEntry.new topentry_tmp.deserialize(i) @Data << topentry_tmp end end @TotalCount = params['TotalCount'] @RequestId = params['RequestId'] end end # DescribeZoneSetting请求参数结构体 class DescribeZoneSettingRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String attr_accessor :ZoneId def initialize(zoneid=nil) @ZoneId = zoneid end def deserialize(params) @ZoneId = params['ZoneId'] end end # DescribeZoneSetting返回参数结构体 class DescribeZoneSettingResponse < TencentCloud::Common::AbstractModel # @param ZoneSetting: 站点配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ZoneSetting: :class:`Tencentcloud::Teo.v20220901.models.ZoneSetting` # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :ZoneSetting, :RequestId def initialize(zonesetting=nil, requestid=nil) @ZoneSetting = zonesetting @RequestId = requestid end def deserialize(params) unless params['ZoneSetting'].nil? @ZoneSetting = ZoneSetting.new @ZoneSetting.deserialize(params['ZoneSetting']) end @RequestId = params['RequestId'] end end # DescribeZones请求参数结构体 class DescribeZonesRequest < TencentCloud::Common::AbstractModel # @param Offset: 分页查询偏移量。默认值:0。 # @type Offset: Integer # @param Limit: 分页查询限制数目。默认值:20,最大值:1000。 # @type Limit: Integer # @param Filters: 过滤条件,Filters.Values的上限为20。详细的过滤条件如下: #
  • zone-name
       按照【站点名称】进行过滤。
       类型:String
       必选:否
  • zone-id
       按照【站点ID】进行过滤。站点ID形如:zone-xxx。
       类型:String
       必选:否
  • status
       按照【站点状态】进行过滤。
       类型:String
       必选:否
  • tag-key
       按照【标签键】进行过滤。
       类型:String
       必选:否
  • tag-value
       按照【标签值】进行过滤。
       类型:String
       必选:否
  • 模糊查询时仅支持过滤字段名为zone-name。 # @type Filters: Array # @param Order: 排序字段,取值有: #
  • type:接入类型;
  • #
  • area:加速区域;
  • #
  • create-time:创建时间;
  • #
  • zone-name:站点名称;
  • #
  • use-time:最近使用时间;
  • #
  • active-status:生效状态。
  • 不填写使用默认值create-time。 # @type Order: String # @param Direction: 排序方向,取值有: #
  • asc:从小到大排序;
  • #
  • desc:从大到小排序。
  • 不填写使用默认值desc。 # @type Direction: String attr_accessor :Offset, :Limit, :Filters, :Order, :Direction def initialize(offset=nil, limit=nil, filters=nil, order=nil, direction=nil) @Offset = offset @Limit = limit @Filters = filters @Order = order @Direction = direction end def deserialize(params) @Offset = params['Offset'] @Limit = params['Limit'] unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| advancedfilter_tmp = AdvancedFilter.new advancedfilter_tmp.deserialize(i) @Filters << advancedfilter_tmp end end @Order = params['Order'] @Direction = params['Direction'] end end # DescribeZones返回参数结构体 class DescribeZonesResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 符合条件的站点个数。 # @type TotalCount: Integer # @param Zones: 站点详细信息列表。 # @type Zones: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :Zones, :RequestId def initialize(totalcount=nil, zones=nil, requestid=nil) @TotalCount = totalcount @Zones = zones @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['Zones'].nil? @Zones = [] params['Zones'].each do |i| zone_tmp = Zone.new zone_tmp.deserialize(i) @Zones << zone_tmp end end @RequestId = params['RequestId'] end end # 域名配置信息 class DetailHost < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param Status: 加速服务状态,取值为: #
  • process:部署中;
  • #
  • online:已启动;
  • #
  • offline:已关闭。
  • # @type Status: String # @param Host: 域名。 # @type Host: String # @param ZoneName: 站点名称。 # @type ZoneName: String # @param Cname: 分配的Cname域名 # @type Cname: String # @param Id: 资源ID。 # @type Id: String # @param InstanceId: 实例ID。 # @type InstanceId: String # @param Lock: 锁状态。 # @type Lock: Integer # @param Mode: 域名状态类型。 # @type Mode: Integer # @param Area: 域名加速地域,取值有: #
  • global:全球;
  • #
  • mainland:中国大陆;
  • #
  • overseas:境外区域。
  • # @type Area: String # @param AccelerateType: 加速类型配置项。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type AccelerateType: :class:`Tencentcloud::Teo.v20220901.models.AccelerateType` # @param Https: Https配置项。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Https: :class:`Tencentcloud::Teo.v20220901.models.Https` # @param CacheConfig: 缓存配置项。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CacheConfig: :class:`Tencentcloud::Teo.v20220901.models.CacheConfig` # @param Origin: 源站配置项。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Origin: :class:`Tencentcloud::Teo.v20220901.models.Origin` # @param SecurityType: 安全类型。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type SecurityType: :class:`Tencentcloud::Teo.v20220901.models.SecurityType` # @param CacheKey: 缓存键配置项。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CacheKey: :class:`Tencentcloud::Teo.v20220901.models.CacheKey` # @param Compression: 智能压缩配置项。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Compression: :class:`Tencentcloud::Teo.v20220901.models.Compression` # @param Waf: Waf防护配置项。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Waf: :class:`Tencentcloud::Teo.v20220901.models.Waf` # @param CC: CC防护配置项。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CC: :class:`Tencentcloud::Teo.v20220901.models.CC` # @param DDoS: DDoS防护配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type DDoS: :class:`Tencentcloud::Teo.v20220901.models.DDoS` # @param SmartRouting: 智能路由配置项。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type SmartRouting: :class:`Tencentcloud::Teo.v20220901.models.SmartRouting` # @param Ipv6: Ipv6访问配置项。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Ipv6: :class:`Tencentcloud::Teo.v20220901.models.Ipv6` # @param ClientIpCountry: 回源时是否携带客户端IP所属地域信息的配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ClientIpCountry: :class:`Tencentcloud::Teo.v20220901.models.ClientIpCountry` attr_accessor :ZoneId, :Status, :Host, :ZoneName, :Cname, :Id, :InstanceId, :Lock, :Mode, :Area, :AccelerateType, :Https, :CacheConfig, :Origin, :SecurityType, :CacheKey, :Compression, :Waf, :CC, :DDoS, :SmartRouting, :Ipv6, :ClientIpCountry def initialize(zoneid=nil, status=nil, host=nil, zonename=nil, cname=nil, id=nil, instanceid=nil, lock=nil, mode=nil, area=nil, acceleratetype=nil, https=nil, cacheconfig=nil, origin=nil, securitytype=nil, cachekey=nil, compression=nil, waf=nil, cc=nil, ddos=nil, smartrouting=nil, ipv6=nil, clientipcountry=nil) @ZoneId = zoneid @Status = status @Host = host @ZoneName = zonename @Cname = cname @Id = id @InstanceId = instanceid @Lock = lock @Mode = mode @Area = area @AccelerateType = acceleratetype @Https = https @CacheConfig = cacheconfig @Origin = origin @SecurityType = securitytype @CacheKey = cachekey @Compression = compression @Waf = waf @CC = cc @DDoS = ddos @SmartRouting = smartrouting @Ipv6 = ipv6 @ClientIpCountry = clientipcountry end def deserialize(params) @ZoneId = params['ZoneId'] @Status = params['Status'] @Host = params['Host'] @ZoneName = params['ZoneName'] @Cname = params['Cname'] @Id = params['Id'] @InstanceId = params['InstanceId'] @Lock = params['Lock'] @Mode = params['Mode'] @Area = params['Area'] unless params['AccelerateType'].nil? @AccelerateType = AccelerateType.new @AccelerateType.deserialize(params['AccelerateType']) end unless params['Https'].nil? @Https = Https.new @Https.deserialize(params['Https']) end unless params['CacheConfig'].nil? @CacheConfig = CacheConfig.new @CacheConfig.deserialize(params['CacheConfig']) end unless params['Origin'].nil? @Origin = Origin.new @Origin.deserialize(params['Origin']) end unless params['SecurityType'].nil? @SecurityType = SecurityType.new @SecurityType.deserialize(params['SecurityType']) end unless params['CacheKey'].nil? @CacheKey = CacheKey.new @CacheKey.deserialize(params['CacheKey']) end unless params['Compression'].nil? @Compression = Compression.new @Compression.deserialize(params['Compression']) end unless params['Waf'].nil? @Waf = Waf.new @Waf.deserialize(params['Waf']) end unless params['CC'].nil? @CC = CC.new @CC.deserialize(params['CC']) end unless params['DDoS'].nil? @DDoS = DDoS.new @DDoS.deserialize(params['DDoS']) end unless params['SmartRouting'].nil? @SmartRouting = SmartRouting.new @SmartRouting.deserialize(params['SmartRouting']) end unless params['Ipv6'].nil? @Ipv6 = Ipv6.new @Ipv6.deserialize(params['Ipv6']) end unless params['ClientIpCountry'].nil? @ClientIpCountry = ClientIpCountry.new @ClientIpCountry.deserialize(params['ClientIpCountry']) end end end # 最新IP白名单列表相比于当前IP白名单列表的区别 class DiffIPWhitelist < TencentCloud::Common::AbstractModel # @param LatestIPWhitelist: 最新IP白名单列表。 # @type LatestIPWhitelist: :class:`Tencentcloud::Teo.v20220901.models.IPWhitelist` # @param AddedIPWhitelist: 最新IP白名单列表相比于当前IP白名单列表,新增部分。 # @type AddedIPWhitelist: :class:`Tencentcloud::Teo.v20220901.models.IPWhitelist` # @param RemovedIPWhitelist: 最新IP白名单列表相比于当前IP白名单列表,删减部分。 # @type RemovedIPWhitelist: :class:`Tencentcloud::Teo.v20220901.models.IPWhitelist` # @param NoChangeIPWhitelist: 最新IP白名单列表相比于当前IP白名单列表,不变部分。 # @type NoChangeIPWhitelist: :class:`Tencentcloud::Teo.v20220901.models.IPWhitelist` attr_accessor :LatestIPWhitelist, :AddedIPWhitelist, :RemovedIPWhitelist, :NoChangeIPWhitelist def initialize(latestipwhitelist=nil, addedipwhitelist=nil, removedipwhitelist=nil, nochangeipwhitelist=nil) @LatestIPWhitelist = latestipwhitelist @AddedIPWhitelist = addedipwhitelist @RemovedIPWhitelist = removedipwhitelist @NoChangeIPWhitelist = nochangeipwhitelist end def deserialize(params) unless params['LatestIPWhitelist'].nil? @LatestIPWhitelist = IPWhitelist.new @LatestIPWhitelist.deserialize(params['LatestIPWhitelist']) end unless params['AddedIPWhitelist'].nil? @AddedIPWhitelist = IPWhitelist.new @AddedIPWhitelist.deserialize(params['AddedIPWhitelist']) end unless params['RemovedIPWhitelist'].nil? @RemovedIPWhitelist = IPWhitelist.new @RemovedIPWhitelist.deserialize(params['RemovedIPWhitelist']) end unless params['NoChangeIPWhitelist'].nil? @NoChangeIPWhitelist = IPWhitelist.new @NoChangeIPWhitelist.deserialize(params['NoChangeIPWhitelist']) end end end # 拨测分地域统计数据 class DistrictStatistics < TencentCloud::Common::AbstractModel # @param Alpha2: ISO 3166-2 国家/地区简写,详情请参考[ISO 3166-2](https://zh.m.wikipedia.org/zh-hans/ISO_3166-2)。 # @type Alpha2: String # @param LoadTime: 整体拨测用时,单位ms。 # @type LoadTime: Integer attr_accessor :Alpha2, :LoadTime def initialize(alpha2=nil, loadtime=nil) @Alpha2 = alpha2 @LoadTime = loadtime end def deserialize(params) @Alpha2 = params['Alpha2'] @LoadTime = params['LoadTime'] end end # Dns统计曲线数据项 class DnsData < TencentCloud::Common::AbstractModel # @param Time: 时间。 # @type Time: String # @param Value: 数值。 # @type Value: Integer attr_accessor :Time, :Value def initialize(time=nil, value=nil) @Time = time @Value = value end def deserialize(params) @Time = params['Time'] @Value = params['Value'] end end # DownloadL4Logs请求参数结构体 class DownloadL4LogsRequest < TencentCloud::Common::AbstractModel # @param StartTime: 开始时间。 # @type StartTime: String # @param EndTime: 结束时间。 # @type EndTime: String # @param ZoneIds: 站点集合,不填默认选择全部站点。 # @type ZoneIds: Array # @param ProxyIds: 四层实例ID集合。 # @type ProxyIds: Array # @param Limit: 分页查询的限制数目,默认值为20,最大查询条目为1000。 # @type Limit: Integer # @param Offset: 分页的偏移量,默认值为0。 # @type Offset: Integer attr_accessor :StartTime, :EndTime, :ZoneIds, :ProxyIds, :Limit, :Offset def initialize(starttime=nil, endtime=nil, zoneids=nil, proxyids=nil, limit=nil, offset=nil) @StartTime = starttime @EndTime = endtime @ZoneIds = zoneids @ProxyIds = proxyids @Limit = limit @Offset = offset end def deserialize(params) @StartTime = params['StartTime'] @EndTime = params['EndTime'] @ZoneIds = params['ZoneIds'] @ProxyIds = params['ProxyIds'] @Limit = params['Limit'] @Offset = params['Offset'] end end # DownloadL4Logs返回参数结构体 class DownloadL4LogsResponse < TencentCloud::Common::AbstractModel # @param Data: 四层离线日志数据列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: Array # @param TotalCount: 查询结果的总条数。 # @type TotalCount: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Data, :TotalCount, :RequestId def initialize(data=nil, totalcount=nil, requestid=nil) @Data = data @TotalCount = totalcount @RequestId = requestid end def deserialize(params) unless params['Data'].nil? @Data = [] params['Data'].each do |i| l4offlinelog_tmp = L4OfflineLog.new l4offlinelog_tmp.deserialize(i) @Data << l4offlinelog_tmp end end @TotalCount = params['TotalCount'] @RequestId = params['RequestId'] end end # DownloadL7Logs请求参数结构体 class DownloadL7LogsRequest < TencentCloud::Common::AbstractModel # @param StartTime: 开始时间。 # @type StartTime: String # @param EndTime: 结束时间。 # @type EndTime: String # @param ZoneIds: 站点集合,不填默认选择全部站点。 # @type ZoneIds: Array # @param Domains: 子域名集合,不填默认选择全部子域名。 # @type Domains: Array # @param Limit: 分页查询的限制数目,默认值为20,最大查询条目为1000。 # @type Limit: Integer # @param Offset: 分页的偏移量,默认值为0。 # @type Offset: Integer attr_accessor :StartTime, :EndTime, :ZoneIds, :Domains, :Limit, :Offset def initialize(starttime=nil, endtime=nil, zoneids=nil, domains=nil, limit=nil, offset=nil) @StartTime = starttime @EndTime = endtime @ZoneIds = zoneids @Domains = domains @Limit = limit @Offset = offset end def deserialize(params) @StartTime = params['StartTime'] @EndTime = params['EndTime'] @ZoneIds = params['ZoneIds'] @Domains = params['Domains'] @Limit = params['Limit'] @Offset = params['Offset'] end end # DownloadL7Logs返回参数结构体 class DownloadL7LogsResponse < TencentCloud::Common::AbstractModel # @param Data: 七层离线日志数据列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: Array # @param TotalCount: 查询结果的总条数。 # @type TotalCount: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Data, :TotalCount, :RequestId def initialize(data=nil, totalcount=nil, requestid=nil) @Data = data @TotalCount = totalcount @RequestId = requestid end def deserialize(params) unless params['Data'].nil? @Data = [] params['Data'].each do |i| l7offlinelog_tmp = L7OfflineLog.new l7offlinelog_tmp.deserialize(i) @Data << l7offlinelog_tmp end end @TotalCount = params['TotalCount'] @RequestId = params['RequestId'] end end # 拦截页面的总体配置,用于配置各个模块的拦截后行为。 class DropPageConfig < TencentCloud::Common::AbstractModel # @param Switch: 配置开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String # @param WafDropPageDetail: Waf(托管规则)模块的拦截页面配置。如果为null,默认使用历史配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type WafDropPageDetail: :class:`Tencentcloud::Teo.v20220901.models.DropPageDetail` # @param AclDropPageDetail: 自定义页面的拦截页面配置。如果为null,默认使用历史配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type AclDropPageDetail: :class:`Tencentcloud::Teo.v20220901.models.DropPageDetail` attr_accessor :Switch, :WafDropPageDetail, :AclDropPageDetail def initialize(switch=nil, wafdroppagedetail=nil, acldroppagedetail=nil) @Switch = switch @WafDropPageDetail = wafdroppagedetail @AclDropPageDetail = acldroppagedetail end def deserialize(params) @Switch = params['Switch'] unless params['WafDropPageDetail'].nil? @WafDropPageDetail = DropPageDetail.new @WafDropPageDetail.deserialize(params['WafDropPageDetail']) end unless params['AclDropPageDetail'].nil? @AclDropPageDetail = DropPageDetail.new @AclDropPageDetail.deserialize(params['AclDropPageDetail']) end end end # 拦截页面的配置信息 class DropPageDetail < TencentCloud::Common::AbstractModel # @param PageId: 拦截页面的唯一Id。系统默认包含一个自带拦截页面,Id值为0。 # 该Id可通过创建拦截页面接口进行上传获取。如传入0,代表使用系统默认拦截页面。 # @type PageId: Integer # @param StatusCode: 拦截页面的HTTP状态码。状态码范围是100-600。 # @type StatusCode: Integer # @param Name: 页面文件名或url。 # @type Name: String # @param Type: 页面的类型,取值有: #
  • file:页面文件内容;
  • #
  • url:上传的url地址。
  • # @type Type: String attr_accessor :PageId, :StatusCode, :Name, :Type def initialize(pageid=nil, statuscode=nil, name=nil, type=nil) @PageId = pageid @StatusCode = statuscode @Name = name @Type = type end def deserialize(params) @PageId = params['PageId'] @StatusCode = params['StatusCode'] @Name = params['Name'] @Type = params['Type'] end end # 例外规则,用于配置需要跳过特定场景的规则 class ExceptConfig < TencentCloud::Common::AbstractModel # @param Switch: 配置开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String # @param ExceptUserRules: 例外规则详情。如果为null,默认使用历史配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ExceptUserRules: Array attr_accessor :Switch, :ExceptUserRules def initialize(switch=nil, exceptuserrules=nil) @Switch = switch @ExceptUserRules = exceptuserrules end def deserialize(params) @Switch = params['Switch'] unless params['ExceptUserRules'].nil? @ExceptUserRules = [] params['ExceptUserRules'].each do |i| exceptuserrule_tmp = ExceptUserRule.new exceptuserrule_tmp.deserialize(i) @ExceptUserRules << exceptuserrule_tmp end end end end # 例外规则的配置,包含生效的条件,生效的范围。 class ExceptUserRule < TencentCloud::Common::AbstractModel # @param RuleName: 规则名称,不可使用中文。 # @type RuleName: String # @param Action: 规则的处置方式,当前仅支持skip:跳过全部托管规则。 # @type Action: String # @param RuleStatus: 规则生效状态,取值有: #
  • on:生效;
  • #
  • off:失效。
  • # @type RuleStatus: String # @param RuleID: 规则ID。仅出参使用。默认由底层生成。 # @type RuleID: Integer # @param UpdateTime: 更新时间,如果为null,默认由底层按当前时间生成。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type UpdateTime: String # @param ExceptUserRuleConditions: 匹配条件。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ExceptUserRuleConditions: Array # @param ExceptUserRuleScope: 规则生效的范围。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ExceptUserRuleScope: :class:`Tencentcloud::Teo.v20220901.models.ExceptUserRuleScope` # @param RulePriority: 优先级,取值范围0-100。如果为null,默认由底层设置为0。 # @type RulePriority: Integer attr_accessor :RuleName, :Action, :RuleStatus, :RuleID, :UpdateTime, :ExceptUserRuleConditions, :ExceptUserRuleScope, :RulePriority def initialize(rulename=nil, action=nil, rulestatus=nil, ruleid=nil, updatetime=nil, exceptuserruleconditions=nil, exceptuserrulescope=nil, rulepriority=nil) @RuleName = rulename @Action = action @RuleStatus = rulestatus @RuleID = ruleid @UpdateTime = updatetime @ExceptUserRuleConditions = exceptuserruleconditions @ExceptUserRuleScope = exceptuserrulescope @RulePriority = rulepriority end def deserialize(params) @RuleName = params['RuleName'] @Action = params['Action'] @RuleStatus = params['RuleStatus'] @RuleID = params['RuleID'] @UpdateTime = params['UpdateTime'] unless params['ExceptUserRuleConditions'].nil? @ExceptUserRuleConditions = [] params['ExceptUserRuleConditions'].each do |i| exceptuserrulecondition_tmp = ExceptUserRuleCondition.new exceptuserrulecondition_tmp.deserialize(i) @ExceptUserRuleConditions << exceptuserrulecondition_tmp end end unless params['ExceptUserRuleScope'].nil? @ExceptUserRuleScope = ExceptUserRuleScope.new @ExceptUserRuleScope.deserialize(params['ExceptUserRuleScope']) end @RulePriority = params['RulePriority'] end end # 例外规则生效的具体条件。 class ExceptUserRuleCondition < TencentCloud::Common::AbstractModel # @param MatchFrom: 匹配项,取值有: #
  • host:请求域名;
  • #
  • sip:客户端IP;
  • #
  • ua:User-Agent;
  • #
  • cookie:会话 Cookie;
  • #
  • cgi:CGI 脚本;
  • #
  • xff:XFF 扩展头部;
  • #
  • url:请求 URL;
  • #
  • accept:请求内容类型;
  • #
  • method:请求方式;
  • #
  • header:请求头部;
  • #
  • sip_proto:网络层协议。
  • # @type MatchFrom: String # @param MatchParam: 匹配项的参数。仅当 MatchFrom 为 header 时,可以使用本参数,值可填入 header 的 key 作为参数。 # @type MatchParam: String # @param Operator: 匹配操作符,取值有: #
  • equal:字符串等于;
  • #
  • not_equal:数值不等于;
  • #
  • include:字符包含;
  • #
  • not_include:字符不包含;
  • #
  • match:ip匹配;
  • #
  • not_match:ip不匹配;
  • #
  • include_area:地域包含;
  • #
  • is_empty:存在字段但值为空;
  • #
  • not_exists:不存在关键字段;
  • #
  • regexp:正则匹配;
  • #
  • len_gt:数值大于;
  • #
  • len_lt:数值小于;
  • #
  • len_eq:数值等于;
  • #
  • match_prefix:前缀匹配;
  • #
  • match_suffix:后缀匹配;
  • #
  • wildcard:通配符。
  • # @type Operator: String # @param MatchContent: 匹配值。 # @type MatchContent: String attr_accessor :MatchFrom, :MatchParam, :Operator, :MatchContent def initialize(matchfrom=nil, matchparam=nil, operator=nil, matchcontent=nil) @MatchFrom = matchfrom @MatchParam = matchparam @Operator = operator @MatchContent = matchcontent end def deserialize(params) @MatchFrom = params['MatchFrom'] @MatchParam = params['MatchParam'] @Operator = params['Operator'] @MatchContent = params['MatchContent'] end end # 例外规则的生效范围。 class ExceptUserRuleScope < TencentCloud::Common::AbstractModel # @param Type: 例外规则类型。其中complete模式代表全量数据进行例外,partial模式代表可选择指定模块指定字段进行例外,该字段取值有: #
  • complete:完全跳过模式;
  • #
  • partial:部分跳过模式。
  • # @type Type: String # @param Modules: 生效的模块,该字段取值有: #
  • waf:托管规则;
  • #
  • cc:速率限制规则;
  • #
  • bot:Bot防护。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type Modules: Array # @param PartialModules: 跳过部分规则ID的例外规则详情。如果为null,默认使用历史配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type PartialModules: Array # @param SkipConditions: 跳过具体字段不去扫描的例外规则详情。如果为null,默认使用历史配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type SkipConditions: Array attr_accessor :Type, :Modules, :PartialModules, :SkipConditions def initialize(type=nil, modules=nil, partialmodules=nil, skipconditions=nil) @Type = type @Modules = modules @PartialModules = partialmodules @SkipConditions = skipconditions end def deserialize(params) @Type = params['Type'] @Modules = params['Modules'] unless params['PartialModules'].nil? @PartialModules = [] params['PartialModules'].each do |i| partialmodule_tmp = PartialModule.new partialmodule_tmp.deserialize(i) @PartialModules << partialmodule_tmp end end unless params['SkipConditions'].nil? @SkipConditions = [] params['SkipConditions'].each do |i| skipcondition_tmp = SkipCondition.new skipcondition_tmp.deserialize(i) @SkipConditions << skipcondition_tmp end end end end # 失败原因 class FailReason < TencentCloud::Common::AbstractModel # @param Reason: 失败原因。 # @type Reason: String # @param Targets: 处理失败的资源列表。 # @type Targets: Array attr_accessor :Reason, :Targets def initialize(reason=nil, targets=nil) @Reason = reason @Targets = targets end def deserialize(params) @Reason = params['Reason'] @Targets = params['Targets'] end end # 站点归属权校验——文件校验信息。 class FileAscriptionInfo < TencentCloud::Common::AbstractModel # @param IdentifyPath: 文件校验目录。 # @type IdentifyPath: String # @param IdentifyContent: 文件校验内容。 # @type IdentifyContent: String attr_accessor :IdentifyPath, :IdentifyContent def initialize(identifypath=nil, identifycontent=nil) @IdentifyPath = identifypath @IdentifyContent = identifycontent end def deserialize(params) @IdentifyPath = params['IdentifyPath'] @IdentifyContent = params['IdentifyContent'] end end # 描述键值对过滤器,用于条件过滤查询。例如过滤ID、名称、状态等。 # 若存在多个Filter时,Filter间的关系为逻辑与(AND)关系。 # 若同一个Filter存在多个Values,同一Filter下Values间的关系为逻辑或(OR)关系。 class Filter < TencentCloud::Common::AbstractModel # @param Name: 需要过滤的字段。 # @type Name: String # @param Values: 字段的过滤值。 # @type Values: Array attr_accessor :Name, :Values def initialize(name=nil, values=nil) @Name = name @Values = values end def deserialize(params) @Name = params['Name'] @Values = params['Values'] end end # 慢速攻击的首段包配置。 class FirstPartConfig < TencentCloud::Common::AbstractModel # @param Switch: 开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type Switch: String # @param StatTime: 首段包的统计时长,单位是秒,即期望首段包的统计时长是多少,默认5秒。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type StatTime: Integer attr_accessor :Switch, :StatTime def initialize(switch=nil, stattime=nil) @Switch = switch @StatTime = stattime end def deserialize(params) @Switch = params['Switch'] @StatTime = params['StatTime'] end end # 缓存遵循源站配置 class FollowOrigin < TencentCloud::Common::AbstractModel # @param Switch: 遵循源站配置开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String # @param DefaultCacheTime: 源站未返回 Cache-Control 头时, 设置默认的缓存时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type DefaultCacheTime: Integer # @param DefaultCache: 源站未返回 Cache-Control 头时, 设置缓存/不缓存 # 注意:此字段可能返回 null,表示取不到有效值。 # @type DefaultCache: String # @param DefaultCacheStrategy: 源站未返回 Cache-Control 头时, 使用/不使用默认缓存策略 # 注意:此字段可能返回 null,表示取不到有效值。 # @type DefaultCacheStrategy: String attr_accessor :Switch, :DefaultCacheTime, :DefaultCache, :DefaultCacheStrategy def initialize(switch=nil, defaultcachetime=nil, defaultcache=nil, defaultcachestrategy=nil) @Switch = switch @DefaultCacheTime = defaultcachetime @DefaultCache = defaultcache @DefaultCacheStrategy = defaultcachestrategy end def deserialize(params) @Switch = params['Switch'] @DefaultCacheTime = params['DefaultCacheTime'] @DefaultCache = params['DefaultCache'] @DefaultCacheStrategy = params['DefaultCacheStrategy'] end end # 访问协议强制https跳转配置 class ForceRedirect < TencentCloud::Common::AbstractModel # @param Switch: 访问强制跳转配置开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String # @param RedirectStatusCode: 重定向状态码,取值有: #
  • 301:301跳转;
  • #
  • 302:302跳转。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type RedirectStatusCode: Integer attr_accessor :Switch, :RedirectStatusCode def initialize(switch=nil, redirectstatuscode=nil) @Switch = switch @RedirectStatusCode = redirectstatuscode end def deserialize(params) @Switch = params['Switch'] @RedirectStatusCode = params['RedirectStatusCode'] end end # Grpc配置项 class Grpc < TencentCloud::Common::AbstractModel # @param Switch: 是否开启Grpc配置,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String attr_accessor :Switch def initialize(switch=nil) @Switch = switch end def deserialize(params) @Switch = params['Switch'] end end # 刷新预热附带的头部信息 class Header < TencentCloud::Common::AbstractModel # @param Name: HTTP头部名称。 # @type Name: String # @param Value: HTTP头部值。 # @type Value: String attr_accessor :Name, :Value def initialize(name=nil, value=nil) @Name = name @Value = value end def deserialize(params) @Name = params['Name'] @Value = params['Value'] end end # Hsts配置 class Hsts < TencentCloud::Common::AbstractModel # @param Switch: 是否开启,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String # @param MaxAge: MaxAge数值。单位为秒,最大值为1天。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type MaxAge: Integer # @param IncludeSubDomains: 是否包含子域名,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type IncludeSubDomains: String # @param Preload: 是否开启预加载,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type Preload: String attr_accessor :Switch, :MaxAge, :IncludeSubDomains, :Preload def initialize(switch=nil, maxage=nil, includesubdomains=nil, preload=nil) @Switch = switch @MaxAge = maxage @IncludeSubDomains = includesubdomains @Preload = preload end def deserialize(params) @Switch = params['Switch'] @MaxAge = params['MaxAge'] @IncludeSubDomains = params['IncludeSubDomains'] @Preload = params['Preload'] end end # 域名 https 加速配置,默认为关闭状态 class Https < TencentCloud::Common::AbstractModel # @param Http2: http2 配置开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type Http2: String # @param OcspStapling: OCSP 配置开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type OcspStapling: String # @param TlsVersion: Tls版本设置,取值有: #
  • TLSv1:TLSv1版本;
  • #
  • TLSV1.1:TLSv1.1版本;
  • #
  • TLSV1.2:TLSv1.2版本;
  • #
  • TLSv1.3:TLSv1.3版本。
  • 修改时必须开启连续的版本。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type TlsVersion: Array # @param Hsts: HSTS 配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Hsts: :class:`Tencentcloud::Teo.v20220901.models.Hsts` # @param CertInfo: 证书配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CertInfo: Array # @param ApplyType: 申请类型,取值有: #
  • apply:托管EdgeOne;
  • #
  • none:不托管EdgeOne。
  • 不填,默认取值为none。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ApplyType: String # @param CipherSuite: 密码套件,取值有: #
  • loose-v2023:提供最高的兼容性,安全性一般,支持 TLS 1.0-1.3 密码套件;
  • #
  • general-v2023:提供较高的兼容性,安全性中等,支持 TLS 1.2-1.3 密码套件;
  • #
  • strict-v2023:提供最高的安全性能,禁用所有含不安全隐患的加密套件,支持 TLS 1.2-1.3 密码套件。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CipherSuite: String attr_accessor :Http2, :OcspStapling, :TlsVersion, :Hsts, :CertInfo, :ApplyType, :CipherSuite def initialize(http2=nil, ocspstapling=nil, tlsversion=nil, hsts=nil, certinfo=nil, applytype=nil, ciphersuite=nil) @Http2 = http2 @OcspStapling = ocspstapling @TlsVersion = tlsversion @Hsts = hsts @CertInfo = certinfo @ApplyType = applytype @CipherSuite = ciphersuite end def deserialize(params) @Http2 = params['Http2'] @OcspStapling = params['OcspStapling'] @TlsVersion = params['TlsVersion'] unless params['Hsts'].nil? @Hsts = Hsts.new @Hsts.deserialize(params['Hsts']) end unless params['CertInfo'].nil? @CertInfo = [] params['CertInfo'].each do |i| servercertinfo_tmp = ServerCertInfo.new servercertinfo_tmp.deserialize(i) @CertInfo << servercertinfo_tmp end end @ApplyType = params['ApplyType'] @CipherSuite = params['CipherSuite'] end end # 源站防护IP白名单 class IPWhitelist < TencentCloud::Common::AbstractModel # @param IPv4: IPv4列表。 # @type IPv4: Array # @param IPv6: IPv6列表。 # @type IPv6: Array attr_accessor :IPv4, :IPv6 def initialize(ipv4=nil, ipv6=nil) @IPv4 = ipv4 @IPv6 = ipv6 end def deserialize(params) @IPv4 = params['IPv4'] @IPv6 = params['IPv6'] end end # 站点验证信息 class Identification < TencentCloud::Common::AbstractModel # @param ZoneName: 站点名称。 # @type ZoneName: String # @param Domain: 验证子域名。验证站点时,该值为空。验证子域名是为具体子域名。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Domain: String # @param Status: 验证状态,取值有: #
  • pending:验证中;
  • #
  • finished:验证完成。
  • # @type Status: String # @param Ascription: 站点归属权校验:Dns校验信息。 # @type Ascription: :class:`Tencentcloud::Teo.v20220901.models.AscriptionInfo` # @param OriginalNameServers: 域名当前的 NS 记录。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type OriginalNameServers: Array # @param FileAscription: 站点归属权校验:文件校验信息。 # @type FileAscription: :class:`Tencentcloud::Teo.v20220901.models.FileAscriptionInfo` attr_accessor :ZoneName, :Domain, :Status, :Ascription, :OriginalNameServers, :FileAscription def initialize(zonename=nil, domain=nil, status=nil, ascription=nil, originalnameservers=nil, fileascription=nil) @ZoneName = zonename @Domain = domain @Status = status @Ascription = ascription @OriginalNameServers = originalnameservers @FileAscription = fileascription end def deserialize(params) @ZoneName = params['ZoneName'] @Domain = params['Domain'] @Status = params['Status'] unless params['Ascription'].nil? @Ascription = AscriptionInfo.new @Ascription.deserialize(params['Ascription']) end @OriginalNameServers = params['OriginalNameServers'] unless params['FileAscription'].nil? @FileAscription = FileAscriptionInfo.new @FileAscription.deserialize(params['FileAscription']) end end end # IdentifyZone请求参数结构体 class IdentifyZoneRequest < TencentCloud::Common::AbstractModel # @param ZoneName: 站点名称。 # @type ZoneName: String # @param Domain: 站点下的子域名。如果验证站点下的子域名,则传该值,否则为空。 # @type Domain: String attr_accessor :ZoneName, :Domain def initialize(zonename=nil, domain=nil) @ZoneName = zonename @Domain = domain end def deserialize(params) @ZoneName = params['ZoneName'] @Domain = params['Domain'] end end # IdentifyZone返回参数结构体 class IdentifyZoneResponse < TencentCloud::Common::AbstractModel # @param Ascription: 站点归属校验:Dns校验信息。 # @type Ascription: :class:`Tencentcloud::Teo.v20220901.models.AscriptionInfo` # @param FileAscription: 站点归属权校验:文件校验信息。 # @type FileAscription: :class:`Tencentcloud::Teo.v20220901.models.FileAscriptionInfo` # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Ascription, :FileAscription, :RequestId def initialize(ascription=nil, fileascription=nil, requestid=nil) @Ascription = ascription @FileAscription = fileascription @RequestId = requestid end def deserialize(params) unless params['Ascription'].nil? @Ascription = AscriptionInfo.new @Ascription.deserialize(params['Ascription']) end unless params['FileAscription'].nil? @FileAscription = FileAscriptionInfo.new @FileAscription.deserialize(params['FileAscription']) end @RequestId = params['RequestId'] end end # 智能分析规则 class IntelligenceRule < TencentCloud::Common::AbstractModel # @param Switch: 开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type Switch: String # @param IntelligenceRuleItems: 规则详情。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type IntelligenceRuleItems: Array attr_accessor :Switch, :IntelligenceRuleItems def initialize(switch=nil, intelligenceruleitems=nil) @Switch = switch @IntelligenceRuleItems = intelligenceruleitems end def deserialize(params) @Switch = params['Switch'] unless params['IntelligenceRuleItems'].nil? @IntelligenceRuleItems = [] params['IntelligenceRuleItems'].each do |i| intelligenceruleitem_tmp = IntelligenceRuleItem.new intelligenceruleitem_tmp.deserialize(i) @IntelligenceRuleItems << intelligenceruleitem_tmp end end end end # Bot智能分析规则详情 class IntelligenceRuleItem < TencentCloud::Common::AbstractModel # @param Label: 智能分析标签,取值有: #
  • evil_bot:恶意bot;
  • #
  • suspect_bot:疑似bot;
  • #
  • good_bot:良好bot;
  • #
  • normal:正常请求。
  • # @type Label: String # @param Action: 触发智能分析标签对应的处置方式,取值有: #
  • drop:拦截;
  • #
  • trans:放行;
  • #
  • alg:Javascript挑战;
  • #
  • captcha:数字验证码;
  • #
  • monitor:观察。
  • # @type Action: String attr_accessor :Label, :Action def initialize(label=nil, action=nil) @Label = label @Action = action end def deserialize(params) @Label = params['Label'] @Action = params['Action'] end end # IP黑白名单及IP区域控制配置 class IpTableConfig < TencentCloud::Common::AbstractModel # @param Switch: 开关,取值有: #
  • on:开启;
  • #
  • off:关闭;
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type Switch: String # @param IpTableRules: 基础管控规则。如果为null,默认使用历史配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type IpTableRules: Array attr_accessor :Switch, :IpTableRules def initialize(switch=nil, iptablerules=nil) @Switch = switch @IpTableRules = iptablerules end def deserialize(params) @Switch = params['Switch'] unless params['IpTableRules'].nil? @IpTableRules = [] params['IpTableRules'].each do |i| iptablerule_tmp = IpTableRule.new iptablerule_tmp.deserialize(i) @IpTableRules << iptablerule_tmp end end end end # IP黑白名单详细规则 class IpTableRule < TencentCloud::Common::AbstractModel # @param Action: 动作,取值有: #
  • drop:拦截;
  • #
  • trans:放行;
  • #
  • monitor:观察。
  • # @type Action: String # @param MatchFrom: 根据类型匹配,取值有: #
  • ip:对ip进行匹配;
  • #
  • area:对ip所属地区匹配。
  • # @type MatchFrom: String # @param Operator: 规则的匹配方式,默认为空代表等于。 # 取值有: #
  • is_emty:配置为空;
  • #
  • not_exists:配置为不存在;
  • #
  • include:包含;
  • #
  • not_include:不包含;
  • #
  • equal:等于;
  • #
  • not_equal:不等于。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type Operator: String # @param RuleID: 规则id。仅出参使用。 # @type RuleID: Integer # @param UpdateTime: 更新时间。仅出参使用。 # @type UpdateTime: String # @param Status: 规则启用状态,当返回为null时,为启用。取值有: #
  • on:启用;
  • #
  • off:未启用。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type Status: String # @param RuleName: 规则名。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type RuleName: String # @param MatchContent: 匹配内容。当 Operator为is_emty 或not_exists时,此值允许为空。 # @type MatchContent: String attr_accessor :Action, :MatchFrom, :Operator, :RuleID, :UpdateTime, :Status, :RuleName, :MatchContent def initialize(action=nil, matchfrom=nil, operator=nil, ruleid=nil, updatetime=nil, status=nil, rulename=nil, matchcontent=nil) @Action = action @MatchFrom = matchfrom @Operator = operator @RuleID = ruleid @UpdateTime = updatetime @Status = status @RuleName = rulename @MatchContent = matchcontent end def deserialize(params) @Action = params['Action'] @MatchFrom = params['MatchFrom'] @Operator = params['Operator'] @RuleID = params['RuleID'] @UpdateTime = params['UpdateTime'] @Status = params['Status'] @RuleName = params['RuleName'] @MatchContent = params['MatchContent'] end end # Ipv6访问配置 class Ipv6 < TencentCloud::Common::AbstractModel # @param Switch: Ipv6访问功能配置,取值有: #
  • on:开启Ipv6访问功能;
  • #
  • off:关闭Ipv6访问功能。
  • # @type Switch: String attr_accessor :Switch def initialize(switch=nil) @Switch = switch end def deserialize(params) @Switch = params['Switch'] end end # 离线日志详细信息 class L4OfflineLog < TencentCloud::Common::AbstractModel # @param LogTime: 日志打包开始时间。 # @type LogTime: Integer # @param ProxyId: 四层实例ID。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ProxyId: String # @param Size: 原始大小 单位byte。 # @type Size: Integer # @param Url: 下载地址。 # @type Url: String # @param LogPacketName: 日志数据包名。 # @type LogPacketName: String # @param Area: 加速区域,取值有: #
  • mainland:中国大陆境内;
  • #
  • overseas:全球(不含中国大陆)。
  • # @type Area: String attr_accessor :LogTime, :ProxyId, :Size, :Url, :LogPacketName, :Area def initialize(logtime=nil, proxyid=nil, size=nil, url=nil, logpacketname=nil, area=nil) @LogTime = logtime @ProxyId = proxyid @Size = size @Url = url @LogPacketName = logpacketname @Area = area end def deserialize(params) @LogTime = params['LogTime'] @ProxyId = params['ProxyId'] @Size = params['Size'] @Url = params['Url'] @LogPacketName = params['LogPacketName'] @Area = params['Area'] end end # 离线日志详细信息 class L7OfflineLog < TencentCloud::Common::AbstractModel # @param LogTime: 日志打包开始时间。 # @type LogTime: Integer # @param Domain: 子域名。 # @type Domain: String # @param Size: 原始大小,单位byte。 # @type Size: Integer # @param Url: 下载地址。 # @type Url: String # @param LogPacketName: 日志数据包名。 # @type LogPacketName: String # @param Area: 加速区域,取值有: #
  • mainland:中国大陆境内;
  • #
  • overseas:全球(不含中国大陆)。
  • # @type Area: String attr_accessor :LogTime, :Domain, :Size, :Url, :LogPacketName, :Area def initialize(logtime=nil, domain=nil, size=nil, url=nil, logpacketname=nil, area=nil) @LogTime = logtime @Domain = domain @Size = size @Url = url @LogPacketName = logpacketname @Area = area end def deserialize(params) @LogTime = params['LogTime'] @Domain = params['Domain'] @Size = params['Size'] @Url = params['Url'] @LogPacketName = params['LogPacketName'] @Area = params['Area'] end end # 日志集基本信息 class LogSetInfo < TencentCloud::Common::AbstractModel # @param LogSetRegion: 日志集所属地区。 # @type LogSetRegion: String # @param LogSetName: 日志集名 # @type LogSetName: String # @param LogSetId: 日志集Id # @type LogSetId: String # @param Deleted: 该日志集是否已被删除, 可选的值有: #
  • no: 日志集没有被删除;
  • #
  • yes: 日志集已经被删除;
  • # @type Deleted: String attr_accessor :LogSetRegion, :LogSetName, :LogSetId, :Deleted def initialize(logsetregion=nil, logsetname=nil, logsetid=nil, deleted=nil) @LogSetRegion = logsetregion @LogSetName = logsetname @LogSetId = logsetid @Deleted = deleted end def deserialize(params) @LogSetRegion = params['LogSetRegion'] @LogSetName = params['LogSetName'] @LogSetId = params['LogSetId'] @Deleted = params['Deleted'] end end # 浏览器缓存规则配置,用于设置 MaxAge 默认值,默认为关闭状态 class MaxAge < TencentCloud::Common::AbstractModel # @param FollowOrigin: 是否遵循源站,取值有: #
  • on:遵循源站,忽略MaxAge 时间设置;
  • #
  • off:不遵循源站,使用MaxAge 时间设置。
  • # @type FollowOrigin: String # @param MaxAgeTime: MaxAge 时间设置,单位秒,最大365天。 # 注意:时间为0,即不缓存。 # @type MaxAgeTime: Integer attr_accessor :FollowOrigin, :MaxAgeTime def initialize(followorigin=nil, maxagetime=nil) @FollowOrigin = followorigin @MaxAgeTime = maxagetime end def deserialize(params) @FollowOrigin = params['FollowOrigin'] @MaxAgeTime = params['MaxAgeTime'] end end # ModifyAccelerationDomain请求参数结构体 class ModifyAccelerationDomainRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 加速域名所属站点ID。 # @type ZoneId: String # @param DomainName: 加速域名名称。 # @type DomainName: String # @param OriginInfo: 源站信息。 # @type OriginInfo: :class:`Tencentcloud::Teo.v20220901.models.OriginInfo` attr_accessor :ZoneId, :DomainName, :OriginInfo def initialize(zoneid=nil, domainname=nil, origininfo=nil) @ZoneId = zoneid @DomainName = domainname @OriginInfo = origininfo end def deserialize(params) @ZoneId = params['ZoneId'] @DomainName = params['DomainName'] unless params['OriginInfo'].nil? @OriginInfo = OriginInfo.new @OriginInfo.deserialize(params['OriginInfo']) end end end # ModifyAccelerationDomain返回参数结构体 class ModifyAccelerationDomainResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # ModifyAccelerationDomainStatuses请求参数结构体 class ModifyAccelerationDomainStatusesRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 加速域名所属站点ID。 # @type ZoneId: String # @param DomainNames: 要执行状态变更的加速域名列表。 # @type DomainNames: Array # @param Status: 加速域名状态,取值有: #
  • online:启用;
  • #
  • offline:停用。
  • # @type Status: String # @param Force: 是否强制停用。当域名存在关联资源(如马甲域名、流量调度功能)时,是否强制停用该域名,取值有: #
  • true:停用该域名及所有关联资源;
  • #
  • false:当该加速域名存在关联资源时,不允许停用。
  • 不填写,默认值为:false。 # @type Force: Boolean attr_accessor :ZoneId, :DomainNames, :Status, :Force def initialize(zoneid=nil, domainnames=nil, status=nil, force=nil) @ZoneId = zoneid @DomainNames = domainnames @Status = status @Force = force end def deserialize(params) @ZoneId = params['ZoneId'] @DomainNames = params['DomainNames'] @Status = params['Status'] @Force = params['Force'] end end # ModifyAccelerationDomainStatuses返回参数结构体 class ModifyAccelerationDomainStatusesResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # ModifyAliasDomain请求参数结构体 class ModifyAliasDomainRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点 ID。 # @type ZoneId: String # @param AliasName: 别称域名名称。 # @type AliasName: String # @param TargetName: 目标域名名称。 # @type TargetName: String # @param CertType: 证书配置,取值有: #
  • none:不配置;
  • #
  • hosting:SSL托管证书;
  • #
  • apply:申请免费证书。
  • 不填写保持原有配置。 # @type CertType: String # @param CertId: 当 CertType 取值为 hosting 时填入相应证书 ID。 # @type CertId: Array attr_accessor :ZoneId, :AliasName, :TargetName, :CertType, :CertId def initialize(zoneid=nil, aliasname=nil, targetname=nil, certtype=nil, certid=nil) @ZoneId = zoneid @AliasName = aliasname @TargetName = targetname @CertType = certtype @CertId = certid end def deserialize(params) @ZoneId = params['ZoneId'] @AliasName = params['AliasName'] @TargetName = params['TargetName'] @CertType = params['CertType'] @CertId = params['CertId'] end end # ModifyAliasDomain返回参数结构体 class ModifyAliasDomainResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # ModifyAliasDomainStatus请求参数结构体 class ModifyAliasDomainStatusRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点 ID。 # @type ZoneId: String # @param Paused: 别称域名状态,取值有: #
  • false:开启别称域名;
  • #
  • true:关闭别称域名。
  • # @type Paused: Boolean # @param AliasNames: 待修改状态的别称域名名称。如果为空,则不执行修改状态操作。 # @type AliasNames: Array attr_accessor :ZoneId, :Paused, :AliasNames def initialize(zoneid=nil, paused=nil, aliasnames=nil) @ZoneId = zoneid @Paused = paused @AliasNames = aliasnames end def deserialize(params) @ZoneId = params['ZoneId'] @Paused = params['Paused'] @AliasNames = params['AliasNames'] end end # ModifyAliasDomainStatus返回参数结构体 class ModifyAliasDomainStatusResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # ModifyApplicationProxy请求参数结构体 class ModifyApplicationProxyRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param ProxyId: 代理ID。 # @type ProxyId: String # @param ProxyName: 当ProxyType=hostname时,表示域名或子域名; # 当ProxyType=instance时,表示代理名称。 # @type ProxyName: String # @param SessionPersistTime: 会话保持时间,取值范围:30-3600,单位:秒。 # 不填写保持原有配置。 # @type SessionPersistTime: Integer # @param ProxyType: 四层代理模式,取值有: #
  • hostname:表示子域名模式;
  • #
  • instance:表示实例模式。
  • 不填写保持原有配置。 # @type ProxyType: String # @param Ipv6: Ipv6访问配置,不填写保持原有配置。 # @type Ipv6: :class:`Tencentcloud::Teo.v20220901.models.Ipv6` attr_accessor :ZoneId, :ProxyId, :ProxyName, :SessionPersistTime, :ProxyType, :Ipv6 def initialize(zoneid=nil, proxyid=nil, proxyname=nil, sessionpersisttime=nil, proxytype=nil, ipv6=nil) @ZoneId = zoneid @ProxyId = proxyid @ProxyName = proxyname @SessionPersistTime = sessionpersisttime @ProxyType = proxytype @Ipv6 = ipv6 end def deserialize(params) @ZoneId = params['ZoneId'] @ProxyId = params['ProxyId'] @ProxyName = params['ProxyName'] @SessionPersistTime = params['SessionPersistTime'] @ProxyType = params['ProxyType'] unless params['Ipv6'].nil? @Ipv6 = Ipv6.new @Ipv6.deserialize(params['Ipv6']) end end end # ModifyApplicationProxy返回参数结构体 class ModifyApplicationProxyResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # ModifyApplicationProxyRule请求参数结构体 class ModifyApplicationProxyRuleRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param ProxyId: 代理ID。 # @type ProxyId: String # @param RuleId: 规则ID。 # @type RuleId: String # @param OriginType: 源站类型,取值有: #
  • custom:手动添加;
  • #
  • origins:源站组。
  • 不填保持原有值。 # @type OriginType: String # @param Port: 端口,支持格式: #
  • 80:80端口;
  • #
  • 81-90:81至90端口。
  • # @type Port: Array # @param Proto: 协议,取值有: #
  • TCP:TCP协议;
  • #
  • UDP:UDP协议。
  • 不填保持原有值。 # @type Proto: String # @param OriginValue: 源站信息: #
  • 当 OriginType 为 custom 时,表示一个或多个源站,如`["8.8.8.8","9.9.9.9"]` 或 `OriginValue=["test.com"]`;
  • #
  • 当 OriginType 为 origins 时,要求有且仅有一个元素,表示源站组ID,如`["origin-537f5b41-162a-11ed-abaa-525400c5da15"]`。
  • # 不填保持原有值。 # @type OriginValue: Array # @param ForwardClientIp: 传递客户端IP,取值有: #
  • TOA:TOA(仅Proto=TCP时可选);
  • #
  • PPV1:Proxy Protocol传递,协议版本V1(仅Proto=TCP时可选);
  • #
  • PPV2:Proxy Protocol传递,协议版本V2;
  • #
  • OFF:不传递。
  • 不填保持原有值。 # @type ForwardClientIp: String # @param SessionPersist: 是否开启会话保持,取值有: #
  • true:开启;
  • #
  • false:关闭。
  • 不填为false。 # @type SessionPersist: Boolean # @param OriginPort: 源站端口,支持格式: #
  • 单端口:80;
  • #
  • 端口段:81-90,81至90端口。
  • # @type OriginPort: String attr_accessor :ZoneId, :ProxyId, :RuleId, :OriginType, :Port, :Proto, :OriginValue, :ForwardClientIp, :SessionPersist, :OriginPort def initialize(zoneid=nil, proxyid=nil, ruleid=nil, origintype=nil, port=nil, proto=nil, originvalue=nil, forwardclientip=nil, sessionpersist=nil, originport=nil) @ZoneId = zoneid @ProxyId = proxyid @RuleId = ruleid @OriginType = origintype @Port = port @Proto = proto @OriginValue = originvalue @ForwardClientIp = forwardclientip @SessionPersist = sessionpersist @OriginPort = originport end def deserialize(params) @ZoneId = params['ZoneId'] @ProxyId = params['ProxyId'] @RuleId = params['RuleId'] @OriginType = params['OriginType'] @Port = params['Port'] @Proto = params['Proto'] @OriginValue = params['OriginValue'] @ForwardClientIp = params['ForwardClientIp'] @SessionPersist = params['SessionPersist'] @OriginPort = params['OriginPort'] end end # ModifyApplicationProxyRule返回参数结构体 class ModifyApplicationProxyRuleResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # ModifyApplicationProxyRuleStatus请求参数结构体 class ModifyApplicationProxyRuleStatusRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param ProxyId: 代理ID。 # @type ProxyId: String # @param RuleId: 规则ID。 # @type RuleId: String # @param Status: 状态,取值有: #
  • offline: 停用;
  • #
  • online: 启用。
  • # @type Status: String attr_accessor :ZoneId, :ProxyId, :RuleId, :Status def initialize(zoneid=nil, proxyid=nil, ruleid=nil, status=nil) @ZoneId = zoneid @ProxyId = proxyid @RuleId = ruleid @Status = status end def deserialize(params) @ZoneId = params['ZoneId'] @ProxyId = params['ProxyId'] @RuleId = params['RuleId'] @Status = params['Status'] end end # ModifyApplicationProxyRuleStatus返回参数结构体 class ModifyApplicationProxyRuleStatusResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # ModifyApplicationProxyStatus请求参数结构体 class ModifyApplicationProxyStatusRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param ProxyId: 代理ID。 # @type ProxyId: String # @param Status: 状态,取值有: #
  • offline: 停用;
  • #
  • online: 启用。
  • # @type Status: String attr_accessor :ZoneId, :ProxyId, :Status def initialize(zoneid=nil, proxyid=nil, status=nil) @ZoneId = zoneid @ProxyId = proxyid @Status = status end def deserialize(params) @ZoneId = params['ZoneId'] @ProxyId = params['ProxyId'] @Status = params['Status'] end end # ModifyApplicationProxyStatus返回参数结构体 class ModifyApplicationProxyStatusResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # ModifyDefaultCertificate请求参数结构体 class ModifyDefaultCertificateRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param CertId: 默认证书ID。 # @type CertId: String # @param Status: 证书状态,取值有: #
  • deployed :部署证书;
  • #
  • disabled :禁用证书。
  • 失败状态下重新deployed即可重试。 # @type Status: String attr_accessor :ZoneId, :CertId, :Status def initialize(zoneid=nil, certid=nil, status=nil) @ZoneId = zoneid @CertId = certid @Status = status end def deserialize(params) @ZoneId = params['ZoneId'] @CertId = params['CertId'] @Status = params['Status'] end end # ModifyDefaultCertificate返回参数结构体 class ModifyDefaultCertificateResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # ModifyHostsCertificate请求参数结构体 class ModifyHostsCertificateRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点 ID。 # @type ZoneId: String # @param Hosts: 本次变更的域名列表。 # @type Hosts: Array # @param ServerCertInfo: 证书信息, 只需要传入 CertId 即可, 如果为空, 则使用默认证书。 # @type ServerCertInfo: Array # @param ApplyType: 托管类型,取值有: #
  • apply:托管EO;
  • #
  • none:不托管EO;
  • 不填,默认取值为apply。 # @type ApplyType: String attr_accessor :ZoneId, :Hosts, :ServerCertInfo, :ApplyType def initialize(zoneid=nil, hosts=nil, servercertinfo=nil, applytype=nil) @ZoneId = zoneid @Hosts = hosts @ServerCertInfo = servercertinfo @ApplyType = applytype end def deserialize(params) @ZoneId = params['ZoneId'] @Hosts = params['Hosts'] unless params['ServerCertInfo'].nil? @ServerCertInfo = [] params['ServerCertInfo'].each do |i| servercertinfo_tmp = ServerCertInfo.new servercertinfo_tmp.deserialize(i) @ServerCertInfo << servercertinfo_tmp end end @ApplyType = params['ApplyType'] end end # ModifyHostsCertificate返回参数结构体 class ModifyHostsCertificateResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # ModifyOriginGroup请求参数结构体 class ModifyOriginGroupRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param OriginGroupId: 源站组ID。 # @type OriginGroupId: String # @param OriginType: 源站类型,取值有: #
  • self:自有源站;
  • #
  • third_party:第三方源站;
  • #
  • cos:腾讯云COS源站。
  • # @type OriginType: String # @param OriginGroupName: 源站组名称。 # @type OriginGroupName: String # @param ConfigurationType: 源站配置类型,当OriginType=self时,取值有: #
  • area:按区域配置;
  • #
  • weight: 按权重配置;
  • #
  • proto: 按HTTP协议配置。
  • 当OriginType=third_party/cos时放空。 # @type ConfigurationType: String # @param OriginRecords: 源站记录信息。 # @type OriginRecords: Array # @param HostHeader: 回源Host,仅当OriginType=self时可以设置。 # 不填写,表示使用已有配置。 # @type HostHeader: String attr_accessor :ZoneId, :OriginGroupId, :OriginType, :OriginGroupName, :ConfigurationType, :OriginRecords, :HostHeader def initialize(zoneid=nil, origingroupid=nil, origintype=nil, origingroupname=nil, configurationtype=nil, originrecords=nil, hostheader=nil) @ZoneId = zoneid @OriginGroupId = origingroupid @OriginType = origintype @OriginGroupName = origingroupname @ConfigurationType = configurationtype @OriginRecords = originrecords @HostHeader = hostheader end def deserialize(params) @ZoneId = params['ZoneId'] @OriginGroupId = params['OriginGroupId'] @OriginType = params['OriginType'] @OriginGroupName = params['OriginGroupName'] @ConfigurationType = params['ConfigurationType'] unless params['OriginRecords'].nil? @OriginRecords = [] params['OriginRecords'].each do |i| originrecord_tmp = OriginRecord.new originrecord_tmp.deserialize(i) @OriginRecords << originrecord_tmp end end @HostHeader = params['HostHeader'] end end # ModifyOriginGroup返回参数结构体 class ModifyOriginGroupResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # ModifyRulePriority请求参数结构体 class ModifyRulePriorityRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点 ID。 # @type ZoneId: String # @param RuleIds: 规则 ID 的顺序,多条规则执行顺序依次往下。 # @type RuleIds: Array attr_accessor :ZoneId, :RuleIds def initialize(zoneid=nil, ruleids=nil) @ZoneId = zoneid @RuleIds = ruleids end def deserialize(params) @ZoneId = params['ZoneId'] @RuleIds = params['RuleIds'] end end # ModifyRulePriority返回参数结构体 class ModifyRulePriorityResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # ModifyRule请求参数结构体 class ModifyRuleRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点 ID。 # @type ZoneId: String # @param RuleName: 规则名称,字符串名称长度 1~255。 # @type RuleName: String # @param Rules: 规则内容。 # @type Rules: Array # @param RuleId: 规则 ID。 # @type RuleId: String # @param Status: 规则状态,取值有: #
  • enable: 启用;
  • #
  • disable: 未启用。
  • # @type Status: String # @param Tags: 规则标签。 # @type Tags: Array attr_accessor :ZoneId, :RuleName, :Rules, :RuleId, :Status, :Tags def initialize(zoneid=nil, rulename=nil, rules=nil, ruleid=nil, status=nil, tags=nil) @ZoneId = zoneid @RuleName = rulename @Rules = rules @RuleId = ruleid @Status = status @Tags = tags end def deserialize(params) @ZoneId = params['ZoneId'] @RuleName = params['RuleName'] unless params['Rules'].nil? @Rules = [] params['Rules'].each do |i| rule_tmp = Rule.new rule_tmp.deserialize(i) @Rules << rule_tmp end end @RuleId = params['RuleId'] @Status = params['Status'] @Tags = params['Tags'] end end # ModifyRule返回参数结构体 class ModifyRuleResponse < TencentCloud::Common::AbstractModel # @param RuleId: 规则 ID。 # @type RuleId: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RuleId, :RequestId def initialize(ruleid=nil, requestid=nil) @RuleId = ruleid @RequestId = requestid end def deserialize(params) @RuleId = params['RuleId'] @RequestId = params['RequestId'] end end # ModifySecurityPolicy请求参数结构体 class ModifySecurityPolicyRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点Id。 # @type ZoneId: String # @param SecurityConfig: 安全配置。 # @type SecurityConfig: :class:`Tencentcloud::Teo.v20220901.models.SecurityConfig` # @param Entity: 子域名/应用名。当使用Entity时可不填写TemplateId,否则必须填写TemplateId。 # @type Entity: String # @param TemplateId: 模板策略id。当使用模板Id时可不填Entity,否则必须填写Entity。 # @type TemplateId: String attr_accessor :ZoneId, :SecurityConfig, :Entity, :TemplateId def initialize(zoneid=nil, securityconfig=nil, entity=nil, templateid=nil) @ZoneId = zoneid @SecurityConfig = securityconfig @Entity = entity @TemplateId = templateid end def deserialize(params) @ZoneId = params['ZoneId'] unless params['SecurityConfig'].nil? @SecurityConfig = SecurityConfig.new @SecurityConfig.deserialize(params['SecurityConfig']) end @Entity = params['Entity'] @TemplateId = params['TemplateId'] end end # ModifySecurityPolicy返回参数结构体 class ModifySecurityPolicyResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # ModifySecurityWafGroupPolicy请求参数结构体 class ModifySecurityWafGroupPolicyRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点Id。当使用ZoneId和Entity时可不填写TemplateId,否则必须填写TemplateId。 # @type ZoneId: String # @param Entity: 子域名。当使用ZoneId和Entity时可不填写TemplateId,否则必须填写TemplateId。 # @type Entity: String # @param Switch: 总开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • 不填默认为上次的配置。 # @type Switch: String # @param Level: 规则等级,取值有: #
  • loose:宽松;
  • #
  • normal:正常;
  • #
  • strict:严格;
  • #
  • stricter:超严格;
  • #
  • custom:自定义。
  • 不填默认为上次的配置。 # @type Level: String # @param Mode: 处置方式,取值有: #
  • block:阻断;
  • #
  • observe:观察。
  • 不填默认为上次的配置。 # @type Mode: String # @param WafRules: 托管规则。不填默认为上次的配置。 # @type WafRules: :class:`Tencentcloud::Teo.v20220901.models.WafRule` # @param AiRule: AI引擎模式。不填默认为上次的配置。 # @type AiRule: :class:`Tencentcloud::Teo.v20220901.models.AiRule` # @param WafGroups: 托管规则等级组。不填默认为上次的配置。 # @type WafGroups: Array # @param TemplateId: 模板Id。当使用模板Id时可不填ZoneId和Entity,否则必须填写ZoneId和Entity。 # @type TemplateId: String attr_accessor :ZoneId, :Entity, :Switch, :Level, :Mode, :WafRules, :AiRule, :WafGroups, :TemplateId def initialize(zoneid=nil, entity=nil, switch=nil, level=nil, mode=nil, wafrules=nil, airule=nil, wafgroups=nil, templateid=nil) @ZoneId = zoneid @Entity = entity @Switch = switch @Level = level @Mode = mode @WafRules = wafrules @AiRule = airule @WafGroups = wafgroups @TemplateId = templateid end def deserialize(params) @ZoneId = params['ZoneId'] @Entity = params['Entity'] @Switch = params['Switch'] @Level = params['Level'] @Mode = params['Mode'] unless params['WafRules'].nil? @WafRules = WafRule.new @WafRules.deserialize(params['WafRules']) end unless params['AiRule'].nil? @AiRule = AiRule.new @AiRule.deserialize(params['AiRule']) end unless params['WafGroups'].nil? @WafGroups = [] params['WafGroups'].each do |i| wafgroup_tmp = WafGroup.new wafgroup_tmp.deserialize(i) @WafGroups << wafgroup_tmp end end @TemplateId = params['TemplateId'] end end # ModifySecurityWafGroupPolicy返回参数结构体 class ModifySecurityWafGroupPolicyResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # ModifyZone请求参数结构体 class ModifyZoneRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点 ID。 # @type ZoneId: String # @param Type: 站点接入方式,取值有: #
  • full:NS 接入;
  • #
  • partial:CNAME 接入。
  • 不填写保持原有配置。 # @type Type: String # @param VanityNameServers: 自定义站点信息,以替代系统默认分配的名称服务器。不填写保持原有配置。 # @type VanityNameServers: :class:`Tencentcloud::Teo.v20220901.models.VanityNameServers` # @param AliasZoneName: 站点别名。数字、英文、-和_组合,限制20个字符。 # @type AliasZoneName: String attr_accessor :ZoneId, :Type, :VanityNameServers, :AliasZoneName def initialize(zoneid=nil, type=nil, vanitynameservers=nil, aliaszonename=nil) @ZoneId = zoneid @Type = type @VanityNameServers = vanitynameservers @AliasZoneName = aliaszonename end def deserialize(params) @ZoneId = params['ZoneId'] @Type = params['Type'] unless params['VanityNameServers'].nil? @VanityNameServers = VanityNameServers.new @VanityNameServers.deserialize(params['VanityNameServers']) end @AliasZoneName = params['AliasZoneName'] end end # ModifyZone返回参数结构体 class ModifyZoneResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # ModifyZoneSetting请求参数结构体 class ModifyZoneSettingRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 待变更的站点ID。 # @type ZoneId: String # @param CacheConfig: 缓存过期时间配置。 # 不填写表示保持原有配置。 # @type CacheConfig: :class:`Tencentcloud::Teo.v20220901.models.CacheConfig` # @param CacheKey: 节点缓存键配置。 # 不填写表示保持原有配置。 # @type CacheKey: :class:`Tencentcloud::Teo.v20220901.models.CacheKey` # @param MaxAge: 浏览器缓存配置。 # 不填写表示保持原有配置。 # @type MaxAge: :class:`Tencentcloud::Teo.v20220901.models.MaxAge` # @param OfflineCache: 离线缓存配置。 # 不填写表示保持原有配置。 # @type OfflineCache: :class:`Tencentcloud::Teo.v20220901.models.OfflineCache` # @param Quic: Quic访问配置。 # 不填写表示保持原有配置。 # @type Quic: :class:`Tencentcloud::Teo.v20220901.models.Quic` # @param PostMaxSize: Post请求传输配置。 # 不填写表示保持原有配置。 # @type PostMaxSize: :class:`Tencentcloud::Teo.v20220901.models.PostMaxSize` # @param Compression: 智能压缩配置。 # 不填写表示保持原有配置。 # @type Compression: :class:`Tencentcloud::Teo.v20220901.models.Compression` # @param UpstreamHttp2: Http2回源配置。 # 不填写表示保持原有配置。 # @type UpstreamHttp2: :class:`Tencentcloud::Teo.v20220901.models.UpstreamHttp2` # @param ForceRedirect: 访问协议强制Https跳转配置。 # 不填写表示保持原有配置。 # @type ForceRedirect: :class:`Tencentcloud::Teo.v20220901.models.ForceRedirect` # @param Https: Https加速配置。 # 不填写表示保持原有配置。 # @type Https: :class:`Tencentcloud::Teo.v20220901.models.Https` # @param Origin: 源站配置。 # 不填写表示保持原有配置。 # @type Origin: :class:`Tencentcloud::Teo.v20220901.models.Origin` # @param SmartRouting: 智能加速配置。 # 不填写表示保持原有配置。 # @type SmartRouting: :class:`Tencentcloud::Teo.v20220901.models.SmartRouting` # @param WebSocket: WebSocket配置。 # 不填写表示保持原有配置。 # @type WebSocket: :class:`Tencentcloud::Teo.v20220901.models.WebSocket` # @param ClientIpHeader: 客户端IP回源请求头配置。 # 不填写表示保持原有配置。 # @type ClientIpHeader: :class:`Tencentcloud::Teo.v20220901.models.ClientIpHeader` # @param CachePrefresh: 缓存预刷新配置。 # 不填写表示保持原有配置。 # @type CachePrefresh: :class:`Tencentcloud::Teo.v20220901.models.CachePrefresh` # @param Ipv6: Ipv6访问配置。 # 不填写表示保持原有配置。 # @type Ipv6: :class:`Tencentcloud::Teo.v20220901.models.Ipv6` # @param ClientIpCountry: 回源时是否携带客户端IP所属地域信息的配置。 # 不填写表示保持原有配置。 # @type ClientIpCountry: :class:`Tencentcloud::Teo.v20220901.models.ClientIpCountry` # @param Grpc: Grpc协议支持配置。 # 不填写表示保持原有配置。 # @type Grpc: :class:`Tencentcloud::Teo.v20220901.models.Grpc` attr_accessor :ZoneId, :CacheConfig, :CacheKey, :MaxAge, :OfflineCache, :Quic, :PostMaxSize, :Compression, :UpstreamHttp2, :ForceRedirect, :Https, :Origin, :SmartRouting, :WebSocket, :ClientIpHeader, :CachePrefresh, :Ipv6, :ClientIpCountry, :Grpc def initialize(zoneid=nil, cacheconfig=nil, cachekey=nil, maxage=nil, offlinecache=nil, quic=nil, postmaxsize=nil, compression=nil, upstreamhttp2=nil, forceredirect=nil, https=nil, origin=nil, smartrouting=nil, websocket=nil, clientipheader=nil, cacheprefresh=nil, ipv6=nil, clientipcountry=nil, grpc=nil) @ZoneId = zoneid @CacheConfig = cacheconfig @CacheKey = cachekey @MaxAge = maxage @OfflineCache = offlinecache @Quic = quic @PostMaxSize = postmaxsize @Compression = compression @UpstreamHttp2 = upstreamhttp2 @ForceRedirect = forceredirect @Https = https @Origin = origin @SmartRouting = smartrouting @WebSocket = websocket @ClientIpHeader = clientipheader @CachePrefresh = cacheprefresh @Ipv6 = ipv6 @ClientIpCountry = clientipcountry @Grpc = grpc end def deserialize(params) @ZoneId = params['ZoneId'] unless params['CacheConfig'].nil? @CacheConfig = CacheConfig.new @CacheConfig.deserialize(params['CacheConfig']) end unless params['CacheKey'].nil? @CacheKey = CacheKey.new @CacheKey.deserialize(params['CacheKey']) end unless params['MaxAge'].nil? @MaxAge = MaxAge.new @MaxAge.deserialize(params['MaxAge']) end unless params['OfflineCache'].nil? @OfflineCache = OfflineCache.new @OfflineCache.deserialize(params['OfflineCache']) end unless params['Quic'].nil? @Quic = Quic.new @Quic.deserialize(params['Quic']) end unless params['PostMaxSize'].nil? @PostMaxSize = PostMaxSize.new @PostMaxSize.deserialize(params['PostMaxSize']) end unless params['Compression'].nil? @Compression = Compression.new @Compression.deserialize(params['Compression']) end unless params['UpstreamHttp2'].nil? @UpstreamHttp2 = UpstreamHttp2.new @UpstreamHttp2.deserialize(params['UpstreamHttp2']) end unless params['ForceRedirect'].nil? @ForceRedirect = ForceRedirect.new @ForceRedirect.deserialize(params['ForceRedirect']) end unless params['Https'].nil? @Https = Https.new @Https.deserialize(params['Https']) end unless params['Origin'].nil? @Origin = Origin.new @Origin.deserialize(params['Origin']) end unless params['SmartRouting'].nil? @SmartRouting = SmartRouting.new @SmartRouting.deserialize(params['SmartRouting']) end unless params['WebSocket'].nil? @WebSocket = WebSocket.new @WebSocket.deserialize(params['WebSocket']) end unless params['ClientIpHeader'].nil? @ClientIpHeader = ClientIpHeader.new @ClientIpHeader.deserialize(params['ClientIpHeader']) end unless params['CachePrefresh'].nil? @CachePrefresh = CachePrefresh.new @CachePrefresh.deserialize(params['CachePrefresh']) end unless params['Ipv6'].nil? @Ipv6 = Ipv6.new @Ipv6.deserialize(params['Ipv6']) end unless params['ClientIpCountry'].nil? @ClientIpCountry = ClientIpCountry.new @ClientIpCountry.deserialize(params['ClientIpCountry']) end unless params['Grpc'].nil? @Grpc = Grpc.new @Grpc.deserialize(params['Grpc']) end end end # ModifyZoneSetting返回参数结构体 class ModifyZoneSettingResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # ModifyZoneStatus请求参数结构体 class ModifyZoneStatusRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点 ID。 # @type ZoneId: String # @param Paused: 站点状态,取值有: #
  • false:开启站点;
  • #
  • true:关闭站点。
  • # @type Paused: Boolean attr_accessor :ZoneId, :Paused def initialize(zoneid=nil, paused=nil) @ZoneId = zoneid @Paused = paused end def deserialize(params) @ZoneId = params['ZoneId'] @Paused = params['Paused'] end end # ModifyZoneStatus返回参数结构体 class ModifyZoneStatusResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # 不缓存配置 class NoCache < TencentCloud::Common::AbstractModel # @param Switch: 不缓存配置开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String attr_accessor :Switch def initialize(switch=nil) @Switch = switch end def deserialize(params) @Switch = params['Switch'] end end # 规则引擎常规类型的动作 class NormalAction < TencentCloud::Common::AbstractModel # @param Action: 功能名称,功能名称填写规范可调用接口 [查询规则引擎的设置参数](https://tcloud4api.woa.com/document/product/1657/79433?!preview&!document=1) 查看。 # @type Action: String # @param Parameters: 参数。 # @type Parameters: Array attr_accessor :Action, :Parameters def initialize(action=nil, parameters=nil) @Action = action @Parameters = parameters end def deserialize(params) @Action = params['Action'] unless params['Parameters'].nil? @Parameters = [] params['Parameters'].each do |i| rulenormalactionparams_tmp = RuleNormalActionParams.new rulenormalactionparams_tmp.deserialize(i) @Parameters << rulenormalactionparams_tmp end end end end # 离线缓存是否开启 class OfflineCache < TencentCloud::Common::AbstractModel # @param Switch: 离线缓存是否开启,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String attr_accessor :Switch def initialize(switch=nil) @Switch = switch end def deserialize(params) @Switch = params['Switch'] end end # 站点拨测优化建议 class OptimizeAction < TencentCloud::Common::AbstractModel # @param Name: 站点性能优化配置项,取值有: #
  • Http2;
  • #
  • Http3;
  • #
  • Brotli。
  • # @type Name: String # @param Connectivity: 网络环境。 # @type Connectivity: String # @param Value: 开启配置项后,预估性能优化效果,单位ms。 # @type Value: Integer # @param Ratio: 开启配置项后,预估性能提升比例,单位%。 # @type Ratio: Integer attr_accessor :Name, :Connectivity, :Value, :Ratio def initialize(name=nil, connectivity=nil, value=nil, ratio=nil) @Name = name @Connectivity = connectivity @Value = value @Ratio = ratio end def deserialize(params) @Name = params['Name'] @Connectivity = params['Connectivity'] @Value = params['Value'] @Ratio = params['Ratio'] end end # 源站配置。 class Origin < TencentCloud::Common::AbstractModel # @param Origins: 主源站列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Origins: Array # @param BackupOrigins: 备源站列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type BackupOrigins: Array # @param OriginPullProtocol: 回源协议配置,取值有: #
  • http:强制 http 回源;
  • #
  • follow:协议跟随回源;
  • #
  • https:强制 https 回源。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type OriginPullProtocol: String # @param CosPrivateAccess: 源站为腾讯云COS时,是否为私有访问bucket,取值有: #
  • on:私有访问;
  • #
  • off:公共访问。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type CosPrivateAccess: String attr_accessor :Origins, :BackupOrigins, :OriginPullProtocol, :CosPrivateAccess def initialize(origins=nil, backuporigins=nil, originpullprotocol=nil, cosprivateaccess=nil) @Origins = origins @BackupOrigins = backuporigins @OriginPullProtocol = originpullprotocol @CosPrivateAccess = cosprivateaccess end def deserialize(params) @Origins = params['Origins'] @BackupOrigins = params['BackupOrigins'] @OriginPullProtocol = params['OriginPullProtocol'] @CosPrivateAccess = params['CosPrivateAccess'] end end # 加速域名源站信息。 class OriginDetail < TencentCloud::Common::AbstractModel # @param OriginType: 源站类型,取值有: #
  • IP_DOMAIN:IPV4、IPV6或域名类型源站;
  • #
  • COS:COS源。
  • #
  • ORIGIN_GROUP:源站组类型源站。
  • #
  • AWS_S3:AWS S3对象存储源站。
  • # @type OriginType: String # @param Origin: 源站地址,当OriginType参数指定为ORIGIN_GROUP时,该参数填写源站组ID,其他情况下填写源站地址。 # @type Origin: String # @param BackupOrigin: 备用源站组ID,该参数在OriginType参数指定为ORIGIN_GROUP时生效,为空表示不使用备用源站。 # @type BackupOrigin: String # @param OriginGroupName: 主源源站组名称,当OriginType参数指定为ORIGIN_GROUP时该参数生效。 # @type OriginGroupName: String # @param BackOriginGroupName: 备用源站源站组名称,当OriginType参数指定为ORIGIN_GROUP,且用户指定了被用源站时该参数生效。 # @type BackOriginGroupName: String # @param PrivateAccess: 指定是否允许访问私有对象存储源站。当源站类型OriginType=COS或AWS_S3时有效 取值有: #
  • on:使用私有鉴权;
  • #
  • off:不使用私有鉴权。
  • # 不填写,默认值为off。 # @type PrivateAccess: String # @param PrivateParameters: 私有鉴权使用参数,当源站类型PrivateAccess=on时有效。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type PrivateParameters: Array attr_accessor :OriginType, :Origin, :BackupOrigin, :OriginGroupName, :BackOriginGroupName, :PrivateAccess, :PrivateParameters def initialize(origintype=nil, origin=nil, backuporigin=nil, origingroupname=nil, backorigingroupname=nil, privateaccess=nil, privateparameters=nil) @OriginType = origintype @Origin = origin @BackupOrigin = backuporigin @OriginGroupName = origingroupname @BackOriginGroupName = backorigingroupname @PrivateAccess = privateaccess @PrivateParameters = privateparameters end def deserialize(params) @OriginType = params['OriginType'] @Origin = params['Origin'] @BackupOrigin = params['BackupOrigin'] @OriginGroupName = params['OriginGroupName'] @BackOriginGroupName = params['BackOriginGroupName'] @PrivateAccess = params['PrivateAccess'] unless params['PrivateParameters'].nil? @PrivateParameters = [] params['PrivateParameters'].each do |i| privateparameter_tmp = PrivateParameter.new privateparameter_tmp.deserialize(i) @PrivateParameters << privateparameter_tmp end end end end # 源站组信息 class OriginGroup < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param ZoneName: 站点名称。 # @type ZoneName: String # @param OriginGroupId: 源站组ID。 # @type OriginGroupId: String # @param OriginType: 源站类型,取值有: #
  • self:自有源站;
  • #
  • third_party:第三方源站;
  • #
  • cos:腾讯云COS源站。
  • # @type OriginType: String # @param OriginGroupName: 源站组名称。 # @type OriginGroupName: String # @param ConfigurationType: 源站配置类型,当OriginType=self时,取值有: #
  • area:按区域配置;
  • #
  • weight: 按权重配置。
  • #
  • proto: 按HTTP协议配置。
  • 当OriginType=third_party/cos时放空。 # @type ConfigurationType: String # @param OriginRecords: 源站记录信息。 # @type OriginRecords: Array # @param UpdateTime: 源站组更新时间。 # @type UpdateTime: String # @param HostHeader: 当OriginType=self时,表示回源Host。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type HostHeader: String attr_accessor :ZoneId, :ZoneName, :OriginGroupId, :OriginType, :OriginGroupName, :ConfigurationType, :OriginRecords, :UpdateTime, :HostHeader def initialize(zoneid=nil, zonename=nil, origingroupid=nil, origintype=nil, origingroupname=nil, configurationtype=nil, originrecords=nil, updatetime=nil, hostheader=nil) @ZoneId = zoneid @ZoneName = zonename @OriginGroupId = origingroupid @OriginType = origintype @OriginGroupName = origingroupname @ConfigurationType = configurationtype @OriginRecords = originrecords @UpdateTime = updatetime @HostHeader = hostheader end def deserialize(params) @ZoneId = params['ZoneId'] @ZoneName = params['ZoneName'] @OriginGroupId = params['OriginGroupId'] @OriginType = params['OriginType'] @OriginGroupName = params['OriginGroupName'] @ConfigurationType = params['ConfigurationType'] unless params['OriginRecords'].nil? @OriginRecords = [] params['OriginRecords'].each do |i| originrecord_tmp = OriginRecord.new originrecord_tmp.deserialize(i) @OriginRecords << originrecord_tmp end end @UpdateTime = params['UpdateTime'] @HostHeader = params['HostHeader'] end end # 加速域名源站信息。 class OriginInfo < TencentCloud::Common::AbstractModel # @param OriginType: 源站类型,取值有: #
  • IP_DOMAIN:IPV4、IPV6或域名类型源站;
  • #
  • COS:COS源。
  • #
  • ORIGIN_GROUP:源站组类型源站。
  • #
  • AWS_S3:AWS S3对象存储源站。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type OriginType: String # @param Origin: 源站地址,当OriginType参数指定为ORIGIN_GROUP时,该参数填写源站组ID,其他情况下填写源站地址。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Origin: String # @param BackupOrigin: 备用源站组ID,该参数在OriginType参数指定为ORIGIN_GROUP时生效,为空表示不使用备用源站。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type BackupOrigin: String # @param PrivateAccess: 指定是否允许访问私有对象存储源站,当源站类型OriginType=COS或AWS_S3时有效,取值有: #
  • on:使用私有鉴权;
  • #
  • off:不使用私有鉴权。
  • 不填写,默认值为:off。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type PrivateAccess: String # @param PrivateParameters: 私有鉴权使用参数,当源站类型PrivateAccess=on时有效。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type PrivateParameters: Array attr_accessor :OriginType, :Origin, :BackupOrigin, :PrivateAccess, :PrivateParameters def initialize(origintype=nil, origin=nil, backuporigin=nil, privateaccess=nil, privateparameters=nil) @OriginType = origintype @Origin = origin @BackupOrigin = backuporigin @PrivateAccess = privateaccess @PrivateParameters = privateparameters end def deserialize(params) @OriginType = params['OriginType'] @Origin = params['Origin'] @BackupOrigin = params['BackupOrigin'] @PrivateAccess = params['PrivateAccess'] unless params['PrivateParameters'].nil? @PrivateParameters = [] params['PrivateParameters'].each do |i| privateparameter_tmp = PrivateParameter.new privateparameter_tmp.deserialize(i) @PrivateParameters << privateparameter_tmp end end end end # 源站防护信息 class OriginProtectionInfo < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param Hosts: 域名列表。 # @type Hosts: Array # @param ProxyIds: 代理ID列表。 # @type ProxyIds: Array # @param CurrentIPWhitelist: 当前版本的IP白名单。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CurrentIPWhitelist: :class:`Tencentcloud::Teo.v20220901.models.IPWhitelist` # @param NeedUpdate: 该站点是否需要更新源站白名单,取值有: #
  • true :需要更新IP白名单 ;
  • #
  • false :无需更新IP白名单。
  • # @type NeedUpdate: Boolean # @param Status: 源站防护状态,取值有: #
  • online :源站防护启用中 ;
  • #
  • offline :源站防护已停用 ;
  • #
  • nonactivate :源站防护未激活,仅在从未使用过源站防护功能的站点调用中返回。
  • # @type Status: String # @param PlanSupport: 站点套餐是否支持源站防护,取值有: #
  • true :支持 ;
  • #
  • false :不支持。
  • # @type PlanSupport: Boolean # @param DiffIPWhitelist: 最新IP白名单与当前IP白名单的对比。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type DiffIPWhitelist: :class:`Tencentcloud::Teo.v20220901.models.DiffIPWhitelist` attr_accessor :ZoneId, :Hosts, :ProxyIds, :CurrentIPWhitelist, :NeedUpdate, :Status, :PlanSupport, :DiffIPWhitelist def initialize(zoneid=nil, hosts=nil, proxyids=nil, currentipwhitelist=nil, needupdate=nil, status=nil, plansupport=nil, diffipwhitelist=nil) @ZoneId = zoneid @Hosts = hosts @ProxyIds = proxyids @CurrentIPWhitelist = currentipwhitelist @NeedUpdate = needupdate @Status = status @PlanSupport = plansupport @DiffIPWhitelist = diffipwhitelist end def deserialize(params) @ZoneId = params['ZoneId'] @Hosts = params['Hosts'] @ProxyIds = params['ProxyIds'] unless params['CurrentIPWhitelist'].nil? @CurrentIPWhitelist = IPWhitelist.new @CurrentIPWhitelist.deserialize(params['CurrentIPWhitelist']) end @NeedUpdate = params['NeedUpdate'] @Status = params['Status'] @PlanSupport = params['PlanSupport'] unless params['DiffIPWhitelist'].nil? @DiffIPWhitelist = DiffIPWhitelist.new @DiffIPWhitelist.deserialize(params['DiffIPWhitelist']) end end end # 源站组记录 class OriginRecord < TencentCloud::Common::AbstractModel # @param Record: 源站记录值,不包含端口信息,可以为:IPv4,IPv6,域名格式。 # @type Record: String # @param RecordId: 源站记录ID。 # @type RecordId: String # @param Port: 源站端口,取值范围:[1-65535]。 # @type Port: Integer # @param Weight: 当源站配置类型ConfigurationType=weight时,表示权重。 # 不配置权重信息时,所有源站组记录统一填写为0或者不填写,表示多个源站轮询回源。 # 配置权重信息时,取值为[1-100],多个源站权重总和应为100,表示多个源站按照权重回源。 # 当源站配置类型ConfigurationType=proto时,表示权重。 # 不配置权重信息时,所有源站组记录统一填写为0或者不填写,表示多个源站轮询回源。 # 配置权重信息时,取值为[1-100],源站组内Proto相同的多个源站权重总和应为100,表示多个源站按照权重回源。 # @type Weight: Integer # @param Proto: 当源站配置类型ConfigurationType=proto时,表示源站的协议类型,将按照客户端请求协议回到相应的源站,取值有: #
  • http:HTTP协议源站;
  • #
  • https:HTTPS协议源站。
  • # @type Proto: String # @param Area: 当源站配置类型ConfigurationType=area时,表示区域,为空表示全部地区。取值为iso-3166中alpha-2编码或者大洲区域代码。大洲区域代码取值为: #
  • Asia:亚洲;
  • #
  • Europe:欧洲;
  • #
  • Africa:非洲;
  • #
  • Oceania:大洋洲;
  • #
  • Americas:美洲。
  • 源站组记录中,至少需要有一项为全部地区。 # @type Area: Array # @param Private: 当源站类型OriginType=third_part时有效 # 是否私有鉴权,取值有: #
  • true:使用私有鉴权;
  • #
  • false:不使用私有鉴权。
  • 不填写,默认值为:false。 # @type Private: Boolean # @param PrivateParameters: 当源站类型Private=true时有效,表示私有鉴权使用参数。 # @type PrivateParameters: Array attr_accessor :Record, :RecordId, :Port, :Weight, :Proto, :Area, :Private, :PrivateParameters def initialize(record=nil, recordid=nil, port=nil, weight=nil, proto=nil, area=nil, private=nil, privateparameters=nil) @Record = record @RecordId = recordid @Port = port @Weight = weight @Proto = proto @Area = area @Private = private @PrivateParameters = privateparameters end def deserialize(params) @Record = params['Record'] @RecordId = params['RecordId'] @Port = params['Port'] @Weight = params['Weight'] @Proto = params['Proto'] @Area = params['Area'] @Private = params['Private'] unless params['PrivateParameters'].nil? @PrivateParameters = [] params['PrivateParameters'].each do |i| privateparameter_tmp = PrivateParameter.new privateparameter_tmp.deserialize(i) @PrivateParameters << privateparameter_tmp end end end end # 例外规则的详细模块配置。 class PartialModule < TencentCloud::Common::AbstractModel # @param Module: 模块名称,取值为: #
  • waf:托管规则。
  • # @type Module: String # @param Include: 模块下的需要例外的具体规则ID列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Include: Array attr_accessor :Module, :Include def initialize(_module=nil, include=nil) @Module = _module @Include = include end def deserialize(params) @Module = params['Module'] @Include = params['Include'] end end # edgeone套餐信息 class PlanInfo < TencentCloud::Common::AbstractModel # @param Currency: 结算货币类型,取值有: #
  • CNY :人民币结算;
  • #
  • USD :美元结算。
  • # @type Currency: String # @param Flux: 套餐所含流量,该流量数值为安全加速流量,内容加速流量和智能加速流量的总和(单位:字节)。 # @type Flux: Integer # @param Frequency: 结算周期,取值有: #
  • y :按年结算;
  • #
  • m :按月结算;
  • #
  • h :按小时结算;
  • #
  • M :按分钟结算;
  • #
  • s :按秒结算。
  • # @type Frequency: String # @param PlanType: 套餐类型,取值有: #
  • sta :全球内容分发网络(不包括中国大陆)标准版套餐;
  • #
  • sta_with_bot :全球内容分发网络(不包括中国大陆)标准版套餐附带bot管理;
  • #
  • sta_cm :中国大陆内容分发网络标准版套餐;
  • #
  • sta_cm_with_bot :中国大陆内容分发网络标准版套餐附带bot管理;
  • #
  • sta_global :全球内容分发网络(包括中国大陆)标准版套餐;
  • #
  • sta_global_with_bot :全球内容分发网络(包括中国大陆)标准版套餐附带bot管理;
  • #
  • ent :全球内容分发网络(不包括中国大陆)企业版套餐;
  • #
  • ent_with_bot : 全球内容分发网络(不包括中国大陆)企业版套餐附带bot管理;
  • #
  • ent_cm :中国大陆内容分发网络企业版套餐;
  • #
  • ent_cm_with_bot :中国大陆内容分发网络企业版套餐附带bot管理;
  • #
  • ent_global :全球内容分发网络(包括中国大陆)企业版套餐;
  • #
  • ent_global_with_bot :全球内容分发网络(包括中国大陆)企业版套餐附带bot管理。
  • # @type PlanType: String # @param Price: 套餐价格(单位:分)。 # @type Price: Float # @param Request: 套餐所含请求次数,该请求次数为安全加速请求次数。(单位:次)。 # @type Request: Integer # @param SiteNumber: 套餐所能绑定的站点个数。 # @type SiteNumber: Integer # @param Area: 套餐加速区域类型,取值有: #
  • mainland :中国大陆;
  • #
  • overseas :全球(不包括中国大陆);
  • #
  • global :全球(包括中国大陆)。
  • # @type Area: String attr_accessor :Currency, :Flux, :Frequency, :PlanType, :Price, :Request, :SiteNumber, :Area def initialize(currency=nil, flux=nil, frequency=nil, plantype=nil, price=nil, request=nil, sitenumber=nil, area=nil) @Currency = currency @Flux = flux @Frequency = frequency @PlanType = plantype @Price = price @Request = request @SiteNumber = sitenumber @Area = area end def deserialize(params) @Currency = params['Currency'] @Flux = params['Flux'] @Frequency = params['Frequency'] @PlanType = params['PlanType'] @Price = params['Price'] @Request = params['Request'] @SiteNumber = params['SiteNumber'] @Area = params['Area'] end end # POST请求上传文件流式传输最大限制 class PostMaxSize < TencentCloud::Common::AbstractModel # @param Switch: 是否开启POST请求上传文件限制,平台默认为限制为32MB,取值有: #
  • on:开启限制;
  • #
  • off:关闭限制。
  • # @type Switch: String # @param MaxSize: 最大限制,取值在1MB和500MB之间。单位字节。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type MaxSize: Integer attr_accessor :Switch, :MaxSize def initialize(switch=nil, maxsize=nil) @Switch = switch @MaxSize = maxsize end def deserialize(params) @Switch = params['Switch'] @MaxSize = params['MaxSize'] end end # 源站记录私有鉴权参数 class PrivateParameter < TencentCloud::Common::AbstractModel # @param Name: 私有鉴权参数名称,取值有: #
  • AccessKeyId:鉴权参数Access Key ID;
  • #
  • SecretAccessKey:鉴权参数Secret Access Key。
  • # @type Name: String # @param Value: 私有鉴权参数值。 # @type Value: String attr_accessor :Name, :Value def initialize(name=nil, value=nil) @Name = name @Value = value end def deserialize(params) @Name = params['Name'] @Value = params['Value'] end end # 查询条件 class QueryCondition < TencentCloud::Common::AbstractModel # @param Key: 筛选条件的key。 # @type Key: String # @param Operator: 查询条件操作符,操作类型有: #
  • equals: 等于;
  • #
  • notEquals: 不等于;
  • #
  • include: 包含;
  • #
  • notInclude: 不包含;
  • #
  • startWith: 开始的值是value;
  • #
  • notStartWith: 不以value的值开始;
  • #
  • endWith: 结尾是value值;
  • #
  • notEndWith: 不以value的值结尾。
  • # @type Operator: String # @param Value: 筛选条件的值。 # @type Value: Array attr_accessor :Key, :Operator, :Value def initialize(key=nil, operator=nil, value=nil) @Key = key @Operator = operator @Value = value end def deserialize(params) @Key = params['Key'] @Operator = params['Operator'] @Value = params['Value'] end end # CacheKey中包含请求参数 class QueryString < TencentCloud::Common::AbstractModel # @param Switch: CacheKey是否由QueryString组成,取值有: #
  • on:是;
  • #
  • off:否。
  • # @type Switch: String # @param Action: CacheKey使用QueryString的方式,取值有: #
  • includeCustom:使用部分url参数;
  • #
  • excludeCustom:排除部分url参数。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type Action: String # @param Value: 使用/排除的url参数数组。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Value: Array attr_accessor :Switch, :Action, :Value def initialize(switch=nil, action=nil, value=nil) @Switch = switch @Action = action @Value = value end def deserialize(params) @Switch = params['Switch'] @Action = params['Action'] @Value = params['Value'] end end # Quic配置项 class Quic < TencentCloud::Common::AbstractModel # @param Switch: 是否开启Quic配置,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String attr_accessor :Switch def initialize(switch=nil) @Switch = switch end def deserialize(params) @Switch = params['Switch'] end end # 刷新/预热 可用量及配额 class Quota < TencentCloud::Common::AbstractModel # @param Batch: 单次批量提交配额上限。 # @type Batch: Integer # @param Daily: 每日提交配额上限。 # @type Daily: Integer # @param DailyAvailable: 每日剩余的可提交配额。 # @type DailyAvailable: Integer # @param Type: 刷新预热缓存类型,取值有: #
  • purge_prefix:按前缀刷新;
  • #
  • purge_url:按URL刷新;
  • #
  • purge_host:按Hostname刷新;
  • #
  • purge_all:刷新全部缓存内容;
  • #
  • purge_cache_tag:按CacheTag刷新;
  • prefetch_url:按URL预热。
  • # @type Type: String attr_accessor :Batch, :Daily, :DailyAvailable, :Type def initialize(batch=nil, daily=nil, dailyavailable=nil, type=nil) @Batch = batch @Daily = daily @DailyAvailable = dailyavailable @Type = type end def deserialize(params) @Batch = params['Batch'] @Daily = params['Daily'] @DailyAvailable = params['DailyAvailable'] @Type = params['Type'] end end # 速率限制规则 class RateLimitConfig < TencentCloud::Common::AbstractModel # @param Switch: 开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String # @param RateLimitUserRules: 速率限制-用户规则列表。如果为null,默认使用历史配置。 # @type RateLimitUserRules: Array # @param RateLimitTemplate: 速率限制模板功能。如果为null,默认使用历史配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type RateLimitTemplate: :class:`Tencentcloud::Teo.v20220901.models.RateLimitTemplate` # @param RateLimitIntelligence: 智能客户端过滤。如果为null,默认使用历史配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type RateLimitIntelligence: :class:`Tencentcloud::Teo.v20220901.models.RateLimitIntelligence` # @param RateLimitCustomizes: 速率限制-托管定制规则。如果为null,默认使用历史配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type RateLimitCustomizes: Array attr_accessor :Switch, :RateLimitUserRules, :RateLimitTemplate, :RateLimitIntelligence, :RateLimitCustomizes def initialize(switch=nil, ratelimituserrules=nil, ratelimittemplate=nil, ratelimitintelligence=nil, ratelimitcustomizes=nil) @Switch = switch @RateLimitUserRules = ratelimituserrules @RateLimitTemplate = ratelimittemplate @RateLimitIntelligence = ratelimitintelligence @RateLimitCustomizes = ratelimitcustomizes end def deserialize(params) @Switch = params['Switch'] unless params['RateLimitUserRules'].nil? @RateLimitUserRules = [] params['RateLimitUserRules'].each do |i| ratelimituserrule_tmp = RateLimitUserRule.new ratelimituserrule_tmp.deserialize(i) @RateLimitUserRules << ratelimituserrule_tmp end end unless params['RateLimitTemplate'].nil? @RateLimitTemplate = RateLimitTemplate.new @RateLimitTemplate.deserialize(params['RateLimitTemplate']) end unless params['RateLimitIntelligence'].nil? @RateLimitIntelligence = RateLimitIntelligence.new @RateLimitIntelligence.deserialize(params['RateLimitIntelligence']) end unless params['RateLimitCustomizes'].nil? @RateLimitCustomizes = [] params['RateLimitCustomizes'].each do |i| ratelimituserrule_tmp = RateLimitUserRule.new ratelimituserrule_tmp.deserialize(i) @RateLimitCustomizes << ratelimituserrule_tmp end end end end # 智能客户端过滤 class RateLimitIntelligence < TencentCloud::Common::AbstractModel # @param Switch: 功能开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String # @param Action: 执行动作,取值有: #
  • monitor:观察;
  • #
  • alg:挑战。
  • # @type Action: String # @param RuleId: 规则id,仅出参使用。 # @type RuleId: Integer attr_accessor :Switch, :Action, :RuleId def initialize(switch=nil, action=nil, ruleid=nil) @Switch = switch @Action = action @RuleId = ruleid end def deserialize(params) @Switch = params['Switch'] @Action = params['Action'] @RuleId = params['RuleId'] end end # 速率限制模板 class RateLimitTemplate < TencentCloud::Common::AbstractModel # @param Mode: 模板等级名称,取值有: #
  • sup_loose:超级宽松;
  • #
  • loose:宽松;
  • #
  • emergency:紧急;
  • #
  • normal:适中;
  • #
  • strict:严格;
  • #
  • close:关闭,仅精准速率限制生效。
  • # @type Mode: String # @param Action: 模板处置方式,取值有: #
  • alg:JavaScript挑战;
  • #
  • monitor:观察。
  • 不填写默认取alg。 # @type Action: String # @param RateLimitTemplateDetail: 模板值详情。仅出参返回。 # @type RateLimitTemplateDetail: :class:`Tencentcloud::Teo.v20220901.models.RateLimitTemplateDetail` attr_accessor :Mode, :Action, :RateLimitTemplateDetail def initialize(mode=nil, action=nil, ratelimittemplatedetail=nil) @Mode = mode @Action = action @RateLimitTemplateDetail = ratelimittemplatedetail end def deserialize(params) @Mode = params['Mode'] @Action = params['Action'] unless params['RateLimitTemplateDetail'].nil? @RateLimitTemplateDetail = RateLimitTemplateDetail.new @RateLimitTemplateDetail.deserialize(params['RateLimitTemplateDetail']) end end end # 模板当前详细配置 class RateLimitTemplateDetail < TencentCloud::Common::AbstractModel # @param Mode: 模板等级名称,取值有: #
  • sup_loose:超级宽松;
  • #
  • loose:宽松;
  • #
  • emergency:紧急;
  • #
  • normal:适中;
  • #
  • strict:严格;
  • #
  • close:关闭,仅精准速率限制生效。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type Mode: String # @param ID: 唯一id。 # @type ID: Integer # @param Action: 模板处置方式,取值有: #
  • alg:JavaScript挑战;
  • #
  • monitor:观察。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type Action: String # @param PunishTime: 惩罚时间,取值范围0-2天,单位秒。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type PunishTime: Integer # @param Threshold: 统计阈值,单位是次,取值范围0-4294967294。 # @type Threshold: Integer # @param Period: 统计周期,取值范围0-120秒。 # @type Period: Integer attr_accessor :Mode, :ID, :Action, :PunishTime, :Threshold, :Period def initialize(mode=nil, id=nil, action=nil, punishtime=nil, threshold=nil, period=nil) @Mode = mode @ID = id @Action = action @PunishTime = punishtime @Threshold = threshold @Period = period end def deserialize(params) @Mode = params['Mode'] @ID = params['ID'] @Action = params['Action'] @PunishTime = params['PunishTime'] @Threshold = params['Threshold'] @Period = params['Period'] end end # RateLimit规则 class RateLimitUserRule < TencentCloud::Common::AbstractModel # @param Threshold: 速率限制统计阈值,单位是次,取值范围0-4294967294。 # @type Threshold: Integer # @param Period: 速率限制统计时间,取值范围 10/20/30/40/50/60 单位是秒。 # @type Period: Integer # @param RuleName: 规则名,只能以英文字符,数字,下划线组合,且不能以下划线开头。 # @type RuleName: String # @param Action: 处置动作,取值有: #
  • monitor:观察;
  • #
  • drop:拦截;
  • #
  • alg:JavaScript挑战。
  • # @type Action: String # @param PunishTime: 惩罚时长,0-2天。 # @type PunishTime: Integer # @param PunishTimeUnit: 处罚时长单位,取值有: #
  • second:秒;
  • #
  • minutes:分钟;
  • #
  • hour:小时。
  • # @type PunishTimeUnit: String # @param RuleStatus: 规则状态,取值有: #
  • on:生效;
  • #
  • off:不生效。
  • 默认on生效。 # @type RuleStatus: String # @param AclConditions: 规则详情。 # @type AclConditions: Array # @param RulePriority: 规则权重,取值范围0-100。 # @type RulePriority: Integer # @param RuleID: 规则id。仅出参使用。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type RuleID: Integer # @param FreqFields: 过滤词,取值有: #
  • sip:客户端ip。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type FreqFields: Array # @param UpdateTime: 更新时间。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type UpdateTime: String # @param FreqScope: 统计范围,字段为null时,代表source_to_eo。取值有: #
  • source_to_eo:(响应)源站到EdgeOne。
  • #
  • client_to_eo:(请求)客户端到EdgeOne;
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type FreqScope: Array attr_accessor :Threshold, :Period, :RuleName, :Action, :PunishTime, :PunishTimeUnit, :RuleStatus, :AclConditions, :RulePriority, :RuleID, :FreqFields, :UpdateTime, :FreqScope def initialize(threshold=nil, period=nil, rulename=nil, action=nil, punishtime=nil, punishtimeunit=nil, rulestatus=nil, aclconditions=nil, rulepriority=nil, ruleid=nil, freqfields=nil, updatetime=nil, freqscope=nil) @Threshold = threshold @Period = period @RuleName = rulename @Action = action @PunishTime = punishtime @PunishTimeUnit = punishtimeunit @RuleStatus = rulestatus @AclConditions = aclconditions @RulePriority = rulepriority @RuleID = ruleid @FreqFields = freqfields @UpdateTime = updatetime @FreqScope = freqscope end def deserialize(params) @Threshold = params['Threshold'] @Period = params['Period'] @RuleName = params['RuleName'] @Action = params['Action'] @PunishTime = params['PunishTime'] @PunishTimeUnit = params['PunishTimeUnit'] @RuleStatus = params['RuleStatus'] unless params['AclConditions'].nil? @AclConditions = [] params['AclConditions'].each do |i| aclcondition_tmp = AclCondition.new aclcondition_tmp.deserialize(i) @AclConditions << aclcondition_tmp end end @RulePriority = params['RulePriority'] @RuleID = params['RuleID'] @FreqFields = params['FreqFields'] @UpdateTime = params['UpdateTime'] @FreqScope = params['FreqScope'] end end # ReclaimAliasDomain请求参数结构体 class ReclaimAliasDomainRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点 ID。 # @type ZoneId: String # @param ZoneName: 站点名称。 # @type ZoneName: String attr_accessor :ZoneId, :ZoneName def initialize(zoneid=nil, zonename=nil) @ZoneId = zoneid @ZoneName = zonename end def deserialize(params) @ZoneId = params['ZoneId'] @ZoneName = params['ZoneName'] end end # ReclaimAliasDomain返回参数结构体 class ReclaimAliasDomainResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # ReclaimZone请求参数结构体 class ReclaimZoneRequest < TencentCloud::Common::AbstractModel # @param ZoneName: 站点名称。 # @type ZoneName: String attr_accessor :ZoneName def initialize(zonename=nil) @ZoneName = zonename end def deserialize(params) @ZoneName = params['ZoneName'] end end # ReclaimZone返回参数结构体 class ReclaimZoneResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # 计费资源 class Resource < TencentCloud::Common::AbstractModel # @param Id: 资源 ID。 # @type Id: String # @param PayMode: 付费模式,取值有: #
  • 0:后付费。
  • # @type PayMode: Integer # @param CreateTime: 创建时间。 # @type CreateTime: String # @param EnableTime: 生效时间。 # @type EnableTime: String # @param ExpireTime: 失效时间。 # @type ExpireTime: String # @param Status: 套餐状态,取值有: #
  • normal:正常;
  • #
  • isolated:隔离;
  • #
  • destroyed:销毁。
  • # @type Status: String # @param Sv: 询价参数。 # @type Sv: Array # @param AutoRenewFlag: 是否自动续费,取值有: #
  • 0:默认状态;
  • #
  • 1:自动续费;
  • #
  • 2:不自动续费。
  • # @type AutoRenewFlag: Integer # @param PlanId: 套餐关联资源 ID。 # @type PlanId: String # @param Area: 地域,取值有: #
  • mainland:国内;
  • #
  • overseas:海外。
  • #
  • global:全球。
  • # @type Area: String attr_accessor :Id, :PayMode, :CreateTime, :EnableTime, :ExpireTime, :Status, :Sv, :AutoRenewFlag, :PlanId, :Area def initialize(id=nil, paymode=nil, createtime=nil, enabletime=nil, expiretime=nil, status=nil, sv=nil, autorenewflag=nil, planid=nil, area=nil) @Id = id @PayMode = paymode @CreateTime = createtime @EnableTime = enabletime @ExpireTime = expiretime @Status = status @Sv = sv @AutoRenewFlag = autorenewflag @PlanId = planid @Area = area end def deserialize(params) @Id = params['Id'] @PayMode = params['PayMode'] @CreateTime = params['CreateTime'] @EnableTime = params['EnableTime'] @ExpireTime = params['ExpireTime'] @Status = params['Status'] unless params['Sv'].nil? @Sv = [] params['Sv'].each do |i| sv_tmp = Sv.new sv_tmp.deserialize(i) @Sv << sv_tmp end end @AutoRenewFlag = params['AutoRenewFlag'] @PlanId = params['PlanId'] @Area = params['Area'] end end # 规则引擎HTTP请求头/响应头类型的动作 class RewriteAction < TencentCloud::Common::AbstractModel # @param Action: 功能名称,功能名称填写规范可调用接口 [查询规则引擎的设置参数](https://tcloud4api.woa.com/document/product/1657/79433?!preview&!document=1) 查看。 # @type Action: String # @param Parameters: 参数。 # @type Parameters: Array attr_accessor :Action, :Parameters def initialize(action=nil, parameters=nil) @Action = action @Parameters = parameters end def deserialize(params) @Action = params['Action'] unless params['Parameters'].nil? @Parameters = [] params['Parameters'].each do |i| rulerewriteactionparams_tmp = RuleRewriteActionParams.new rulerewriteactionparams_tmp.deserialize(i) @Parameters << rulerewriteactionparams_tmp end end end end # 规则引擎规则项,Conditions 数组内多个项的关系为 或,内层 Conditions 列表内多个项的关系为 且。 class Rule < TencentCloud::Common::AbstractModel # @param Actions: 执行的功能。 # @type Actions: Array # @param Conditions: 执行功能判断条件。 # 注意:满足该数组内任意一项条件,功能即可执行。 # @type Conditions: Array # @param SubRules: 嵌套规则。 # @type SubRules: Array attr_accessor :Actions, :Conditions, :SubRules def initialize(actions=nil, conditions=nil, subrules=nil) @Actions = actions @Conditions = conditions @SubRules = subrules end def deserialize(params) unless params['Actions'].nil? @Actions = [] params['Actions'].each do |i| action_tmp = Action.new action_tmp.deserialize(i) @Actions << action_tmp end end unless params['Conditions'].nil? @Conditions = [] params['Conditions'].each do |i| ruleandconditions_tmp = RuleAndConditions.new ruleandconditions_tmp.deserialize(i) @Conditions << ruleandconditions_tmp end end unless params['SubRules'].nil? @SubRules = [] params['SubRules'].each do |i| subruleitem_tmp = SubRuleItem.new subruleitem_tmp.deserialize(i) @SubRules << subruleitem_tmp end end end end # 规则引擎条件且关系条件列表 class RuleAndConditions < TencentCloud::Common::AbstractModel # @param Conditions: 规则引擎条件,该数组内所有项全部满足即判断该条件满足。 # @type Conditions: Array attr_accessor :Conditions def initialize(conditions=nil) @Conditions = conditions end def deserialize(params) unless params['Conditions'].nil? @Conditions = [] params['Conditions'].each do |i| rulecondition_tmp = RuleCondition.new rulecondition_tmp.deserialize(i) @Conditions << rulecondition_tmp end end end end # 规则引擎可应用于匹配请求的设置详细信息,可选参数配置项 class RuleChoicePropertiesItem < TencentCloud::Common::AbstractModel # @param Name: 参数名称。 # @type Name: String # @param Type: 参数值类型。 #
  • CHOICE:参数值只能在 ChoicesValue 中选择;
  • #
  • TOGGLE:参数值为开关类型,可在 ChoicesValue 中选择;
  • #
  • CUSTOM_NUM:参数值用户自定义,整型类型;
  • #
  • CUSTOM_STRING:参数值用户自定义,字符串类型。
  • # @type Type: String # @param ChoicesValue: 参数值的可选值。 # 注意:若参数值为用户自定义则该数组为空数组。 # @type ChoicesValue: Array # @param Min: 数值参数的最小值,非数值参数或 Min 和 Max 值都为 0 则此项无意义。 # @type Min: Integer # @param Max: 数值参数的最大值,非数值参数或 Min 和 Max 值都为 0 则此项无意义。 # @type Max: Integer # @param IsMultiple: 参数值是否支持多选或者填写多个。 # @type IsMultiple: Boolean # @param IsAllowEmpty: 是否允许为空。 # @type IsAllowEmpty: Boolean # @param ExtraParameter: 特殊参数。 #
  • 为 NULL:RuleAction 选择 NormalAction;
  • #
  • 成员参数 Id 为 Action:RuleAction 选择 RewirteAction;
  • #
  • 成员参数 Id 为 StatusCode:RuleAction 选择 CodeAction。
  • # @type ExtraParameter: :class:`Tencentcloud::Teo.v20220901.models.RuleExtraParameter` attr_accessor :Name, :Type, :ChoicesValue, :Min, :Max, :IsMultiple, :IsAllowEmpty, :ExtraParameter def initialize(name=nil, type=nil, choicesvalue=nil, min=nil, max=nil, ismultiple=nil, isallowempty=nil, extraparameter=nil) @Name = name @Type = type @ChoicesValue = choicesvalue @Min = min @Max = max @IsMultiple = ismultiple @IsAllowEmpty = isallowempty @ExtraParameter = extraparameter end def deserialize(params) @Name = params['Name'] @Type = params['Type'] @ChoicesValue = params['ChoicesValue'] @Min = params['Min'] @Max = params['Max'] @IsMultiple = params['IsMultiple'] @IsAllowEmpty = params['IsAllowEmpty'] unless params['ExtraParameter'].nil? @ExtraParameter = RuleExtraParameter.new @ExtraParameter.deserialize(params['ExtraParameter']) end end end # 规则引擎条件使用StatusCode字段动作参数 class RuleCodeActionParams < TencentCloud::Common::AbstractModel # @param StatusCode: 状态 Code。 # @type StatusCode: Integer # @param Name: 参数名称,参数填写规范可调用接口 [查询规则引擎的设置参数](https://tcloud4api.woa.com/document/product/1657/79433?!preview&!document=1) 查看。 # @type Name: String # @param Values: 参数值。 # @type Values: Array attr_accessor :StatusCode, :Name, :Values def initialize(statuscode=nil, name=nil, values=nil) @StatusCode = statuscode @Name = name @Values = values end def deserialize(params) @StatusCode = params['StatusCode'] @Name = params['Name'] @Values = params['Values'] end end # 规则引擎条件参数 class RuleCondition < TencentCloud::Common::AbstractModel # @param Operator: 运算符,取值有: #
  • equal: 等于;
  • #
  • notequal: 不等于;
  • #
  • exist: 存在;
  • #
  • notexist: 不存在。
  • # @type Operator: String # @param Target: 匹配类型,取值有: #
  • filename:文件名;
  • #
  • extension:文件后缀;
  • #
  • host:HOST;
  • #
  • full_url:URL Full,当前站点下完整 URL 路径,必须包含 HTTP 协议,Host 和 路径;
  • #
  • url:URL Path,当前站点下 URL 路径的请求;
  • client_country:客户端国家/地区;
  • #
  • query_string:查询字符串,当前站点下请求URL的查询字符串;
  • #
  • request_header:HTTP请求头部。
  • # @type Target: String # @param Values: 对应匹配类型的参数值,仅在匹配类型为查询字符串或HTTP请求头并且运算符取值为存在或不存在时允许传空数组,对应匹配类型有: #
  • 文件后缀:jpg、txt等文件后缀;
  • #
  • 文件名称:例如 foo.jpg 中的 foo;
  • #
  • 全部(站点任意请求): all;
  • #
  • HOST:当前站点下的 host ,例如www.maxx55.com;
  • #
  • URL Path:当前站点下 URL 路径的请求,例如:/example;
  • #
  • URL Full:当前站点下完整 URL 请求,必须包含 HTTP 协议,Host 和 路径,例如:https://www.maxx55.cn/example;
  • #
  • 客户端国家/地区:符合ISO3166标准的国家/地区标识;
  • #
  • 查询字符串: 当前站点下URL请求中查询字符串的参数值,例如lang=cn&version=1中的cn和1;
  • #
  • HTTP 请求头: HTTP请求头部字段值,例如Accept-Language:zh-CN,zh;q=0.9中的zh-CN,zh;q=0.9。
  • # @type Values: Array # @param IgnoreCase: 是否忽略参数值的大小写,默认值为 false。 # @type IgnoreCase: Boolean # @param Name: 对应匹配类型的参数名称,在 Target 值为以下取值时有效,有效时值不能为空: #
  • query_string(查询字符串): 当前站点下URL请求中查询字符串的参数名称,例如lang=cn&version=1中的lang和version;
  • #
  • request_header(HTTP 请求头): HTTP请求头部字段名,例如Accept-Language:zh-CN,zh;q=0.9中的Accept-Language。
  • # @type Name: String # @param IgnoreNameCase: 是否忽略参数名称的大小写,默认值为 false。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type IgnoreNameCase: Boolean attr_accessor :Operator, :Target, :Values, :IgnoreCase, :Name, :IgnoreNameCase def initialize(operator=nil, target=nil, values=nil, ignorecase=nil, name=nil, ignorenamecase=nil) @Operator = operator @Target = target @Values = values @IgnoreCase = ignorecase @Name = name @IgnoreNameCase = ignorenamecase end def deserialize(params) @Operator = params['Operator'] @Target = params['Target'] @Values = params['Values'] @IgnoreCase = params['IgnoreCase'] @Name = params['Name'] @IgnoreNameCase = params['IgnoreNameCase'] end end # 规则引擎参数详情信息,特殊参数类型。 class RuleExtraParameter < TencentCloud::Common::AbstractModel # @param Id: 参数名,取值有: #
  • Action:修改 HTTP 头部所需参数,RuleAction 选择 RewirteAction;
  • #
  • StatusCode:状态码相关功能所需参数,RuleAction 选择 CodeAction。
  • # @type Id: String # @param Type: 参数值类型。 #
  • CHOICE:参数值只能在 Values 中选择;
  • #
  • CUSTOM_NUM:参数值用户自定义,整型类型;
  • #
  • CUSTOM_STRING:参数值用户自定义,字符串类型。
  • # @type Type: String # @param Choices: 可选参数值。 # 注意:当 Id 的值为 StatusCode 时数组中的值为整型,填写参数值时请填写字符串的整型数值。 # @type Choices: Array attr_accessor :Id, :Type, :Choices def initialize(id=nil, type=nil, choices=nil) @Id = id @Type = type @Choices = choices end def deserialize(params) @Id = params['Id'] @Type = params['Type'] @Choices = params['Choices'] end end # 规则引擎规则详情 class RuleItem < TencentCloud::Common::AbstractModel # @param RuleId: 规则ID。 # @type RuleId: String # @param RuleName: 规则名称,名称字符串长度 1~255。 # @type RuleName: String # @param Status: 规则状态,取值有: #
  • enable: 启用;
  • #
  • disable: 未启用。
  • # @type Status: String # @param Rules: 规则内容。 # @type Rules: Array # @param RulePriority: 规则优先级, 值越大优先级越高,最小为 1。 # @type RulePriority: Integer # @param Tags: 规则标签。 # @type Tags: Array attr_accessor :RuleId, :RuleName, :Status, :Rules, :RulePriority, :Tags def initialize(ruleid=nil, rulename=nil, status=nil, rules=nil, rulepriority=nil, tags=nil) @RuleId = ruleid @RuleName = rulename @Status = status @Rules = rules @RulePriority = rulepriority @Tags = tags end def deserialize(params) @RuleId = params['RuleId'] @RuleName = params['RuleName'] @Status = params['Status'] unless params['Rules'].nil? @Rules = [] params['Rules'].each do |i| rule_tmp = Rule.new rule_tmp.deserialize(i) @Rules << rule_tmp end end @RulePriority = params['RulePriority'] @Tags = params['Tags'] end end # 规则引擎条件常规动作参数 class RuleNormalActionParams < TencentCloud::Common::AbstractModel # @param Name: 参数名称,参数填写规范可调用接口 [查询规则引擎的设置参数](https://tcloud4api.woa.com/document/product/1657/79433?!preview&!document=1) 查看。 # @type Name: String # @param Values: 参数值。 # @type Values: Array attr_accessor :Name, :Values def initialize(name=nil, values=nil) @Name = name @Values = values end def deserialize(params) @Name = params['Name'] @Values = params['Values'] end end # 规则引擎条件 HTTP 请求/响应头操作动作参数。 class RuleRewriteActionParams < TencentCloud::Common::AbstractModel # @param Action: 功能参数名称,参数填写规范可调用接口 [查询规则引擎的设置参数](https://tcloud4api.woa.com/document/product/1657/79433?!preview&!document=1) 查看。现在只有三种取值: #
  • add:添加 HTTP 头部;
  • #
  • set:重写 HTTP 头部;
  • #
  • del:删除 HTTP 头部。
  • # @type Action: String # @param Name: 参数名称。 # @type Name: String # @param Values: 参数值。 # @type Values: Array attr_accessor :Action, :Name, :Values def initialize(action=nil, name=nil, values=nil) @Action = action @Name = name @Values = values end def deserialize(params) @Action = params['Action'] @Name = params['Name'] @Values = params['Values'] end end # 规则引擎可应用于匹配请求的设置详细信息。 class RulesProperties < TencentCloud::Common::AbstractModel # @param Name: 值为参数名称。 # @type Name: String # @param Min: 数值参数的最小值,非数值参数或 Min 和 Max 值都为 0 则此项无意义。 # @type Min: Integer # @param ChoicesValue: 参数值的可选值。 # 注意:若参数值为用户自定义则该数组为空数组。 # @type ChoicesValue: Array # @param Type: 参数值类型。 #
  • CHOICE:参数值只能在 ChoicesValue 中选择;
  • #
  • TOGGLE:参数值为开关类型,可在 ChoicesValue 中选择;
  • #
  • OBJECT:参数值为对象类型,ChoiceProperties 为改对象类型关联的属性;
  • #
  • CUSTOM_NUM:参数值用户自定义,整型类型;
  • #
  • CUSTOM_STRING:参数值用户自定义,字符串类型。
  • 注意:当参数类型为 OBJECT 类型时,请注意参考 [示例2 参数为 OBJECT 类型的创建](https://tcloud4api.woa.com/document/product/1657/79382?!preview&!document=1) # @type Type: String # @param Max: 数值参数的最大值,非数值参数或 Min 和 Max 值都为 0 则此项无意义。 # @type Max: Integer # @param IsMultiple: 参数值是否支持多选或者填写多个。 # @type IsMultiple: Boolean # @param IsAllowEmpty: 是否允许为空。 # @type IsAllowEmpty: Boolean # @param ChoiceProperties: 该参数对应的关联配置参数,属于调用接口的必填参数。 # 注意:如果可选参数无特殊新增参数则该数组为空数组。 # @type ChoiceProperties: Array # @param ExtraParameter:
  • 为 NULL:无特殊参数,RuleAction 选择 NormalAction;
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type ExtraParameter: :class:`Tencentcloud::Teo.v20220901.models.RuleExtraParameter` attr_accessor :Name, :Min, :ChoicesValue, :Type, :Max, :IsMultiple, :IsAllowEmpty, :ChoiceProperties, :ExtraParameter def initialize(name=nil, min=nil, choicesvalue=nil, type=nil, max=nil, ismultiple=nil, isallowempty=nil, choiceproperties=nil, extraparameter=nil) @Name = name @Min = min @ChoicesValue = choicesvalue @Type = type @Max = max @IsMultiple = ismultiple @IsAllowEmpty = isallowempty @ChoiceProperties = choiceproperties @ExtraParameter = extraparameter end def deserialize(params) @Name = params['Name'] @Min = params['Min'] @ChoicesValue = params['ChoicesValue'] @Type = params['Type'] @Max = params['Max'] @IsMultiple = params['IsMultiple'] @IsAllowEmpty = params['IsAllowEmpty'] unless params['ChoiceProperties'].nil? @ChoiceProperties = [] params['ChoiceProperties'].each do |i| rulechoicepropertiesitem_tmp = RuleChoicePropertiesItem.new rulechoicepropertiesitem_tmp.deserialize(i) @ChoiceProperties << rulechoicepropertiesitem_tmp end end unless params['ExtraParameter'].nil? @ExtraParameter = RuleExtraParameter.new @ExtraParameter.deserialize(params['ExtraParameter']) end end end # 规则引擎可应用于匹配请求的设置列表及其详细信息 class RulesSettingAction < TencentCloud::Common::AbstractModel # @param Action: 功能名称,取值有: #
  • 访问URL 重写(AccessUrlRedirect);
  • #
  • 回源 URL 重写 (UpstreamUrlRedirect);
  • #
  • 自定义错误页面 # (ErrorPage);
  • #
  • QUIC(QUIC);
  • #
  • WebSocket (WebSocket);
  • #
  • 视频拖拽(VideoSeek);
  • #
  • Token 鉴权(Authentication);
  • #
  • 自定义CacheKey(CacheKey);
  • #
  • 节点缓存 TTL (Cache);
  • #
  • 浏览器缓存 TTL(MaxAge);
  • #
  • 离线缓存(OfflineCache);
  • #
  • 智能加速(SmartRouting);
  • #
  • 分片回源(RangeOriginPull);
  • #
  • HTTP/2 回源(UpstreamHttp2);
  • #
  • Host Header 重写(HostHeader);
  • #
  • 强制 HTTPS(ForceRedirect);
  • #
  • 回源 HTTPS(OriginPullProtocol);
  • #
  • 缓存预刷新(CachePrefresh);
  • #
  • 智能压缩(Compression);
  • #
  • 修改 HTTP 请求头(RequestHeader);
  • #
  • 修改HTTP响应头(ResponseHeader);
  • #
  • 状态码缓存 TTL(StatusCodeCache);
  • #
  • Hsts;
  • #
  • ClientIpHeader;
  • #
  • TlsVersion;
  • #
  • OcspStapling。
  • # @type Action: String # @param Properties: 参数信息。 # @type Properties: Array attr_accessor :Action, :Properties def initialize(action=nil, properties=nil) @Action = action @Properties = properties end def deserialize(params) @Action = params['Action'] unless params['Properties'].nil? @Properties = [] params['Properties'].each do |i| rulesproperties_tmp = RulesProperties.new rulesproperties_tmp.deserialize(i) @Properties << rulesproperties_tmp end end end end # 客户端ip信息 class SecClientIp < TencentCloud::Common::AbstractModel # @param ClientIp: 客户端ip。 # @type ClientIp: String # @param RequestMaxQps: 最大qps。 # @type RequestMaxQps: Integer # @param RequestNum: 请求数。 # @type RequestNum: Integer attr_accessor :ClientIp, :RequestMaxQps, :RequestNum def initialize(clientip=nil, requestmaxqps=nil, requestnum=nil) @ClientIp = clientip @RequestMaxQps = requestmaxqps @RequestNum = requestnum end def deserialize(params) @ClientIp = params['ClientIp'] @RequestMaxQps = params['RequestMaxQps'] @RequestNum = params['RequestNum'] end end # 安全数据Entry返回值 class SecEntry < TencentCloud::Common::AbstractModel # @param Key: 查询维度值。 # @type Key: String # @param Value: 查询维度下详细数据。 # @type Value: Array attr_accessor :Key, :Value def initialize(key=nil, value=nil) @Key = key @Value = value end def deserialize(params) @Key = params['Key'] unless params['Value'].nil? @Value = [] params['Value'].each do |i| secentryvalue_tmp = SecEntryValue.new secentryvalue_tmp.deserialize(i) @Value << secentryvalue_tmp end end end end # 安全数据维度值信息 class SecEntryValue < TencentCloud::Common::AbstractModel # @param Metric: 指标名称。 # @type Metric: String # @param Detail: 时序数据详情。 # @type Detail: Array # @param Max: 最大值。 # @type Max: Integer # @param Avg: 平均值。 # @type Avg: Float # @param Sum: 数据总和。 # @type Sum: Float attr_accessor :Metric, :Detail, :Max, :Avg, :Sum def initialize(metric=nil, detail=nil, max=nil, avg=nil, sum=nil) @Metric = metric @Detail = detail @Max = max @Avg = avg @Sum = sum end def deserialize(params) @Metric = params['Metric'] unless params['Detail'].nil? @Detail = [] params['Detail'].each do |i| timingdataitem_tmp = TimingDataItem.new timingdataitem_tmp.deserialize(i) @Detail << timingdataitem_tmp end end @Max = params['Max'] @Avg = params['Avg'] @Sum = params['Sum'] end end # 命中规则信息 class SecHitRuleInfo < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param RuleId: 规则ID。 # @type RuleId: Integer # @param RuleTypeName: 规则类型名称。 # @type RuleTypeName: String # @param HitTime: 命中时间,采用unix秒级时间戳。 # @type HitTime: Integer # @param RequestNum: 请求数。 # @type RequestNum: Integer # @param Description: 规则描述。 # @type Description: String # @param Domain: 子域名。 # @type Domain: String # @param Action: 执行动作(处置方式),取值有: #
  • trans :通过 ;
  • #
  • alg :算法挑战 ;
  • #
  • drop :丢弃 ;
  • #
  • ban :封禁源ip ;
  • #
  • redirect :重定向 ;
  • #
  • page :返回指定页面 ;
  • #
  • monitor :观察 。
  • # @type Action: String # @param BotLabel: Bot标签,取值有: #
  • evil_bot:恶意Bot;
  • #
  • suspect_bot:疑似Bot;
  • #
  • good_bot:正常Bot;
  • #
  • normal:正常请求;
  • #
  • none:未分类。
  • # @type BotLabel: String # @param RuleEnabled: 规则是否启用。 # @type RuleEnabled: Boolean # @param AlarmEnabled: 规则是否启用监控告警。 # @type AlarmEnabled: Boolean # @param RuleDeleted: 规则是否存在,取值有: #
  • true: 规则不存在;
  • #
  • false: 规则存在。
  • # @type RuleDeleted: Boolean attr_accessor :ZoneId, :RuleId, :RuleTypeName, :HitTime, :RequestNum, :Description, :Domain, :Action, :BotLabel, :RuleEnabled, :AlarmEnabled, :RuleDeleted def initialize(zoneid=nil, ruleid=nil, ruletypename=nil, hittime=nil, requestnum=nil, description=nil, domain=nil, action=nil, botlabel=nil, ruleenabled=nil, alarmenabled=nil, ruledeleted=nil) @ZoneId = zoneid @RuleId = ruleid @RuleTypeName = ruletypename @HitTime = hittime @RequestNum = requestnum @Description = description @Domain = domain @Action = action @BotLabel = botlabel @RuleEnabled = ruleenabled @AlarmEnabled = alarmenabled @RuleDeleted = ruledeleted end def deserialize(params) @ZoneId = params['ZoneId'] @RuleId = params['RuleId'] @RuleTypeName = params['RuleTypeName'] @HitTime = params['HitTime'] @RequestNum = params['RequestNum'] @Description = params['Description'] @Domain = params['Domain'] @Action = params['Action'] @BotLabel = params['BotLabel'] @RuleEnabled = params['RuleEnabled'] @AlarmEnabled = params['AlarmEnabled'] @RuleDeleted = params['RuleDeleted'] end end # 安全规则(cc/waf/bot)相关信息 class SecRuleRelatedInfo < TencentCloud::Common::AbstractModel # @param RuleId: 规则ID。 # @type RuleId: Integer # @param Action: 执行动作(处置方式),取值有: #
  • trans :通过 ;
  • #
  • alg :算法挑战 ;
  • #
  • drop :丢弃 ;
  • #
  • ban :封禁源ip ;
  • #
  • redirect :重定向 ;
  • #
  • page :返回指定页面 ;
  • #
  • monitor :观察 。
  • # @type Action: String # @param RiskLevel: 风险等级(waf日志中独有),取值有: #
  • high risk :高危 ;
  • #
  • middle risk :中危 ;
  • #
  • low risk :低危 ;
  • #
  • unkonw :未知 。
  • # @type RiskLevel: String # @param RuleLevel: 规则等级,取值有: #
  • normal :正常 。
  • # @type RuleLevel: String # @param Description: 规则描述。 # @type Description: String # @param RuleTypeName: 规则类型名称。 # @type RuleTypeName: String # @param AttackContent: 攻击内容。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type AttackContent: String # @param RuleType: 规则类型,取值有: #
  • waf: 托管规则;
  • #
  • acl:自定义规则;
  • #
  • rate:速率限制规则;
  • #
  • bot:bot防护规则。
  • # @type RuleType: String # @param RuleEnabled: 规则是否开启。 # @type RuleEnabled: Boolean # @param RuleDeleted: 规则是否存在,取值有: #
  • true: 规则不存在;
  • #
  • false: 规则存在。
  • # @type RuleDeleted: Boolean # @param AlarmEnabled: 规则是否启用监控告警。 # @type AlarmEnabled: Boolean attr_accessor :RuleId, :Action, :RiskLevel, :RuleLevel, :Description, :RuleTypeName, :AttackContent, :RuleType, :RuleEnabled, :RuleDeleted, :AlarmEnabled def initialize(ruleid=nil, action=nil, risklevel=nil, rulelevel=nil, description=nil, ruletypename=nil, attackcontent=nil, ruletype=nil, ruleenabled=nil, ruledeleted=nil, alarmenabled=nil) @RuleId = ruleid @Action = action @RiskLevel = risklevel @RuleLevel = rulelevel @Description = description @RuleTypeName = ruletypename @AttackContent = attackcontent @RuleType = ruletype @RuleEnabled = ruleenabled @RuleDeleted = ruledeleted @AlarmEnabled = alarmenabled end def deserialize(params) @RuleId = params['RuleId'] @Action = params['Action'] @RiskLevel = params['RiskLevel'] @RuleLevel = params['RuleLevel'] @Description = params['Description'] @RuleTypeName = params['RuleTypeName'] @AttackContent = params['AttackContent'] @RuleType = params['RuleType'] @RuleEnabled = params['RuleEnabled'] @RuleDeleted = params['RuleDeleted'] @AlarmEnabled = params['AlarmEnabled'] end end # 安全配置 class SecurityConfig < TencentCloud::Common::AbstractModel # @param WafConfig: 托管规则。如果为null,默认使用历史配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type WafConfig: :class:`Tencentcloud::Teo.v20220901.models.WafConfig` # @param RateLimitConfig: 速率限制。如果为null,默认使用历史配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type RateLimitConfig: :class:`Tencentcloud::Teo.v20220901.models.RateLimitConfig` # @param AclConfig: 自定义规则。如果为null,默认使用历史配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type AclConfig: :class:`Tencentcloud::Teo.v20220901.models.AclConfig` # @param BotConfig: Bot配置。如果为null,默认使用历史配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type BotConfig: :class:`Tencentcloud::Teo.v20220901.models.BotConfig` # @param SwitchConfig: 七层防护总开关。如果为null,默认使用历史配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type SwitchConfig: :class:`Tencentcloud::Teo.v20220901.models.SwitchConfig` # @param IpTableConfig: 基础访问管控。如果为null,默认使用历史配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type IpTableConfig: :class:`Tencentcloud::Teo.v20220901.models.IpTableConfig` # @param ExceptConfig: 例外规则配置。如果为null,默认使用历史配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ExceptConfig: :class:`Tencentcloud::Teo.v20220901.models.ExceptConfig` # @param DropPageConfig: 自定义拦截页面配置。如果为null,默认使用历史配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type DropPageConfig: :class:`Tencentcloud::Teo.v20220901.models.DropPageConfig` # @param TemplateConfig: 模板配置。此处仅出参数使用。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type TemplateConfig: :class:`Tencentcloud::Teo.v20220901.models.TemplateConfig` # @param SlowPostConfig: 慢速攻击配置。如果为null,默认使用历史配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type SlowPostConfig: :class:`Tencentcloud::Teo.v20220901.models.SlowPostConfig` attr_accessor :WafConfig, :RateLimitConfig, :AclConfig, :BotConfig, :SwitchConfig, :IpTableConfig, :ExceptConfig, :DropPageConfig, :TemplateConfig, :SlowPostConfig def initialize(wafconfig=nil, ratelimitconfig=nil, aclconfig=nil, botconfig=nil, switchconfig=nil, iptableconfig=nil, exceptconfig=nil, droppageconfig=nil, templateconfig=nil, slowpostconfig=nil) @WafConfig = wafconfig @RateLimitConfig = ratelimitconfig @AclConfig = aclconfig @BotConfig = botconfig @SwitchConfig = switchconfig @IpTableConfig = iptableconfig @ExceptConfig = exceptconfig @DropPageConfig = droppageconfig @TemplateConfig = templateconfig @SlowPostConfig = slowpostconfig end def deserialize(params) unless params['WafConfig'].nil? @WafConfig = WafConfig.new @WafConfig.deserialize(params['WafConfig']) end unless params['RateLimitConfig'].nil? @RateLimitConfig = RateLimitConfig.new @RateLimitConfig.deserialize(params['RateLimitConfig']) end unless params['AclConfig'].nil? @AclConfig = AclConfig.new @AclConfig.deserialize(params['AclConfig']) end unless params['BotConfig'].nil? @BotConfig = BotConfig.new @BotConfig.deserialize(params['BotConfig']) end unless params['SwitchConfig'].nil? @SwitchConfig = SwitchConfig.new @SwitchConfig.deserialize(params['SwitchConfig']) end unless params['IpTableConfig'].nil? @IpTableConfig = IpTableConfig.new @IpTableConfig.deserialize(params['IpTableConfig']) end unless params['ExceptConfig'].nil? @ExceptConfig = ExceptConfig.new @ExceptConfig.deserialize(params['ExceptConfig']) end unless params['DropPageConfig'].nil? @DropPageConfig = DropPageConfig.new @DropPageConfig.deserialize(params['DropPageConfig']) end unless params['TemplateConfig'].nil? @TemplateConfig = TemplateConfig.new @TemplateConfig.deserialize(params['TemplateConfig']) end unless params['SlowPostConfig'].nil? @SlowPostConfig = SlowPostConfig.new @SlowPostConfig.deserialize(params['SlowPostConfig']) end end end # 安全类型配置项。 class SecurityType < TencentCloud::Common::AbstractModel # @param Switch: 安全类型开关,取值为: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String attr_accessor :Switch def initialize(switch=nil) @Switch = switch end def deserialize(params) @Switch = params['Switch'] end end # https 服务端证书配置 class ServerCertInfo < TencentCloud::Common::AbstractModel # @param CertId: 服务器证书 ID。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CertId: String # @param Alias: 证书备注名。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Alias: String # @param Type: 证书类型,取值有: #
  • default:默认证书; #
  • upload:用户上传;
  • #
  • managed:腾讯云托管。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type Type: String # @param ExpireTime: 证书过期时间。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ExpireTime: String # @param DeployTime: 证书部署时间。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type DeployTime: String # @param SignAlgo: 签名算法。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type SignAlgo: String # @param CommonName: 证书归属域名名称。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CommonName: String attr_accessor :CertId, :Alias, :Type, :ExpireTime, :DeployTime, :SignAlgo, :CommonName def initialize(certid=nil, _alias=nil, type=nil, expiretime=nil, deploytime=nil, signalgo=nil, commonname=nil) @CertId = certid @Alias = _alias @Type = type @ExpireTime = expiretime @DeployTime = deploytime @SignAlgo = signalgo @CommonName = commonname end def deserialize(params) @CertId = params['CertId'] @Alias = params['Alias'] @Type = params['Type'] @ExpireTime = params['ExpireTime'] @DeployTime = params['DeployTime'] @SignAlgo = params['SignAlgo'] @CommonName = params['CommonName'] end end # 单值类数据记录 class SingleDataRecord < TencentCloud::Common::AbstractModel # @param TypeKey: 查询维度值。 # @type TypeKey: String # @param TypeValue: 查询维度下具体指标值。 # @type TypeValue: Array attr_accessor :TypeKey, :TypeValue def initialize(typekey=nil, typevalue=nil) @TypeKey = typekey @TypeValue = typevalue end def deserialize(params) @TypeKey = params['TypeKey'] unless params['TypeValue'].nil? @TypeValue = [] params['TypeValue'].each do |i| singletypevalue_tmp = SingleTypeValue.new singletypevalue_tmp.deserialize(i) @TypeValue << singletypevalue_tmp end end end end # 单值指标数据 class SingleTypeValue < TencentCloud::Common::AbstractModel # @param MetricName: 指标名。 # @type MetricName: String # @param DetailData: 指标值。 # @type DetailData: Integer attr_accessor :MetricName, :DetailData def initialize(metricname=nil, detaildata=nil) @MetricName = metricname @DetailData = detaildata end def deserialize(params) @MetricName = params['MetricName'] @DetailData = params['DetailData'] end end # 例外规则的跳过匹配条件,即在例外时根据本匹配条件,略过指定字段及内容。 class SkipCondition < TencentCloud::Common::AbstractModel # @param Type: 例外跳过类型,取值为: #
  • header_fields:HTTP请求Header;
  • #
  • cookie:HTTP请求Cookie;
  • #
  • query_string:HTTP请求URL中的Query参数;
  • #
  • uri:HTTP请求URI;
  • #
  • body_raw:HTTP请求Body;
  • #
  • body_json: JSON格式的HTTP Body。
  • # @type Type: String # @param Selector: 选择跳过的字段,取值为: #
  • args:uri 下选择 query 参数: ?name1=jack&age=12;
  • #
  • path:uri 下选择部分路径:/path/to/resource.jpg;
  • #
  • full:uri 下选择完整路径:example.com/path/to/resource.jpg?name1=jack&age=12;
  • #
  • upload_filename:分段文件名,即分段传输文件时;
  • #
  • keys:所有的Key;
  • #
  • values:匹配Key对应的值;
  • #
  • key_value:匹配Key及匹配Value。
  • # @type Selector: String # @param MatchFromType: 匹配Key所使用的匹配方式,取值为: #
  • equal:精准匹配,等于;
  • #
  • wildcard:通配符匹配,支持 * 通配。
  • # @type MatchFromType: String # @param MatchFrom: 匹配Key的值。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type MatchFrom: Array # @param MatchContentType: 匹配Content所使用的匹配方式,取值为: #
  • equal:精准匹配,等于;
  • #
  • wildcard:通配符匹配,支持 * 通配。
  • # @type MatchContentType: String # @param MatchContent: 匹配Value的值。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type MatchContent: Array attr_accessor :Type, :Selector, :MatchFromType, :MatchFrom, :MatchContentType, :MatchContent def initialize(type=nil, selector=nil, matchfromtype=nil, matchfrom=nil, matchcontenttype=nil, matchcontent=nil) @Type = type @Selector = selector @MatchFromType = matchfromtype @MatchFrom = matchfrom @MatchContentType = matchcontenttype @MatchContent = matchcontent end def deserialize(params) @Type = params['Type'] @Selector = params['Selector'] @MatchFromType = params['MatchFromType'] @MatchFrom = params['MatchFrom'] @MatchContentType = params['MatchContentType'] @MatchContent = params['MatchContent'] end end # 慢速攻击配置。 class SlowPostConfig < TencentCloud::Common::AbstractModel # @param Switch: 开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String # @param FirstPartConfig: 首包配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type FirstPartConfig: :class:`Tencentcloud::Teo.v20220901.models.FirstPartConfig` # @param SlowRateConfig: 基础配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type SlowRateConfig: :class:`Tencentcloud::Teo.v20220901.models.SlowRateConfig` # @param Action: 慢速攻击的处置动作,取值有: #
  • monitor:观察;
  • #
  • drop:拦截。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type Action: String # @param RuleId: 本规则的Id。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type RuleId: Integer attr_accessor :Switch, :FirstPartConfig, :SlowRateConfig, :Action, :RuleId def initialize(switch=nil, firstpartconfig=nil, slowrateconfig=nil, action=nil, ruleid=nil) @Switch = switch @FirstPartConfig = firstpartconfig @SlowRateConfig = slowrateconfig @Action = action @RuleId = ruleid end def deserialize(params) @Switch = params['Switch'] unless params['FirstPartConfig'].nil? @FirstPartConfig = FirstPartConfig.new @FirstPartConfig.deserialize(params['FirstPartConfig']) end unless params['SlowRateConfig'].nil? @SlowRateConfig = SlowRateConfig.new @SlowRateConfig.deserialize(params['SlowRateConfig']) end @Action = params['Action'] @RuleId = params['RuleId'] end end # 慢速攻击的基础配置。 class SlowRateConfig < TencentCloud::Common::AbstractModel # @param Switch: 开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String # @param Interval: 统计的间隔,单位是秒,即在首段包传输结束后,将数据传输轴按照本参数切分,每个分片独立计算慢速攻击。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Interval: Integer # @param Threshold: 统计时应用的速率阈值,单位是bps,即如果本分片中的传输速率没达到本参数的值,则判定为慢速攻击,应用慢速攻击的处置方式。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Threshold: Integer attr_accessor :Switch, :Interval, :Threshold def initialize(switch=nil, interval=nil, threshold=nil) @Switch = switch @Interval = interval @Threshold = threshold end def deserialize(params) @Switch = params['Switch'] @Interval = params['Interval'] @Threshold = params['Threshold'] end end # 智能加速配置 class SmartRouting < TencentCloud::Common::AbstractModel # @param Switch: 智能加速配置开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String attr_accessor :Switch def initialize(switch=nil) @Switch = switch end def deserialize(params) @Switch = params['Switch'] end end # 站点拨测配置 class SpeedTestingConfig < TencentCloud::Common::AbstractModel # @param TaskType: 任务类型,取值有: #
  • 1:页面性能;
  • #
  • 2:文件上传;
  • #
  • 3:文件下载;
  • #
  • 4:端口性能;
  • #
  • 5:网络质量;
  • #
  • 6:音视频体验。
  • # @type TaskType: Integer # @param Url: 拨测 url。 # @type Url: String # @param UA: 拨测 UA。 # @type UA: String # @param Connectivity: 网络类型。 # @type Connectivity: String attr_accessor :TaskType, :Url, :UA, :Connectivity def initialize(tasktype=nil, url=nil, ua=nil, connectivity=nil) @TaskType = tasktype @Url = url @UA = ua @Connectivity = connectivity end def deserialize(params) @TaskType = params['TaskType'] @Url = params['Url'] @UA = params['UA'] @Connectivity = params['Connectivity'] end end # 拨测详细数据,包括各地域性能数据。 class SpeedTestingDetailData < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param ZoneName: 站点名称。 # @type ZoneName: String # @param DistrictStatistics: 地域性能数据。 # @type DistrictStatistics: Array attr_accessor :ZoneId, :ZoneName, :DistrictStatistics def initialize(zoneid=nil, zonename=nil, districtstatistics=nil) @ZoneId = zoneid @ZoneName = zonename @DistrictStatistics = districtstatistics end def deserialize(params) @ZoneId = params['ZoneId'] @ZoneName = params['ZoneName'] unless params['DistrictStatistics'].nil? @DistrictStatistics = [] params['DistrictStatistics'].each do |i| districtstatistics_tmp = DistrictStatistics.new districtstatistics_tmp.deserialize(i) @DistrictStatistics << districtstatistics_tmp end end end end # 拨测结果信息 class SpeedTestingInfo < TencentCloud::Common::AbstractModel # @param StatusCode: 任务状态,取值有: #
  • 200:任务完成;
  • #
  • 100:任务进行中;
  • #
  • 503: 任务失败。
  • # @type StatusCode: Integer # @param TestId: 拨测任务 ID。 # @type TestId: String # @param SpeedTestingConfig: 拨测任务配置。 # @type SpeedTestingConfig: :class:`Tencentcloud::Teo.v20220901.models.SpeedTestingConfig` # @param SpeedTestingStatistics: 拨测任务统计结果。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type SpeedTestingStatistics: :class:`Tencentcloud::Teo.v20220901.models.SpeedTestingStatistics` attr_accessor :StatusCode, :TestId, :SpeedTestingConfig, :SpeedTestingStatistics def initialize(statuscode=nil, testid=nil, speedtestingconfig=nil, speedtestingstatistics=nil) @StatusCode = statuscode @TestId = testid @SpeedTestingConfig = speedtestingconfig @SpeedTestingStatistics = speedtestingstatistics end def deserialize(params) @StatusCode = params['StatusCode'] @TestId = params['TestId'] unless params['SpeedTestingConfig'].nil? @SpeedTestingConfig = SpeedTestingConfig.new @SpeedTestingConfig.deserialize(params['SpeedTestingConfig']) end unless params['SpeedTestingStatistics'].nil? @SpeedTestingStatistics = SpeedTestingStatistics.new @SpeedTestingStatistics.deserialize(params['SpeedTestingStatistics']) end end end # 不同维度的测速数据。 class SpeedTestingMetricData < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param ZoneName: 站点名称。 # @type ZoneName: String # @param OriginSpeedTestingInfo: 源站拨测信息。 # @type OriginSpeedTestingInfo: Array # @param ProxySpeedTestingInfo: EO 拨测信息。 # @type ProxySpeedTestingInfo: Array # @param SpeedTestingStatus: 站点状态。 # @type SpeedTestingStatus: :class:`Tencentcloud::Teo.v20220901.models.SpeedTestingStatus` # @param OptimizeAction: 优化建议。 # @type OptimizeAction: Array # @param ProxyLoadTime: EO 整体性能,单位ms。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ProxyLoadTime: Integer # @param OriginLoadTime: 源站整体性能,单位ms。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type OriginLoadTime: Integer attr_accessor :ZoneId, :ZoneName, :OriginSpeedTestingInfo, :ProxySpeedTestingInfo, :SpeedTestingStatus, :OptimizeAction, :ProxyLoadTime, :OriginLoadTime def initialize(zoneid=nil, zonename=nil, originspeedtestinginfo=nil, proxyspeedtestinginfo=nil, speedtestingstatus=nil, optimizeaction=nil, proxyloadtime=nil, originloadtime=nil) @ZoneId = zoneid @ZoneName = zonename @OriginSpeedTestingInfo = originspeedtestinginfo @ProxySpeedTestingInfo = proxyspeedtestinginfo @SpeedTestingStatus = speedtestingstatus @OptimizeAction = optimizeaction @ProxyLoadTime = proxyloadtime @OriginLoadTime = originloadtime end def deserialize(params) @ZoneId = params['ZoneId'] @ZoneName = params['ZoneName'] unless params['OriginSpeedTestingInfo'].nil? @OriginSpeedTestingInfo = [] params['OriginSpeedTestingInfo'].each do |i| speedtestinginfo_tmp = SpeedTestingInfo.new speedtestinginfo_tmp.deserialize(i) @OriginSpeedTestingInfo << speedtestinginfo_tmp end end unless params['ProxySpeedTestingInfo'].nil? @ProxySpeedTestingInfo = [] params['ProxySpeedTestingInfo'].each do |i| speedtestinginfo_tmp = SpeedTestingInfo.new speedtestinginfo_tmp.deserialize(i) @ProxySpeedTestingInfo << speedtestinginfo_tmp end end unless params['SpeedTestingStatus'].nil? @SpeedTestingStatus = SpeedTestingStatus.new @SpeedTestingStatus.deserialize(params['SpeedTestingStatus']) end unless params['OptimizeAction'].nil? @OptimizeAction = [] params['OptimizeAction'].each do |i| optimizeaction_tmp = OptimizeAction.new optimizeaction_tmp.deserialize(i) @OptimizeAction << optimizeaction_tmp end end @ProxyLoadTime = params['ProxyLoadTime'] @OriginLoadTime = params['OriginLoadTime'] end end # 拨测配额数据。 class SpeedTestingQuota < TencentCloud::Common::AbstractModel # @param TotalTestRuns: 站点总拨测次数。 # @type TotalTestRuns: Integer # @param AvailableTestRuns: 站点剩余可用拨测次数。 # @type AvailableTestRuns: Integer attr_accessor :TotalTestRuns, :AvailableTestRuns def initialize(totaltestruns=nil, availabletestruns=nil) @TotalTestRuns = totaltestruns @AvailableTestRuns = availabletestruns end def deserialize(params) @TotalTestRuns = params['TotalTestRuns'] @AvailableTestRuns = params['AvailableTestRuns'] end end # 拨测统计结果 class SpeedTestingStatistics < TencentCloud::Common::AbstractModel # @param FirstContentfulPaint: 首屏时间,单位 ms。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type FirstContentfulPaint: Integer # @param FirstMeaningfulPaint: 首屏完全渲染时间,单位 ms。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type FirstMeaningfulPaint: Integer # @param OverallDownloadSpeed: 整体下载速度,单位 KB/s。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type OverallDownloadSpeed: Float # @param RenderTime: 渲染时间,单位 ms。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type RenderTime: Integer # @param DocumentFinishTime: 文档完成时间, 单位 ms。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type DocumentFinishTime: Integer # @param TcpConnectionTime: 基础文档TCP连接时间,单位 ms。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type TcpConnectionTime: Integer # @param ResponseTime: 基础文档服务器响应时间,单位 ms。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ResponseTime: Integer # @param FileDownloadTime: 基础文档下载时间,单位 ms。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type FileDownloadTime: Integer # @param LoadTime: 整体性能,测试总时间,单位 ms。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type LoadTime: Integer attr_accessor :FirstContentfulPaint, :FirstMeaningfulPaint, :OverallDownloadSpeed, :RenderTime, :DocumentFinishTime, :TcpConnectionTime, :ResponseTime, :FileDownloadTime, :LoadTime def initialize(firstcontentfulpaint=nil, firstmeaningfulpaint=nil, overalldownloadspeed=nil, rendertime=nil, documentfinishtime=nil, tcpconnectiontime=nil, responsetime=nil, filedownloadtime=nil, loadtime=nil) @FirstContentfulPaint = firstcontentfulpaint @FirstMeaningfulPaint = firstmeaningfulpaint @OverallDownloadSpeed = overalldownloadspeed @RenderTime = rendertime @DocumentFinishTime = documentfinishtime @TcpConnectionTime = tcpconnectiontime @ResponseTime = responsetime @FileDownloadTime = filedownloadtime @LoadTime = loadtime end def deserialize(params) @FirstContentfulPaint = params['FirstContentfulPaint'] @FirstMeaningfulPaint = params['FirstMeaningfulPaint'] @OverallDownloadSpeed = params['OverallDownloadSpeed'] @RenderTime = params['RenderTime'] @DocumentFinishTime = params['DocumentFinishTime'] @TcpConnectionTime = params['TcpConnectionTime'] @ResponseTime = params['ResponseTime'] @FileDownloadTime = params['FileDownloadTime'] @LoadTime = params['LoadTime'] end end # 拨测任务状态信息 class SpeedTestingStatus < TencentCloud::Common::AbstractModel # @param Url: 拨测 url。 # @type Url: String # @param Tls: 拨测 url 是否使用 https。 # @type Tls: Boolean # @param CreatedOn: 任务创建时间。 # @type CreatedOn: String # @param StatusCode: 任务状态,取值有: #
  • 200:任务完成;
  • #
  • 100:任务进行中。
  • #
  • 503: 任务失败。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type StatusCode: Integer # @param UA: 拨测 UA。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type UA: String # @param Connectivity: 网络环境。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Connectivity: String # @param Reachable: 是否可达,取值: #
  • true:可达;
  • #
  • false:不可达。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type Reachable: Boolean # @param TimedOut: 是否超时,取值: #
  • true:超时;
  • #
  • false:不超时。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type TimedOut: Boolean attr_accessor :Url, :Tls, :CreatedOn, :StatusCode, :UA, :Connectivity, :Reachable, :TimedOut def initialize(url=nil, tls=nil, createdon=nil, statuscode=nil, ua=nil, connectivity=nil, reachable=nil, timedout=nil) @Url = url @Tls = tls @CreatedOn = createdon @StatusCode = statuscode @UA = ua @Connectivity = connectivity @Reachable = reachable @TimedOut = timedout end def deserialize(params) @Url = params['Url'] @Tls = params['Tls'] @CreatedOn = params['CreatedOn'] @StatusCode = params['StatusCode'] @UA = params['UA'] @Connectivity = params['Connectivity'] @Reachable = params['Reachable'] @TimedOut = params['TimedOut'] end end # 嵌套规则信息。 class SubRule < TencentCloud::Common::AbstractModel # @param Conditions: 执行功能判断条件。 # 注意:满足该数组内任意一项条件,功能即可执行。 # @type Conditions: Array # @param Actions: 执行的功能。 # @type Actions: Array attr_accessor :Conditions, :Actions def initialize(conditions=nil, actions=nil) @Conditions = conditions @Actions = actions end def deserialize(params) unless params['Conditions'].nil? @Conditions = [] params['Conditions'].each do |i| ruleandconditions_tmp = RuleAndConditions.new ruleandconditions_tmp.deserialize(i) @Conditions << ruleandconditions_tmp end end unless params['Actions'].nil? @Actions = [] params['Actions'].each do |i| action_tmp = Action.new action_tmp.deserialize(i) @Actions << action_tmp end end end end # 规则引擎嵌套规则 class SubRuleItem < TencentCloud::Common::AbstractModel # @param Rules: 嵌套规则信息。 # @type Rules: Array # @param Tags: 规则标签。 # @type Tags: Array attr_accessor :Rules, :Tags def initialize(rules=nil, tags=nil) @Rules = rules @Tags = tags end def deserialize(params) unless params['Rules'].nil? @Rules = [] params['Rules'].each do |i| subrule_tmp = SubRule.new subrule_tmp.deserialize(i) @Rules << subrule_tmp end end @Tags = params['Tags'] end end # 询价参数 class Sv < TencentCloud::Common::AbstractModel # @param Key: 询价参数键。 # @type Key: String # @param Value: 询价参数值。 # @type Value: String attr_accessor :Key, :Value def initialize(key=nil, value=nil) @Key = key @Value = value end def deserialize(params) @Key = params['Key'] @Value = params['Value'] end end # 功能总开关 class SwitchConfig < TencentCloud::Common::AbstractModel # @param WebSwitch: Web类型的安全总开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • 不影响DDoS与Bot的开关。 # @type WebSwitch: String attr_accessor :WebSwitch def initialize(webswitch=nil) @WebSwitch = webswitch end def deserialize(params) @WebSwitch = params['WebSwitch'] end end # 标签配置 class Tag < TencentCloud::Common::AbstractModel # @param TagKey: 标签键。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type TagKey: String # @param TagValue: 标签值。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type TagValue: String attr_accessor :TagKey, :TagValue def initialize(tagkey=nil, tagvalue=nil) @TagKey = tagkey @TagValue = tagvalue end def deserialize(params) @TagKey = params['TagKey'] @TagValue = params['TagValue'] end end # 内容管理任务结果 class Task < TencentCloud::Common::AbstractModel # @param JobId: 任务 ID。 # @type JobId: String # @param Status: 状态。 # @type Status: String # @param Target: 资源。 # @type Target: String # @param Type: 任务类型。 # @type Type: String # @param CreateTime: 任务创建时间。 # @type CreateTime: String # @param UpdateTime: 任务完成时间。 # @type UpdateTime: String attr_accessor :JobId, :Status, :Target, :Type, :CreateTime, :UpdateTime def initialize(jobid=nil, status=nil, target=nil, type=nil, createtime=nil, updatetime=nil) @JobId = jobid @Status = status @Target = target @Type = type @CreateTime = createtime @UpdateTime = updatetime end def deserialize(params) @JobId = params['JobId'] @Status = params['Status'] @Target = params['Target'] @Type = params['Type'] @CreateTime = params['CreateTime'] @UpdateTime = params['UpdateTime'] end end # 安全模板配置 class TemplateConfig < TencentCloud::Common::AbstractModel # @param TemplateId: 模板ID。 # @type TemplateId: String # @param TemplateName: 模板名称。 # @type TemplateName: String attr_accessor :TemplateId, :TemplateName def initialize(templateid=nil, templatename=nil) @TemplateId = templateid @TemplateName = templatename end def deserialize(params) @TemplateId = params['TemplateId'] @TemplateName = params['TemplateName'] end end # 统计曲线数据项 class TimingDataItem < TencentCloud::Common::AbstractModel # @param Timestamp: 返回数据对应时间点,采用unix秒级时间戳。 # @type Timestamp: Integer # @param Value: 具体数值。 # @type Value: Integer attr_accessor :Timestamp, :Value def initialize(timestamp=nil, value=nil) @Timestamp = timestamp @Value = value end def deserialize(params) @Timestamp = params['Timestamp'] @Value = params['Value'] end end # 时序数据信息 class TimingDataRecord < TencentCloud::Common::AbstractModel # @param TypeKey: 查询维度值。 # @type TypeKey: String # @param TypeValue: 详细时序数据。 # @type TypeValue: Array attr_accessor :TypeKey, :TypeValue def initialize(typekey=nil, typevalue=nil) @TypeKey = typekey @TypeValue = typevalue end def deserialize(params) @TypeKey = params['TypeKey'] unless params['TypeValue'].nil? @TypeValue = [] params['TypeValue'].each do |i| timingtypevalue_tmp = TimingTypeValue.new timingtypevalue_tmp.deserialize(i) @TypeValue << timingtypevalue_tmp end end end end # 时序类型详细数据 class TimingTypeValue < TencentCloud::Common::AbstractModel # @param Sum: 数据和。 # @type Sum: Integer # @param Max: 最大值。 # @type Max: Integer # @param Avg: 平均值。 # @type Avg: Integer # @param MetricName: 指标名。 # @type MetricName: String # @param Detail: 详细数据。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Detail: Array attr_accessor :Sum, :Max, :Avg, :MetricName, :Detail def initialize(sum=nil, max=nil, avg=nil, metricname=nil, detail=nil) @Sum = sum @Max = max @Avg = avg @MetricName = metricname @Detail = detail end def deserialize(params) @Sum = params['Sum'] @Max = params['Max'] @Avg = params['Avg'] @MetricName = params['MetricName'] unless params['Detail'].nil? @Detail = [] params['Detail'].each do |i| timingdataitem_tmp = TimingDataItem.new timingdataitem_tmp.deserialize(i) @Detail << timingdataitem_tmp end end end end # Top类数据记录 class TopDataRecord < TencentCloud::Common::AbstractModel # @param TypeKey: 查询维度值。 # @type TypeKey: String # @param DetailData: top数据排行。 # @type DetailData: Array attr_accessor :TypeKey, :DetailData def initialize(typekey=nil, detaildata=nil) @TypeKey = typekey @DetailData = detaildata end def deserialize(params) @TypeKey = params['TypeKey'] unless params['DetailData'].nil? @DetailData = [] params['DetailData'].each do |i| topdetaildata_tmp = TopDetailData.new topdetaildata_tmp.deserialize(i) @DetailData << topdetaildata_tmp end end end end # Top数据的详细信息 class TopDetailData < TencentCloud::Common::AbstractModel # @param Key: 字段名。 # @type Key: String # @param Value: 字段值。 # @type Value: Integer attr_accessor :Key, :Value def initialize(key=nil, value=nil) @Key = key @Value = value end def deserialize(params) @Key = params['Key'] @Value = params['Value'] end end # TopN的Entry数据 class TopEntry < TencentCloud::Common::AbstractModel # @param Key: top查询维度值。 # @type Key: String # @param Value: 查询具体数据。 # @type Value: Array attr_accessor :Key, :Value def initialize(key=nil, value=nil) @Key = key @Value = value end def deserialize(params) @Key = params['Key'] unless params['Value'].nil? @Value = [] params['Value'].each do |i| topentryvalue_tmp = TopEntryValue.new topentryvalue_tmp.deserialize(i) @Value << topentryvalue_tmp end end end end # TopN数据Entry class TopEntryValue < TencentCloud::Common::AbstractModel # @param Name: 排序实体名。 # @type Name: String # @param Count: 排序实体数量。 # @type Count: Integer attr_accessor :Name, :Count def initialize(name=nil, count=nil) @Name = name @Count = count end def deserialize(params) @Name = params['Name'] @Count = params['Count'] end end # UpdateOriginProtectionIPWhitelist请求参数结构体 class UpdateOriginProtectionIPWhitelistRequest < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String attr_accessor :ZoneId def initialize(zoneid=nil) @ZoneId = zoneid end def deserialize(params) @ZoneId = params['ZoneId'] end end # UpdateOriginProtectionIPWhitelist返回参数结构体 class UpdateOriginProtectionIPWhitelistResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # Http2回源配置 class UpstreamHttp2 < TencentCloud::Common::AbstractModel # @param Switch: http2回源配置开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String attr_accessor :Switch def initialize(switch=nil) @Switch = switch end def deserialize(params) @Switch = params['Switch'] end end # 自定义 nameservers class VanityNameServers < TencentCloud::Common::AbstractModel # @param Switch: 自定义 ns 开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String # @param Servers: 自定义 ns 列表。 # @type Servers: Array attr_accessor :Switch, :Servers def initialize(switch=nil, servers=nil) @Switch = switch @Servers = servers end def deserialize(params) @Switch = params['Switch'] @Servers = params['Servers'] end end # 自定义名字服务器 IP 信息 class VanityNameServersIps < TencentCloud::Common::AbstractModel # @param Name: 自定义名字服务器名称。 # @type Name: String # @param IPv4: 自定义名字服务器 IPv4 地址。 # @type IPv4: String attr_accessor :Name, :IPv4 def initialize(name=nil, ipv4=nil) @Name = name @IPv4 = ipv4 end def deserialize(params) @Name = params['Name'] @IPv4 = params['IPv4'] end end # 无 class Waf < TencentCloud::Common::AbstractModel # @param Switch: Waf开关,取值为: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String # @param PolicyId: 策略ID。 # @type PolicyId: Integer attr_accessor :Switch, :PolicyId def initialize(switch=nil, policyid=nil) @Switch = switch @PolicyId = policyid end def deserialize(params) @Switch = params['Switch'] @PolicyId = params['PolicyId'] end end # Waf配置。 class WafConfig < TencentCloud::Common::AbstractModel # @param Switch: WafConfig开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • 开关仅与配置是否生效有关,即使为off(关闭),也可以正常修改配置的内容。 # @type Switch: String # @param Level: 上一次设置的防护级别,取值有: #
  • loose:宽松;
  • #
  • normal:正常;
  • #
  • strict:严格;
  • #
  • stricter:超严格;
  • #
  • custom:自定义。
  • # @type Level: String # @param Mode: 全局WAF模式,取值有: #
  • block:阻断(全局阻断,但可对详细规则配置观察);
  • #
  • observe:观察(无论详细规则配置什么,都为观察)。
  • # @type Mode: String # @param WafRule: 托管规则详细配置。如果为null,默认使用历史配置。 # @type WafRule: :class:`Tencentcloud::Teo.v20220901.models.WafRule` # @param AiRule: AI规则引擎防护配置。如果为null,默认使用历史配置。 # @type AiRule: :class:`Tencentcloud::Teo.v20220901.models.AiRule` attr_accessor :Switch, :Level, :Mode, :WafRule, :AiRule def initialize(switch=nil, level=nil, mode=nil, wafrule=nil, airule=nil) @Switch = switch @Level = level @Mode = mode @WafRule = wafrule @AiRule = airule end def deserialize(params) @Switch = params['Switch'] @Level = params['Level'] @Mode = params['Mode'] unless params['WafRule'].nil? @WafRule = WafRule.new @WafRule.deserialize(params['WafRule']) end unless params['AiRule'].nil? @AiRule = AiRule.new @AiRule.deserialize(params['AiRule']) end end end # Waf托管规则组 class WafGroup < TencentCloud::Common::AbstractModel # @param Action: 执行动作,取值有: #
  • block:阻断;
  • #
  • observe:观察。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type Action: String # @param Level: 防护级别,取值有: #
  • loose:宽松;
  • #
  • normal:正常;
  • #
  • strict:严格;
  • #
  • stricter:超严格;
  • #
  • custom:自定义。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type Level: String # @param TypeId: 规则类型id。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type TypeId: Integer attr_accessor :Action, :Level, :TypeId def initialize(action=nil, level=nil, typeid=nil) @Action = action @Level = level @TypeId = typeid end def deserialize(params) @Action = params['Action'] @Level = params['Level'] @TypeId = params['TypeId'] end end # Waf规则 class WafRule < TencentCloud::Common::AbstractModel # @param Switch: 托管规则开关,取值有: #
  • on:开启;
  • #
  • off:关闭。
  • # @type Switch: String # @param BlockRuleIDs: 黑名单,ID参考接口 [DescribeSecurityGroupManagedRules](https://tcloud4api.woa.com/document/product/1657/80807?!preview&!document=1)。 # @type BlockRuleIDs: Array # @param ObserveRuleIDs: 观察模式ID列表,将规则ID加入本参数列表中代表该ID使用观察模式生效,即该规则ID进入观察模式。ID参考接口 [DescribeSecurityGroupManagedRules](https://tcloud4api.woa.com/document/product/1657/80807?!preview&!document=1)。 # @type ObserveRuleIDs: Array attr_accessor :Switch, :BlockRuleIDs, :ObserveRuleIDs def initialize(switch=nil, blockruleids=nil, observeruleids=nil) @Switch = switch @BlockRuleIDs = blockruleids @ObserveRuleIDs = observeruleids end def deserialize(params) @Switch = params['Switch'] @BlockRuleIDs = params['BlockRuleIDs'] @ObserveRuleIDs = params['ObserveRuleIDs'] end end # web攻击日志 class WebLogs < TencentCloud::Common::AbstractModel # @param EventId: 请求(事件)ID。 # @type EventId: String # @param HttpLog: http 日志内容。 # @type HttpLog: String # @param Domain: 受攻击子域名。 # @type Domain: String # @param AttackIp: 攻击源(客户端)Ip。 # @type AttackIp: String # @param SipCountryCode: IP所在国家iso-3166中alpha-2编码,编码信息请参考[ISO-3166](https://git.woa.com/edgeone/iso-3166/blob/master/all/all.json) # @type SipCountryCode: String # @param RealClientIp: 真实客户端Ip。 # @type RealClientIp: String # @param RealClientIpCountryCode: 真实客户端Ip所在国家iso-3166中alpha-2编码。 # @type RealClientIpCountryCode: String # @param AttackTime: 攻击时间,采用unix秒级时间戳。 # @type AttackTime: Integer # @param RequestUri: 请求地址。 # @type RequestUri: String # @param ReqMethod: 请求类型。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ReqMethod: String # @param RuleDetailList: 规则相关信息列表。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type RuleDetailList: Array # @param AttackContent: 攻击内容。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type AttackContent: String # @param Area: 日志所属区域。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Area: String attr_accessor :EventId, :HttpLog, :Domain, :AttackIp, :SipCountryCode, :RealClientIp, :RealClientIpCountryCode, :AttackTime, :RequestUri, :ReqMethod, :RuleDetailList, :AttackContent, :Area def initialize(eventid=nil, httplog=nil, domain=nil, attackip=nil, sipcountrycode=nil, realclientip=nil, realclientipcountrycode=nil, attacktime=nil, requesturi=nil, reqmethod=nil, ruledetaillist=nil, attackcontent=nil, area=nil) @EventId = eventid @HttpLog = httplog @Domain = domain @AttackIp = attackip @SipCountryCode = sipcountrycode @RealClientIp = realclientip @RealClientIpCountryCode = realclientipcountrycode @AttackTime = attacktime @RequestUri = requesturi @ReqMethod = reqmethod @RuleDetailList = ruledetaillist @AttackContent = attackcontent @Area = area end def deserialize(params) @EventId = params['EventId'] @HttpLog = params['HttpLog'] @Domain = params['Domain'] @AttackIp = params['AttackIp'] @SipCountryCode = params['SipCountryCode'] @RealClientIp = params['RealClientIp'] @RealClientIpCountryCode = params['RealClientIpCountryCode'] @AttackTime = params['AttackTime'] @RequestUri = params['RequestUri'] @ReqMethod = params['ReqMethod'] unless params['RuleDetailList'].nil? @RuleDetailList = [] params['RuleDetailList'].each do |i| secrulerelatedinfo_tmp = SecRuleRelatedInfo.new secrulerelatedinfo_tmp.deserialize(i) @RuleDetailList << secrulerelatedinfo_tmp end end @AttackContent = params['AttackContent'] @Area = params['Area'] end end # WebSocket配置 class WebSocket < TencentCloud::Common::AbstractModel # @param Switch: WebSocket 超时时间配置开关,取值有: #
  • on:使用Timeout作为WebSocket超时时间;
  • #
  • off:平台仍支持WebSocket连接,此时使用系统默认的15秒为超时时间。
  • # @type Switch: String # @param Timeout: 超时时间,单位为秒,最大超时时间120秒。 # @type Timeout: Integer attr_accessor :Switch, :Timeout def initialize(switch=nil, timeout=nil) @Switch = switch @Timeout = timeout end def deserialize(params) @Switch = params['Switch'] @Timeout = params['Timeout'] end end # 站点信息 class Zone < TencentCloud::Common::AbstractModel # @param ZoneId: 站点ID。 # @type ZoneId: String # @param ZoneName: 站点名称。 # @type ZoneName: String # @param OriginalNameServers: 站点当前使用的 NS 列表。 # @type OriginalNameServers: Array # @param NameServers: 腾讯云分配的 NS 列表。 # @type NameServers: Array # @param Status: 站点状态,取值有: #
  • active:NS 已切换;
  • #
  • pending:NS 未切换;
  • #
  • moved:NS 已切走;
  • #
  • deactivated:被封禁。
  • # @type Status: String # @param Type: 站点接入方式,取值有 #
  • full:NS 接入;
  • #
  • partial:CNAME 接入。
  • # @type Type: String # @param Paused: 站点是否关闭。 # @type Paused: Boolean # @param CnameSpeedUp: 是否开启 CNAME 加速,取值有: #
  • enabled:开启;
  • #
  • disabled:关闭。
  • # @type CnameSpeedUp: String # @param CnameStatus: CNAME 接入状态,取值有: #
  • finished:站点已验证;
  • #
  • pending:站点验证中。
  • # @type CnameStatus: String # @param Tags: 资源标签列表。 # @type Tags: Array # @param Resources: 计费资源列表。 # @type Resources: Array # @param CreatedOn: 站点创建时间。 # @type CreatedOn: String # @param ModifiedOn: 站点修改时间。 # @type ModifiedOn: String # @param Area: 站点接入地域,取值有: #
  • global:全球;
  • #
  • mainland:中国大陆;
  • #
  • overseas:境外区域。
  • # @type Area: String # @param VanityNameServers: 用户自定义 NS 信息。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type VanityNameServers: :class:`Tencentcloud::Teo.v20220901.models.VanityNameServers` # @param VanityNameServersIps: 用户自定义 NS IP 信息。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type VanityNameServersIps: Array # @param ActiveStatus: 展示状态,取值有: #
  • active:已启用;
  • #
  • inactive:未生效;
  • #
  • paused:已停用。
  • # @type ActiveStatus: String # @param AliasZoneName: 站点别名。数字、英文、-和_组合,限制20个字符。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type AliasZoneName: String # @param IsFake: 是否伪站点,取值有: #
  • 0:非伪站点;
  • #
  • 1:伪站点。
  • # 注意:此字段可能返回 null,表示取不到有效值。 # @type IsFake: Integer attr_accessor :ZoneId, :ZoneName, :OriginalNameServers, :NameServers, :Status, :Type, :Paused, :CnameSpeedUp, :CnameStatus, :Tags, :Resources, :CreatedOn, :ModifiedOn, :Area, :VanityNameServers, :VanityNameServersIps, :ActiveStatus, :AliasZoneName, :IsFake def initialize(zoneid=nil, zonename=nil, originalnameservers=nil, nameservers=nil, status=nil, type=nil, paused=nil, cnamespeedup=nil, cnamestatus=nil, tags=nil, resources=nil, createdon=nil, modifiedon=nil, area=nil, vanitynameservers=nil, vanitynameserversips=nil, activestatus=nil, aliaszonename=nil, isfake=nil) @ZoneId = zoneid @ZoneName = zonename @OriginalNameServers = originalnameservers @NameServers = nameservers @Status = status @Type = type @Paused = paused @CnameSpeedUp = cnamespeedup @CnameStatus = cnamestatus @Tags = tags @Resources = resources @CreatedOn = createdon @ModifiedOn = modifiedon @Area = area @VanityNameServers = vanitynameservers @VanityNameServersIps = vanitynameserversips @ActiveStatus = activestatus @AliasZoneName = aliaszonename @IsFake = isfake end def deserialize(params) @ZoneId = params['ZoneId'] @ZoneName = params['ZoneName'] @OriginalNameServers = params['OriginalNameServers'] @NameServers = params['NameServers'] @Status = params['Status'] @Type = params['Type'] @Paused = params['Paused'] @CnameSpeedUp = params['CnameSpeedUp'] @CnameStatus = params['CnameStatus'] unless params['Tags'].nil? @Tags = [] params['Tags'].each do |i| tag_tmp = Tag.new tag_tmp.deserialize(i) @Tags << tag_tmp end end unless params['Resources'].nil? @Resources = [] params['Resources'].each do |i| resource_tmp = Resource.new resource_tmp.deserialize(i) @Resources << resource_tmp end end @CreatedOn = params['CreatedOn'] @ModifiedOn = params['ModifiedOn'] @Area = params['Area'] unless params['VanityNameServers'].nil? @VanityNameServers = VanityNameServers.new @VanityNameServers.deserialize(params['VanityNameServers']) end unless params['VanityNameServersIps'].nil? @VanityNameServersIps = [] params['VanityNameServersIps'].each do |i| vanitynameserversips_tmp = VanityNameServersIps.new vanitynameserversips_tmp.deserialize(i) @VanityNameServersIps << vanitynameserversips_tmp end end @ActiveStatus = params['ActiveStatus'] @AliasZoneName = params['AliasZoneName'] @IsFake = params['IsFake'] end end # 站点配置。 class ZoneSetting < TencentCloud::Common::AbstractModel # @param ZoneName: 站点名称。 # @type ZoneName: String # @param Area: 站点加速区域信息,取值有: #
  • mainland:中国境内加速;
  • #
  • overseas:中国境外加速。
  • # @type Area: String # @param CacheKey: 节点缓存键配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CacheKey: :class:`Tencentcloud::Teo.v20220901.models.CacheKey` # @param Quic: Quic访问配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Quic: :class:`Tencentcloud::Teo.v20220901.models.Quic` # @param PostMaxSize: POST请求传输配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type PostMaxSize: :class:`Tencentcloud::Teo.v20220901.models.PostMaxSize` # @param Compression: 智能压缩配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Compression: :class:`Tencentcloud::Teo.v20220901.models.Compression` # @param UpstreamHttp2: Http2回源配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type UpstreamHttp2: :class:`Tencentcloud::Teo.v20220901.models.UpstreamHttp2` # @param ForceRedirect: 访问协议强制Https跳转配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ForceRedirect: :class:`Tencentcloud::Teo.v20220901.models.ForceRedirect` # @param CacheConfig: 缓存过期时间配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CacheConfig: :class:`Tencentcloud::Teo.v20220901.models.CacheConfig` # @param Origin: 源站配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Origin: :class:`Tencentcloud::Teo.v20220901.models.Origin` # @param SmartRouting: 智能加速配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type SmartRouting: :class:`Tencentcloud::Teo.v20220901.models.SmartRouting` # @param MaxAge: 浏览器缓存配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type MaxAge: :class:`Tencentcloud::Teo.v20220901.models.MaxAge` # @param OfflineCache: 离线缓存配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type OfflineCache: :class:`Tencentcloud::Teo.v20220901.models.OfflineCache` # @param WebSocket: WebSocket配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type WebSocket: :class:`Tencentcloud::Teo.v20220901.models.WebSocket` # @param ClientIpHeader: 客户端IP回源请求头配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ClientIpHeader: :class:`Tencentcloud::Teo.v20220901.models.ClientIpHeader` # @param CachePrefresh: 缓存预刷新配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CachePrefresh: :class:`Tencentcloud::Teo.v20220901.models.CachePrefresh` # @param Ipv6: Ipv6访问配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Ipv6: :class:`Tencentcloud::Teo.v20220901.models.Ipv6` # @param Https: Https 加速配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Https: :class:`Tencentcloud::Teo.v20220901.models.Https` # @param ClientIpCountry: 回源时是否携带客户端IP所属地域信息的配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ClientIpCountry: :class:`Tencentcloud::Teo.v20220901.models.ClientIpCountry` # @param Grpc: Grpc协议支持配置。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Grpc: :class:`Tencentcloud::Teo.v20220901.models.Grpc` attr_accessor :ZoneName, :Area, :CacheKey, :Quic, :PostMaxSize, :Compression, :UpstreamHttp2, :ForceRedirect, :CacheConfig, :Origin, :SmartRouting, :MaxAge, :OfflineCache, :WebSocket, :ClientIpHeader, :CachePrefresh, :Ipv6, :Https, :ClientIpCountry, :Grpc def initialize(zonename=nil, area=nil, cachekey=nil, quic=nil, postmaxsize=nil, compression=nil, upstreamhttp2=nil, forceredirect=nil, cacheconfig=nil, origin=nil, smartrouting=nil, maxage=nil, offlinecache=nil, websocket=nil, clientipheader=nil, cacheprefresh=nil, ipv6=nil, https=nil, clientipcountry=nil, grpc=nil) @ZoneName = zonename @Area = area @CacheKey = cachekey @Quic = quic @PostMaxSize = postmaxsize @Compression = compression @UpstreamHttp2 = upstreamhttp2 @ForceRedirect = forceredirect @CacheConfig = cacheconfig @Origin = origin @SmartRouting = smartrouting @MaxAge = maxage @OfflineCache = offlinecache @WebSocket = websocket @ClientIpHeader = clientipheader @CachePrefresh = cacheprefresh @Ipv6 = ipv6 @Https = https @ClientIpCountry = clientipcountry @Grpc = grpc end def deserialize(params) @ZoneName = params['ZoneName'] @Area = params['Area'] unless params['CacheKey'].nil? @CacheKey = CacheKey.new @CacheKey.deserialize(params['CacheKey']) end unless params['Quic'].nil? @Quic = Quic.new @Quic.deserialize(params['Quic']) end unless params['PostMaxSize'].nil? @PostMaxSize = PostMaxSize.new @PostMaxSize.deserialize(params['PostMaxSize']) end unless params['Compression'].nil? @Compression = Compression.new @Compression.deserialize(params['Compression']) end unless params['UpstreamHttp2'].nil? @UpstreamHttp2 = UpstreamHttp2.new @UpstreamHttp2.deserialize(params['UpstreamHttp2']) end unless params['ForceRedirect'].nil? @ForceRedirect = ForceRedirect.new @ForceRedirect.deserialize(params['ForceRedirect']) end unless params['CacheConfig'].nil? @CacheConfig = CacheConfig.new @CacheConfig.deserialize(params['CacheConfig']) end unless params['Origin'].nil? @Origin = Origin.new @Origin.deserialize(params['Origin']) end unless params['SmartRouting'].nil? @SmartRouting = SmartRouting.new @SmartRouting.deserialize(params['SmartRouting']) end unless params['MaxAge'].nil? @MaxAge = MaxAge.new @MaxAge.deserialize(params['MaxAge']) end unless params['OfflineCache'].nil? @OfflineCache = OfflineCache.new @OfflineCache.deserialize(params['OfflineCache']) end unless params['WebSocket'].nil? @WebSocket = WebSocket.new @WebSocket.deserialize(params['WebSocket']) end unless params['ClientIpHeader'].nil? @ClientIpHeader = ClientIpHeader.new @ClientIpHeader.deserialize(params['ClientIpHeader']) end unless params['CachePrefresh'].nil? @CachePrefresh = CachePrefresh.new @CachePrefresh.deserialize(params['CachePrefresh']) end unless params['Ipv6'].nil? @Ipv6 = Ipv6.new @Ipv6.deserialize(params['Ipv6']) end unless params['Https'].nil? @Https = Https.new @Https.deserialize(params['Https']) end unless params['ClientIpCountry'].nil? @ClientIpCountry = ClientIpCountry.new @ClientIpCountry.deserialize(params['ClientIpCountry']) end unless params['Grpc'].nil? @Grpc = Grpc.new @Grpc.deserialize(params['Grpc']) end end end end end end