{"base_path":"/","components":null,"consumes":"","definitions":{"AnticrawlerCondition":{"properties":{"category":{"description":"字段类型","enum":["url","user-agent"],"type":"string"},"contents":{"description":"条件列表逻辑匹配内容。当logic_operation参数不以any或者all结尾时,需要传该参数。","items":{"type":"string"},"type":"array"},"logic_operation":{"description":"条件列表匹配逻辑, 包括:contain、not_contain、equal、not_equal、prefix、not_prefix、suffix、not_suffix、contain_any、not_contain_all、equal_any、not_equal_all、prefix_any、not_prefix_all、suffix_any、not_suffix_all","type":"string"},"value_list_id":{"description":"引用表id。当logic_operation参数以any或者all结尾时,需要传该参数。此外,引用表类型要与category类型保持一致。","type":"string"}}},"CreateAnticrawlerRuleRequestbody":{"properties":{"conditions":{"description":"匹配条件列表","items":{"$ref":"#/definitions/AnticrawlerCondition"},"type":"array"},"name":{"description":"规则名称","type":"string"},"priority":{"description":"执行该规则的优先级,值越小,优先级越高,值相同时,规则创建时间早,优先级越高。取值范围:0到1000。","type":"integer"},"type":{"description":"JS脚本反爬虫规则类型,指定防护路径:anticrawler_specific_url 排除防护路径:anticrawler_except_url","type":"string"}},"required":["conditions","name","type","priority"]},"CreateAnticrawlerRuleResponsebody":{"properties":{"conditions":{"description":"匹配条件列表","items":{"$ref":"#/definitions/AnticrawlerCondition"},"type":"array"},"id":{"description":"规则id","type":"string"},"name":{"description":"规则名称","type":"string"},"policyid":{"description":"策略id","type":"string"},"priority":{"description":"执行该规则的优先级,值越小,优先级越高,值相同时,规则创建时间早,优先级越高。取值范围:0到1000。","type":"integer"},"status":{"description":"规则状态,0:关闭,1:开启","type":"integer"},"timestamp":{"description":"创建规则时间戳","format":"int64","type":"integer"},"type":{"description":"JS脚本反爬虫规则类型,指定防护路径:anticrawler_specific_url 排除防护路径:anticrawler_except_url","type":"string"}}},"IAM5ErrorDetails":{"description":"调用下游服务的报错信息集合,IAM5鉴权错误时才会返回此信息0。","properties":{"error_code":{"description":"下游服务错误码","type":"string"},"error_msg":{"description":"下游服务报错信息","type":"string"}}},"RestErrorResponse":{"properties":{"details":{"description":"调用下游服务的报错信息集合,IAM5鉴权错误时才会返回此字段。","items":{"$ref":"#/definitions/IAM5ErrorDetails"},"type":"array"},"encoded_authorization_message":{"description":"编码 (加密) 后的详细拒绝原因,用户可以自行调用 STS 服务的decode-authorization-message接口进行解码,可参考STS5联调自验证。IAM5鉴权错误时才会返回此字段。","type":"string"},"error_code":{"description":"错误码","type":"string"},"error_msg":{"description":"错误信息","type":"string"}},"title":"RestErrorResponse","type":"object"}},"description":null,"group_id":"29975c0bd7ce463ca70ad5c074e3974b","host":"waf.cn-north-4.myhuaweicloud.com","id":"79079245a033457398d14d3872d21a8f","info_version":"v1","method":"post","name":"CreateAnticrawlerRule","parameters":{},"paths":{"/v1/{project_id}/waf/policy/{policy_id}/anticrawler":{"post":{"description":"创建JS脚本反爬虫规则,在调用此接口创建防护规则前,需要调用更新JS脚本反爬虫规则防护模式(UpdateAnticrawlerRuleType)接口指定防护模式","operationId":"CreateAnticrawlerRule","parameters":[{"description":"用户Token,通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。","in":"header","name":"X-Auth-Token","required":true,"type":"string"},{"default":"application/json;charset=utf8","description":"内容类型","in":"header","name":"Content-Type","required":true,"type":"string"},{"default":"","description":"项目ID,对应华为云控制台用户名->我的凭证->项目列表->项目ID","in":"path","name":"project_id","required":true,"type":"string"},{"description":"您可以通过调用企业项目管理服务(EPS)的查询企业项目列表接口(ListEnterpriseProject)查询企业项目id","in":"query","name":"enterprise_project_id","required":false,"type":"string"},{"description":"防护策略id,通过指定防护策略id来指明查询该防护策略下的防护规则,您可以通过调用查询防护策略列表(ListPolicy)获取策略id","in":"path","name":"policy_id","required":true,"type":"string"},{"description":"创建JS脚本反爬虫规则请求体","in":"body","name":"CreateAnticrawlerRuleRequestBody","required":true,"schema":{"$ref":"#/definitions/CreateAnticrawlerRuleRequestbody"}}],"produces":["application/json"],"responses":{"200":{"description":"ok","examples":{"application/json":{"conditions":[{"category":"url","contents":["/test66"],"logic_operation":"contain"}],"id":"7e7983bf2c9c41029d642bcbf819346d","name":"test66","policyid":"0681f69f94ac408e9688373e45a61fdb","priority":50,"status":1,"timestamp":1678931492172,"type":"anticrawler_except_url"}},"schema":{"$ref":"#/definitions/CreateAnticrawlerRuleResponsebody"}},"400":{"description":"请求失败","schema":{"$ref":"#/definitions/RestErrorResponse"}},"401":{"description":"token权限不足","schema":{"$ref":"#/definitions/RestErrorResponse"}},"500":{"description":"服务器内部错误","schema":{"$ref":"#/definitions/RestErrorResponse"}}},"summary":"创建JS脚本反爬虫规则","tags":["策略规则管理"],"x-is-registered":"Y","x-request-examples-1":{"conditions":[{"category":"url","contents":["/test66"],"logic_operation":"contain"}],"name":"test66","priority":50,"type":"anticrawler_except_url"},"x-request-examples-description-1":"在项目id为project_id,防护策略id为policy_id的防护策略下创建JS脚本反爬虫规则,规则名称为“test66”,JS脚本反爬虫规则类型为排除防护路径,匹配条为url包含“/test66”,执行该规则的优先级为50。","x-request-examples-url-1":"POST https://{Endpoint}/v1/{project_id}/waf/policy/{policy_id}/anticrawler?","x-support-international":true,"x-support-sdk":"Y"}}},"product_short":"WAF","region_id":"cn-north-4","schemes":["HTTPS"],"security_definitions":null,"summary":"创建JS脚本反爬虫规则","tags":"策略规则管理","uri":null,"version":"2.0"}