summaryrefslogtreecommitdiff
path: root/data/en_us/saf/2019-05-21
diff options
context:
space:
mode:
authorZhineng Li <im@zhineng.li>2026-07-12 17:11:17 +0800
committerZhineng Li <im@zhineng.li>2026-07-12 17:11:17 +0800
commit1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634 (patch)
tree5f0857666365b7e40cdaa3733ebe1f3ba9e13c67 /data/en_us/saf/2019-05-21
parent7347bac4ab7e136157fc94777e6cf87ef9e08599 (diff)
downloadafterglow-metadata-full-1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634.tar.gz
afterglow-metadata-full-1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634.zip
update APIs 20260712
Diffstat (limited to 'data/en_us/saf/2019-05-21')
-rw-r--r--data/en_us/saf/2019-05-21/api-docs.php586
1 files changed, 262 insertions, 324 deletions
diff --git a/data/en_us/saf/2019-05-21/api-docs.php b/data/en_us/saf/2019-05-21/api-docs.php
index 781d18c..e3d4707 100644
--- a/data/en_us/saf/2019-05-21/api-docs.php
+++ b/data/en_us/saf/2019-05-21/api-docs.php
@@ -1,35 +1,21 @@
<?php return [
'version' => '1.0',
- 'info' => [
- 'style' => 'RPC',
- 'product' => 'saf',
- 'version' => '2019-05-21',
- ],
+ 'info' => ['style' => 'RPC', 'product' => 'saf', 'version' => '2019-05-21'],
'directories' => [
[
- 'id' => 181717,
- 'title' => null,
+ 'children' => ['ExecuteRequest'],
'type' => 'directory',
- 'children' => [
- 'ExecuteRequest',
- ],
+ 'title' => 'Public service invocation in China',
],
[
- 'id' => 181718,
- 'title' => null,
+ 'children' => ['ExecuteRequestML', 'ExecuteRequestSG'],
'type' => 'directory',
- 'children' => [
- 'ExecuteRequestML',
- 'ExecuteRequestSG',
- ],
+ 'title' => 'Public service invocation outside China',
],
[
- 'id' => 181726,
- 'title' => null,
+ 'children' => ['RequestDecision'],
'type' => 'directory',
- 'children' => [
- 'RequestDecision',
- ],
+ 'title' => 'Custom Event service invocation',
],
],
'components' => [
@@ -37,14 +23,9 @@
],
'apis' => [
'ExecuteRequest' => [
- 'summary' => 'Risk detection interface that supports both public service calls and custom event calls.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'summary' => 'Detects risks. This operation supports both public service invocations and custom event invocations.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -57,32 +38,18 @@
'riskType' => 'none',
'chargeType' => 'paid',
'abilityTreeCode' => '48720',
- 'abilityTreeNodes' => [
- 'FEATUREsaf7L0MVB',
- ],
+ 'abilityTreeNodes' => ['FEATUREsaf7L0MVB'],
],
'parameters' => [
[
'name' => 'ServiceParameters',
'in' => 'query',
- 'schema' => [
- 'description' => 'Service input parameters, a JSON formatted string containing the complete JSON information. If it is a custom event, an `eventCode` attribute needs to be added here.',
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => '{"accountId": "1233***"}',
- ],
+ 'schema' => ['description' => 'The service input parameters. The value is a JSON string. If you use a custom event, add the eventCode property.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '{"accountId": "1233***"}', 'title' => ''],
],
[
'name' => 'Service',
'in' => 'query',
- 'schema' => [
- 'description' => 'Service product code. For custom events, fill in `saf_de` here.',
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'account_abuse_pro',
- ],
+ 'schema' => ['description' => 'The service product code. If you use a custom event, set this parameter to saf_de.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'account_abuse_pro', 'title' => ''],
],
],
'responses' => [
@@ -90,94 +57,67 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'Status code.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => 'Result message.',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Data' => [
- 'description' => 'Data information, including fields such as tags, score, and extend.',
- 'type' => 'object',
- 'example' => '{"score": 80.4, "tags": "ra0601,rnk0002,rn0312"}',
- ],
- 'RequestId' => [
- 'description' => 'Request ID.',
- 'type' => 'string',
- 'example' => 'A5F41DC6-2070-5CE7-8B2D-7A23D882932D',
- ],
+ 'Code' => ['description' => 'The status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The result message.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Data' => ['description' => 'The data information, which contains fields such as tags, score, and extend.', 'type' => 'object', 'example' => '{"score": 80.4, "tags": "ra0601,rnk0002,rn0312"}', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'A5F41DC6-2070-5CE7-8B2D-7A23D882932D', 'title' => ''],
'AccessDeniedDetail' => [
- 'description' => 'The details about the access denial.'."\n",
+ 'description' => 'The details of the access denial.',
'type' => 'object',
'properties' => [
- 'AuthAction' => [
- 'description' => 'The specific operation attempted by the visitor (such as s3:PutObject, ec2:DescribeInstances, etc.)',
- 'type' => 'string',
- 'example' => 'yundun-saf:Execute',
- ],
- 'AuthPrincipalType' => [
- 'description' => 'Request the identity type of the subject.'."\n"
- .'- SubUser: Sub account (created by the main account).'."\n"
- .'- AssumdRoleUser: Role (temporary identity obtained through the AssumRole operation).',
- 'type' => 'string',
- 'example' => 'SubUser',
- ],
- 'AuthPrincipalOwnerId' => [
- 'description' => 'UID of the cloud account to which the requesting access subject belongs.',
- 'type' => 'string',
- 'example' => '178059440630****',
- ],
- 'AuthPrincipalDisplayName' => [
- 'description' => 'Request the readable identifier name of the subject (such as username, role name).',
- 'type' => 'string',
- 'example' => '29918048924096****',
- ],
- 'PolicyType' => [
- 'description' => 'Identify the scope and types of policy effects in unauthorized scenarios.'."\n"
- .'- AccountLevelIdentityBasedPolicy: Account Level Identity Policy (applies to the entire cloud account).'."\n"
- .'- ResourceGroupLevelIdentityBasedPolicy: Resource Group Level Identity Policy (applies to specified resource groups).'."\n"
- .'- SessionPolicy: Role Session Policy (Additional Policy for Temporary Sessions to Take Effect).'."\n"
- .'- ControlPolicy: Control Policy (Core Permission Control Policy).'."\n"
- .'- AssumRolePolicy: Role trust policy (defining which entities trust a role).',
- 'type' => 'string',
- 'example' => 'AccountLevelIdentityBasedPolicy',
- ],
- 'NoPermissionType' => [
- 'description' => 'Specific types of judgments without permission.'."\n"
- .'- ImplicitDeny: Implicit refusal (without explicit authorization).'."\n"
- .'- ExplicitDeny: Explicitly reject (explicitly reject the operation in the policy).',
- 'type' => 'string',
- 'example' => 'ImplicitDeny',
- ],
- 'EncodedDiagnosticMessage' => [
- 'description' => 'Base64 encoded permission diagnostic logs for troubleshooting and automated analysis.',
- 'type' => 'string',
- 'example' => 'AQIBIAAAA...r+ow==',
- ],
+ 'AuthAction' => ['description' => 'The specific operation that the requester attempted to perform, such as s3:PutObject or ec2:DescribeInstances.', 'type' => 'string', 'example' => 'yundun-saf:Execute', 'title' => ''],
+ 'AuthPrincipalType' => ['description' => 'The identity type of the request principal. Valid values:'."\n"
+ .'- SubUser: a RAM user created by the Alibaba Cloud account.'."\n"
+ .'- AssumedRoleUser: a role-based temporary identity obtained through the AssumeRole operation.', 'type' => 'string', 'example' => 'SubUser', 'title' => ''],
+ 'AuthPrincipalOwnerId' => ['description' => 'The UID of the Alibaba Cloud account to which the request principal belongs.', 'type' => 'string', 'example' => '178059440630****', 'title' => ''],
+ 'AuthPrincipalDisplayName' => ['description' => 'The human-readable display name of the request principal, such as a username or role name.', 'type' => 'string', 'example' => '29918048924096****', 'title' => ''],
+ 'PolicyType' => ['description' => 'The scope and type of the policy that caused the access denial. Valid values:'."\n"
+ .'- AccountLevelIdentityBasedPolicy: an account-level identity-based policy that applies to the entire Alibaba Cloud account.'."\n"
+ .'- ResourceGroupLevelIdentityBasedPolicy: a resource group-level identity-based policy that applies to a specified resource group.'."\n"
+ .'- SessionPolicy: a session policy that takes effect as an additional policy during a temporary session.'."\n"
+ .'- ControlPolicy: a control policy for core permission control.'."\n"
+ .'- AssumeRolePolicy: a role trust policy that defines which entities are trusted by the role.', 'type' => 'string', 'example' => 'AccountLevelIdentityBasedPolicy', 'title' => ''],
+ 'NoPermissionType' => ['description' => 'The specific type of the access denial. Valid values:'."\n"
+ .'- ImplicitDeny: implicit deny. No explicit authorization is granted.'."\n"
+ .'- ExplicitDeny: explicit deny. The policy explicitly denies the operation.', 'type' => 'string', 'example' => 'ImplicitDeny', 'title' => ''],
+ 'EncodedDiagnosticMessage' => ['description' => 'The Base64-encoded diagnostic log for permission issues. This log is used for troubleshooting and automated analysis.', 'type' => 'string', 'example' => 'AQIBIAAAA...r+ow==', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ ],
+ 'title' => 'Detect risks for multiple scenarios',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '15000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ExecuteRequest'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'yundun-saf:Execute',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SAF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": {\\n \\"score\\": 80.4,\\n \\"tags\\": \\"ra0601,rnk0002,rn0312\\"\\n },\\n \\"RequestId\\": \\"A5F41DC6-2070-5CE7-8B2D-7A23D882932D\\",\\n \\"AccessDeniedDetail\\": {\\n \\"AuthAction\\": \\"yundun-saf:Execute\\",\\n \\"AuthPrincipalType\\": \\"SubUser\\",\\n \\"AuthPrincipalOwnerId\\": \\"178059440630****\\",\\n \\"AuthPrincipalDisplayName\\": \\"29918048924096****\\",\\n \\"PolicyType\\": \\"AccountLevelIdentityBasedPolicy\\",\\n \\"NoPermissionType\\": \\"ImplicitDeny\\",\\n \\"EncodedDiagnosticMessage\\": \\"AQIBIAAAA...r+ow==\\"\\n }\\n}","type":"json"}]',
- 'title' => 'Multi-Scenario Risk Identification and Detection',
- 'translator' => 'machine',
],
'ExecuteRequestML' => [
- 'summary' => 'Risk detection interface, which only supports custom event calls and is applicable only in the Malaysian region.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'summary' => 'Calls the risk detection API. This API supports only custom event calls and is applicable only to the Malaysia region.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -190,46 +130,23 @@
'riskType' => 'none',
'chargeType' => 'paid',
'abilityTreeCode' => '48721',
- 'abilityTreeNodes' => [
- 'FEATUREsaf6MRPQF',
- ],
+ 'abilityTreeNodes' => ['FEATUREsaf6MRPQF'],
],
'parameters' => [
[
'name' => 'ServiceParameters',
'in' => 'query',
- 'schema' => [
- 'description' => 'Service input parameters, a JSON formatted string containing complete JSON information. It is necessary to add the `eventCode` attribute for custom events here.',
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => '{"accountId": "1233***"}',
- ],
+ 'schema' => ['description' => 'The service input parameters. The value is a JSON-formatted string that contains the complete JSON information. You must add the eventCode property of the custom event.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '{"accountId": "1233***"}', 'title' => ''],
],
[
'name' => 'Service',
'in' => 'query',
- 'schema' => [
- 'description' => 'Service product code. Since this interface only supports custom events, you should fill in `saf_de` here.',
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'saf_de',
- ],
+ 'schema' => ['description' => 'The service product code. Because this API supports only custom events, set this parameter to saf_de.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'saf_de', 'title' => ''],
],
[
'name' => 'Lang',
'in' => 'query',
- 'schema' => [
- 'type' => 'string',
- 'required' => false,
- 'default' => 'en-us',
- 'description' => 'The language of the content within the request and response. Valid values:'."\n"
- ."\n"
- .'* **zh**: Chinese (default)'."\n"
- .'* **en**: English',
- 'example' => 'en',
- ],
+ 'schema' => ['description' => 'The language.', 'type' => 'string', 'required' => false, 'default' => 'en-us', 'example' => 'en', 'title' => ''],
],
],
'responses' => [
@@ -237,44 +154,43 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'Status code.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => 'Result message.',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Data' => [
- 'description' => 'Data information, including fields such as tags, score, extend, etc.',
- 'type' => 'object',
- 'example' => '{"score": 80.4, "tags": "ra0601,rnk0002,rn0312"}',
- ],
- 'RequestId' => [
- 'description' => 'Request ID.',
- 'type' => 'string',
- 'example' => 'A5F41DC6-2070-5CE7-8B2D-7A23D882932D',
- ],
+ 'Code' => ['description' => 'The status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The result message.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Data' => ['description' => 'The data information, which contains fields such as tags, score, and extend.', 'type' => 'object', 'example' => '{"score": 80.4, "tags": "ra0601,rnk0002,rn0312"}', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'A5F41DC6-2070-5CE7-8B2D-7A23D882932D', 'title' => ''],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ ],
+ 'title' => 'Call the decision engine in the malaysia cluster',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '2000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ExecuteRequestML'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'yundun-saf:Execute',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SAF', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": {\\n \\"score\\": 80.4,\\n \\"tags\\": \\"ra0601,rnk0002,rn0312\\"\\n },\\n \\"RequestId\\": \\"A5F41DC6-2070-5CE7-8B2D-7A23D882932D\\"\\n}","type":"json"}]',
- 'title' => 'Invoke Decision Engine for Malaysian Cluster',
- 'translator' => 'machine',
],
'ExecuteRequestSG' => [
- 'summary' => 'Risk detection interface, which supports public service calls and custom event calls.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'summary' => 'Detects risks. This operation supports both public service invocations and custom event invocations.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -287,46 +203,23 @@
'riskType' => 'none',
'chargeType' => 'paid',
'abilityTreeCode' => '48722',
- 'abilityTreeNodes' => [
- 'FEATUREsaf6MRPQF',
- ],
+ 'abilityTreeNodes' => ['FEATUREsaf6MRPQF'],
],
'parameters' => [
[
'name' => 'ServiceParameters',
'in' => 'query',
- 'schema' => [
- 'description' => 'Service input parameters, a JSON formatted string containing the complete JSON information. If it is a custom event, add the `eventCode` attribute here.',
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => '{"accountId": "1233***"}',
- ],
+ 'schema' => ['description' => 'The service input parameters. The value is a JSON-formatted string that contains the complete JSON information. If you use a custom event, add the eventCode property.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '{"accountId": "1233***"}', 'title' => ''],
],
[
'name' => 'Service',
'in' => 'query',
- 'schema' => [
- 'description' => 'Service product code. For custom events, use `saf_de` here.',
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'account_abuse_intl_pro',
- ],
+ 'schema' => ['description' => 'The service product code. If you use a custom event, set this parameter to saf_de.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'account_abuse_intl_pro', 'title' => ''],
],
[
'name' => 'Lang',
'in' => 'query',
- 'schema' => [
- 'type' => 'string',
- 'required' => false,
- 'default' => 'en-us',
- 'description' => 'The language of the content within the request and response. Valid values:'."\n"
- ."\n"
- .'* **zh**: Chinese (default)'."\n"
- .'* **en**: English',
- 'example' => 'en',
- ],
+ 'schema' => ['description' => 'The language.', 'type' => 'string', 'required' => false, 'default' => 'en-us', 'example' => 'en', 'title' => ''],
],
],
'responses' => [
@@ -334,44 +227,43 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'Status code.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => 'Result message.',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Data' => [
- 'description' => 'Data information, including fields such as tags, score, extend, etc.',
- 'type' => 'object',
- 'example' => '{"score": 80.4, "tags": "ra0601,rnk0002,rn0312"}',
- ],
- 'RequestId' => [
- 'description' => 'Request ID.',
- 'type' => 'string',
- 'example' => 'A5F41DC6-2070-5CE7-8B2D-7A23D882932D',
- ],
+ 'Code' => ['description' => 'The status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The result message.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Data' => ['description' => 'The data information, which contains fields such as tags, score, and extend.', 'type' => 'object', 'example' => '{"score": 80.4, "tags": "ra0601,rnk0002,rn0312"}', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'A5F41DC6-2070-5CE7-8B2D-7A23D882932D', 'title' => ''],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ ],
+ 'title' => 'Call the decision engine singapore cluster',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '2000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ExecuteRequestSG'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'yundun-saf:Execute',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SAF', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": {\\n \\"score\\": 80.4,\\n \\"tags\\": \\"ra0601,rnk0002,rn0312\\"\\n },\\n \\"RequestId\\": \\"A5F41DC6-2070-5CE7-8B2D-7A23D882932D\\"\\n}","type":"json"}]',
- 'title' => 'Invoke Decision Engine Singapore Cluster',
- 'translator' => 'machine',
],
'RequestDecision' => [
- 'summary' => 'Invoke Decision Engine Interface',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'summary' => 'Detects risks. This operation supports only custom event calls.',
+ 'methods' => ['post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -384,118 +276,164 @@
'riskType' => 'none',
'chargeType' => 'paid',
'abilityTreeCode' => '114081',
- 'abilityTreeNodes' => [
- 'FEATUREsaf6MRPQF',
- ],
+ 'abilityTreeNodes' => ['FEATUREsaf6MRPQF'],
],
'parameters' => [
[
'name' => 'ServiceParameters',
'in' => 'query',
- 'schema' => [
- 'description' => 'Service input parameters, a string in JSON format, complete JSON string information.',
- 'type' => 'string',
- 'required' => false,
- 'example' => '{"accountId": "1233***"}',
- ],
+ 'schema' => ['description' => 'The service input parameters. The value is a JSON string that contains the complete JSON information.', 'type' => 'string', 'required' => false, 'example' => '{"accountId": "1233***"}', 'title' => ''],
],
[
'name' => 'EventCode',
'in' => 'query',
- 'schema' => [
- 'description' => 'Event code.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'de_*',
- ],
+ 'schema' => ['description' => 'The event code.', 'type' => 'string', 'required' => false, 'example' => 'de_*', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
+ 'title' => '',
'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Request ID.',
- 'type' => 'string',
- 'example' => 'A5F41DC6-2070-5CE7-8B2D-7A23D882932D',
- ],
- 'Code' => [
- 'description' => 'Status code.',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => 'Result message.',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Data' => [
- 'description' => 'Data information, including fields such as tags, score, and extend.',
- 'type' => 'object',
- 'example' => '{"score": 80.4, "tags": "ra0601,rnk0002,rn0312"}',
- ],
+ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'A5F41DC6-2070-5CE7-8B2D-7A23D882932D'],
+ 'Code' => ['description' => 'The status code.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The result message.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Data' => ['description' => 'The data information, which includes fields such as tags, score, and extend.', 'type' => 'object', 'example' => '{"score": 80.4, "tags": "ra0601,rnk0002,rn0312"}', 'title' => ''],
+ ],
+ 'example' => '',
+ ],
+ ],
+ ],
+ 'title' => 'Call a decision engine custom event',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '2000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'RequestDecision'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'yundun-saf:Execute',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SAF', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A5F41DC6-2070-5CE7-8B2D-7A23D882932D\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": {\\n \\"score\\": 80.4,\\n \\"tags\\": \\"ra0601,rnk0002,rn0312\\"\\n }\\n}","type":"json"}]',
- 'title' => 'RequestDecision',
- 'translator' => 'machine',
],
],
'endpoints' => [
- [
- 'regionId' => 'cn-hangzhou',
- 'endpoint' => 'saf.cn-hangzhou.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-beijing',
- 'endpoint' => 'saf.cn-beijing.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-zhangjiakou',
- 'endpoint' => 'saf.cn-zhangjiakou.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-shanghai',
- 'endpoint' => 'saf.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-shenzhen',
- 'endpoint' => 'saf.cn-shenzhen.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-hongkong',
- 'endpoint' => 'saf.cn-hongkong.aliyuncs.com',
- ],
- [
- 'regionId' => 'ap-southeast-1',
- 'endpoint' => 'saf.ap-southeast-1.aliyuncs.com',
- ],
- [
- 'regionId' => 'ap-southeast-3',
- 'endpoint' => 'saf.ap-southeast-3.aliyuncs.com',
- ],
- [
- 'regionId' => 'us-east-1',
- 'endpoint' => 'saf.us-east-1.aliyuncs.com',
- ],
- [
- 'regionId' => 'us-west-1',
- 'endpoint' => 'saf.us-west-1.aliyuncs.com',
- ],
- [
- 'regionId' => 'eu-central-1',
- 'endpoint' => 'saf.eu-central-1.aliyuncs.com',
+ ['regionId' => 'ap-southeast-1', 'regionName' => 'Singapore', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'saf.ap-southeast-1.aliyuncs.com', 'endpoint' => 'saf.ap-southeast-1.aliyuncs.com', 'vpc' => 'saf-vpc.ap-southeast-1.aliyuncs.com'],
+ ['regionId' => 'ap-southeast-3', 'regionName' => 'Malaysia (Kuala Lumpur)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'saf.ap-southeast-3.aliyuncs.com', 'endpoint' => 'saf.ap-southeast-3.aliyuncs.com', 'vpc' => 'saf-vpc.ap-southeast-3.aliyuncs.com'],
+ ['regionId' => 'cn-beijing', 'regionName' => 'China (Beijing)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'saf.cn-beijing.aliyuncs.com', 'endpoint' => 'saf.cn-beijing.aliyuncs.com', 'vpc' => 'saf-vpc.cn-beijing.aliyuncs.com'],
+ ['regionId' => 'cn-hangzhou', 'regionName' => 'China (Hangzhou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'saf.cn-hangzhou.aliyuncs.com', 'endpoint' => 'saf.cn-hangzhou.aliyuncs.com', 'vpc' => 'saf-vpc.cn-hangzhou.aliyuncs.com'],
+ ['regionId' => 'cn-hongkong', 'regionName' => 'China (Hong Kong)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'saf.cn-hongkong.aliyuncs.com', 'endpoint' => 'saf.cn-hongkong.aliyuncs.com', 'vpc' => 'saf-vpc.cn-hongkong.aliyuncs.com'],
+ ['regionId' => 'cn-shanghai', 'regionName' => 'China (Shanghai)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'saf.cn-shanghai.aliyuncs.com', 'endpoint' => 'saf.cn-shanghai.aliyuncs.com', 'vpc' => 'saf-vpc.cn-shanghai.aliyuncs.com'],
+ ['regionId' => 'cn-shenzhen', 'regionName' => 'China (Shenzhen)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'saf.cn-shenzhen.aliyuncs.com', 'endpoint' => 'saf.cn-shenzhen.aliyuncs.com', 'vpc' => 'saf-vpc.cn-shenzhen.aliyuncs.com'],
+ ['regionId' => 'cn-zhangjiakou', 'regionName' => 'China (Zhangjiakou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'saf.cn-zhangjiakou.aliyuncs.com', 'endpoint' => 'saf.cn-zhangjiakou.aliyuncs.com', 'vpc' => 'saf-vpc.cn-zhangjiakou.aliyuncs.com'],
+ ['regionId' => 'us-west-1', 'regionName' => 'US (Silicon Valley)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'saf.us-west-1.aliyuncs.com', 'endpoint' => 'saf.us-west-1.aliyuncs.com', 'vpc' => 'saf-vpc.us-west-1.aliyuncs.com'],
+ ['regionId' => 'us-east-1', 'regionName' => 'US (Virginia)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'saf.us-east-1.aliyuncs.com', 'endpoint' => 'saf.us-east-1.aliyuncs.com', 'vpc' => 'saf-vpc.us-east-1.aliyuncs.com'],
+ ['regionId' => 'eu-central-1', 'regionName' => 'Germany (Frankfurt)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'saf.eu-central-1.aliyuncs.com', 'endpoint' => 'saf.eu-central-1.aliyuncs.com', 'vpc' => 'saf-vpc.eu-central-1.aliyuncs.com'],
+ ['regionId' => 'ap-south-1', 'regionName' => 'India (Mumbai) Closed', 'areaId' => 'middleEast', 'areaName' => 'Middle East', 'public' => 'saf.ap-south-1.aliyuncs.com', 'endpoint' => 'saf.ap-south-1.aliyuncs.com', 'vpc' => 'saf-vpc.ap-south-1.aliyuncs.com'],
+ ],
+ 'errorCodes' => [
+ ['code' => '10001', 'message' => 'The current operation is not authorized. Please authorize it on RAM console using primary account.', 'http_code' => 200, 'description' => 'The RAM user has no permissions to perform the operation. Grant permissions to the RAM user in the RAM console by using an Alibaba Cloud account.'],
+ ['code' => '1004', 'message' => 'The format of default value is wrong. The default value of boolean type only allows true / false, case-insensitive. The default value of type double / int / long allows all numeric formats.', 'http_code' => 200, 'description' => 'The format of the default value is invalid. The default value of a Boolean parameter must be true or false. The value is case-insensitive. The default value of a Double, Integer, or Long parameter can be a digit in all formats.'],
+ ['code' => '1101', 'message' => 'The network or system is abnormal. Please try again later. Error code: 1101', 'http_code' => 200, 'description' => 'A network or system error occurred. Try again later. Error code: 1101.'],
+ ['code' => '1216', 'message' => 'The policy is being approved or the current policy state does not support the operation. Error code: 1216', 'http_code' => 200, 'description' => 'The policy is being reviewed or you cannot perform this operation on the policy in the current state. Error code: 1216.'],
+ ['code' => '1302', 'message' => 'An error occurred in your request. Please try again later.', 'http_code' => 200, 'description' => 'Failed to process your request. Try again later.'],
+ ['code' => '1401', 'message' => 'The decision engine has not been purchased yet. Please buy it and try again. Error code: 1401', 'http_code' => 200, 'description' => 'You have not bought a decision engine. Buy a decision engine and try again. Error code: 1401.'],
+ ['code' => 'ConsoleSystemError_1009', 'message' => 'CSRF token has expired, please login again.', 'http_code' => 200, 'description' => 'The CSRF token has expired. Refresh the page and try again.'],
+ ],
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '15000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ExecuteRequest'],
+ ['threshold' => '2000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'RequestDecision'],
+ ['threshold' => '2000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ExecuteRequestML'],
+ ['threshold' => '2000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ExecuteRequestSG'],
],
- [
- 'regionId' => 'ap-south-1',
- 'endpoint' => 'saf.ap-south-1.aliyuncs.com',
+ ],
+ 'ram' => [
+ 'productCode' => 'SAF',
+ 'productName' => 'Fraud Detection',
+ 'ramCodes' => ['yundun-saf'],
+ 'ramLevel' => 'OPERATION',
+ 'ramConditions' => [],
+ 'ramActions' => [
+ [
+ 'apiName' => 'ExecuteRequestSG',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'yundun-saf:Execute',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SAF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ExecuteRequestML',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'yundun-saf:Execute',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SAF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetToken',
+ 'description' => '',
+ 'operationType' => '',
+ 'ramAction' => [
+ 'action' => 'yundun-saf:GetToken',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SAF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'RequestDecision',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'yundun-saf:Execute',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SAF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ExecuteRequest',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'yundun-saf:Execute',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SAF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'resourceTypes' => [],
],
];