Skip to content

Commit 75f2d6d

Browse files
committed
Support API DescribeBotRuleLabels.
1 parent f6bc73d commit 75f2d6d

File tree

5 files changed

+342
-2
lines changed

5 files changed

+342
-2
lines changed

waf-openapi-20211001/ChangeLog.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
2025-12-09 Version: 7.1.0
2+
- Support API DescribeBotRuleLabels.
3+
- Update API CreateCloudResource: add request parameters Listen.ResourceRegionId.
4+
5+
16
2025-12-08 Version: 7.0.4
27
- Generated python 2021-10-01 for waf-openapi.
38

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
__version__ = '7.0.4'
1+
__version__ = '7.1.0'

waf-openapi-20211001/alibabacloud_waf_openapi20211001/client.py

Lines changed: 120 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6915,6 +6915,126 @@ async def describe_base_system_rules_async(
69156915
runtime = util_models.RuntimeOptions()
69166916
return await self.describe_base_system_rules_with_options_async(request, runtime)
69176917

6918+
def describe_bot_rule_labels_with_options(
6919+
self,
6920+
request: waf_openapi_20211001_models.DescribeBotRuleLabelsRequest,
6921+
runtime: util_models.RuntimeOptions,
6922+
) -> waf_openapi_20211001_models.DescribeBotRuleLabelsResponse:
6923+
"""
6924+
@summary 分页获取Bot管理规则标签信息
6925+
6926+
@param request: DescribeBotRuleLabelsRequest
6927+
@param runtime: runtime options for this request RuntimeOptions
6928+
@return: DescribeBotRuleLabelsResponse
6929+
"""
6930+
UtilClient.validate_model(request)
6931+
query = {}
6932+
if not UtilClient.is_unset(request.instance_id):
6933+
query['InstanceId'] = request.instance_id
6934+
if not UtilClient.is_unset(request.label_type):
6935+
query['LabelType'] = request.label_type
6936+
if not UtilClient.is_unset(request.max_results):
6937+
query['MaxResults'] = request.max_results
6938+
if not UtilClient.is_unset(request.next_token):
6939+
query['NextToken'] = request.next_token
6940+
if not UtilClient.is_unset(request.region_id):
6941+
query['RegionId'] = request.region_id
6942+
if not UtilClient.is_unset(request.resource_manager_resource_group_id):
6943+
query['ResourceManagerResourceGroupId'] = request.resource_manager_resource_group_id
6944+
if not UtilClient.is_unset(request.sub_scene):
6945+
query['SubScene'] = request.sub_scene
6946+
req = open_api_models.OpenApiRequest(
6947+
query=OpenApiUtilClient.query(query)
6948+
)
6949+
params = open_api_models.Params(
6950+
action='DescribeBotRuleLabels',
6951+
version='2021-10-01',
6952+
protocol='HTTPS',
6953+
pathname='/',
6954+
method='POST',
6955+
auth_type='AK',
6956+
style='RPC',
6957+
req_body_type='formData',
6958+
body_type='json'
6959+
)
6960+
return TeaCore.from_map(
6961+
waf_openapi_20211001_models.DescribeBotRuleLabelsResponse(),
6962+
self.call_api(params, req, runtime)
6963+
)
6964+
6965+
async def describe_bot_rule_labels_with_options_async(
6966+
self,
6967+
request: waf_openapi_20211001_models.DescribeBotRuleLabelsRequest,
6968+
runtime: util_models.RuntimeOptions,
6969+
) -> waf_openapi_20211001_models.DescribeBotRuleLabelsResponse:
6970+
"""
6971+
@summary 分页获取Bot管理规则标签信息
6972+
6973+
@param request: DescribeBotRuleLabelsRequest
6974+
@param runtime: runtime options for this request RuntimeOptions
6975+
@return: DescribeBotRuleLabelsResponse
6976+
"""
6977+
UtilClient.validate_model(request)
6978+
query = {}
6979+
if not UtilClient.is_unset(request.instance_id):
6980+
query['InstanceId'] = request.instance_id
6981+
if not UtilClient.is_unset(request.label_type):
6982+
query['LabelType'] = request.label_type
6983+
if not UtilClient.is_unset(request.max_results):
6984+
query['MaxResults'] = request.max_results
6985+
if not UtilClient.is_unset(request.next_token):
6986+
query['NextToken'] = request.next_token
6987+
if not UtilClient.is_unset(request.region_id):
6988+
query['RegionId'] = request.region_id
6989+
if not UtilClient.is_unset(request.resource_manager_resource_group_id):
6990+
query['ResourceManagerResourceGroupId'] = request.resource_manager_resource_group_id
6991+
if not UtilClient.is_unset(request.sub_scene):
6992+
query['SubScene'] = request.sub_scene
6993+
req = open_api_models.OpenApiRequest(
6994+
query=OpenApiUtilClient.query(query)
6995+
)
6996+
params = open_api_models.Params(
6997+
action='DescribeBotRuleLabels',
6998+
version='2021-10-01',
6999+
protocol='HTTPS',
7000+
pathname='/',
7001+
method='POST',
7002+
auth_type='AK',
7003+
style='RPC',
7004+
req_body_type='formData',
7005+
body_type='json'
7006+
)
7007+
return TeaCore.from_map(
7008+
waf_openapi_20211001_models.DescribeBotRuleLabelsResponse(),
7009+
await self.call_api_async(params, req, runtime)
7010+
)
7011+
7012+
def describe_bot_rule_labels(
7013+
self,
7014+
request: waf_openapi_20211001_models.DescribeBotRuleLabelsRequest,
7015+
) -> waf_openapi_20211001_models.DescribeBotRuleLabelsResponse:
7016+
"""
7017+
@summary 分页获取Bot管理规则标签信息
7018+
7019+
@param request: DescribeBotRuleLabelsRequest
7020+
@return: DescribeBotRuleLabelsResponse
7021+
"""
7022+
runtime = util_models.RuntimeOptions()
7023+
return self.describe_bot_rule_labels_with_options(request, runtime)
7024+
7025+
async def describe_bot_rule_labels_async(
7026+
self,
7027+
request: waf_openapi_20211001_models.DescribeBotRuleLabelsRequest,
7028+
) -> waf_openapi_20211001_models.DescribeBotRuleLabelsResponse:
7029+
"""
7030+
@summary 分页获取Bot管理规则标签信息
7031+
7032+
@param request: DescribeBotRuleLabelsRequest
7033+
@return: DescribeBotRuleLabelsResponse
7034+
"""
7035+
runtime = util_models.RuntimeOptions()
7036+
return await self.describe_bot_rule_labels_with_options_async(request, runtime)
7037+
69187038
def describe_cert_detail_with_options(
69197039
self,
69207040
request: waf_openapi_20211001_models.DescribeCertDetailRequest,

waf-openapi-20211001/alibabacloud_waf_openapi20211001/models.py

Lines changed: 215 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -771,6 +771,7 @@ def __init__(
771771
protocol: str = None,
772772
resource_instance_id: str = None,
773773
resource_product: str = None,
774+
resource_region_id: str = None,
774775
tlsversion: str = None,
775776
):
776777
# The certificates.
@@ -817,6 +818,7 @@ def __init__(
817818
#
818819
# This parameter is required.
819820
self.resource_product = resource_product
821+
self.resource_region_id = resource_region_id
820822
# The Transport Layer Security (TLS) version that you want to add. This parameter is available only if you specify **HttpsPorts**. Valid values:
821823
#
822824
# * **tlsv1**\
@@ -856,6 +858,8 @@ def to_map(self):
856858
result['ResourceInstanceId'] = self.resource_instance_id
857859
if self.resource_product is not None:
858860
result['ResourceProduct'] = self.resource_product
861+
if self.resource_region_id is not None:
862+
result['ResourceRegionId'] = self.resource_region_id
859863
if self.tlsversion is not None:
860864
result['TLSVersion'] = self.tlsversion
861865
return result
@@ -883,6 +887,8 @@ def from_map(self, m: dict = None):
883887
self.resource_instance_id = m.get('ResourceInstanceId')
884888
if m.get('ResourceProduct') is not None:
885889
self.resource_product = m.get('ResourceProduct')
890+
if m.get('ResourceRegionId') is not None:
891+
self.resource_region_id = m.get('ResourceRegionId')
886892
if m.get('TLSVersion') is not None:
887893
self.tlsversion = m.get('TLSVersion')
888894
return self
@@ -12202,6 +12208,215 @@ def from_map(self, m: dict = None):
1220212208
return self
1220312209

1220412210

12211+
class DescribeBotRuleLabelsRequest(TeaModel):
12212+
def __init__(
12213+
self,
12214+
instance_id: str = None,
12215+
label_type: str = None,
12216+
max_results: int = None,
12217+
next_token: str = None,
12218+
region_id: str = None,
12219+
resource_manager_resource_group_id: str = None,
12220+
sub_scene: str = None,
12221+
):
12222+
# This parameter is required.
12223+
self.instance_id = instance_id
12224+
self.label_type = label_type
12225+
self.max_results = max_results
12226+
self.next_token = next_token
12227+
self.region_id = region_id
12228+
self.resource_manager_resource_group_id = resource_manager_resource_group_id
12229+
self.sub_scene = sub_scene
12230+
12231+
def validate(self):
12232+
pass
12233+
12234+
def to_map(self):
12235+
_map = super().to_map()
12236+
if _map is not None:
12237+
return _map
12238+
12239+
result = dict()
12240+
if self.instance_id is not None:
12241+
result['InstanceId'] = self.instance_id
12242+
if self.label_type is not None:
12243+
result['LabelType'] = self.label_type
12244+
if self.max_results is not None:
12245+
result['MaxResults'] = self.max_results
12246+
if self.next_token is not None:
12247+
result['NextToken'] = self.next_token
12248+
if self.region_id is not None:
12249+
result['RegionId'] = self.region_id
12250+
if self.resource_manager_resource_group_id is not None:
12251+
result['ResourceManagerResourceGroupId'] = self.resource_manager_resource_group_id
12252+
if self.sub_scene is not None:
12253+
result['SubScene'] = self.sub_scene
12254+
return result
12255+
12256+
def from_map(self, m: dict = None):
12257+
m = m or dict()
12258+
if m.get('InstanceId') is not None:
12259+
self.instance_id = m.get('InstanceId')
12260+
if m.get('LabelType') is not None:
12261+
self.label_type = m.get('LabelType')
12262+
if m.get('MaxResults') is not None:
12263+
self.max_results = m.get('MaxResults')
12264+
if m.get('NextToken') is not None:
12265+
self.next_token = m.get('NextToken')
12266+
if m.get('RegionId') is not None:
12267+
self.region_id = m.get('RegionId')
12268+
if m.get('ResourceManagerResourceGroupId') is not None:
12269+
self.resource_manager_resource_group_id = m.get('ResourceManagerResourceGroupId')
12270+
if m.get('SubScene') is not None:
12271+
self.sub_scene = m.get('SubScene')
12272+
return self
12273+
12274+
12275+
class DescribeBotRuleLabelsResponseBodyRuleLabels(TeaModel):
12276+
def __init__(
12277+
self,
12278+
bot_behavior: str = None,
12279+
label_key: str = None,
12280+
label_type: str = None,
12281+
sub_scene: str = None,
12282+
):
12283+
self.bot_behavior = bot_behavior
12284+
self.label_key = label_key
12285+
self.label_type = label_type
12286+
self.sub_scene = sub_scene
12287+
12288+
def validate(self):
12289+
pass
12290+
12291+
def to_map(self):
12292+
_map = super().to_map()
12293+
if _map is not None:
12294+
return _map
12295+
12296+
result = dict()
12297+
if self.bot_behavior is not None:
12298+
result['BotBehavior'] = self.bot_behavior
12299+
if self.label_key is not None:
12300+
result['LabelKey'] = self.label_key
12301+
if self.label_type is not None:
12302+
result['LabelType'] = self.label_type
12303+
if self.sub_scene is not None:
12304+
result['SubScene'] = self.sub_scene
12305+
return result
12306+
12307+
def from_map(self, m: dict = None):
12308+
m = m or dict()
12309+
if m.get('BotBehavior') is not None:
12310+
self.bot_behavior = m.get('BotBehavior')
12311+
if m.get('LabelKey') is not None:
12312+
self.label_key = m.get('LabelKey')
12313+
if m.get('LabelType') is not None:
12314+
self.label_type = m.get('LabelType')
12315+
if m.get('SubScene') is not None:
12316+
self.sub_scene = m.get('SubScene')
12317+
return self
12318+
12319+
12320+
class DescribeBotRuleLabelsResponseBody(TeaModel):
12321+
def __init__(
12322+
self,
12323+
max_results: int = None,
12324+
next_token: str = None,
12325+
request_id: str = None,
12326+
rule_labels: List[DescribeBotRuleLabelsResponseBodyRuleLabels] = None,
12327+
total_count: int = None,
12328+
):
12329+
self.max_results = max_results
12330+
self.next_token = next_token
12331+
self.request_id = request_id
12332+
self.rule_labels = rule_labels
12333+
self.total_count = total_count
12334+
12335+
def validate(self):
12336+
if self.rule_labels:
12337+
for k in self.rule_labels:
12338+
if k:
12339+
k.validate()
12340+
12341+
def to_map(self):
12342+
_map = super().to_map()
12343+
if _map is not None:
12344+
return _map
12345+
12346+
result = dict()
12347+
if self.max_results is not None:
12348+
result['MaxResults'] = self.max_results
12349+
if self.next_token is not None:
12350+
result['NextToken'] = self.next_token
12351+
if self.request_id is not None:
12352+
result['RequestId'] = self.request_id
12353+
result['RuleLabels'] = []
12354+
if self.rule_labels is not None:
12355+
for k in self.rule_labels:
12356+
result['RuleLabels'].append(k.to_map() if k else None)
12357+
if self.total_count is not None:
12358+
result['TotalCount'] = self.total_count
12359+
return result
12360+
12361+
def from_map(self, m: dict = None):
12362+
m = m or dict()
12363+
if m.get('MaxResults') is not None:
12364+
self.max_results = m.get('MaxResults')
12365+
if m.get('NextToken') is not None:
12366+
self.next_token = m.get('NextToken')
12367+
if m.get('RequestId') is not None:
12368+
self.request_id = m.get('RequestId')
12369+
self.rule_labels = []
12370+
if m.get('RuleLabels') is not None:
12371+
for k in m.get('RuleLabels'):
12372+
temp_model = DescribeBotRuleLabelsResponseBodyRuleLabels()
12373+
self.rule_labels.append(temp_model.from_map(k))
12374+
if m.get('TotalCount') is not None:
12375+
self.total_count = m.get('TotalCount')
12376+
return self
12377+
12378+
12379+
class DescribeBotRuleLabelsResponse(TeaModel):
12380+
def __init__(
12381+
self,
12382+
headers: Dict[str, str] = None,
12383+
status_code: int = None,
12384+
body: DescribeBotRuleLabelsResponseBody = None,
12385+
):
12386+
self.headers = headers
12387+
self.status_code = status_code
12388+
self.body = body
12389+
12390+
def validate(self):
12391+
if self.body:
12392+
self.body.validate()
12393+
12394+
def to_map(self):
12395+
_map = super().to_map()
12396+
if _map is not None:
12397+
return _map
12398+
12399+
result = dict()
12400+
if self.headers is not None:
12401+
result['headers'] = self.headers
12402+
if self.status_code is not None:
12403+
result['statusCode'] = self.status_code
12404+
if self.body is not None:
12405+
result['body'] = self.body.to_map()
12406+
return result
12407+
12408+
def from_map(self, m: dict = None):
12409+
m = m or dict()
12410+
if m.get('headers') is not None:
12411+
self.headers = m.get('headers')
12412+
if m.get('statusCode') is not None:
12413+
self.status_code = m.get('statusCode')
12414+
if m.get('body') is not None:
12415+
temp_model = DescribeBotRuleLabelsResponseBody()
12416+
self.body = temp_model.from_map(m['body'])
12417+
return self
12418+
12419+
1220512420
class DescribeCertDetailRequest(TeaModel):
1220612421
def __init__(
1220712422
self,

waf-openapi-20211001/setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
"""
2525
setup module for alibabacloud_waf_openapi20211001.
2626
27-
Created on 08/12/2025
27+
Created on 09/12/2025
2828
2929
@author: Alibaba Cloud SDK
3030
"""

0 commit comments

Comments
 (0)