diff options
| author | Zhineng Li <im@zhineng.li> | 2026-07-12 17:11:17 +0800 |
|---|---|---|
| committer | Zhineng Li <im@zhineng.li> | 2026-07-12 17:11:17 +0800 |
| commit | 1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634 (patch) | |
| tree | 5f0857666365b7e40cdaa3733ebe1f3ba9e13c67 /data/en_us/green/2022-03-02/api-docs.php | |
| parent | 7347bac4ab7e136157fc94777e6cf87ef9e08599 (diff) | |
| download | afterglow-metadata-full-1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634.tar.gz afterglow-metadata-full-1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634.zip | |
update APIs 20260712
Diffstat (limited to 'data/en_us/green/2022-03-02/api-docs.php')
| -rw-r--r-- | data/en_us/green/2022-03-02/api-docs.php | 7600 |
1 files changed, 4138 insertions, 3462 deletions
diff --git a/data/en_us/green/2022-03-02/api-docs.php b/data/en_us/green/2022-03-02/api-docs.php index 84dc68e..112a2a0 100644 --- a/data/en_us/green/2022-03-02/api-docs.php +++ b/data/en_us/green/2022-03-02/api-docs.php @@ -1,10 +1,6 @@ <?php return [ 'version' => '1.0', - 'info' => [ - 'style' => 'RPC', - 'product' => 'Green', - 'version' => '2022-03-02', - ], + 'info' => ['style' => 'RPC', 'product' => 'Green', 'version' => '2022-03-02'], 'directories' => [ 'TextModerationPlus', 'TextModeration', @@ -20,353 +16,870 @@ 'FileModeration', 'DescribeFileModerationResult', [ - 'id' => 188835, - 'title' => null, - 'type' => 'directory', - 'children' => [ - 'DescribeImageResultExt', - 'UrlAsyncModeration', - 'DescribeUrlModerationResult', - 'DescribeUploadToken', - 'ImageBatchModeration', - 'ManualCallback', - 'ManualModeration', - 'ManualModerationResult', - ], - ], - [ - 'id' => 0, - 'title' => '其它', + 'children' => ['DescribeImageResultExt', 'UrlAsyncModeration', 'DescribeUrlModerationResult', 'DescribeUploadToken', 'ImageBatchModeration', 'ManualCallback', 'ManualModeration', 'ManualModerationResult', 'DescribeMultimodalModerationResult', 'MultiModalAgent', 'MultiModalGuard', 'MultiModalGuardAsync', 'MultiModalGuardAsyncResult', 'MultiModalGuardForBase64', 'MultiModalGuardWs', 'MultimodalAsyncModeration'], 'type' => 'directory', - 'children' => [ - 'MultiModalGuard', - 'MultiModalAgent', - ], + 'title' => 'Others', ], ], 'components' => [ 'schemas' => [], ], 'apis' => [ - 'TextModerationPlus' => [ - 'summary' => 'Moderates the input command and generated text of large language models (LLMs). Specific model input commands can be used to retrieve standard answers. The feature of enabling and disabling the moderation labels is also available.', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'https', - ], + 'DescribeFileModerationResult' => [ + 'summary' => 'Document review results', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', - 'chargeType' => 'paid', - 'abilityTreeCode' => '207632', - 'abilityTreeNodes' => [ - 'FEATURElvwangXYAQ5C', - ], + 'chargeType' => 'free', + 'abilityTreeCode' => '205895', + 'abilityTreeNodes' => ['FEATURElvwang6CEZ66'], ], 'parameters' => [ [ 'name' => 'Service', 'in' => 'formData', - 'schema' => [ - 'description' => 'The moderation service.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* chat_detection_pro: moderation of interactive content of private chats_Professional'."\n" - .'* llm_response_moderation: moderation of text generated by LLMs'."\n" - .'* llm_query_moderation: moderation of input text of LLMs'."\n" - .'* nickname_detection_pro: moderation of user nicknames_Professional'."\n" - .'* comment_detection_pro: moderation of comment content of public chats_Professional'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'chat_detection_pro' => '', - 'llm_response_moderation' => '', - 'llm_query_moderation' => '', - 'nickname_detection_pro' => '', - 'comment_detection_pro' => '', - ], - 'example' => 'llm_query_moderation', - ], + 'schema' => ['description' => 'The service for enhanced file moderation.', 'type' => 'string', 'required' => false, 'example' => 'document_detection', 'title' => ''], ], [ 'name' => 'ServiceParameters', 'in' => 'formData', - 'schema' => [ - 'description' => 'The parameters required by the moderation service. The value is a JSON string.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '{"content":"Content to be moderated"}'."\n", - ], + 'schema' => ['description' => 'The parameters for the moderation service, specified as a JSON string.'."\n" + ."\n" + .'- taskId: Required. The URL of the object to moderate. The URL must be accessible over the public network.', 'type' => 'string', 'required' => false, 'example' => '{\\"taskId\\":\\"vi_f_hPgx9PFIQISdlfA888hOFG-1yJq8v\\"}', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'Schema of Response'."\n", + 'description' => 'Response schema', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'Id of the request'."\n", - 'type' => 'string', - 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****', - ], - 'Code' => [ - 'description' => 'The returned HTTP status code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned in response to the request.'."\n", - 'type' => 'string', - 'example' => 'OK', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.', 'type' => 'string', 'example' => '6CF2815C-C8C7-4A01-B52E-FF6E24F53492'], + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request was successful.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'Data' => [ - 'description' => 'The moderation results.'."\n", + 'description' => 'The returned data.', 'type' => 'object', 'properties' => [ - 'Result' => [ - 'description' => 'The results.'."\n", + 'DataId' => ['description' => 'The ID of the data.', 'type' => 'string', 'example' => '26769ada6e264e7ba9aa048241e12be9', 'title' => ''], + 'Url' => ['description' => 'The download URL for the file.', 'type' => 'string', 'example' => 'https://detect-obj.oss-cn-hangzhou.aliyuncs.com/sample/xxxx.pdf', 'title' => ''], + 'DocType' => ['description' => 'The document type. This parameter is optional.', 'type' => 'string', 'example' => 'doc', 'title' => ''], + 'PageResult' => [ + 'description' => 'A list of moderation results.', 'type' => 'array', 'items' => [ - 'description' => 'The data returned.'."\n", + 'description' => 'The result content.', 'type' => 'object', 'properties' => [ - 'Label' => [ - 'description' => 'The label.'."\n", - 'type' => 'string', - 'example' => 'porn', - ], - 'Confidence' => [ - 'description' => 'The score of the confidence level. Valid values: 0 to 100. The value is accurate to two decimal places.'."\n", - 'type' => 'number', - 'format' => 'float', - 'example' => '81.22', - ], - 'RiskWords' => [ - 'description' => 'The term hit by the moderated content.'."\n", - 'type' => 'string', - 'example' => 'XXX', - ], - 'CustomizedHit' => [ - 'description' => 'The custom term hit by the moderated content.'."\n", + 'PageNum' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'ImageUrl' => ['description' => 'The URL of the image.', 'type' => 'string', 'example' => 'https://detect-obj.oss-cn-hangzhou.aliyuncs.com/sample/xxxx.jpg', 'title' => ''], + 'TextUrl' => ['description' => 'The URL where the text content is stored.', 'type' => 'string', 'example' => 'https://detect-obj.oss-cn-hangzhou.aliyuncs.com/sample/xxxx.txt', 'title' => ''], + 'ImageResult' => [ + 'description' => 'The image moderation results.', 'type' => 'array', 'items' => [ - 'description' => '', + 'description' => 'The result content.', 'type' => 'object', 'properties' => [ - 'LibName' => [ - 'description' => 'The library name.'."\n", - 'type' => 'string', - 'example' => 'test', + 'Description' => ['description' => 'The description.', 'type' => 'string', 'example' => '这个是标题', 'title' => ''], + 'Service' => ['description' => 'The service that was called.', 'type' => 'string', 'example' => 'baselineCheck', 'title' => ''], + 'Location' => [ + 'description' => 'The location information.', + 'type' => 'object', + 'properties' => [ + 'X' => ['description' => 'The X coordinate of the point.', 'type' => 'integer', 'format' => 'int32', 'example' => '11', 'title' => ''], + 'Y' => ['description' => 'The Y-coordinate of the point.', 'type' => 'integer', 'format' => 'int32', 'example' => '22', 'title' => ''], + 'W' => ['description' => 'The width of the detected area.', 'type' => 'integer', 'format' => 'int32', 'example' => '33', 'title' => ''], + 'H' => ['description' => 'The height of the detected area.', 'type' => 'integer', 'format' => 'int32', 'example' => '44', 'title' => ''], + ], + 'title' => '', + 'example' => '', ], - 'KeyWords' => [ - 'description' => 'The terms that are hit. Multiple terms are separated by commas (,).'."\n", - 'type' => 'string', - 'example' => 'xxx', + 'LabelResult' => [ + 'description' => 'The label information.', + 'type' => 'array', + 'items' => [ + 'description' => 'The label information.', + 'type' => 'object', + 'properties' => [ + 'Label' => ['description' => 'The label.', 'type' => 'string', 'example' => 'nonlabel', 'title' => ''], + 'Confidence' => ['description' => 'The confidence score.', 'type' => 'number', 'format' => 'float', 'example' => '25.0', 'title' => ''], + 'Description' => ['description' => 'The description.', 'type' => 'string', 'example' => '这个是标题'."\n", 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', ], + 'RiskLevel' => ['description' => 'The risk level.', 'type' => 'string', 'example' => 'high', 'title' => ''], ], + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], - 'Description' => [ - 'description' => 'The description of the label.', - 'type' => 'string', - 'example' => 'none', - ], - 'RiskPositions' => [ + 'TextResult' => [ + 'description' => 'The text moderation results.', 'type' => 'array', 'items' => [ + 'description' => 'The result content.', 'type' => 'object', 'properties' => [ - 'RiskWord' => [ - 'type' => 'string', - ], - 'StartPos' => [ - 'type' => 'integer', - 'format' => 'int32', + 'Description' => ['description' => 'The description.', 'type' => 'string', 'example' => '这是一个标题', 'title' => ''], + 'Service' => ['description' => 'The service.', 'type' => 'string', 'example' => 'chat_detection', 'title' => ''], + 'Text' => ['description' => 'The text content.', 'type' => 'string', 'example' => '吧啦吧啦', 'title' => ''], + 'TextSegment' => ['description' => 'Information about the text segment.', 'type' => 'string', 'example' => '[0,999]', 'title' => ''], + 'Labels' => ['description' => 'The value of the label.', 'type' => 'string', 'example' => 'porn', 'title' => ''], + 'Descriptions' => ['description' => 'The description of the label.', 'type' => 'string', 'example' => '疑似广告内容', 'title' => ''], + 'RiskWords' => ['description' => 'The risk keywords that were hit.', 'type' => 'string', 'example' => 'xxx', 'title' => ''], + 'RiskTips' => ['description' => 'Details about the hit risk.', 'type' => 'string', 'example' => 'xxx', 'title' => ''], + 'RiskLevel' => ['description' => 'The risk level.', 'type' => 'string', 'example' => 'high', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'PageSummary' => [ + 'description' => 'The summary information.', + 'type' => 'object', + 'properties' => [ + 'PageSum' => ['description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'ImageSummary' => [ + 'description' => 'The image summary information.', + 'type' => 'object', + 'properties' => [ + 'RiskLevel' => ['description' => 'The risk level.', 'type' => 'string', 'example' => 'high', 'title' => ''], + 'ImageLabels' => [ + 'description' => 'The image labels.', + 'type' => 'array', + 'items' => [ + 'description' => 'The image labels.', + 'type' => 'object', + 'properties' => [ + 'Label' => ['description' => 'The label.', 'type' => 'string', 'example' => 'contraband', 'title' => ''], + 'LabelSum' => ['description' => 'The number of times the label appears.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'Description' => ['description' => 'The description of the label.', 'type' => 'string', 'example' => 'test', 'title' => ''], ], - 'EndPos' => [ - 'type' => 'integer', - 'format' => 'int32', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'TextSummary' => [ + 'description' => 'The text summary information.', + 'type' => 'object', + 'properties' => [ + 'RiskLevel' => ['description' => 'The risk level.', 'type' => 'string', 'example' => 'high', 'title' => ''], + 'TextLabels' => [ + 'description' => 'The text labels.', + 'type' => 'array', + 'items' => [ + 'description' => 'The text labels.', + 'type' => 'object', + 'properties' => [ + 'Label' => ['description' => 'The label.', 'type' => 'string', 'example' => 'contraband', 'title' => ''], + 'LabelSum' => ['description' => 'The number of times the label appears.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'Description' => ['description' => 'The description of the label.', 'type' => 'string', 'example' => '未检测出风险', 'title' => ''], ], + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], - 'Advice' => [ - 'description' => 'The suggestion.'."\n", + 'RiskLevel' => ['description' => 'The risk level.', 'type' => 'string', 'example' => 'high', 'title' => ''], + 'AccountId' => ['description' => 'The AccountId specified in the request.', 'type' => 'string', 'example' => 'accountIdtest123', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6CF2815C-C8C7-4A01-B52E-FF6E24F53492\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": {\\n \\"DataId\\": \\"26769ada6e264e7ba9aa048241e12be9\\",\\n \\"Url\\": \\"https://detect-obj.oss-cn-hangzhou.aliyuncs.com/sample/xxxx.pdf\\",\\n \\"DocType\\": \\"doc\\",\\n \\"PageResult\\": [\\n {\\n \\"PageNum\\": 1,\\n \\"ImageUrl\\": \\"https://detect-obj.oss-cn-hangzhou.aliyuncs.com/sample/xxxx.jpg\\",\\n \\"TextUrl\\": \\"https://detect-obj.oss-cn-hangzhou.aliyuncs.com/sample/xxxx.txt\\",\\n \\"ImageResult\\": [\\n {\\n \\"Description\\": \\"这个是标题\\",\\n \\"Service\\": \\"baselineCheck\\",\\n \\"Location\\": {\\n \\"X\\": 11,\\n \\"Y\\": 22,\\n \\"W\\": 33,\\n \\"H\\": 44\\n },\\n \\"LabelResult\\": [\\n {\\n \\"Label\\": \\"nonlabel\\",\\n \\"Confidence\\": 25,\\n \\"Description\\": \\"这个是标题\\\\n\\"\\n }\\n ],\\n \\"RiskLevel\\": \\"high\\"\\n }\\n ],\\n \\"TextResult\\": [\\n {\\n \\"Description\\": \\"这是一个标题\\",\\n \\"Service\\": \\"chat_detection\\",\\n \\"Text\\": \\"吧啦吧啦\\",\\n \\"TextSegment\\": \\"[0,999]\\",\\n \\"Labels\\": \\"porn\\",\\n \\"Descriptions\\": \\"疑似广告内容\\",\\n \\"RiskWords\\": \\"xxx\\",\\n \\"RiskTips\\": \\"xxx\\",\\n \\"RiskLevel\\": \\"high\\"\\n }\\n ]\\n }\\n ],\\n \\"PageSummary\\": {\\n \\"PageSum\\": 1,\\n \\"ImageSummary\\": {\\n \\"RiskLevel\\": \\"high\\",\\n \\"ImageLabels\\": [\\n {\\n \\"Label\\": \\"contraband\\",\\n \\"LabelSum\\": 1,\\n \\"Description\\": \\"test\\"\\n }\\n ]\\n },\\n \\"TextSummary\\": {\\n \\"RiskLevel\\": \\"high\\",\\n \\"TextLabels\\": [\\n {\\n \\"Label\\": \\"contraband\\",\\n \\"LabelSum\\": 1,\\n \\"Description\\": \\"未检测出风险\\"\\n }\\n ]\\n }\\n },\\n \\"RiskLevel\\": \\"high\\",\\n \\"AccountId\\": \\"accountIdtest123\\"\\n }\\n}","type":"json"}]', + 'title' => 'Describe File Moderation Result', + 'changeSet' => [ + ['createdAt' => '2025-01-09T12:54:53.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-09-13T08:40:00.000Z', 'description' => 'Response parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeFileModerationResult'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:DescribeFileModerationResult', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + ], + ], + 'DescribeImageModerationResult' => [ + 'summary' => 'Retrieves the results of an Image Moderation Pro task.', + 'methods' => ['post'], + 'schemes' => ['https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '198839', + 'abilityTreeNodes' => ['FEATURElvwangLRLIH6'], + ], + 'parameters' => [ + [ + 'name' => 'ReqId', + 'in' => 'query', + 'schema' => ['description' => 'The \\`ReqId\\` returned by the asynchronous Image Moderation Pro API.', 'type' => 'string', 'required' => false, 'example' => 'B0963D30-BAB4-562F-9ED0-7A23AEC51C7C', 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Response schema', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The unique ID of the request. Alibaba Cloud generates this ID for each request. Use this ID to troubleshoot and locate issues.', 'type' => 'string', 'example' => '2881AD4F-638B-52A3-BA20-F74C5B1CEAE3'], + 'Code' => ['description' => 'The error code. This is the same as the HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Msg' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''], + 'Data' => [ + 'description' => 'The results of the image content moderation.', + 'type' => 'object', + 'properties' => [ + 'DataId' => ['description' => 'The value of the \\`dataId\\` parameter specified in the API request. This field is not returned if \\`dataId\\` was not specified.', 'type' => 'string', 'example' => '2a5389eb-4ff8-4584-ac99-644e2a539aa1', 'title' => ''], + 'Result' => [ + 'description' => 'The results of the image moderation, including risk labels and confidence scores.', 'type' => 'array', 'items' => [ - 'description' => 'The answer content.'."\n", + 'description' => 'A collection of results.', 'type' => 'object', 'properties' => [ - 'Answer' => [ - 'description' => 'The answer.'."\n", - 'type' => 'string', - 'example' => 'XXX', - ], - 'HitLabel' => [ - 'description' => 'Hit Label', - 'type' => 'string', - 'example' => 'xxx', - ], - 'HitLibName' => [ - 'description' => 'Hit Library Name', - 'type' => 'string', - 'example' => 'xxx', - ], + 'Label' => ['description' => 'The label returned after the image content is moderated.', 'type' => 'string', 'example' => 'violent_explosion', 'title' => ''], + 'Confidence' => ['description' => 'The confidence score. The value ranges from 0 to 100. The value is accurate to two decimal places.', 'type' => 'number', 'format' => 'float', 'example' => '81.22', 'title' => ''], + 'Description' => ['description' => 'The description.', 'type' => 'string', 'example' => '未检测出风险', 'title' => ''], + 'RiskLevel' => ['description' => 'The risk level.', 'type' => 'string', 'example' => 'high', 'title' => ''], ], + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], - 'Score' => [ - 'description' => 'The score.'."\n", - 'type' => 'number', - 'format' => 'float', - 'example' => '1', + 'FrameNum' => ['description' => 'The number of result frames.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'Frame' => ['description' => 'Information about the image frames.', 'type' => 'string', 'example' => '[{"result":[{"confidence":81.22,"label":"violent_explosion"}]}]', 'title' => ''], + 'ReqId' => ['description' => 'The \\`ReqId\\` returned by the asynchronous Image Moderation Pro API.', 'type' => 'string', 'example' => 'B0963D30-BAB4-562F-9ED0-7A23AEC51C7C'."\n", 'title' => ''], + 'RiskLevel' => ['description' => 'The risk level.', 'type' => 'string', 'example' => 'high', 'title' => ''], + 'ManualTaskId' => ['description' => 'The ID of the manual review task.', 'type' => 'string', 'example' => 'xxxxx-xxxxx', 'title' => ''], + 'AccountId' => ['description' => 'The AccountId specified in the request.', 'type' => 'string', 'example' => '123456789', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2881AD4F-638B-52A3-BA20-F74C5B1CEAE3\\",\\n \\"Code\\": 200,\\n \\"Msg\\": \\"success\\",\\n \\"Data\\": {\\n \\"DataId\\": \\"2a5389eb-4ff8-4584-ac99-644e2a539aa1\\",\\n \\"Result\\": [\\n {\\n \\"Label\\": \\"violent_explosion\\",\\n \\"Confidence\\": 81.22,\\n \\"Description\\": \\"未检测出风险\\",\\n \\"RiskLevel\\": \\"high\\"\\n }\\n ],\\n \\"FrameNum\\": 1,\\n \\"Frame\\": \\"[{\\\\\\"result\\\\\\":[{\\\\\\"confidence\\\\\\":81.22,\\\\\\"label\\\\\\":\\\\\\"violent_explosion\\\\\\"}]}]\\",\\n \\"ReqId\\": \\"B0963D30-BAB4-562F-9ED0-7A23AEC51C7C\\\\n\\",\\n \\"RiskLevel\\": \\"high\\",\\n \\"ManualTaskId\\": \\"xxxxx-xxxxx\\",\\n \\"AccountId\\": \\"123456789\\"\\n }\\n}","type":"json"}]', + 'title' => 'DescribeImageModerationResult', + 'description' => '- Billing information: This operation is not billed.'."\n" + ."\n" + .'- QPS limit: This operation is limited to 100 queries per second (QPS) for each user. If you exceed this limit, your API calls are throttled, which may affect your business. We recommend that you call this operation at a reasonable rate.', + 'responseParamsDescription' => 'The following table describes the returned \\`code\\`. You are charged only for requests that return a code of 200. You are not charged for requests that return other codes.'."\n" + ."\n" + .'| **Code** | **Description** |'."\n" + .'| -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |'."\n" + .'| 200 | The request is successful. |'."\n" + .'| 280 | Moderation is in progress. |'."\n" + .'| 400 | The request parameters are empty. |'."\n" + .'| 401 | The request parameters are invalid. |'."\n" + .'| 402 | The length of a request parameter is invalid. Check the parameter and try again. |'."\n" + .'| 403 | The request exceeds the QPS limit. Check and adjust the number of concurrent requests. |'."\n" + .'| 404 | An error occurred while downloading the image. Check the image or try again. |'."\n" + .'| 405 | The image download timed out. This can occur if the image is inaccessible. Check the image and try again. |'."\n" + .'| 406 | The image is too large. Resize the image and try again. |'."\n" + .'| 407 | The image format is not supported. Change the image format and try again. |'."\n" + .'| 408 | The account does not have permission to call this operation. This can happen if the service is not activated, the account has an overdue payment, or the account is not authorized. |'."\n" + .'| 409 | The specified `ReqId` does not exist. This can happen if the query interval is too short or the `ReqId` has expired. A `ReqId` is valid for 30 days. |'."\n" + .'| 500 | A system error occurred. |', + 'changeSet' => [ + ['createdAt' => '2025-06-12T02:05:04.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-03-17T05:56:52.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-08-20T09:55:57.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-07-03T11:04:23.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-01-03T11:20:05.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-11-09T03:38:37.000Z', 'description' => 'Response parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeImageModerationResult'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:DescribeImageModerationResult', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + ], + ], + 'DescribeImageResultExt' => [ + 'summary' => 'The enhanced image moderation auxiliary information API operation retrieves additional auxiliary information detected by the enhanced image moderation API operation, including OCR results and custom image library hit information.', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '178655', + 'abilityTreeNodes' => ['FEATURElvwangLRLIH6'], + ], + 'parameters' => [ + [ + 'name' => 'ReqId', + 'in' => 'formData', + 'schema' => ['description' => 'The requestId field returned by the enhanced image moderation API', 'type' => 'string', 'required' => false, 'example' => '638EDDC65C82AB39319A9F60', 'title' => ''], + ], + [ + 'name' => 'InfoType', + 'in' => 'formData', + 'schema' => ['description' => 'The type of information to obtain. Multiple values are separated by commas. Valid values:'."\n" + ."\n" + .'- customImage: custom image library hit information'."\n" + ."\n" + .'- textInImage: text information in the image', 'type' => 'string', 'required' => false, 'example' => 'customImage,textInImage', 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The returned object.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '6CF2815C-C8C7-4A01-B52E-FF6E24F53492'], + 'Code' => ['description' => 'The status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Msg' => ['description' => 'The response message of the request.', 'type' => 'string', 'example' => 'success', 'title' => ''], + 'Data' => [ + 'description' => 'The returned data.', + 'type' => 'object', + 'properties' => [ + 'CustomImage' => [ + 'description' => 'The list of custom image library hit information.', + 'type' => 'array', + 'items' => [ + 'description' => 'The custom image library hit information.', + 'type' => 'object', + 'properties' => [ + 'ImageId' => ['description' => 'The image ID.', 'type' => 'string', 'example' => '123456', 'title' => ''], + 'LibName' => ['description' => 'The image library name.', 'type' => 'string', 'example' => '图库123', 'title' => ''], + 'LibId' => ['description' => 'The image library ID.', 'type' => 'string', 'example' => '123456', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', ], - 'RiskLevel' => [ - 'description' => 'Risk Level', - 'type' => 'string', - 'example' => 'high', + 'TextInImage' => [ + 'description' => 'The text information in the hit image.', + 'type' => 'object', + 'properties' => [ + 'OcrDatas' => [ + 'description' => 'The text information detected in the image.', + 'type' => 'array', + 'items' => ['description' => 'The text information.', 'type' => 'string', 'example' => 'abcd', 'title' => ''], + 'title' => '', + 'example' => '', + ], + 'RiskWords' => [ + 'description' => 'The hit risk keywords', + 'type' => 'array', + 'items' => ['description' => 'The text information.', 'type' => 'string', 'example' => 'abcd', 'title' => ''], + 'title' => '', + 'example' => '', + ], + 'CustomTexts' => [ + 'description' => 'When a custom text library is hit, the custom library ID, custom library name, and custom words are returned.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'LibId' => ['description' => 'The custom library ID', 'type' => 'string', 'example' => '123456', 'title' => ''], + 'LibName' => ['description' => 'The custom library name.', 'type' => 'string', 'example' => '自定义库1', 'title' => ''], + 'KeyWords' => ['description' => 'The custom words, multiple words are separated by commas.', 'type' => 'string', 'example' => '自定义词1,自定义词2', 'title' => ''], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', ], - 'DataId' => [ - 'description' => 'The id of data', - 'type' => 'string', - 'example' => 'text1234', + 'PublicFigure' => [ + 'description' => 'The list of figure information.', + 'type' => 'array', + 'items' => [ + 'description' => 'The figure information.', + 'type' => 'object', + 'properties' => [ + 'FigureId' => ['description' => 'The figure ID.', 'type' => 'string', 'example' => 'yzazhzou', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', ], - 'SensitiveResult' => [ + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'DescribeImageResultExt', + 'description' => 'This API operation must be used with the enhanced image moderation API. After you call the enhanced image moderation API operation, you can call this API operation to obtain additional detection information. This API operation is free of charge.', + 'requestParamsDescription' => 'We recommend that you query 5 seconds after calling the enhanced image moderation API operation. The auxiliary information is stored for a maximum of 30 days. We recommend that you retrieve the auxiliary information when needed and store the logs properly.', + 'changeSet' => [ + ['createdAt' => '2024-04-11T11:00:56.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-06-20T05:54:01.000Z', 'description' => 'Response parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeImageResultExt'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'yundun-greenweb:DescribeImageResultExt', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6CF2815C-C8C7-4A01-B52E-FF6E24F53492\\",\\n \\"Code\\": 200,\\n \\"Msg\\": \\"success\\",\\n \\"Data\\": {\\n \\"CustomImage\\": [\\n {\\n \\"ImageId\\": \\"123456\\",\\n \\"LibName\\": \\"图库123\\",\\n \\"LibId\\": \\"123456\\"\\n }\\n ],\\n \\"TextInImage\\": {\\n \\"OcrDatas\\": [\\n \\"abcd\\"\\n ],\\n \\"RiskWords\\": [\\n \\"abcd\\"\\n ],\\n \\"CustomTexts\\": [\\n {\\n \\"LibId\\": \\"123456\\",\\n \\"LibName\\": \\"自定义库1\\",\\n \\"KeyWords\\": \\"自定义词1,自定义词2\\"\\n }\\n ]\\n },\\n \\"PublicFigure\\": [\\n {\\n \\"FigureId\\": \\"yzazhzou\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'DescribeMultimodalModerationResult' => [ + 'summary' => 'Query the results of an asynchronous multimodal moderation task.', + 'methods' => ['post'], + 'schemes' => ['https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '198839', + 'abilityTreeNodes' => ['FEATURElvwangLRLIH6'], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'ReqId', + 'in' => 'query', + 'schema' => ['description' => 'The ReqId field returned by the asynchronous moderation API.', 'type' => 'string', 'required' => false, 'example' => 'AAAAA-BBBBB-AIXI-1314-CCCCC', 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****', 'title' => ''], + 'Code' => ['description' => 'The error code, which matches the HTTP status code.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''], + 'Msg' => ['description' => 'The response message for this request.', 'type' => 'string', 'example' => 'OK', 'title' => ''], + 'Data' => [ + 'type' => 'object', + 'properties' => [ + 'CommentDatas' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ - 'Label' => [ - 'type' => 'string', - 'description' => 'The label', - 'example' => '1234', - ], - 'SensitiveLevel' => [ - 'type' => 'string', - 'description' => 'The level of sensitivity data', - 'example' => 'S1'."\n", + 'CommentDatas' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Results' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Description' => ['description' => 'Description of the Label field.', 'type' => 'string', 'example' => '疑似含有烟火类内容元素', 'title' => ''], + 'Label' => ['description' => 'Risk label.', 'type' => 'string', 'example' => 'violent_explosion', 'title' => ''], + ], + 'description' => 'Moderation result.', + 'title' => '', + 'example' => '', + ], + 'description' => 'Comment moderation results.', + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'description' => 'Moderation results.', + 'title' => '', + 'example' => '', ], - 'SensitiveData' => [ + 'Results' => [ 'type' => 'array', 'items' => [ - 'type' => 'string', - 'description' => 'The sensitive data.'."\n", - 'example' => 'xxx', + 'type' => 'object', + 'properties' => [ + 'Description' => ['description' => 'Description of the Label field.', 'type' => 'string', 'example' => '疑似含有烟火类内容元素', 'title' => ''], + 'Label' => ['description' => 'Risk label.', 'type' => 'string', 'example' => 'violent_explosion', 'title' => ''], + ], + 'description' => 'Image moderation service type.', + 'title' => '', + 'example' => '', ], - 'description' => 'The sensitive data.'."\n", + 'description' => 'Comment moderation results.', + 'title' => '', + 'example' => '', ], - 'Description' => [ - 'type' => 'string', - 'description' => 'Description'."\n", - 'example' => 'xxx', + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'description' => 'Comment moderation results.', + 'title' => '', + 'example' => '', + ], + 'MainData' => [ + 'type' => 'object', + 'properties' => [ + 'Results' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Description' => ['description' => 'Description of the Label field.', 'type' => 'string', 'example' => '疑似含有烟火类内容元素', 'title' => ''], + 'Label' => ['description' => 'Risk label.', 'type' => 'string', 'example' => 'violent_explosion', 'title' => ''], + ], + 'description' => 'Moderation result.', + 'title' => '', + 'example' => '', ], + 'description' => 'Main post moderation results.', + 'title' => '', + 'example' => '', ], - 'description' => 'The result of sensitivity data detect', ], - 'description' => 'The result of sensitivity data detect', + 'description' => 'Main post moderation results.', + 'title' => '', + 'example' => '', ], - 'AttackResult' => [ + 'ReqId' => ['description' => 'The ReqId field returned by the asynchronous moderation API.', 'type' => 'string', 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****', 'title' => ''], + 'RiskLevel' => ['description' => 'Risk level.', 'type' => 'string', 'example' => 'high', 'title' => ''], + 'DataId' => ['description' => 'The dataId value passed in the API request. This field is absent if no dataId was provided in the request.', 'type' => 'string', 'example' => 'data1234', 'title' => ''], + ], + 'description' => 'The returned data.', + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'description' => 'Schema of Response', + 'example' => '', + ], + ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'DescribeMultimodalModerationResult', + 'description' => '- Billing information: This API call is free.'."\n" + ."\n" + .'- Query timeout: Wait 30 seconds after you submit an asynchronous moderation task before querying the result. Do not wait longer than 24 hours, or the result will be automatically deleted.'."\n" + ."\n" + .'- This API has a per-user rate limiting limit of 10 requests per second. Exceeding this limit triggers rate limiting, which may affect your service. Call the API responsibly.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:DescribeMultimodalModerationResult', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\",\\n \\"Code\\": 200,\\n \\"Msg\\": \\"OK\\",\\n \\"Data\\": {\\n \\"CommentDatas\\": [\\n {\\n \\"CommentDatas\\": [\\n {\\n \\"Results\\": [\\n {\\n \\"Description\\": \\"疑似含有烟火类内容元素\\",\\n \\"Label\\": \\"violent_explosion\\"\\n }\\n ]\\n }\\n ],\\n \\"Results\\": [\\n {\\n \\"Description\\": \\"疑似含有烟火类内容元素\\",\\n \\"Label\\": \\"violent_explosion\\"\\n }\\n ]\\n }\\n ],\\n \\"MainData\\": {\\n \\"Results\\": [\\n {\\n \\"Description\\": \\"疑似含有烟火类内容元素\\",\\n \\"Label\\": \\"violent_explosion\\"\\n }\\n ]\\n },\\n \\"ReqId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\",\\n \\"RiskLevel\\": \\"high\\",\\n \\"DataId\\": \\"data1234\\"\\n }\\n}","type":"json"}]', + ], + 'DescribeUploadToken' => [ + 'methods' => ['post'], + 'schemes' => ['https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '186981', + 'abilityTreeNodes' => ['FEATURElvwang78REFZ'], + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****'], + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request was successful.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '200'], + 'Msg' => ['description' => 'The response message for the request.', 'type' => 'string', 'title' => '', 'example' => 'OK'], + 'Data' => [ + 'description' => 'The returned data.', + 'type' => 'object', + 'properties' => [ + 'AccessKeyId' => ['description' => 'The AccessKey ID of the temporary credential for file upload.', 'type' => 'string', 'title' => '', 'example' => 'STS.NUEUjvDqMuvH6oQA1TXxxH4wVR'], + 'AccessKeySecret' => ['description' => 'The temporary authorization secret.', 'type' => 'string', 'title' => '', 'example' => 'xxxx'], + 'SecurityToken' => ['description' => 'The security token of the temporary credential for file upload.', 'type' => 'string', 'title' => '', 'example' => 'xxxx'], + 'FileNamePrefix' => ['description' => 'The file prefix.', 'type' => 'string', 'title' => '', 'example' => 'upload/1xxb89/'], + 'OssInternalEndPoint' => ['description' => 'The internal endpoint of OSS.', 'type' => 'string', 'title' => '', 'example' => 'https://oss-cn-shanghai-internal.aliyuncs.com'], + 'OssInternetEndPoint' => ['description' => 'The Internet endpoint of OSS.', 'type' => 'string', 'title' => '', 'example' => 'https://oss-cn-shanghai.aliyuncs.com'], + 'BucketName' => ['description' => 'The bucket name.', 'type' => 'string', 'title' => '', 'example' => 'oss-cip-shanghai'], + 'Expiration' => ['description' => 'The expiration time.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '1720577200'], + ], + 'title' => '', + ], + ], + ], + ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'DescribeUploadToken', + 'summary' => 'Retrieves an upload token.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeUploadToken'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:DescribeUploadToken', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\",\\n \\"Code\\": 200,\\n \\"Msg\\": \\"OK\\",\\n \\"Data\\": {\\n \\"AccessKeyId\\": \\"STS.NUEUjvDqMuvH6oQA1TXxxH4wVR\\",\\n \\"AccessKeySecret\\": \\"xxxx\\",\\n \\"SecurityToken\\": \\"xxxx\\",\\n \\"FileNamePrefix\\": \\"upload/1xxb89/\\",\\n \\"OssInternalEndPoint\\": \\"https://oss-cn-shanghai-internal.aliyuncs.com\\",\\n \\"OssInternetEndPoint\\": \\"https://oss-cn-shanghai.aliyuncs.com\\",\\n \\"BucketName\\": \\"oss-cip-shanghai\\",\\n \\"Expiration\\": 1720577200\\n }\\n}","type":"json"}]', + ], + 'DescribeUrlModerationResult' => [ + 'summary' => 'Queries moderation results based on the ReqId returned by asynchronous URL moderation.', + 'methods' => ['post'], + 'schemes' => ['https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '211720', + 'abilityTreeNodes' => ['FEATURElvwang7UL554'], + ], + 'parameters' => [ + [ + 'name' => 'ReqId', + 'in' => 'formData', + 'schema' => ['description' => 'The ReqId field returned by the asynchronous URL moderation operation', 'type' => 'string', 'required' => false, 'example' => 'B0963D30-BAB4-562F-9ED0-7A23AEC51C7C', 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => 'The ID of this request.', 'type' => 'string', 'example' => '01F9144A-2088-5D87-935B-2DB865284B1A', 'title' => ''], + 'Code' => ['description' => 'The return code. A value of 200 indicates success.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Msg' => ['description' => 'The response message of this request.', 'type' => 'string', 'example' => 'success', 'title' => ''], + 'Data' => [ + 'description' => 'The returned data.', + 'type' => 'object', + 'properties' => [ + 'DataId' => ['description' => 'The value of the dataId parameter passed in the API request. This field is not returned if the parameter is not passed in the request.', 'type' => 'string', 'example' => '26769ada6e264e7ba9aa048241e12be9', 'title' => ''], + 'ReqId' => ['description' => 'The ReqId field returned by the asynchronous URL moderation operation', 'type' => 'string', 'example' => 'B0963D30-BAB4-562F-9ED0-7A23AEC51C7C'."\n", 'title' => ''], + 'Result' => [ + 'description' => 'The returned collection.', 'type' => 'array', 'items' => [ + 'description' => 'The returned collection.', 'type' => 'object', 'properties' => [ - 'Label' => [ - 'type' => 'string', - 'description' => 'The label', - 'example' => 'safe', - ], - 'Confidence' => [ - 'type' => 'number', - 'format' => 'float', - 'description' => 'The confidence', - 'example' => '0', - ], - 'AttackLevel' => [ - 'type' => 'string', - 'description' => 'The level of prompt attack', - 'example' => 'none', - ], - 'Description' => [ - 'type' => 'string', - 'description' => 'Description', - 'example' => 'safe', - ], + 'Label' => ['description' => 'The label returned after URL moderation.', 'type' => 'string', 'example' => 'sexual_url', 'title' => ''], + 'Confidence' => ['description' => 'The confidence score, ranging from 0 to 100, with two decimal places.', 'type' => 'number', 'format' => 'float', 'example' => '81.22', 'title' => ''], ], - 'description' => 'The result of prompt attack detect', + 'title' => '', + 'example' => '', ], - 'description' => 'The result of prompt attack detect', - ], - 'SensitiveLevel' => [ - 'type' => 'string', - 'description' => 'The level of sensitivity data', - 'example' => 'S0', - ], - 'AttackLevel' => [ - 'type' => 'string', - 'description' => 'The level of prompt attack', - 'example' => 'none', - ], - 'ManualTaskId' => [ - 'type' => 'string', - ], - 'DetectedLanguage' => [ - 'type' => 'string', + 'title' => '', + 'example' => '', ], - 'TranslatedContent' => [ - 'type' => 'string', - ], - 'AccountId' => [ - 'type' => 'string', - ], - 'Ext' => [ + 'ExtraInfo' => [ + 'description' => 'Additional information.', 'type' => 'object', 'properties' => [ - 'LlmContent' => [ - 'type' => 'object', - 'properties' => [ - 'OutputText' => [ - 'type' => 'string', - ], - ], - ], + 'IcpType' => ['description' => 'The ICP filing type.', 'type' => 'string', 'example' => '企业', 'title' => ''], + 'IcpNo' => ['description' => 'The ICP filing number.', 'type' => 'string', 'example' => 'ICP备123456789', 'title' => ''], + 'SiteType' => ['description' => 'The website type', 'type' => 'string', 'example' => 'game', 'title' => ''], ], + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": {\\n \\"Result\\": [\\n {\\n \\"Label\\": \\"porn\\",\\n \\"Confidence\\": 81.22,\\n \\"RiskWords\\": \\"XXX\\",\\n \\"CustomizedHit\\": [\\n {\\n \\"LibName\\": \\"测试词库\\",\\n \\"KeyWords\\": \\"xxx\\"\\n }\\n ],\\n \\"Description\\": \\"未检测出风险\\",\\n \\"RiskPositions\\": [\\n {\\n \\"RiskWord\\": \\"词A\\",\\n \\"StartPos\\": 4,\\n \\"EndPos\\": 6\\n }\\n ]\\n }\\n ],\\n \\"Advice\\": [\\n {\\n \\"Answer\\": \\"XXX\\",\\n \\"HitLabel\\": \\"XXX\\",\\n \\"HitLibName\\": \\"XXX\\"\\n }\\n ],\\n \\"Score\\": 1,\\n \\"RiskLevel\\": \\"high\\",\\n \\"DataId\\": \\"text1234\\",\\n \\"SensitiveResult\\": [\\n {\\n \\"Label\\": \\"1234\\",\\n \\"SensitiveLevel\\": \\"S1\\",\\n \\"SensitiveData\\": [\\n \\"上海\\"\\n ],\\n \\"Description\\": \\"省份\\"\\n }\\n ],\\n \\"AttackResult\\": [\\n {\\n \\"Label\\": \\"safe\\",\\n \\"Confidence\\": 0,\\n \\"AttackLevel\\": \\"none\\",\\n \\"Description\\": \\"safe\\"\\n }\\n ],\\n \\"SensitiveLevel\\": \\"S0\\",\\n \\"AttackLevel\\": \\"none\\",\\n \\"ManualTaskId\\": \\"xxxxx-xxxxx\\",\\n \\"DetectedLanguage\\": \\"en\\",\\n \\"TranslatedContent\\": \\"hello\\",\\n \\"AccountId\\": \\"123456789\\",\\n \\"Ext\\": {\\n \\"LlmContent\\": {\\n \\"OutputText\\": \\"正常。文本中无风险内容。\\"\\n }\\n }\\n }\\n}","type":"json"}]', - 'title' => 'TextModerationPlus', - 'description' => 'Before you call this operation, make sure that you have [activated the Content Moderation 2.0 service](https://common-buy.aliyun.com/?commodityCode=lvwang_cip_public_cn) and are familiar with the [billing](https://help.aliyun.com/document_detail/2671445.html?#section-6od-32j-99n) of the Text Moderation 2.0 Plus service.'."\n", - ], - 'TextModeration' => [ - 'summary' => 'Provides moderation services for multiple business scenarios and identifies various violation risks.', - 'methods' => [ - 'post', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'DescribeUrlModerationResult', + 'description' => '- Billing information: This operation is free of charge.'."\n" + ."\n" + .'- Query timeout: We recommend that you set the query interval to 480 seconds (query the results 480 seconds after you submit the asynchronous moderation task). The maximum timeout period is 3 days. After this period, the results are automatically deleted.'."\n" + ."\n" + .'- The QPS limit for this operation is 100 queries per second (QPS) per user. If the limit is exceeded, your API calls will be throttled, which may affect your business. Make sure you call the operation at a reasonable rate.', + 'changeSet' => [ + ['createdAt' => '2024-07-25T09:34:53.000Z', 'description' => 'Response parameters changed'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeUrlModerationResult'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:DescribeUrlModerationResult', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"01F9144A-2088-5D87-935B-2DB865284B1A\\",\\n \\"Code\\": 200,\\n \\"Msg\\": \\"success\\",\\n \\"Data\\": {\\n \\"DataId\\": \\"26769ada6e264e7ba9aa048241e12be9\\",\\n \\"ReqId\\": \\"B0963D30-BAB4-562F-9ED0-7A23AEC51C7C\\\\n\\",\\n \\"Result\\": [\\n {\\n \\"Label\\": \\"sexual_url\\",\\n \\"Confidence\\": 81.22\\n }\\n ],\\n \\"ExtraInfo\\": {\\n \\"IcpType\\": \\"企业\\",\\n \\"IcpNo\\": \\"ICP备123456789\\",\\n \\"SiteType\\": \\"game\\"\\n }\\n }\\n}","type":"json"}]', + ], + 'FileModeration' => [ + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -375,149 +888,544 @@ 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', + 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'paid', - 'abilityTreeCode' => '128601', - 'abilityTreeNodes' => [ - 'FEATURElvwang8G4HBD', - ], + 'abilityTreeCode' => '204033', + 'abilityTreeNodes' => ['FEATURElvwangCXKRID'], ], 'parameters' => [ [ 'name' => 'Service', 'in' => 'formData', + 'schema' => ['description' => 'The service supported by enhanced document moderation.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'document_detection'], + ], + [ + 'name' => 'ServiceParameters', + 'in' => 'formData', + 'schema' => ['description' => 'The set of parameters required for the moderation service. The value must be a JSON string.'."\n" + ."\n" + .'- url: Required. The URL of the object to be moderated. Make sure that the URL can be accessed over the Internet.'."\n" + .'- dataId: Optional. The data ID that corresponds to the moderated object.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => '{"url":"https://detect-obj.oss-cn-hangzhou.aliyuncs.com/sample/xxxx.pdf"}'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The type of the moderation service. Valid values: nickname_detection: user nickname chat_detection: chat interactions comment_detection: dynamic comments pgc_detection: professionally-generated content (PGC) teaching materials'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* pgc_detection: moderation of PGC teaching materials'."\n" - .'* nickname_detection: user nickname moderation'."\n" - .'* comment_multilingual_pro: multi-language moderation in international business scenarios'."\n" - .'* chat_detection: moderation of interactive content of private chats'."\n" - .'* ad_compliance_detection: advertising law compliance identification'."\n" - .'* comment_detection: moderation of comment content of public chats'."\n" - .'* ai_art_detection: AI-generated text identfication'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'enumValueTitles' => [ - 'pgc_detection' => 'pgc_detection', - 'nickname_detection' => 'nickname_detection', - 'comment_multilingual_pro' => 'comment_multilingual_pro', - 'chat_detection' => 'chat_detection', - 'ad_compliance_detection' => 'ad_compliance_detection', - 'comment_detection' => 'comment_detection', - 'ai_art_detection' => 'ai_art_detection', + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => 'Id of the request', 'type' => 'string', 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****'], + 'Message' => ['description' => 'The error message.', 'type' => 'string', 'title' => '', 'example' => 'SUCCESS'], + 'Code' => ['description' => 'The error code. This error code is the same as the HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '200'], + 'Data' => [ + 'description' => 'The returned data.', + 'type' => 'object', + 'properties' => [ + 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'title' => '', 'example' => 'xxxxx-xxxxx'], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'FileModeration', + 'summary' => 'Moderates document content.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'FileModeration'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:FileModeration', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], ], - 'example' => 'nickname_detection', ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\",\\n \\"Message\\": \\"SUCCESS\\",\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"TaskId\\": \\"xxxxx-xxxxx\\"\\n }\\n}","type":"json"}]', + ], + 'ImageAsyncModeration' => [ + 'summary' => 'This API is used for asynchronous image moderation. Asynchronous moderation tasks do not return detection results in real time. You can obtain the detection results using a callback or by polling. The detection results are retained for up to three days.', + 'methods' => ['post'], + 'schemes' => ['https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeCode' => '197491', + 'abilityTreeNodes' => ['FEATURElvwang78REFZ'], + ], + 'parameters' => [ + [ + 'name' => 'Service', + 'in' => 'query', + 'schema' => ['description' => 'The detection service supported by the enhanced image moderation feature. Valid values:'."\n" + ."\n" + .'- baselineCheck: common baseline moderation'."\n" + ."\n" + .'- baselineCheck\\_pro: common baseline moderation Professional Edition'."\n" + ."\n" + .'- baselineCheck\\_cb: common baseline moderation for services outside China'."\n" + ."\n" + .'- tonalityImprove: content administration moderation'."\n" + ."\n" + .'- aigcCheck: AIGC image moderation'."\n" + ."\n" + .'- profilePhotoCheck: profile picture moderation'."\n" + ."\n" + .'- advertisingCheck: ad material moderation'."\n" + ."\n" + .'- liveStreamCheck: video or live stream screenshot moderation', 'type' => 'string', 'required' => false, 'example' => 'baselineCheck', 'title' => ''], + ], [ 'name' => 'ServiceParameters', - 'in' => 'formData', + 'in' => 'query', + 'schema' => ['description' => 'A set of parameters related to the content to be moderated. The value must be a JSON string.', 'type' => 'string', 'required' => false, 'example' => '{"imageUrl":"https://img.alicdn.com/tfs/TB1U4r9AeH2gK0jSZJnXXaT1FXa-2880-480.png","dataId":"img123****"}', 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The parameters required by the moderation service. The value is a JSON string.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '{"content":"Content to be moderated"}'."\n", + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request. This ID is a unique identifier generated by Alibaba Cloud for the request. You can use this ID to troubleshoot and locate issues.', 'type' => 'string', 'example' => '4A926AE2-4C96-573F-824F-0532960799F8'], + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request was successful.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Msg' => ['description' => 'The response message for the current request.', 'type' => 'string', 'example' => 'success', 'title' => ''], + 'Data' => [ + 'description' => 'The result of the asynchronous image moderation.', + 'type' => 'object', + 'properties' => [ + 'ReqId' => ['description' => 'The reqId field returned by the enhanced asynchronous image moderation API. You can use this field to query the detection results.', 'type' => 'string', 'example' => 'A07B3DB9-D762-5C56-95B1-8EC55CF176D2', 'title' => ''], + 'DataId' => ['description' => 'The value of dataId that you specified in the API request. If you did not specify this parameter in the request, this field is not returned.', 'type' => 'string', 'example' => 'fb5ffab1-993b-449f-b8d6-b97d5e3331f2', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', ], ], ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'ImageAsyncModeration', + 'description' => '- The following image formats are supported: PNG, JPG, JPEG, BMP, WEBP, TIFF, ICO, HEIC, and SVG.'."\n" + ."\n" + .'- The image size cannot exceed 10 MB. The recommended image resolution is greater than 200 × 200 pixels. A low resolution may compromise the accuracy of the Content Moderation algorithm.'."\n" + ."\n" + .'- The timeout period for image downloads is 3 seconds. If an image download exceeds this duration, a download timeout error is returned.', + 'responseParamsDescription' => 'The following table describes the return codes.'."\n" + ."\n" + .'| **Code** | **Description** |'."\n" + .'| -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |'."\n" + .'| 200 | The request is successful. |'."\n" + .'| 400 | A required parameter is empty. |'."\n" + .'| 401 | A parameter is invalid. |'."\n" + .'| 402 | The length of a parameter does not meet the requirements. Check and modify the parameter. |'."\n" + .'| 403 | The number of queries per second (QPS) exceeds the limit. Check and adjust the number of concurrent requests. |'."\n" + .'| 408 | The account does not have the permissions to call the API. The service may not be activated for the account, the account may have an overdue payment, or the account is not granted the required permissions. |'."\n" + .'| 500 | A system error occurred. |', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ImageAsyncModeration'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:ImageAsyncModeration', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4A926AE2-4C96-573F-824F-0532960799F8\\",\\n \\"Code\\": 200,\\n \\"Msg\\": \\"success\\",\\n \\"Data\\": {\\n \\"ReqId\\": \\"A07B3DB9-D762-5C56-95B1-8EC55CF176D2\\",\\n \\"DataId\\": \\"fb5ffab1-993b-449f-b8d6-b97d5e3331f2\\"\\n }\\n}","type":"json"}]', + ], + 'ImageBatchModeration' => [ + 'summary' => 'Batch Invocation of Images', + 'methods' => ['post'], + 'schemes' => ['https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeCode' => '214644', + 'abilityTreeNodes' => ['FEATURElvwang78REFZ', 'FEATURElvwangRPPHPG', 'FEATURElvwangRBUEEU', 'FEATURElvwang7UTKSK', 'FEATURElvwangYHRCHH', 'FEATURElvwang8B97ZG', 'FEATURElvwangT9BDZM'], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'Service', + 'in' => 'query', + 'schema' => ['description' => 'The detection services supported by Image Moderation Pro. Separate multiple services with commas. Valid values:'."\n" + ."\n" + .'- baselineCheck: General baseline check'."\n" + ."\n" + .'- baselineCheck\\_pro: General baseline check (Professional Edition)'."\n" + ."\n" + .'- tonalityImprove: Content administration check'."\n" + ."\n" + .'- aigcCheck: AIGC image check', 'type' => 'string', 'required' => false, 'example' => 'baselineCheck,tonalityImprove', 'title' => ''], + ], + [ + 'name' => 'ServiceParameters', + 'in' => 'query', + 'schema' => ['description' => 'The parameters for the content to moderate.', 'type' => 'string', 'required' => false, 'example' => '{'."\n" + .' "imageUrl": "https://img.alicdn.com/tfs/TB1U4r9AeH2gK0jSZJnXXaT1FXa-2880-480.png",'."\n" + .' "dataId": "img123****"'."\n" + .' }', 'title' => ''], + ], + ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", + 'description' => 'Response body.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****', - ], - 'Code' => [ - 'description' => 'The returned HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned in response to the request.'."\n", - 'type' => 'string', - 'example' => 'OK', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The unique ID of the request. Alibaba Cloud generates this ID for each request. Use this ID to troubleshoot issues.', 'type' => 'string', 'example' => '6CF2815C-C8C7-4A01-B52E-FF6E24F53492'."\n"], + 'Code' => ['description' => 'The return code. A value of 200 indicates success.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Msg' => ['description' => 'The response message for the request.', 'type' => 'string', 'example' => 'success', 'title' => ''], 'Data' => [ - 'description' => 'The moderation results.'."\n", + 'description' => 'The results of the image content moderation.', 'type' => 'object', 'properties' => [ - 'labels' => [ - 'description' => 'The labels. Multiple labels are separated by commas (,). Valid values: ad: ad violation profanity: abuse contraband: contraband sexual_content: pornography violence: violence nonsense: irrigation spam: spam negative_content: undesirable content cyberbullying: cyberbullying C_customized: custom library that is hit'."\n", - 'type' => 'string', - 'example' => 'porn', - ], - 'reason' => [ - 'description' => 'The JSON string used to locate the cause. Valid values: riskTips: subcategory label riskWords: risk words adNums: hit advertising number customizedWords: customized words customizedLibs: customized libraries'."\n", - 'type' => 'string', - 'example' => '{\\"detectedLanguage\\":\\"ar\\",\\"riskTips\\":\\"sexuality_Suggestive\\",\\"riskWords\\":\\"pxxxxy\\",\\"translatedContent\\":\\"pxxxxy sxxxx\\"}', - ], - 'accountId' => [ - 'description' => 'The ID of the Alibaba Cloud account.'."\n", - 'type' => 'string', - 'example' => '123456', - ], - 'deviceId' => [ - 'description' => 'The device ID.'."\n", - 'type' => 'string', - 'example' => 'xxxxxx', - ], - 'dataId' => [ - 'description' => 'The ID of the moderated object.', - 'type' => 'string', - 'example' => 'text1234', - ], - 'descriptions' => [ - 'description' => 'The description of the labels.', - 'type' => 'string', - 'example' => 'no risk', - ], - 'manualTaskId' => [ - 'type' => 'string', - ], - 'ext' => [ - 'type' => 'object', - 'properties' => [ - 'llmContent' => [ - 'type' => 'object', - 'properties' => [ - 'outputText' => [ - 'type' => 'string', + 'DataId' => ['description' => 'The data ID of the moderated object.', 'type' => 'string', 'example' => '26769ada6e264e7ba9aa048241e12be9', 'title' => ''], + 'Results' => [ + 'description' => 'The detailed moderation results for each detection service. This is an array.', + 'type' => 'array', + 'items' => [ + 'description' => 'The data structure.', + 'type' => 'object', + 'properties' => [ + 'Service' => ['description' => 'The detection service supported by Image Moderation Pro.', 'type' => 'string', 'example' => 'baselineCheck', 'title' => ''], + 'Result' => [ + 'description' => 'The results of the image detection, including threat labels and confidence scores. This is an array.', + 'type' => 'array', + 'items' => [ + 'description' => 'The data structure.', + 'type' => 'object', + 'properties' => [ + 'Label' => ['description' => 'The label returned after the image content moderation. An image may have multiple labels and scores.', 'type' => 'string', 'example' => 'violent_explosion', 'title' => ''], + 'Confidence' => ['description' => 'The confidence score. The value ranges from 0 to 100, with two decimal places. Some labels do not have a confidence score.', 'type' => 'number', 'format' => 'float', 'example' => '81.22', 'title' => ''], + 'Description' => ['description' => 'The description.', 'type' => 'string', 'example' => '未检测出风险', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'Ext' => [ + 'description' => 'Additional reference information for the image.', + 'type' => 'object', + 'properties' => [ + 'TextInImage' => [ + 'description' => 'The text detected in the image.', + 'type' => 'object', + 'properties' => [ + 'OcrResult' => [ + 'description' => 'The information for each line of text recognized in the image.', + 'type' => 'array', + 'items' => [ + 'description' => 'The data structure.', + 'type' => 'object', + 'properties' => [ + 'Text' => ['description' => 'The text.', 'type' => 'string', 'example' => 'abcd', 'title' => ''], + 'Location' => [ + 'description' => 'The coordinates of the text line.', + 'type' => 'object', + 'properties' => [ + 'X' => ['description' => 'The x-coordinate of the upper-left corner of the text area, in pixels. The origin (0,0) is the upper-left corner of the image.', 'type' => 'integer', 'format' => 'int32', 'example' => '11', 'title' => ''], + 'Y' => ['description' => 'The y-coordinate of the upper-left corner of the text area, in pixels. The origin (0,0) is the upper-left corner of the image.', 'type' => 'integer', 'format' => 'int32', 'example' => '22', 'title' => ''], + 'H' => ['description' => 'The height of the text area, in pixels.', 'type' => 'integer', 'format' => 'int32', 'example' => '33', 'title' => ''], + 'W' => ['description' => 'The width of the text area, in pixels.', 'type' => 'integer', 'format' => 'int32', 'example' => '44', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'RiskWord' => [ + 'description' => 'The detected risk keywords.', + 'type' => 'array', + 'items' => ['description' => 'The text.', 'type' => 'string', 'example' => '火箭', 'title' => ''], + 'title' => '', + 'example' => '', + ], + 'CustomText' => [ + 'description' => 'If a custom text library is hit, the ID and name of the library, and the hit keywords are returned.', + 'type' => 'array', + 'items' => [ + 'description' => 'The data structure.', + 'type' => 'object', + 'properties' => [ + 'LibId' => ['description' => 'The ID of the custom library.', 'type' => 'string', 'example' => '123456', 'title' => ''], + 'LibName' => ['description' => 'The name of the custom library.', 'type' => 'string', 'example' => '自定义库1', 'title' => ''], + 'KeyWords' => ['description' => 'The custom keywords. Separate multiple keywords with a comma.', 'type' => 'string', 'example' => '自定义词1,自定义词2', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'CustomImage' => [ + 'description' => 'A list of hits in custom image libraries.', + 'type' => 'array', + 'items' => [ + 'description' => 'The data structure.', + 'type' => 'object', + 'properties' => [ + 'LibId' => ['description' => 'The ID of the custom library.', 'type' => 'string', 'example' => '1965304870002', 'title' => ''], + 'ImageId' => ['description' => 'The ID of the hit custom image.', 'type' => 'string', 'example' => '1965304870002', 'title' => ''], + 'LibName' => ['description' => 'The name of the hit custom image library.', 'type' => 'string', 'example' => '白名单', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'PublicFigure' => [ + 'description' => 'A list of public figures.', + 'type' => 'array', + 'items' => [ + 'description' => 'The data structure.', + 'type' => 'object', + 'properties' => [ + 'FigureName' => ['description' => 'The name of the recognized public figure.', 'type' => 'string', 'example' => 'xxxxx', 'title' => ''], + 'FigureId' => ['description' => 'The ID of the recognized public figure.', 'type' => 'string', 'example' => '12324222', 'title' => ''], + 'Location' => [ + 'description' => 'The location of the recognized object.', + 'type' => 'array', + 'items' => [ + 'description' => 'The data structure.', + 'type' => 'object', + 'properties' => [ + 'X' => ['description' => 'The x-coordinate of the upper-left corner of the area, in pixels. The origin (0,0) is the upper-left corner of the image.', 'type' => 'integer', 'format' => 'int32', 'example' => '11', 'title' => ''], + 'Y' => ['description' => 'The y-coordinate of the upper-left corner of the area, in pixels. The origin (0,0) is the upper-left corner of the image.', 'type' => 'integer', 'format' => 'int32', 'example' => '22', 'title' => ''], + 'W' => ['description' => 'The width of the area, in pixels.', 'type' => 'integer', 'format' => 'int32', 'example' => '330', 'title' => ''], + 'H' => ['description' => 'The height of the area, in pixels.', 'type' => 'integer', 'format' => 'int32', 'example' => '440', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'LogoData' => [ + 'description' => 'Logo information.', + 'type' => 'object', + 'properties' => [ + 'Location' => [ + 'description' => 'The location of the recognized object.', + 'type' => 'object', + 'properties' => [ + 'X' => ['description' => 'The x-coordinate of the upper-left corner of the area, in pixels. The origin (0,0) is the upper-left corner of the image.', 'type' => 'integer', 'format' => 'int32', 'example' => '11', 'title' => ''], + 'Y' => ['description' => 'The y-coordinate of the upper-left corner of the area, in pixels. The origin (0,0) is the upper-left corner of the image.', 'type' => 'integer', 'format' => 'int32', 'example' => '22', 'title' => ''], + 'W' => ['description' => 'The width of the logo area, in pixels.', 'type' => 'integer', 'format' => 'int32', 'example' => '330', 'title' => ''], + 'H' => ['description' => 'The height of the logo area, in pixels.', 'type' => 'integer', 'format' => 'int32', 'example' => '440', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'Logo' => [ + 'description' => 'Identity information.', + 'type' => 'array', + 'items' => [ + 'description' => 'The data structure.', + 'type' => 'object', + 'properties' => [ + 'Label' => ['description' => 'The category of the logo.', 'type' => 'string', 'example' => 'logo_sns', 'title' => ''], + 'Name' => ['description' => 'The name of the logo.', 'type' => 'string', 'example' => '阿里云', 'title' => ''], + 'Confidence' => ['description' => 'The confidence score. The value ranges from 0 to 100, with two decimal places.', 'type' => 'number', 'format' => 'float', 'example' => '99.1', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], ], + 'title' => '', + 'example' => '', ], + 'RiskLevel' => ['description' => 'The risk level.', 'type' => 'string', 'example' => 'high', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'Result' => [ + 'description' => 'An array of results for the image moderation. The results contain parameters such as threat labels and confidence scores.', + 'type' => 'array', + 'items' => [ + 'description' => 'The data structure.', + 'type' => 'object', + 'properties' => [ + 'Label' => ['description' => 'The label returned after the image content moderation. An image may have multiple labels and scores.', 'type' => 'string', 'example' => 'violent_explosion', 'title' => ''], + 'Confidence' => ['description' => 'The confidence score. The value ranges from 0 to 100, with two decimal places. Some labels do not have a confidence score.', 'type' => 'number', 'format' => 'float', 'example' => '81.22', 'title' => ''], + 'Description' => ['description' => 'The description.', 'type' => 'string', 'example' => '未检测出风险', 'title' => ''], ], + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], + 'RiskLevel' => ['description' => 'The risk level.', 'type' => 'string', 'example' => 'high', 'title' => ''], + 'ManualTaskId' => ['description' => 'The ID of the manual review task.', 'type' => 'string', 'example' => 'xxxxx-xxxxx', 'title' => ''], ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": {\\n \\"labels\\": \\"porn\\",\\n \\"reason\\": \\"{\\\\\\\\\\\\\\"riskLevel\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"high\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"riskTips\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"色情_低俗词\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"riskWords\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"色情服务\\\\\\\\\\\\\\"}\\",\\n \\"accountId\\": \\"123456\\",\\n \\"deviceId\\": \\"xxxxxx\\",\\n \\"dataId\\": \\"text1234\\",\\n \\"descriptions\\": \\"疑似广告内容\\",\\n \\"manualTaskId\\": \\"xxxxx-xxxxx\\",\\n \\"ext\\": {\\n \\"llmContent\\": {\\n \\"outputText\\": \\"正常。文本中无风险内容。\\"\\n }\\n }\\n }\\n}","type":"json"}]', - 'title' => 'TextModeration', - 'description' => 'Before you call this operation, make sure that you are familiar with the [billing](https://help.aliyun.com/document_detail/464388.html?#section-itm-m2s-ugq) of Text Moderation 2.0.'."\n", - ], - 'ImageModeration' => [ - 'summary' => 'Identifies whether an image contains content or elements that violate relevant regulations on network content dissemination, affect the content order of a specific platform, or affect user experience. Image Moderation 2.0 supports over 90 content risk labels and over 100 risk control items. Image Moderation 2.0 of Content Moderation allows you to develop further moderation or governance measures for specific image content based on business scenarios, platform-specific content governance rules, or rich risk labels and scores of confidence levels returned by API calls.', - 'methods' => [ - 'post', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6CF2815C-C8C7-4A01-B52E-FF6E24F53492\\\\n\\",\\n \\"Code\\": 200,\\n \\"Msg\\": \\"success\\",\\n \\"Data\\": {\\n \\"DataId\\": \\"26769ada6e264e7ba9aa048241e12be9\\",\\n \\"Results\\": [\\n {\\n \\"Service\\": \\"baselineCheck\\",\\n \\"Result\\": [\\n {\\n \\"Label\\": \\"violent_explosion\\",\\n \\"Confidence\\": 81.22,\\n \\"Description\\": \\"未检测出风险\\"\\n }\\n ],\\n \\"Ext\\": {\\n \\"TextInImage\\": {\\n \\"OcrResult\\": [\\n {\\n \\"Text\\": \\"abcd\\",\\n \\"Location\\": {\\n \\"X\\": 11,\\n \\"Y\\": 22,\\n \\"H\\": 33,\\n \\"W\\": 44\\n }\\n }\\n ],\\n \\"RiskWord\\": [\\n \\"火箭\\"\\n ],\\n \\"CustomText\\": [\\n {\\n \\"LibId\\": \\"123456\\",\\n \\"LibName\\": \\"自定义库1\\",\\n \\"KeyWords\\": \\"自定义词1,自定义词2\\"\\n }\\n ]\\n },\\n \\"CustomImage\\": [\\n {\\n \\"LibId\\": \\"1965304870002\\",\\n \\"ImageId\\": \\"1965304870002\\",\\n \\"LibName\\": \\"白名单\\"\\n }\\n ],\\n \\"PublicFigure\\": [\\n {\\n \\"FigureName\\": \\"xxxxx\\",\\n \\"FigureId\\": \\"12324222\\",\\n \\"Location\\": [\\n {\\n \\"X\\": 11,\\n \\"Y\\": 22,\\n \\"W\\": 330,\\n \\"H\\": 440\\n }\\n ]\\n }\\n ],\\n \\"LogoData\\": {\\n \\"Location\\": {\\n \\"X\\": 11,\\n \\"Y\\": 22,\\n \\"W\\": 330,\\n \\"H\\": 440\\n },\\n \\"Logo\\": [\\n {\\n \\"Label\\": \\"logo_sns\\",\\n \\"Name\\": \\"阿里云\\",\\n \\"Confidence\\": 99.1\\n }\\n ]\\n }\\n },\\n \\"RiskLevel\\": \\"high\\"\\n }\\n ],\\n \\"Result\\": [\\n {\\n \\"Label\\": \\"violent_explosion\\",\\n \\"Confidence\\": 81.22,\\n \\"Description\\": \\"未检测出风险\\"\\n }\\n ],\\n \\"RiskLevel\\": \\"high\\",\\n \\"ManualTaskId\\": \\"xxxxx-xxxxx\\"\\n }\\n}","type":"json"}]', + 'title' => 'ImageBatchModeration', + 'requestParamsDescription' => '```'."\n" + .'{'."\n" + .' "Service": "baselineCheck,tonalityImprove",'."\n" + .' "ServiceParameters": {'."\n" + .' "imageUrl": "https://img.alicdn.com/tfs/TB1U4r9AeH2gK0jSZJnXXaT1FXa-2880-480.png",'."\n" + .' "dataId": "img123****"'."\n" + .' }'."\n" + .'}'."\n" + .'```', + 'responseParamsDescription' => '```'."\n" + .'{'."\n" + .' "Msg": "success",'."\n" + .' "Code": 200,'."\n" + .' "Data": {'."\n" + .' "DataId": "img123****",'."\n" + .' "Result": ['."\n" + .' {'."\n" + .' "Label": "violent_explosion",'."\n" + .' "Confidence": 70,'."\n" + .' "Description": "Fireworks-related content"'."\n" + .' },'."\n" + .' {'."\n" + .' "Label": "violent_explosion_lib",'."\n" + .' "Confidence": 81,'."\n" + .' "Description": "Fireworks-related content_Hit in custom library"'."\n" + .' }'."\n" + .' ],'."\n" + .' "RiskLevel": "high",'."\n" + .' "Results": ['."\n" + .' {'."\n" + .' "Result": ['."\n" + .' {'."\n" + .' "Label": "violent_explosion",'."\n" + .' "Confidence": 70,'."\n" + .' "Description": "Fireworks-related content"'."\n" + .' }'."\n" + .' ],'."\n" + .' "RiskLevel": "high",'."\n" + .' "Service": "baselineCheck_pro"'."\n" + .' },'."\n" + .' {'."\n" + .' "Result": ['."\n" + .' {'."\n" + .' "Label": "violent_explosion_lib",'."\n" + .' "Confidence": 81,'."\n" + .' "Description": "Fireworks-related content_Hit in custom library"'."\n" + .' }'."\n" + .' ],'."\n" + .' "RiskLevel": "high",'."\n" + .' "Service": "baselineCheck"'."\n" + .' }'."\n" + .' ]'."\n" + .' },'."\n" + .' "RequestId": "ABCD1234-1234-1234-1234-1234XYZ"'."\n" + .'}'."\n" + .'```', + 'changeSet' => [ + ['createdAt' => '2025-06-12T02:05:04.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-11-28T07:35:09.000Z', 'description' => 'Request parameters changed'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ImageBatchModeration'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:ImageBatchModeration', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'ImageModeration' => [ + 'summary' => 'Image moderation', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -530,667 +1438,460 @@ 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeCode' => '142557', - 'abilityTreeNodes' => [ - 'FEATURElvwang78REFZ', - ], + 'abilityTreeNodes' => ['FEATURElvwang78REFZ'], ], 'parameters' => [ [ 'name' => 'Service', 'in' => 'formData', 'schema' => [ - 'description' => 'The moderation services supported by Image Moderation 2.0. Valid values:'."\n" + 'description' => 'The detection types supported by the enhanced image moderation feature. Valid values:'."\n" ."\n" - .'* baselineCheck: common baseline moderation'."\n" - .'* baselineCheck_pro: common baseline moderation_Professional'."\n" - .'* baselineCheck_cb: common baseline moderation_For regions outside the Chinese mainland'."\n" - .'* tonalityImprove: content governance moderation'."\n" - .'* aigcCheck: AI-generated image identification'."\n" - .'* profilePhotoCheck: avatar image moderation'."\n" - .'* advertisingCheck: marketing material identification'."\n" - .'* liveStreamCheck: moderation of screenshots of videos and live streams'."\n" + .'- baselineCheck: general baseline check'."\n" ."\n" - .'Valid values:'."\n" + .'- baselineCheck\\_pro: general baseline check (Professional Edition)'."\n" ."\n" - .'* liveStreamCheck: moderation of screenshots of videos and live streams'."\n" - .'* baselineCheck: common baseline moderation'."\n" - .'* aigcCheck: AI-generated image identification'."\n" - .'* baselineCheck_pro: common baseline moderation_Professional'."\n" - .'* advertisingCheck: marketing material identification'."\n" - .'* baselineCheck_cb: common baseline moderation_For regions outside the Chinese mainland'."\n" - .'* tonalityImprove: content governance moderation'."\n" - .'* profilePhotoCheck: avatar image moderation'."\n", - 'type' => 'string', - 'required' => false, + .'- baselineCheck\\_cb: general baseline check (outside China)'."\n" + ."\n" + .'- tonalityImprove: content administration check'."\n" + ."\n" + .'- aigcCheck: AIGC image check'."\n" + ."\n" + .'- aigcViolationDetection: AIGC image infringement detection'."\n" + ."\n" + .'- aigcDetector: determines whether an image is generated by AIGC'."\n" + ."\n" + .'- profilePhotoCheck: profile picture check'."\n" + ."\n" + .'- postImageCheck: image check for posts and comments'."\n" + ."\n" + .'- advertisingCheck: marketing material check'."\n" + ."\n" + .'- liveStreamCheck: video/livestream screenshot check'."\n" + ."\n" + .'- generalOcr: general image and text OCR'."\n" + ."\n" + .'- generalRecognition: image object recognition'."\n" + ."\n" + .'- postImageCheckByVL: image moderation service with large and small models'."\n" + ."\n" + .'- postImageCheckByVL\\_cb: image moderation service with large and small models (outside China)'."\n" + ."\n" + .'- baselineCheckByVL: general image moderation service with a large model', 'enumValueTitles' => [ - 'liveStreamCheck' => 'liveStreamCheck', - 'generalOcr' => '', - 'postImageCheck' => '', - 'baselineCheck_pro' => 'baselineCheck_pro', - 'advertisingCheck' => 'advertisingCheck', - 'baselineCheck_cb' => 'baselineCheck_cb', - 'tonalityImprove' => 'tonalityImprove', - 'profilePhotoCheck' => 'profilePhotoCheck', - 'baselineCheck' => 'baselineCheck', - 'generalRecognition' => '', - 'aigcCheck' => 'aigcCheck', - 'aigcViolationDetection' => '', - 'aigcDetector' => '', + 'liveStreamCheck' => 'Video screenshot check', 'generalOcr' => 'General image and text OCR', 'postImageCheck' => 'Image check for posts and comments', 'postImageCheckByVL_cb' => 'Image moderation service with large and small models (outside China)', 'baselineCheck_pro' => 'General baseline check (Professional Edition)', 'advertisingCheck' => 'Marketing material check', 'baselineCheck_cb' => 'General baseline check (outside China)', 'tonalityImprove' => 'Content administration check', 'profilePhotoCheck' => 'Profile picture check', 'baselineCheck' => 'General baseline check', + 'postImageCheckByVL' => 'Image moderation service with large and small models', 'generalRecognition' => 'Image object recognition', 'aigcCheck' => 'AIGC image check', 'aigcViolationDetection' => 'AIGC image infringement detection', 'baselineCheckByVL' => 'General image moderation service with a large model', 'aigcDetector' => 'Determines whether an image is generated by AIGC', ], + 'type' => 'string', + 'required' => false, 'example' => 'baselineCheck', + 'title' => '', ], ], [ 'name' => 'ServiceParameters', 'in' => 'formData', - 'schema' => [ - 'description' => 'The parameters required by the moderation service. The value is a JSON string.'."\n" - ."\n" - .'* imageUrl: the URL of the object that you want to moderate. This parameter is required.'."\n" - .'* dataId: the ID of the object that you want to moderate. This parameter is optional.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '{"imageUrl":"https://www.aliyun.com/test.jpg","dataId":"img1234567"}', - ], + 'schema' => ['description' => 'The parameters for the content to detect. The value is a JSON string.'."\n" + ."\n" + .'- imageUrl: The URL of the object to detect. This parameter is required.'."\n" + ."\n" + .'- dataId: The data ID of the object to detect. This parameter is optional.'."\n" + ."\n" + .'- referer: The referer request header. This parameter is used for scenarios such as hotlink protection and is optional.', 'type' => 'string', 'required' => false, 'example' => '{"imageUrl":"https://img.alicdn.com/tfs/TB1U4r9AeH2gK0jSZJnXXaT1FXa-2880-480.png","dataId":"img1234567"}', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => 'The response parameters.'."\n", + 'description' => 'The value returned in the body.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => 'The request ID, which is used to locate and troubleshoot issues.'."\n", - 'type' => 'string', - 'example' => '6CF2815C-C8C7-4A01-B52E-FF6E24F53492', - ], - 'Code' => [ - 'description' => 'The returned HTTP status code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Msg' => [ - 'description' => 'The message that is returned in response to the request.'."\n", - 'type' => 'string', - 'example' => 'OK', - ], + 'RequestId' => ['description' => 'The ID of the request. Alibaba Cloud generates a unique ID for each request. You can use the ID to troubleshoot issues.', 'type' => 'string', 'example' => '6CF2815C-C8C7-4A01-B52E-FF6E24F53492', 'title' => ''], + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request was successful.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Msg' => ['description' => 'The message returned for the request.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'Data' => [ - 'description' => 'The moderation results.'."\n", + 'description' => 'The results of the image content moderation.', 'type' => 'object', 'properties' => [ - 'DataId' => [ - 'description' => 'The ID of the moderated object.'."\n" - ."\n" - .'> If you specify the dataId parameter in the request, the value of the dataId parameter is returned in the response.'."\n", - 'type' => 'string', - 'example' => 'fb5ffab1-993b-449f-b8d6-b97d5e3331f2', - ], + 'DataId' => ['description' => 'The data ID of the detected object.'."\n" + ."\n" + .'> If you specify the dataId parameter in the request, the corresponding dataId is returned.', 'type' => 'string', 'example' => 'fb5ffab1-993b-449f-b8d6-b97d5e3331f2', 'title' => ''], 'Result' => [ - 'description' => 'The results of image moderation parameters such as the label parameter and the confidence parameter, which are an array structure.'."\n", + 'description' => 'The results of the image moderation, including the threat labels and confidence levels. The value is an array.', 'type' => 'array', 'items' => [ - 'description' => 'The data that is returned.'."\n", + 'description' => 'The data structure.', 'type' => 'object', 'properties' => [ - 'Label' => [ - 'description' => 'The labels returned after the image moderation. Multiple risk labels and the corresponding scores of confidence levels may be returned for an image.'."\n", - 'type' => 'string', - 'example' => 'violent_explosion', - ], - 'Confidence' => [ - 'description' => 'The score of the confidence level. Valid values: 0 to 100. The value is accurate to two decimal places. Some labels do not have scores of confidence levels.'."\n", - 'type' => 'number', - 'format' => 'float', - 'example' => '81.22', - ], - 'Description' => [ - 'description' => 'The description of the result.', - 'type' => 'string', - 'example' => 'no risk', - ], - 'RiskLevel' => [ - 'description' => 'Risk Level', - 'type' => 'string', - 'example' => 'high', - ], + 'Label' => ['description' => 'The label returned after the image content is moderated. Multiple labels and scores may be returned for a single image.', 'type' => 'string', 'example' => 'violent_explosion', 'title' => ''], + 'Confidence' => ['description' => 'The confidence level. The value ranges from 0 to 100, with two decimal places retained. Some labels do not have a confidence level.', 'type' => 'number', 'format' => 'float', 'example' => '81.22', 'title' => ''], + 'Description' => ['description' => 'The description.', 'type' => 'string', 'example' => '未检测出风险', 'title' => ''], + 'RiskLevel' => ['description' => 'The threat level.', 'type' => 'string', 'example' => 'high', 'title' => ''], ], + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], 'Ext' => [ - 'description' => 'Auxiliary reference information.', + 'description' => 'Auxiliary reference information for the image.', 'type' => 'object', 'properties' => [ 'Recognition' => [ - 'description' => 'The result of image recognition.', + 'description' => 'The results of image object recognition.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ - 'Classification' => [ - 'description' => 'The category of image recognition.', - 'type' => 'string', - 'example' => 'xx', - ], - 'Confidence' => [ - 'description' => 'The score of the confidence level. Valid values: 0 to 100. The value is accurate to two decimal places. Some labels do not have scores of confidence levels.', - 'type' => 'number', - 'format' => 'float', - 'example' => '99.01', - ], + 'Classification' => ['description' => 'The category of the recognized object in the image.', 'type' => 'string', 'example' => '办公大楼'."\n", 'title' => ''], + 'Confidence' => ['description' => 'The confidence level. The value ranges from 0 to 100, with two decimal places retained. No confidence level is returned when the value is nonLabel.', 'type' => 'number', 'format' => 'float', 'example' => '81.22'."\n" + ."\n", 'title' => ''], ], + 'description' => '', + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], 'OcrResult' => [ - 'description' => 'Returns the text information in the recognized image.', + 'description' => 'The results of optical character recognition (OCR).', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ - 'Text' => [ - 'description' => 'The text information in the recognized image.', - 'type' => 'string', - 'example' => 'xx', - ], + 'Text' => ['description' => 'A single line of recognized text.', 'type' => 'string', 'example' => 'abcd', 'title' => ''], 'Location' => [ - 'description' => 'Location information.', + 'description' => 'The coordinates of the text line.', 'type' => 'object', 'properties' => [ - 'X' => [ - 'description' => 'The distance between the upper-left corner of the text area and the y-axis, using the upper-left corner of the image as the coordinate origin, in pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '11', - ], - 'Y' => [ - 'description' => 'The distance between the upper left corner of the text area and the x-axis, with the upper left corner of the image as the coordinate origin, in pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '22', - ], - 'W' => [ - 'description' => 'The width of the text area, in pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '33', - ], - 'H' => [ - 'description' => 'The height of the text area, in pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '44', - ], + 'X' => ['description' => 'The distance from the upper-left corner of the text area to the y-axis. The origin is the upper-left corner of the image. Unit: pixel.', 'type' => 'integer', 'format' => 'int32', 'example' => '11', 'title' => ''], + 'Y' => ['description' => 'The distance from the upper-left corner of the text area to the x-axis. The origin is the upper-left corner of the image. Unit: pixel.', 'type' => 'integer', 'format' => 'int32', 'example' => '22', 'title' => ''], + 'W' => ['description' => 'The width of the text area. Unit: pixel.', 'type' => 'integer', 'format' => 'int32', 'example' => '33', 'title' => ''], + 'H' => ['description' => 'The height of the text area. Unit: pixel.', 'type' => 'integer', 'format' => 'int32', 'example' => '44', 'title' => ''], ], + 'title' => '', + 'example' => '', ], ], + 'description' => '', + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], 'TextInImage' => [ - 'description' => 'Returns the text information in the hit image.', + 'description' => 'The text information that is hit in the image.', 'type' => 'object', 'properties' => [ 'OcrResult' => [ - 'description' => 'Returns the text information in the recognized image.', + 'description' => 'Each line of text recognized in the image.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ - 'Text' => [ - 'description' => 'The text information in the recognized image.', - 'type' => 'string', - 'example' => 'xx', - ], + 'Text' => ['description' => 'The text.', 'type' => 'string', 'example' => 'abcd', 'title' => ''], 'Location' => [ - 'description' => 'Location information.', + 'description' => 'The coordinates of the text line.', 'type' => 'object', 'properties' => [ - 'X' => [ - 'description' => 'The distance between the upper-left corner of the text area and the y-axis, using the upper-left corner of the image as the coordinate origin, in pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '11', - ], - 'Y' => [ - 'description' => 'The distance between the upper left corner of the text area and the x-axis, with the upper left corner of the image as the coordinate origin, in pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '22', - ], - 'H' => [ - 'description' => 'The height of the text area, in pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '33', - ], - 'W' => [ - 'description' => 'The width of the text area, in pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '44', - ], + 'X' => ['description' => 'The distance from the upper-left corner of the text area to the y-axis. The origin is the upper-left corner of the image. Unit: pixel.', 'type' => 'integer', 'format' => 'int32', 'example' => '11', 'title' => ''], + 'Y' => ['description' => 'The distance from the upper-left corner of the text area to the x-axis. The origin is the upper-left corner of the image. Unit: pixel.', 'type' => 'integer', 'format' => 'int32', 'example' => '22', 'title' => ''], + 'H' => ['description' => 'The height of the text area. Unit: pixel.', 'type' => 'integer', 'format' => 'int32', 'example' => '33', 'title' => ''], + 'W' => ['description' => 'The width of the text area. Unit: pixel.', 'type' => 'integer', 'format' => 'int32', 'example' => '44', 'title' => ''], ], + 'title' => '', + 'example' => '', ], ], + 'description' => '', + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], 'RiskWord' => [ - 'description' => 'The risk words that are hit. Multiple words are separated by commas (,).', + 'description' => 'The hit threat keywords.', 'type' => 'array', - 'items' => [ - 'description' => 'The risk words that are hit. Multiple words are separated by commas (,).', - 'type' => 'string', - 'example' => 'abcd', - ], + 'items' => ['description' => 'The text.', 'type' => 'string', 'example' => 'abcd', 'title' => ''], + 'title' => '', + 'example' => '', ], 'CustomText' => [ - 'description' => 'When a custom text library is hit, the custom library ID, custom library name, and custom word are returned.', + 'description' => 'If a custom text library is hit, the custom library ID, custom library name, and custom word are returned.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ - 'LibId' => [ - 'description' => 'Custom library ID.', - 'type' => 'string', - 'example' => '123456', - ], - 'LibName' => [ - 'description' => 'Custom library name.', - 'type' => 'string', - 'example' => 'xxxx', - ], - 'KeyWords' => [ - 'description' => 'Custom words, multiple words separated by commas.', - 'type' => 'string', - 'example' => 'aaa,bbb'."\n", - ], + 'LibId' => ['description' => 'The custom library ID.', 'type' => 'string', 'example' => '123456'."\n", 'title' => ''], + 'LibName' => ['description' => 'The name of the custom library.', 'type' => 'string', 'example' => '自定义库1'."\n", 'title' => ''], + 'KeyWords' => ['description' => 'The custom words. Separate multiple words with commas.', 'type' => 'string', 'example' => '自定义词1,自定义词2'."\n", 'title' => ''], ], + 'description' => '', + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], 'CustomImage' => [ - 'description' => 'If a custom image library is hit, information about the hit custom image library is returned.', + 'description' => 'A list of hits from the custom image library.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ - 'LibId' => [ - 'description' => 'The image library ID.', - 'type' => 'string', - 'example' => 'lib_123456', - ], - 'ImageId' => [ - 'description' => 'The image ID.', - 'type' => 'string', - 'example' => '123456', - ], - 'LibName' => [ - 'description' => 'The image library name.', - 'type' => 'string', - 'example' => 'xx', - ], + 'LibId' => ['description' => 'The ID of the hit custom image library.', 'type' => 'string', 'example' => '图库123'."\n", 'title' => ''], + 'ImageId' => ['description' => 'The ID of the hit custom image.', 'type' => 'string', 'example' => '123456', 'title' => ''], + 'LibName' => ['description' => 'The name of the hit custom image library.', 'type' => 'string', 'example' => '图库123'."\n", 'title' => ''], ], + 'description' => '', + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], 'PublicFigure' => [ - 'description' => 'Person information list.', + 'description' => 'A list of public figures.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ - 'FigureName' => [ - 'description' => 'Identified person name information.', - 'type' => 'string', - 'example' => 'xx', - ], - 'FigureId' => [ - 'description' => 'Identified person coding information.', - 'type' => 'string', - 'example' => 'xx', - ], + 'FigureName' => ['description' => 'The name of the detected public figure.', 'type' => 'string', 'example' => 'yzazhzou', 'title' => ''], + 'FigureId' => ['description' => 'The ID of the detected public figure.', 'type' => 'string', 'example' => 'xxx001', 'title' => ''], 'Location' => [ - 'description' => 'the data array of location info', + 'description' => 'The location of the identity.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ - 'X' => [ - 'description' => 'X coordinate', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '11', - ], - 'Y' => [ - 'description' => 'Y coordinate', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '22', - ], - 'W' => [ - 'description' => 'The weight', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '33', - ], - 'H' => [ - 'description' => 'The height', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '44', - ], + 'X' => ['description' => 'The distance from the upper-left corner of the detected area to the y-axis. The origin is the upper-left corner of the image. Unit: pixel.', 'type' => 'integer', 'format' => 'int32', 'example' => '11', 'title' => ''], + 'Y' => ['description' => 'The distance from the upper-left corner of the detected area to the x-axis. The origin is the upper-left corner of the image. Unit: pixel.', 'type' => 'integer', 'format' => 'int32', 'example' => '22', 'title' => ''], + 'W' => ['description' => 'The width of the detected area. Unit: pixel.', 'type' => 'integer', 'format' => 'int32', 'example' => '330', 'title' => ''], + 'H' => ['description' => 'The height of the detected area. Unit: pixel.', 'type' => 'integer', 'format' => 'int32', 'example' => '440', 'title' => ''], ], - 'description' => 'the data of location info', + 'description' => '', + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], ], + 'description' => '', + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], 'LogoData' => [ - 'description' => 'Logo information.', + 'description' => 'The identity information.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Location' => [ - 'description' => 'Location information.', + 'description' => 'The location of the logo.', 'type' => 'object', 'properties' => [ - 'X' => [ - 'description' => 'The distance between the upper-left corner of the text area and the y-axis, using the upper-left corner of the image as the coordinate origin, in pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '11', - ], - 'Y' => [ - 'description' => 'The distance between the upper left corner of the text area and the x-axis, with the upper left corner of the image as the coordinate origin, in pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '22', - ], - 'W' => [ - 'description' => 'The width of the text area, in pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '33', - ], - 'H' => [ - 'description' => 'The height of the text area, in pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '44', - ], + 'X' => ['description' => 'The distance from the upper-left corner of the detected area to the y-axis. The origin is the upper-left corner of the image. Unit: pixel.', 'type' => 'integer', 'format' => 'int32', 'example' => '11', 'title' => ''], + 'Y' => ['description' => 'The distance from the upper-left corner of the detected area to the x-axis. The origin is the upper-left corner of the image. Unit: pixel.', 'type' => 'integer', 'format' => 'int32', 'example' => '22', 'title' => ''], + 'W' => ['description' => 'The width of the detected area. Unit: pixel.', 'type' => 'integer', 'format' => 'int32', 'example' => '330', 'title' => ''], + 'H' => ['description' => 'The height of the detected area. Unit: pixel.', 'type' => 'integer', 'format' => 'int32', 'example' => '440', 'title' => ''], ], + 'title' => '', + 'example' => '', ], 'Logo' => [ - 'description' => 'Logo information.', + 'description' => 'The identity information.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ - 'Label' => [ - 'description' => 'Logo category.', - 'type' => 'string', - 'example' => 'xx', - ], - 'Name' => [ - 'description' => 'Logo name.', - 'type' => 'string', - 'example' => 'xx', - ], - 'Confidence' => [ - 'description' => 'The score of the confidence level. Valid values: 0 to 100. The value is accurate to two decimal places. Some labels do not have scores of confidence levels.', - 'type' => 'number', - 'format' => 'float', - 'example' => '99.01', - ], + 'Label' => ['description' => 'The identity category.', 'type' => 'string', 'example' => 'logo_sns', 'title' => ''], + 'Name' => ['description' => 'The identity name.', 'type' => 'string', 'example' => '钉钉', 'title' => ''], + 'Confidence' => ['description' => 'The confidence score. The value ranges from 0 to 100, with two decimal places retained.', 'type' => 'number', 'format' => 'float', 'example' => '99.1', 'title' => ''], ], + 'description' => '', + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], ], + 'description' => '', + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], 'FaceData' => [ - 'description' => 'The returned face attribute information', + 'description' => 'The facial attribute detection results.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ - 'Age' => [ - 'description' => 'The age recognition result.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '18', - ], + 'Age' => ['description' => 'The detected age.', 'type' => 'integer', 'format' => 'int32', 'example' => '18', 'title' => ''], 'Bang' => [ - 'description' => 'Indicates whether the recognition result of bangs is available.', + 'description' => 'The detection result for bangs.', 'type' => 'object', 'properties' => [ - 'Value' => [ - 'description' => 'Indicates whether the recognition result of bangs is available.', - 'type' => 'string', - 'example' => 'Has', - ], - 'Confidence' => [ - 'description' => 'The confidence level of the bang recognition result. Valid values: 0 to 100. A higher value indicates a more credible result.', - 'type' => 'number', - 'format' => 'float', - 'example' => '81.88'."\n", - ], + 'Value' => ['description' => 'The detection result for bangs. Valid values:'."\n" + ."\n" + .'- Has: The person has bangs.'."\n" + ."\n" + .'- None: The person does not have bangs.', 'type' => 'string', 'example' => 'Has', 'title' => ''], + 'Confidence' => ['description' => 'The confidence level of the bangs detection. The value ranges from 0 to 100. A higher value indicates a more reliable result.', 'type' => 'number', 'format' => 'float', 'example' => '81.88'."\n", 'title' => ''], ], + 'title' => '', + 'example' => '', ], 'Gender' => [ - 'description' => 'The gender recognition result.', + 'description' => 'The gender detection result.', 'type' => 'object', 'properties' => [ - 'Value' => [ - 'description' => 'The gender recognition result. Valid values:'."\n" - ."\n" - .'- Male'."\n" - ."\n" - .'- FeMale', - 'type' => 'string', - 'example' => 'FeMale', - ], - 'Confidence' => [ - 'description' => 'The confidence level of the gender recognition result. Valid values: 0 to 100. A higher value indicates a more credible result.', - 'type' => 'number', - 'format' => 'float', - 'example' => '81.88', - ], + 'Value' => ['description' => 'The detected gender. Valid values:'."\n" + ."\n" + .'- Male: male'."\n" + ."\n" + .'- FeMale: female', 'type' => 'string', 'example' => 'FeMale', 'title' => ''], + 'Confidence' => ['description' => 'The confidence level of the gender detection. The value ranges from 0 to 100. A higher value indicates a more reliable result.', 'type' => 'number', 'format' => 'float', 'example' => '81.88', 'title' => ''], ], + 'title' => '', + 'example' => '', ], - 'Glasses' => [ - 'description' => 'The recognition result of whether to wear glasses.'."\n" - ."\n" - .'- None: No glasses.'."\n" - ."\n" - .'- Wear: Wear glasses.'."\n" - ."\n" - .'- Sunglass: Wear sunglasses.', - 'type' => 'string', - 'example' => 'Common', - ], + 'Glasses' => ['description' => 'Indicates whether the person is wearing glasses. Valid values:'."\n" + ."\n" + .'- None: The person is not wearing glasses.'."\n" + ."\n" + .'- Common: The person is wearing regular glasses.'."\n" + ."\n" + .'- Sunglass: The person is wearing sunglasses.', 'type' => 'string', 'example' => 'Common', 'title' => ''], 'Hairstyle' => [ - 'description' => 'The hairstyle recognition result.', + 'description' => 'The hairstyle detection result.', 'type' => 'object', 'properties' => [ - 'Value' => [ - 'description' => 'The hairstyle recognition result. Valid values:'."\n" - ."\n" - .'- Bald: bald head.'."\n" - ."\n" - .'- Long: Long hair.'."\n" - ."\n" - .'- Short: Short hair.', - 'type' => 'string', - 'example' => 'Short', - ], - 'Confidence' => [ - 'description' => 'The confidence level of the hairstyle recognition result. Valid values: 0 to 100. A higher value indicates a more credible result.', - 'type' => 'number', - 'format' => 'float', - 'example' => '81.88'."\n" - ."\n", - ], + 'Value' => ['description' => 'The detected hairstyle. Valid values:'."\n" + ."\n" + .'- Bald: bald'."\n" + ."\n" + .'- Long: long hair'."\n" + ."\n" + .'- Short: short hair', 'type' => 'string', 'example' => 'Short', 'title' => ''], + 'Confidence' => ['description' => 'The confidence level of the hairstyle detection. The value ranges from 0 to 100. A higher value indicates a more reliable result.', 'type' => 'number', 'format' => 'float', 'example' => '81.88'."\n" + ."\n", 'title' => ''], ], + 'title' => '', + 'example' => '', ], 'Hat' => [ - 'description' => 'The recognition result of whether to wear a hat.', + 'description' => 'The result of hat detection.', 'type' => 'object', 'properties' => [ - 'Value' => [ - 'description' => 'The recognition result of whether to wear the hat. Valid values:'."\n" - ."\n" - .'- Wear: Wear a hat.'."\n" - ."\n" - .'- None: No hat.', - 'type' => 'string', - 'example' => 'Wear', - ], - 'Confidence' => [ - 'description' => 'The confidence level of the result of wearing the hat. Valid values: 0 to 100. A higher value indicates a more credible result.', - 'type' => 'number', - 'format' => 'float', - 'example' => '88.88'."\n" - ."\n", - ], + 'Value' => ['description' => 'Indicates whether a hat is detected. Valid values:'."\n" + ."\n" + .'- Wear: A hat is worn.'."\n" + ."\n" + .'- None: No hat is worn.', 'type' => 'string', 'example' => 'Wear', 'title' => ''], + 'Confidence' => ['description' => 'The confidence level of the hat detection. The value ranges from 0 to 100. A higher value indicates a more reliable result.', 'type' => 'number', 'format' => 'float', 'example' => '88.88'."\n" + ."\n", 'title' => ''], ], + 'title' => '', + 'example' => '', ], 'Location' => [ 'description' => 'The location of the face.', 'type' => 'object', 'properties' => [ - 'X' => [ - 'description' => 'The distance from the upper-left corner of the face area to the y-axis with the upper-left corner of the image as the coordinate origin. Unit: pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '41'."\n" - ."\n", - ], - 'Y' => [ - 'description' => 'The distance from the upper-left corner of the face area to the x-axis with the upper-left corner of the image as the coordinate origin. Unit: pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '84', - ], - 'W' => [ - 'description' => 'The width of the face area. Unit: pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '83', - ], - 'H' => [ - 'description' => 'The height of the face area. Unit: pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '26', - ], + 'X' => ['description' => 'The distance from the upper-left corner of the face area to the y-axis. The origin is the upper-left corner of the image. Unit: pixel.', 'type' => 'integer', 'format' => 'int32', 'example' => '41'."\n" + ."\n", 'title' => ''], + 'Y' => ['description' => 'The distance from the upper-left corner of the face area to the x-axis. The origin is the upper-left corner of the image. Unit: pixel.', 'type' => 'integer', 'format' => 'int32', 'example' => '84', 'title' => ''], + 'W' => ['description' => 'The width of the face area. Unit: pixel.', 'type' => 'integer', 'format' => 'int32', 'example' => '83', 'title' => ''], + 'H' => ['description' => 'The height of the face area. Unit: pixel.', 'type' => 'integer', 'format' => 'int32', 'example' => '26', 'title' => ''], ], + 'title' => '', + 'example' => '', ], 'Mask' => [ - 'description' => 'The recognition result of whether to wear a mask.', + 'description' => 'The result of mask detection.', 'type' => 'object', 'properties' => [ - 'Value' => [ - 'description' => 'The recognition result of whether to wear a mask. Valid values:'."\n" - ."\n" - .'- Wear a mask.'."\n" - ."\n" - .' - None: No mask.', - 'type' => 'string', - 'example' => 'Wear', - ], - 'Confidence' => [ - 'description' => 'The confidence level of the result of wearing the mask. Valid values: 0 to 100. A higher value indicates a more credible result.', - 'type' => 'number', - 'format' => 'float', - 'example' => '99.99', - ], + 'Value' => ['description' => 'Indicates whether a mask is worn. Valid values:'."\n" + ."\n" + .'- Wear: A mask is worn.'."\n" + ."\n" + .'- None: No mask is worn.', 'type' => 'string', 'example' => 'Wear', 'title' => ''], + 'Confidence' => ['description' => 'The confidence level of the mask detection. The value ranges from 0 to 100. A higher value indicates a more reliable result.', 'type' => 'number', 'format' => 'float', 'example' => '99.99', 'title' => ''], ], + 'title' => '', + 'example' => '', ], 'Mustache' => [ - 'description' => 'The identification result of whether there is a beard.', + 'description' => 'The result of mustache detection.', 'type' => 'object', 'properties' => [ - 'Value' => [ - 'description' => 'The identification result of whether there is a beard.Valid values:'."\n" - ."\n" - .'- Has:have a beard.'."\n" - ."\n" - .'- None:No beard.', - 'type' => 'string', - 'example' => 'Has', - ], - 'Confidence' => [ - 'description' => 'The confidence level of the result of the beard. Valid values: 0 to 100. A higher value indicates a more credible result.', - 'type' => 'number', - 'format' => 'float', - 'example' => '99.99', - ], + 'Value' => ['description' => 'Indicates whether a mustache is present. Valid values:'."\n" + ."\n" + .'- Has: A mustache is present.'."\n" + ."\n" + .'- None: No mustache is present.', 'type' => 'string', 'example' => 'Has', 'title' => ''], + 'Confidence' => ['description' => 'The confidence level of the mustache detection. The value ranges from 0 to 100. A higher value indicates a more reliable result.', 'type' => 'number', 'format' => 'float', 'example' => '99.99', 'title' => ''], ], + 'title' => '', + 'example' => '', ], 'Quality' => [ - 'description' => 'The quality information of the face image.', + 'description' => 'The quality of the face image.', 'type' => 'object', 'properties' => [ - 'Blur' => [ - 'description' => 'The blur of the face image. Valid values: 0 to 100. The higher the score, the more fuzzy it is.'."\n" - .'Recommended values: 0 to 25.', - 'type' => 'number', - 'format' => 'float', - 'example' => '5.88'."\n" - ."\n", - ], - 'Integrity' => [ - 'description' => 'The integrity of the human face. Recommended values:80 to 100.', - 'type' => 'number', - 'format' => 'float', - 'example' => '100.0', - ], - 'Pitch' => [ - 'description' => 'The head-up or head-down angle of the face.'."\n" - .'Recommended values:-30 to 30.', - 'type' => 'number', - 'format' => 'float', - 'example' => '5.88', - ], - 'Roll' => [ - 'description' => 'The plane rotation angle of the face.'."\n" - .'Recommended values:-30 to 30.', - 'type' => 'number', - 'format' => 'float', - 'example' => '5.18', - ], - 'Yaw' => [ - 'description' => 'The left and right shaking angle of the human face.'."\n" - .'Recommended values:-30 to 30.', - 'type' => 'number', - 'format' => 'float', - 'example' => '5.18', - ], + 'Blur' => ['description' => 'The blurriness of the face image. The value ranges from 0 to 100. A higher score indicates a blurrier image.'."\n" + ."\n" + .'A value from 0 to 25 is recommended.', 'type' => 'number', 'format' => 'float', 'example' => '5.88'."\n" + ."\n", 'title' => ''], + 'Integrity' => ['description' => 'The integrity of the face. The value ranges from 0 to 100. A higher score indicates a more complete face.'."\n" + ."\n" + .'A value from 80 to 100 is recommended.', 'type' => 'number', 'format' => 'float', 'example' => '100.0', 'title' => ''], + 'Pitch' => ['description' => 'The pitch angle of the face.'."\n" + ."\n" + .'A value from -30 to 30 is recommended.', 'type' => 'number', 'format' => 'float', 'example' => '5.88', 'title' => ''], + 'Roll' => ['description' => 'The roll angle of the face.'."\n" + ."\n" + .'A value from -30 to 30 is recommended.', 'type' => 'number', 'format' => 'float', 'example' => '5.18', 'title' => ''], + 'Yaw' => ['description' => 'The yaw angle of the face.'."\n" + ."\n" + .'A value from -30 to 30 is recommended.', 'type' => 'number', 'format' => 'float', 'example' => '5.18', 'title' => ''], ], + 'title' => '', + 'example' => '', ], - 'Smile' => [ - 'description' => 'The smiling degree of the face.', - 'type' => 'number', - 'format' => 'float', - 'example' => '85.88'."\n" - ."\n", - ], + 'Smile' => ['description' => 'The degree of the smile. The value ranges from 0 to 100. A higher score indicates a wider smile.', 'type' => 'number', 'format' => 'float', 'example' => '85.88'."\n" + ."\n", 'title' => ''], ], + 'description' => '', + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], 'VlContent' => [ - 'description' => 'the vl output content', + 'description' => 'The output content.', 'type' => 'object', 'properties' => [ - 'OutputText' => [ - 'description' => 'the vl output content', - 'type' => 'string', - 'example' => 'this is a cat', - ], + 'OutputText' => ['description' => 'The output content.', 'type' => 'string', 'example' => '这是一段描述', 'title' => ''], ], + 'title' => '', + 'example' => '', ], 'AigcData' => [ 'type' => 'object', @@ -1198,54 +1899,61 @@ 'AIGC' => [ 'type' => 'object', 'properties' => [ - 'Label' => [ - 'type' => 'string', - ], - 'ContentProducer' => [ - 'type' => 'string', - ], - 'ProduceID' => [ - 'type' => 'string', - ], - 'ReservedCode1' => [ - 'type' => 'string', - ], - 'ContentPropagator' => [ - 'type' => 'string', - ], - 'PropagateID' => [ - 'type' => 'string', - ], - 'ReservedCode2' => [ - 'type' => 'string', - ], + 'Label' => ['description' => 'Indicates whether the content is generated by artificial intelligence (AI). Valid values:'."\n" + ."\n" + .'- 1: The content is generated by AI.'."\n" + ."\n" + .'- 2: (For distribution platforms only) The content may be generated by AI.'."\n" + ."\n" + .'- 3: (For distribution platforms only) The content is suspected to be generated by AI.', 'type' => 'string', 'example' => '1', 'title' => ''], + 'ContentProducer' => ['description' => 'The code or name of the service provider, which identifies the content producer.', 'type' => 'string', 'example' => '001191******M000100Y43', 'title' => ''], + 'ProduceID' => ['description' => 'The content production ID. This is a unique ID used on the production platform to trace the source of synthesized content.', 'type' => 'string', 'example' => '123******456'."\n" + ."\n", 'title' => ''], + 'ReservedCode1' => ['description' => 'A reserved field.'."\n" + ."\n" + .'This field can store information that the generative service provider uses for security protection to ensure the integrity of content and identities. A hashing mechanism based on ContentProducer and ProduceID can be used to securely store and verify key information.', 'type' => 'string', 'example' => 'd41d**********427e'."\n", 'title' => ''], + 'ContentPropagator' => ['description' => 'The name, ID, or code of the propagation platform. For services that provide AI-generated content, this can be the same as the value of ContentProducer.', 'type' => 'string', 'example' => '001191******M000100Y43', 'title' => ''], + 'PropagateID' => ['description' => 'The content propagation ID. This is a unique ID that the propagation platform assigns to the distributed synthetic content.', 'type' => 'string', 'example' => '123******456'."\n", 'title' => ''], + 'ReservedCode2' => ['description' => 'A reserved field.'."\n" + ."\n" + .'This field can be used by content distribution service providers for security protection to ensure the integrity of content and identities. A hashing mechanism based on ContentProducer and ProduceID can be used to securely store and verify key information.', 'type' => 'string', 'example' => 'd41d**********427e', 'title' => ''], ], + 'description' => 'The detection information for the implicit AIGC identity.', + 'title' => '', + 'example' => '', ], ], + 'description' => 'The detection information for the implicit AIGC identity in the image.', + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], - 'RiskLevel' => [ - 'description' => 'Risk Level.', - 'type' => 'string', - 'example' => 'high', - ], - 'ManualTaskId' => [ - 'type' => 'string', - ], - 'AccountId' => [ - 'type' => 'string', - ], + 'RiskLevel' => ['description' => 'The threat level.', 'type' => 'string', 'example' => 'high', 'title' => ''], + 'ManualTaskId' => ['description' => 'The ID of the manual review task.', 'type' => 'string', 'example' => 'xxxxx-xxxxx', 'title' => ''], + 'AccountId' => ['description' => 'The AccountId specified in the request.', 'type' => 'string', 'example' => 'testaccountid123', 'title' => ''], ], + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6CF2815C-C8C7-4A01-B52E-FF6E24F53492\\",\\n \\"Code\\": 200,\\n \\"Msg\\": \\"OK\\",\\n \\"Data\\": {\\n \\"DataId\\": \\"fb5ffab1-993b-449f-b8d6-b97d5e3331f2\\",\\n \\"Result\\": [\\n {\\n \\"Label\\": \\"violent_explosion\\",\\n \\"Confidence\\": 81.22,\\n \\"Description\\": \\"未检测出风险\\",\\n \\"RiskLevel\\": \\"high\\"\\n }\\n ],\\n \\"Ext\\": {\\n \\"Recognition\\": [\\n {\\n \\"Classification\\": \\"办公大楼\\\\n\\",\\n \\"Confidence\\": 81.22\\n }\\n ],\\n \\"OcrResult\\": [\\n {\\n \\"Text\\": \\"abcd\\",\\n \\"Location\\": {\\n \\"X\\": 11,\\n \\"Y\\": 22,\\n \\"W\\": 33,\\n \\"H\\": 44\\n }\\n }\\n ],\\n \\"TextInImage\\": {\\n \\"OcrResult\\": [\\n {\\n \\"Text\\": \\"abcd\\",\\n \\"Location\\": {\\n \\"X\\": 11,\\n \\"Y\\": 22,\\n \\"H\\": 33,\\n \\"W\\": 44\\n }\\n }\\n ],\\n \\"RiskWord\\": [\\n \\"abcd\\"\\n ],\\n \\"CustomText\\": [\\n {\\n \\"LibId\\": \\"123456\\\\n\\",\\n \\"LibName\\": \\"自定义库1\\\\n\\",\\n \\"KeyWords\\": \\"自定义词1,自定义词2\\\\n\\"\\n }\\n ]\\n },\\n \\"CustomImage\\": [\\n {\\n \\"LibId\\": \\"图库123\\\\n\\",\\n \\"ImageId\\": \\"123456\\",\\n \\"LibName\\": \\"图库123\\\\n\\"\\n }\\n ],\\n \\"PublicFigure\\": [\\n {\\n \\"FigureName\\": \\"yzazhzou\\",\\n \\"FigureId\\": \\"xxx001\\",\\n \\"Location\\": [\\n {\\n \\"X\\": 11,\\n \\"Y\\": 22,\\n \\"W\\": 330,\\n \\"H\\": 440\\n }\\n ]\\n }\\n ],\\n \\"LogoData\\": [\\n {\\n \\"Location\\": {\\n \\"X\\": 11,\\n \\"Y\\": 22,\\n \\"W\\": 330,\\n \\"H\\": 440\\n },\\n \\"Logo\\": [\\n {\\n \\"Label\\": \\"logo_sns\\",\\n \\"Name\\": \\"钉钉\\",\\n \\"Confidence\\": 99.1\\n }\\n ]\\n }\\n ],\\n \\"FaceData\\": [\\n {\\n \\"Age\\": 18,\\n \\"Bang\\": {\\n \\"Value\\": \\"Has\\",\\n \\"Confidence\\": 81.88\\n },\\n \\"Gender\\": {\\n \\"Value\\": \\"FeMale\\",\\n \\"Confidence\\": 81.88\\n },\\n \\"Glasses\\": \\"Common\\",\\n \\"Hairstyle\\": {\\n \\"Value\\": \\"Short\\",\\n \\"Confidence\\": 81.88\\n },\\n \\"Hat\\": {\\n \\"Value\\": \\"Wear\\",\\n \\"Confidence\\": 88.88\\n },\\n \\"Location\\": {\\n \\"X\\": 41,\\n \\"Y\\": 84,\\n \\"W\\": 83,\\n \\"H\\": 26\\n },\\n \\"Mask\\": {\\n \\"Value\\": \\"Wear\\",\\n \\"Confidence\\": 99.99\\n },\\n \\"Mustache\\": {\\n \\"Value\\": \\"Has\\",\\n \\"Confidence\\": 99.99\\n },\\n \\"Quality\\": {\\n \\"Blur\\": 5.88,\\n \\"Integrity\\": 100,\\n \\"Pitch\\": 5.88,\\n \\"Roll\\": 5.18,\\n \\"Yaw\\": 5.18\\n },\\n \\"Smile\\": 85.88\\n }\\n ],\\n \\"VlContent\\": {\\n \\"OutputText\\": \\"这是一段描述\\"\\n },\\n \\"AigcData\\": {\\n \\"AIGC\\": {\\n \\"Label\\": \\"1\\",\\n \\"ContentProducer\\": \\"001191******M000100Y43\\",\\n \\"ProduceID\\": \\"123******456\\\\n\\\\n\\",\\n \\"ReservedCode1\\": \\"d41d**********427e\\\\n\\",\\n \\"ContentPropagator\\": \\"001191******M000100Y43\\",\\n \\"PropagateID\\": \\"123******456\\\\n\\",\\n \\"ReservedCode2\\": \\"d41d**********427e\\"\\n }\\n }\\n },\\n \\"RiskLevel\\": \\"high\\",\\n \\"ManualTaskId\\": \\"xxxxx-xxxxx\\",\\n \\"AccountId\\": \\"testaccountid123\\"\\n }\\n}","type":"json"}]', 'title' => 'ImageModeration', - 'description' => '**Before you call this operation, make sure that you are familiar with the [billing](~~467826~~)[](https://www.aliyun.com/price/product?#/lvwang/detail/cdibag) of Image Moderation 2.0.'."\n", - 'requestParamsDescription' => 'Sample request:'."\n" + 'description' => 'Before you call this operation, complete the following steps:'."\n" + ."\n" + .'1. [Activate AI Guardrails-Enhanced Edition](https://common-buy.aliyun.com/?commodityCode=lvwang_cip_public_cn).'."\n" + ."\n" + .'2. Understand the [billing methods and pricing](https://help.aliyun.com/document_detail/467826.html?#section-h06-qz6-1pt) of the enhanced image moderation feature.'."\n" + ."\n" + .'3. For more information about API usage and parameters, see the [API reference](https://help.aliyun.com/document_detail/467829.html).', + 'requestParamsDescription' => 'Sample request parameters:'."\n" ."\n" .'```JSON'."\n" .'{'."\n" @@ -1256,79 +1964,128 @@ .' "dataId": "img1234567"'."\n" .' }'."\n" .'}'."\n" - .'```'."\n", - 'responseParamsDescription' => 'Sample response parameters'."\n" + .'```', + 'responseParamsDescription' => 'Sample response:'."\n" ."\n" - .' {'."\n" - .' "Msg": "OK",'."\n" - .' "Code": 200,'."\n" - .' "Data": {'."\n" - .' "dataId": "img1234567",'."\n" - .' "result": ['."\n" - .' {'."\n" - .' "label": "pornographic_adultContent",'."\n" - .' "confidence": 81'."\n" - .' },'."\n" - .' {'."\n" - .' "label": "sexual_partialNudity",'."\n" - .' "confidence": 98'."\n" - .' },'."\n" - .' {'."\n" - .' "label": "violent_explosion",'."\n" - .' "confidence": 70'."\n" - .' },'."\n" - .' {'."\n" - .' "label": "violent_explosion_lib",'."\n" - .' "confidence": 81'."\n" - .' }'."\n" - .' ]'."\n" - .' },'."\n" - .' "RequestId": "ABCD1234-1234-1234-1234-1234XYZ"'."\n" - .' }'."\n", - ], - 'ImageAsyncModeration' => [ - 'summary' => 'Moderates images in asynchronous mode. An asynchronous image moderation task does not return the moderation results in real time. To obtain moderation results, you can poll the moderation results periodically or enable callback notification. The moderation results are retained for a maximum of 3 days.', - 'methods' => [ - 'post', + .'```'."\n" + .'{'."\n" + .' "Msg": "OK",'."\n" + .' "Code": 200,'."\n" + .' "Data": {'."\n" + .' "DataId": "img123****",'."\n" + .' "Result": ['."\n" + .' {'."\n" + .' "Label": "pornographic_adultContent",'."\n" + .' "Confidence": 81,'."\n" + .' "Description": "Adult pornographic content"'."\n" + .' },'."\n" + .' {'."\n" + .' "Label": "sexual_partialNudity",'."\n" + .' "Confidence": 98,'."\n" + .' "Description": "Partial nudity or sexual content"'."\n" + .' },'."\n" + .' {'."\n" + .' "Label": "violent_explosion",'."\n" + .' "Confidence": 70,'."\n" + .' "Description": "Fireworks content"'."\n" + .' },'."\n" + .' {'."\n" + .' "Label": "violent_explosion_lib",'."\n" + .' "Confidence": 81,'."\n" + .' "Description": "Fireworks content_hit custom library"'."\n" + .' }'."\n" + .' ],'."\n" + .' "RiskLevel": "high"'."\n" + .' },'."\n" + .' "RequestId": "ABCD1234-1234-1234-1234-1234XYZ"'."\n" + .'}'."\n" + .'```', + 'extraInfo' => '无', + 'changeSet' => [ + ['createdAt' => '2025-06-12T02:05:05.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-03-17T05:56:52.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-11-07T13:31:16.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-08-20T09:55:57.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-07-25T09:34:52.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-07-03T11:04:23.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-05-30T09:10:02.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-05-11T05:53:34.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-04-19T03:30:14.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-05-08T03:59:29.000Z', 'description' => 'Response parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ImageModeration'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'yundun-greenweb:ImageModeration', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'ManualCallback' => [ + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', - 'chargeType' => 'paid', - 'abilityTreeCode' => '197491', - 'abilityTreeNodes' => [ - 'FEATURElvwang78REFZ', - ], + 'chargeType' => 'free', + 'abilityTreeCode' => '264346', + 'abilityTreeNodes' => ['FEATURElvwangIBEW89', 'FEATURElvwangU90H4V', 'FEATURElvwangBBY7QM', 'FEATURElvwang870NMI'], + 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ - 'name' => 'Service', - 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the moderation service.', - 'type' => 'string', - 'required' => false, - 'example' => 'baselineCheck', - ], + 'name' => 'Code', + 'in' => 'formData', + 'schema' => ['description' => 'The code.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => '200'], ], [ - 'name' => 'ServiceParameters', - 'in' => 'query', + 'name' => 'Msg', + 'in' => 'formData', + 'schema' => ['description' => 'The message.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'OK'], + ], + [ + 'name' => 'Checksum', + 'in' => 'formData', + 'schema' => ['description' => 'The checksum.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'abc'], + ], + [ + 'name' => 'ReqId', + 'in' => 'formData', + 'schema' => ['description' => 'The ID of the platform request. This ID is used to troubleshoot issues.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'B0963D30-BAB4-562F-9ED0-7A23AEC51C7C'], + ], + [ + 'name' => 'Data', + 'in' => 'formData', + 'schema' => ['description' => 'The returned data.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => '{\'Result\': [{\'Confidence\': 100.0, \'CustomizedHit\': [{\'KeyWords\': u\'\\u4fdd\\u969c,\\u6700\\u5927,\\u9ad8\\u7ea7\', \'LibName\': u\'\\u4f18\\u8def\\u654f\\u611f\\u8bcd\'}], \'Label\': \'customized\'}]}'], + ], + [ + 'name' => 'Channel', + 'in' => 'formData', 'schema' => [ - 'description' => 'The parameters required by the moderation service. The value is a JSON string.', + 'description' => 'The channel field.', 'type' => 'string', 'required' => false, - 'example' => '{"imageUrl":"https://img.alicdn.com/tfs/TB1U4r9AeH2gK0jSZJnXXaT1FXa-2880-480.png","dataId":"img123****"}', + 'enumValueTitles' => ['ant' => 'ant'], + 'title' => '', + 'example' => 'ant', ], ], ], @@ -1339,601 +2096,491 @@ 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.', - 'type' => 'string', - 'example' => '4A926AE2-4C96-573F-824F-0532960799F8', - ], - 'Code' => [ - 'description' => 'The returned HTTP status code.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Msg' => [ - 'description' => 'The message that is returned in response to the request.', - 'type' => 'string', - 'example' => 'success', - ], - 'Data' => [ - 'description' => 'The data returned.', - 'type' => 'object', - 'properties' => [ - 'ReqId' => [ - 'description' => 'The reqId field returned by the Image Async Moderation API. You can use this field to query the detection results.', - 'type' => 'string', - 'example' => 'A07B3DB9-D762-5C56-95B1-8EC55CF176D2', - ], - 'DataId' => [ - 'description' => 'The ID of the moderated object.', - 'type' => 'string', - 'example' => 'fb5ffab1-993b-449f-b8d6-b97d5e3331f2', - ], - ], - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'Id of the request', 'type' => 'string', 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****'."\n"], + 'Message' => ['description' => 'The message.', 'type' => 'string', 'title' => '', 'example' => 'SUCCESS'], + 'Code' => ['description' => 'The error code.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '200'], ], ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4A926AE2-4C96-573F-824F-0532960799F8\\",\\n \\"Code\\": 200,\\n \\"Msg\\": \\"success\\",\\n \\"Data\\": {\\n \\"ReqId\\": \\"A07B3DB9-D762-5C56-95B1-8EC55CF176D2\\",\\n \\"DataId\\": \\"fb5ffab1-993b-449f-b8d6-b97d5e3331f2\\"\\n }\\n}","type":"json"}]', - 'title' => 'ImageAsyncModeration', - ], - 'DescribeImageModerationResult' => [ - 'summary' => 'Obtains the moderation results of an Image Moderation 2.0 task.', - 'methods' => [ - 'post', + 'title' => 'Manual Review Channel Callback Interface', + 'extraInfo' => '无', + 'summary' => 'The channel callback API for manual review results in Content Moderation.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '200', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ManualCallback'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:ManualCallback', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\\\n\\",\\n \\"Message\\": \\"SUCCESS\\",\\n \\"Code\\": 200\\n}","type":"json"}]', + ], + 'ManualModeration' => [ + 'summary' => 'Interface for submitting Content Moderation manual review requests', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '198839', - 'abilityTreeNodes' => [ - 'FEATURElvwangLRLIH6', - ], + 'chargeType' => 'paid', + 'abilityTreeCode' => '264342', + 'abilityTreeNodes' => ['FEATURElvwangIBEW89', 'FEATURElvwangU90H4V', 'FEATURElvwangBBY7QM', 'FEATURElvwang870NMI'], + 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ - 'name' => 'ReqId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ReqId field returned by the asynchronous Image Moderation 2.0 API.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'B0963D30-BAB4-562F-9ED0-7A23AEC51C7C', - ], + 'name' => 'Service', + 'in' => 'formData', + 'schema' => ['description' => 'Service.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'imageManualCheck'], + ], + [ + 'name' => 'ServiceParameters', + 'in' => 'formData', + 'schema' => ['description' => 'Parameters required by the moderation service, in JSON string format.'."\n" + ."\n" + .'- url: The URL of the object to be inspected. Make sure the URL is accessible through the public network.'."\n" + .'- dataId: Optional. The data ID corresponding to the object being inspected.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => '{"url": "https://talesofai.oss-cn-shanghai.aliyuncs.com/xxx.mp4", "dataId": "data1234"}'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'Schema of Response'."\n", + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID, which is used to locate and troubleshoot issues.'."\n", - 'type' => 'string', - 'example' => '2881AD4F-638B-52A3-BA20-F74C5B1CEAE3', - ], - 'Code' => [ - 'description' => 'The returned HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Msg' => [ - 'description' => 'The message that is returned in response to the request.'."\n", - 'type' => 'string', - 'example' => 'success', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request', 'type' => 'string', 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****'], + 'Message' => ['description' => 'Error message', 'type' => 'string', 'title' => '', 'example' => 'SUCCESS'], + 'Code' => ['description' => 'Status code', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '200'], 'Data' => [ - 'description' => 'The image moderation results.'."\n", + 'description' => 'The response data.', 'type' => 'object', 'properties' => [ - 'DataId' => [ - 'description' => 'The value of dataId that is specified in the API request. If this parameter is not specified in the API request, this field is not available in the response.'."\n", - 'type' => 'string', - 'example' => '2a5389eb-4ff8-4584-ac99-644e2a539aa1', - ], - 'Result' => [ - 'description' => 'The results of image moderation parameters such as the label parameter and the confidence parameter.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The data returned.'."\n", - 'type' => 'object', - 'properties' => [ - 'Label' => [ - 'description' => 'The labels returned after the image moderation.'."\n", - 'type' => 'string', - 'example' => 'violent_explosion', - ], - 'Confidence' => [ - 'description' => 'The score of the confidence level. Valid values: 0 to 100. The value is accurate to two decimal places.'."\n", - 'type' => 'number', - 'format' => 'float', - 'example' => '81.22', - ], - 'Description' => [ - 'description' => 'The description of the result.', - 'type' => 'string', - 'example' => 'no risk', - ], - 'RiskLevel' => [ - 'description' => 'Risk Level', - 'type' => 'string', - 'example' => 'high', - ], - ], - ], - ], - 'FrameNum' => [ - 'description' => 'The number of frames.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Frame' => [ - 'description' => 'The information about the captured frames.'."\n", - 'type' => 'string', - 'example' => '[{"result":[{"confidence":81.22,"label":"violent_explosion"}]}]', - ], - 'ReqId' => [ - 'description' => 'The reqId field returned by the Image Async Moderation API.', - 'type' => 'string', - 'example' => 'B0963D30-BAB4-562F-9ED0-7A23AEC51C7C'."\n", - ], - 'RiskLevel' => [ - 'description' => 'Risk Level.', - 'type' => 'string', - 'example' => 'high', - ], - 'ManualTaskId' => [ - 'type' => 'string', - ], - 'AccountId' => [ - 'type' => 'string', - ], + 'DataId' => ['description' => 'The value of dataId passed in the API request. This field is not present if no dataId was passed in the request.', 'type' => 'string', 'title' => '', 'example' => '2a5389eb-4ff8-4584-ac99-644e2a539aa1'], + 'TaskId' => ['description' => 'The task ID', 'type' => 'string', 'title' => '', 'example' => 'xxxxx-xxxxx'], ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2881AD4F-638B-52A3-BA20-F74C5B1CEAE3\\",\\n \\"Code\\": 200,\\n \\"Msg\\": \\"success\\",\\n \\"Data\\": {\\n \\"DataId\\": \\"2a5389eb-4ff8-4584-ac99-644e2a539aa1\\",\\n \\"Result\\": [\\n {\\n \\"Label\\": \\"violent_explosion\\",\\n \\"Confidence\\": 81.22,\\n \\"Description\\": \\"未检测出风险\\",\\n \\"RiskLevel\\": \\"high\\"\\n }\\n ],\\n \\"FrameNum\\": 1,\\n \\"Frame\\": \\"[{\\\\\\"result\\\\\\":[{\\\\\\"confidence\\\\\\":81.22,\\\\\\"label\\\\\\":\\\\\\"violent_explosion\\\\\\"}]}]\\",\\n \\"ReqId\\": \\"B0963D30-BAB4-562F-9ED0-7A23AEC51C7C\\\\n\\",\\n \\"RiskLevel\\": \\"high\\",\\n \\"ManualTaskId\\": \\"xxxxx-xxxxx\\",\\n \\"AccountId\\": \\"123456789\\"\\n }\\n}","type":"json"}]', - 'title' => 'DescribeImageModerationResult', - 'description' => '* Billing: This operation is free of charge.'."\n" - .'* QPS limit: You can call this operation up to 100 times per second per account. If the number of the calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n", - 'responseParamsDescription' => 'The following table describes the response codes. You are charged by using the pay-as-you-go billing method only for requests whose response code is 200.'."\n" - ."\n" - .'|**Code**|**Description**|'."\n" - .'|---|---|'."\n" - .'|200|The request is successful.|'."\n" - .'|280|The moderation is in progress.|'."\n" - .'|400|Not all request parameters are configured.|'."\n" - .'|401|The values specified for one or more request parameters are invalid.|'."\n" - .'|402|Invalid request parameters. Check and modify them and try again.|'."\n" - .'|403|The QPS of requests exceeds the upper limit. Check and modify the number of requests that are sent at a time.|'."\n" - .'|404|The specified image failed to be downloaded. Check the URL of the image or try again.|'."\n" - .'|405|Downloading the specified image timed out. The possible cause is that the image cannot be accessed. Check and adjust the image and try again.|'."\n" - .'|406|The specified image is excessively large. Check and change the image size and try again.|'."\n" - .'|407|The format of the specified image is not supported. Check and change the image format and try again.|'."\n" - .'|408|You do not have the required permissions. The possible cause is that this account is not activated, has overdue payments, or is not authorized to call this API.|'."\n" - .'|409|The specified request ID does not exist. The possible cause is that the query is performed too fast or the moderation results have exceeded the 30-day validity period.|'."\n" - .'|500|A system exception occurred.|', - ], - 'VoiceModeration' => [ - 'summary' => 'Submits a Voice Moderation 2.0 task.', - 'methods' => [ - 'post', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'ManualModeration', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ManualModeration'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:ManualModeration', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\",\\n \\"Message\\": \\"SUCCESS\\",\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"DataId\\": \\"2a5389eb-4ff8-4584-ac99-644e2a539aa1\\",\\n \\"TaskId\\": \\"xxxxx-xxxxx\\"\\n }\\n}","type":"json"}]', + ], + 'ManualModerationResult' => [ + 'summary' => 'Retrieves the manual review result.', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', + 'operationType' => 'none', 'riskType' => 'none', - 'chargeType' => 'paid', - 'abilityTreeCode' => '162159', - 'abilityTreeNodes' => [ - 'FEATURElvwang6QCU1H', - 'FEATURElvwangPAXR7J', - ], + 'chargeType' => 'free', + 'abilityTreeCode' => '264414', + 'abilityTreeNodes' => ['FEATURElvwangIBEW89', 'FEATURElvwangU90H4V', 'FEATURElvwangBBY7QM', 'FEATURElvwang870NMI'], + 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ - 'name' => 'Service', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The type of the moderation service.', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'nickname_detection', - ], - ], - [ 'name' => 'ServiceParameters', 'in' => 'formData', - 'schema' => [ - 'description' => 'The parameters required by the moderation service. The value is a JSON string.', - 'type' => 'string', - 'required' => false, - 'example' => '{"url": "http://aliyundoc.com/test.flv", "dataId": "data1234"}', - ], + 'schema' => ['description' => 'The parameter set required by the service, in JSON string format.'."\n" + .'- TaskId: The task ID returned when the task was submitted.', 'type' => 'string', 'required' => false, 'example' => '{\\"TaskId\\":\\"e5f2d886-4c23-440d-999c-bd98acde11b6\\"}', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', + 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.', - 'type' => 'string', - 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****', - ], - 'Code' => [ - 'description' => 'The returned HTTP status code.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned in response to the request.', - 'type' => 'string', - 'example' => 'SUCCESS', - ], + 'RequestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****'], + 'Message' => ['description' => 'The error message.', 'type' => 'string', 'example' => 'SUCCESS', 'title' => ''], + 'Code' => ['description' => 'The error code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], 'Data' => [ - 'description' => 'The data returned.'."\n", + 'description' => 'The returned data.', 'type' => 'object', 'properties' => [ - 'TaskId' => [ - 'description' => 'The task ID.'."\n", - 'type' => 'string', - 'example' => 'xxxxx-xxxxx', - ], - 'DataId' => [ - 'description' => 'The ID of the moderated object.', - 'type' => 'string', - 'example' => 'data1234', + 'RiskLevel' => ['description' => 'The risk level, returned based on the configured high and low risk scores. Valid values:'."\n" + ."\n" + .'- high: High risk.'."\n" + .' '."\n" + .'- low: Low risk.'."\n" + ."\n" + .'- none: No risk detected.', 'type' => 'string', 'example' => 'high', 'title' => ''], + 'DataId' => ['description' => 'The value of dataId passed in the API request. This field is not returned if dataId was not specified in the request.', 'type' => 'string', 'example' => 'data1234', 'title' => ''], + 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 'xxxxx-xxxxx', 'title' => ''], + 'ReviewCount' => ['title' => '', 'description' => 'The number of reviews.', 'type' => 'string', 'example' => '1'], + 'Result' => [ + 'description' => 'The detailed label results.', + 'type' => 'array', + 'items' => [ + 'description' => 'The label item structure.', + 'type' => 'object', + 'properties' => [ + 'Label' => ['description' => 'The risk label.', 'type' => 'string', 'example' => 'violent_explosion', 'title' => ''], + 'Description' => ['description' => 'The label description.', 'type' => 'string', 'example' => '未检测出风险', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"SUCCESS\\",\\n \\"Data\\": {\\n \\"TaskId\\": \\"xxxxx-xxxxx\\",\\n \\"DataId\\": \\"data1234\\"\\n }\\n}","type":"json"}]', - 'title' => 'VoiceModeration', - ], - 'VoiceModerationResult' => [ - 'summary' => 'Obtains the moderation results of a Voice Moderation 2.0 task.', - 'methods' => [ - 'post', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'Retrieve content security manual review result', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ManualModerationResult'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:ManualModerationResult', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\",\\n \\"Message\\": \\"SUCCESS\\",\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"RiskLevel\\": \\"high\\",\\n \\"DataId\\": \\"data1234\\",\\n \\"TaskId\\": \\"xxxxx-xxxxx\\",\\n \\"ReviewCount\\": \\"1\\",\\n \\"Result\\": [\\n {\\n \\"Label\\": \\"violent_explosion\\",\\n \\"Description\\": \\"未检测出风险\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'translator' => 'machine', + ], + 'MultiModalAgent' => [ + 'summary' => 'This is the synchronous detection API for the multi-modal agent.', + 'path' => '', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', + 'operationType' => 'none', 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '162180', - 'abilityTreeNodes' => [ - 'FEATURElvwang6QCU1H', - 'FEATURElvwangPAXR7J', - ], + 'chargeType' => 'paid', + 'abilityTreeNodes' => ['FEATURElvwang828K27'], ], 'parameters' => [ [ - 'name' => 'Service', + 'name' => 'ServiceParameters', 'in' => 'formData', - 'schema' => [ - 'description' => 'The type of the moderation service. Valid values: nickname_detection: user nickname'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'nickname_detection', - ], + 'schema' => ['description' => 'The set of parameters for the auditing service. This includes the taskId of the detection task to query. You can specify only one taskId at a time.', 'type' => 'string', 'required' => false, 'example' => '{"content":"测试文本","dataId":"img1234567"}', 'title' => ''], ], [ - 'name' => 'ServiceParameters', + 'name' => 'AppID', 'in' => 'formData', - 'schema' => [ - 'description' => 'The parameters of API requests that are sent from API Gateway to the backend service.'."\n" - ."\n" - .'For more information, see [ServiceParameter](~~43988~~).'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '{"taskId":"xxxxx-xxxx"}', - ], + 'schema' => ['description' => 'The unique identifier of the whiteboard application. To get the whiteboard application ID, see [CreateApp](~~204234~~).', 'type' => 'string', 'required' => false, 'example' => 'txt_check_agent_01', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'Id of the request'."\n", - 'type' => 'string', - 'example' => '2881AD4F-638B-52A3-BA20-F74C5B1CEAE3', - ], - 'Code' => [ - 'description' => 'The returned HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned in response to the request.'."\n", - 'type' => 'string', - 'example' => 'SUCCESS', - ], + 'RequestId' => ['description' => 'Id of the request', 'type' => 'string', 'title' => '', 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****'], + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request was successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message.', 'type' => 'string', 'example' => 'SUCCESS', 'title' => ''], 'Data' => [ - 'description' => 'The data returned.'."\n", 'type' => 'object', 'properties' => [ - 'Url' => [ - 'description' => 'The URL of the moderated content.'."\n", - 'type' => 'string', - 'example' => 'https://aliyundoc.com'."\n" - ."\n", - ], - 'LiveId' => [ - 'description' => 'The unique ID of the live stream.'."\n", - 'type' => 'string', - 'example' => 'liveId', - ], - 'TaskId' => [ - 'description' => 'The task ID.'."\n", - 'type' => 'string', - 'example' => 'kw24ihd0WGkdi5nniVZM@qOj-1x5Ibb', - ], - 'SliceDetails' => [ - 'description' => 'The moderation results of audio segments.'."\n", + 'DataId' => ['description' => 'The data ID.', 'type' => 'string', 'example' => '26769ada6e264e7ba9aa048241e12be9', 'title' => ''], + 'RiskLevel' => ['description' => 'The risk level. The value is returned based on the configured high and low risk scores. Valid values:'."\n" + ."\n" + .'- high: High risk'."\n" + ."\n" + .'- medium: Medium risk'."\n" + ."\n" + .'- low: Low risk'."\n" + ."\n" + .'- none: No risk detected', 'type' => 'string', 'example' => 'high', 'title' => ''], + 'Result' => [ 'type' => 'array', 'items' => [ - 'description' => 'The moderation results of the audio segment.'."\n", 'type' => 'object', 'properties' => [ - 'StartTime' => [ - 'description' => 'The start time of the audio segment in seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'EndTime' => [ - 'description' => 'The end time of the audio segment in seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '10', - ], - 'StartTimestamp' => [ - 'description' => 'The start timestamp of the segment. Unit: milliseconds.', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1678854649720', - ], - 'EndTimestamp' => [ - 'description' => 'The end timestamp of the segment. Unit: milliseconds.', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1678854649720', - ], - 'Url' => [ - 'description' => 'The temporary URL of the audio segment.'."\n", - 'type' => 'string', - 'example' => 'https://aliyundoc.com'."\n" - ."\n", - ], - 'Text' => [ - 'description' => 'The text converted from the audio segment.'."\n", - 'type' => 'string', - 'example' => 'Disgusting', - ], - 'Labels' => [ - 'description' => 'The details of the labels.'."\n", - 'type' => 'string', - 'example' => 'sexual_sounds', - ], - 'Score' => [ - 'description' => 'The risk score. Default range: 0 to 99.'."\n", - 'type' => 'number', - 'format' => 'float', - 'example' => '87.01', - ], - 'Extend' => [ - 'description' => 'Extended fields.'."\n", - 'type' => 'string', - 'example' => '{\\"riskTips\\":\\"sexuality_Suggestive\\",\\"riskWords\\":\\"pxxxxy\\"}'."\n" - ."\n", - ], - 'RiskTips' => [ - 'description' => 'The details of the risky content.'."\n", - 'type' => 'string', - 'example' => 'sexuality_Suggestive', - ], - 'RiskWords' => [ - 'description' => 'The term hit by the risky content.'."\n", - 'type' => 'string', - 'example' => 'AAA,BBB,CCC', - ], - 'OriginAlgoResult' => [ - 'description' => 'Reserved parameter.'."\n", - 'type' => 'object', - 'example' => '{}', - ], - 'RiskLevel' => [ - 'description' => 'Risk Level.', - 'type' => 'string', - 'example' => 'high', - ], - 'Descriptions' => [ - 'description' => 'The description of the labels.', - 'type' => 'string', - 'example' => 'no risk', - ], + 'Label' => ['description' => 'The risk label.', 'type' => 'string', 'example' => 'violent_explosion', 'title' => ''], + 'Description' => ['description' => 'The description of the label.', 'type' => 'string', 'example' => '未检测出风险', 'title' => ''], + 'Reason' => ['description' => 'A description of the result when the session is terminated.'."\n" + ."\n" + .'- **SESSION\\_KILLED**: The session was successfully terminated.'."\n" + ."\n" + .'- **SESSION\\_EXPIRED**: The session has expired.'."\n" + ."\n" + .'- **SESSION\\_NO\\_PERMISSION**: The account used to terminate the session does not have sufficient permissions.'."\n" + ."\n" + .'- **SESSION\\_ACCOUNT\\_ERROR**: The account or password used to terminate the session is incorrect.'."\n" + ."\n" + .'- **SESSION\\_IGNORED\\_USER**: The session of an account that does not need to be terminated.'."\n" + ."\n" + .'- **SESSION\\_INTERNAL\\_USER\\_OR\\_COMMAND**: The session or command of an Alibaba Cloud operations account.'."\n" + ."\n" + .'- **SESSION\\_KILL\\_TASK\\_TIMEOUT**: A timeout occurred when terminating the session.'."\n" + ."\n" + .'- **SESSION\\_OTHER\\_ERROR**: Other errors.', 'type' => 'string', 'example' => 'TRACER_SLB_ALL_DEST_WEIGHT_0', 'title' => ''], ], + 'description' => 'The returned collection.', + 'title' => '', + 'example' => '', ], + 'description' => 'The structure of the label item.', + 'title' => '', + 'example' => '', ], - 'DataId' => [ - 'description' => 'The ID of the moderated object.', - 'type' => 'string', - 'example' => '26769ada6e264e7ba9aa048241e12be9', - ], - 'RiskLevel' => [ - 'description' => 'Risk Level.', - 'type' => 'string', - 'example' => 'high', - ], - 'ManualTaskId' => [ - 'type' => 'string', + 'Usage' => [ + 'type' => 'object', + 'properties' => [ + 'PromptLength' => ['description' => 'The length of the prompt.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''], + 'ContentLength' => ['description' => 'The length of the content.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''], + 'AgentDetail' => ['description' => 'Agent details.', 'type' => 'object', 'title' => '', 'example' => ''], + ], + 'description' => 'Token usage.', + 'title' => '', + 'example' => '', ], ], + 'description' => 'The result of the image content detection.', + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'description' => 'Schema of Response', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'errorCodes' => [ + 403 => [ + ['errorCode' => 'NoPermission', 'errorMessage' => 'You don\'t have permission.', 'description' => 'The current operation is not authorized. Please contact the main account to authorize the operation in the RAM console.'], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2881AD4F-638B-52A3-BA20-F74C5B1CEAE3\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"SUCCESS\\",\\n \\"Data\\": {\\n \\"Url\\": \\"暂无\\",\\n \\"LiveId\\": \\"liveId\\",\\n \\"TaskId\\": \\"kw24ihd0WGkdi5nniVZM@qOj-1x5Ibb\\",\\n \\"SliceDetails\\": [\\n {\\n \\"StartTime\\": 0,\\n \\"EndTime\\": 10,\\n \\"StartTimestamp\\": 1678854649720,\\n \\"EndTimestamp\\": 1678854649720,\\n \\"Url\\": \\"暂无\\",\\n \\"Text\\": \\"今天天气真不错\\",\\n \\"Labels\\": \\"sexual_sounds\\",\\n \\"Score\\": 87.01,\\n \\"Extend\\": \\"{\\\\\\\\\\\\\\"riskWords\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"色情服务\\\\\\\\\\\\\\",\\\\\\"adNums\\\\\\":\\\\\\"\\\\\\\\\\\\\\",\\\\\\"riskTips\\\\\\":\\\\\\"涉政_人物,涉政_红歌\\\\\\"}\\",\\n \\"RiskTips\\": \\"涉政_人物\\",\\n \\"RiskWords\\": \\"色情服务\\",\\n \\"OriginAlgoResult\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"RiskLevel\\": \\"high\\",\\n \\"Descriptions\\": \\"疑似违禁内容\\"\\n }\\n ],\\n \\"DataId\\": \\"data1234\\",\\n \\"RiskLevel\\": \\"high\\",\\n \\"ManualTaskId\\": \\"xxxxx-xxxxx\\"\\n }\\n}","type":"json"}]', - 'title' => 'VoiceModerationResult', - ], - 'VoiceModerationCancel' => [ - 'summary' => 'Cancels a Voice Moderation 2.0 task.', - 'methods' => [ - 'post', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'MultiModalAgent', + 'description' => 'This is the AI Guardrails agent.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:MultiModalAgent', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"SUCCESS\\",\\n \\"Data\\": {\\n \\"DataId\\": \\"26769ada6e264e7ba9aa048241e12be9\\",\\n \\"RiskLevel\\": \\"high\\",\\n \\"Result\\": [\\n {\\n \\"Label\\": \\"violent_explosion\\",\\n \\"Description\\": \\"未检测出风险\\",\\n \\"Reason\\": \\"TRACER_SLB_ALL_DEST_WEIGHT_0\\"\\n }\\n ],\\n \\"Usage\\": {\\n \\"PromptLength\\": 100,\\n \\"ContentLength\\": 10,\\n \\"AgentDetail\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n }\\n }\\n }\\n}","type":"json"}]', + ], + 'MultiModalGuard' => [ + 'path' => '', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', + 'operationType' => 'get', 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '164076', - 'abilityTreeNodes' => [ - 'FEATURElvwang6QCU1H', - 'FEATURElvwangPAXR7J', - ], + 'chargeType' => 'paid', + 'abilityTreeNodes' => ['FEATURElvwang828K27'], ], 'parameters' => [ [ 'name' => 'Service', 'in' => 'formData', - 'schema' => [ - 'description' => 'The type of the moderation service.', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'nickname_detection', - ], + 'schema' => ['description' => 'The type of the moderation service. Valid values:'."\n" + ."\n" + .'- query\\_security\\_check: AI input content moderation.'."\n" + ."\n" + .'- response\\_security\\_check: AI-generated content moderation.', 'type' => 'string', 'required' => false, 'example' => 'query_security_check_pro', 'title' => ''], ], [ 'name' => 'ServiceParameters', 'in' => 'formData', - 'schema' => [ - 'description' => 'The parameters required by the moderation service. The value is a JSON string.', - 'type' => 'string', - 'required' => false, - 'example' => '{"taskId":"xxxxx-xxxx"}', - ], + 'schema' => ['description' => 'The set of parameters required for the moderation service. The value must be a JSON string.', 'type' => 'string', 'required' => false, 'example' => '- 文本:'."\n" + .'{'."\n" + .' "content": "test"'."\n" + .'}'."\n" + ."\n" + .'- 图片:'."\n" + .'{'."\n" + .' "imageUrls": ["https://example.com/image.png"]'."\n" + .'}'."\n" + ."\n" + .'- 文件:'."\n" + .'{'."\n" + .' "fileUrls": ["https://example.com/file.pdf"]'."\n" + .'}', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', + 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.', - 'type' => 'string', - 'example' => '4A926AE2-4C96-573F-824F-0532960799F8', - ], - 'Code' => [ - 'description' => 'The returned HTTP status code.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned in response to the request.', - 'type' => 'string', - 'example' => 'SUCCESS', + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****'], + 'Code' => ['description' => 'The error code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message.', 'type' => 'string', 'example' => 'OK', 'title' => ''], + 'Data' => [ + 'description' => 'The returned data.', + 'type' => 'object', + 'properties' => [ + 'Detail' => [ + 'description' => 'The detection details.', + 'type' => 'array', + 'items' => [ + 'description' => 'The detection details.', + 'type' => 'object', + 'properties' => [ + 'Result' => [ + 'description' => 'The detection results.', + 'type' => 'array', + 'items' => [ + 'description' => 'The detection results.', + 'type' => 'object', + 'properties' => [ + 'Label' => ['description' => 'The label.', 'type' => 'string', 'example' => 'contraband_act', 'title' => ''], + 'Description' => ['description' => 'The description of the label.', 'type' => 'string', 'example' => '疑似违禁行为', 'title' => ''], + 'Confidence' => ['description' => 'The confidence score. Valid values: 0 to 100. The value is accurate to two decimal places.', 'type' => 'number', 'format' => 'float', 'example' => '100', 'title' => ''], + 'Level' => ['description' => 'The risk level.', 'type' => 'string', 'example' => 'none', 'title' => ''], + 'Ext' => ['description' => 'The extended information about the detection results.', 'type' => 'any', 'example' => '{}', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'Type' => ['description' => 'The type.', 'type' => 'string', 'example' => 'contentModeration', 'title' => ''], + 'Level' => ['description' => 'The risk level.', 'type' => 'string', 'example' => 'none', 'title' => ''], + 'Suggestion' => ['description' => 'The moderation suggestion. Valid values: -**block**: The content is non-compliant. -**pass**: The content is compliant.', 'type' => 'string', 'example' => 'pass', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'Suggestion' => ['description' => 'The moderation suggestion. Valid values: -block: The content is non-compliant. -pass: The content is compliant.', 'type' => 'string', 'example' => 'pass', 'title' => ''], + 'DataId' => ['description' => 'The data ID of the detection object.', 'type' => 'string', 'example' => 'data1234', 'title' => ''], + ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'errorCodes' => [ + 403 => [ + ['errorCode' => 'NoPermission', 'errorMessage' => 'You don\'t have permission.', 'description' => 'The current operation is not authorized. Please contact the main account to authorize the operation in the RAM console.'], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4A926AE2-4C96-573F-824F-0532960799F8\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"SUCCESS\\"\\n}","type":"json"}]', - 'title' => 'VoiceModerationCancel', - ], - 'VideoModeration' => [ - 'summary' => 'Identifies risky or illegal content in video files. You can call this operation to submit a moderation task.', - 'methods' => [ - 'post', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'MultiModalGuard', + 'summary' => 'API for synchronous detection', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'yundun-greenweb:MultiModalGuard', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": {\\n \\"Detail\\": [\\n {\\n \\"Result\\": [\\n {\\n \\"Label\\": \\"contraband_act\\",\\n \\"Description\\": \\"疑似违禁行为\\",\\n \\"Confidence\\": 100,\\n \\"Level\\": \\"none\\",\\n \\"Ext\\": \\"{}\\"\\n }\\n ],\\n \\"Type\\": \\"contentModeration\\",\\n \\"Level\\": \\"none\\",\\n \\"Suggestion\\": \\"pass\\"\\n }\\n ],\\n \\"Suggestion\\": \\"pass\\",\\n \\"DataId\\": \\"data1234\\"\\n }\\n}","type":"json"}]', + ], + 'MultiModalGuardAsync' => [ + 'summary' => 'An asynchronous multimodal AI safety guardrail API for audio and video. It provides comprehensive detection of non-compliant content, sensitive content, prompt injection attacks, malicious files, and malicious URLs.', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -1946,96 +2593,65 @@ 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeCode' => '187556', - 'abilityTreeNodes' => [ - 'FEATURElvwang53TCRC', - ], + 'abilityTreeNodes' => ['FEATURElvwang53TCRC'], + 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'Service', 'in' => 'formData', - 'schema' => [ - 'description' => 'The type of the moderation service.', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'liveStreamDetection' => 'liveStreamDetection', - 'videoDetection' => 'videoDetection', - 'liveStreamDetection_cb' => 'liveStreamDetection_cb', - 'videoDetection_cb' => 'videoDetection_cb', - ], - 'example' => 'videoDetection', - ], + 'schema' => ['description' => 'The moderation service type. Valid values: `audio_security_check` and `video_security_check`.', 'type' => 'string', 'example' => 'audio_security_check', 'title' => '', 'required' => false], ], [ 'name' => 'ServiceParameters', 'in' => 'formData', - 'schema' => [ - 'description' => 'The parameters required by the moderation service. The value is a JSON string.', - 'type' => 'string', - 'required' => false, - 'example' => '{\\"url\\": \\"https://talesofai.oss-cn-shanghai.aliyuncs.com/xxx.mp4\\", \\"dataId\\": \\"94db0b88-f521-11ed-806e-fae21c1f239c\\"}', - ], + 'schema' => ['description' => 'The parameter set required for the moderation service.', 'type' => 'string', 'example' => '{"url": "https://testxxx.oss-cn-shanghai.aliyuncs.com/xxx.mp4", "dataId": "data1234"}', 'title' => '', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.', - 'type' => 'string', - 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****', - ], - 'Message' => [ - 'description' => 'The message that is returned in response to the request.', - 'type' => 'string', - 'example' => 'SUCCESS', - ], - 'Code' => [ - 'description' => 'The returned HTTP status code.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], + 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****', 'title' => ''], + 'Message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'OK', 'title' => ''], + 'Code' => ['description' => 'The response code. A value of 200 indicates that the request was successful.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], 'Data' => [ - 'description' => 'The data returned.'."\n", 'type' => 'object', 'properties' => [ - 'TaskId' => [ - 'description' => 'The task ID.'."\n", - 'type' => 'string', - 'example' => 'xxxxx-xxxxx', - ], - 'DataId' => [ - 'description' => 'The ID of the moderated object.', - 'type' => 'string', - 'example' => 'data1234', - ], + 'TaskId' => ['description' => 'The ID of the asynchronous task.', 'type' => 'string', 'example' => 'au_f_xxxxx', 'title' => ''], + 'DataId' => ['description' => 'The custom data ID.', 'type' => 'string', 'example' => 'dataIdxxx', 'title' => ''], ], + 'title' => '', + 'description' => 'The response data.', + 'example' => '', ], ], + 'title' => '', + 'description' => 'Response schema', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\",\\n \\"Message\\": \\"SUCCESS\\",\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"TaskId\\": \\"xxxxx-xxxxx\\",\\n \\"DataId\\": \\"data1234\\"\\n }\\n}","type":"json"}]', - 'title' => 'VideoModeration', - ], - 'VideoModerationResult' => [ - 'summary' => 'Get Video Detection Results', - 'methods' => [ - 'post', + 'errorCodes' => [ + 403 => [ + ['errorCode' => 'NoPermission', 'errorMessage' => 'You don\'t have permission.', 'description' => 'The current operation is not authorized. Please contact the main account to authorize the operation in the RAM console.'], + ], ], - 'schemes' => [ - 'https', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'MultiModalGuardAsync', + 'description' => 'If an API is subject to billing, add the following sentence in bold: "Before using this API, ensure that you fully understand the billing methods and pricing of the XXX product." The word "pricing" must be a hyperlink to https\\://www\\.aliyun.com/price/product#/ecs/detail.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], + 'ramActions' => [], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\",\\n \\"Message\\": \\"OK\\",\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"TaskId\\": \\"au_f_xxxxx\\",\\n \\"DataId\\": \\"dataIdxxx\\"\\n }\\n}","type":"json"}]', + ], + 'MultiModalGuardAsyncResult' => [ + 'summary' => 'This AI Security Guardrail API retrieves asynchronous multimodal results from both audio and video.', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -2048,564 +2664,410 @@ 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '187919', - 'abilityTreeNodes' => [ - 'FEATURElvwang53TCRC', - ], + 'abilityTreeNodes' => ['FEATURElvwang53TCRC'], ], 'parameters' => [ [ 'name' => 'Service', 'in' => 'formData', - 'schema' => [ - 'description' => 'The type of the moderation service.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* liveStreamDetection: live stream moderation'."\n" - .'* videoDetection: video file moderation'."\n" - .'* liveStreamDetection_cb: live stream moderation_For regions outside the Chinese mainland'."\n" - .'* videoDetection_cb: video file moderation_For regions outside the Chinese mainland.'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'liveStreamDetection' => '', - 'videoDetection' => '', - 'liveStreamDetection_cb' => '', - 'videoDetection_cb' => '', - ], - 'example' => 'videoDetection', - ], + 'schema' => ['description' => 'The moderation service to run.', 'type' => 'string', 'required' => false, 'example' => 'audio_security_check', 'title' => ''], ], [ 'name' => 'ServiceParameters', 'in' => 'formData', - 'schema' => [ - 'description' => 'The parameters required by the moderation service. The ID of the task that you want to query. You can specify one task ID at a time.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '{\\"taskId\\":\\"au_f_8PoWiZKoLbczp5HRn69VdT-1y8@U5\\"}', - ], + 'schema' => ['description' => 'The parameters for the moderation service, provided as a JSON string.', 'type' => 'string', 'required' => false, 'example' => '{'."\n" + .' "taskId": "au_f_xxxxx"'."\n" + .'}', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'Id of the request'."\n", - 'type' => 'string', - 'example' => '6CF2815C-C8C7-4A01-B52E-FF6E24F53492', - ], - 'Code' => [ - 'description' => 'The returned HTTP status code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned in response to the request.'."\n", - 'type' => 'string', - 'example' => 'success finished', - ], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****'."\n"], + 'Code' => ['description' => 'The status code of the response.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'SUCCESS', 'title' => ''], 'Data' => [ - 'description' => 'The moderation results.'."\n", 'type' => 'object', 'properties' => [ - 'LiveId' => [ - 'description' => 'The unique ID of the live stream.'."\n", - 'type' => 'string', - 'example' => 'liveId', - ], - 'DataId' => [ - 'description' => 'The value of dataId that is specified in the API request. If this parameter is not specified in the API request, the dataId field is not available in the response.'."\n", - 'type' => 'string', - 'example' => 'product_content-2055763', - ], + 'LiveId' => ['description' => 'The unique identifier for the live stream.', 'type' => 'string', 'example' => 'liveId', 'title' => ''], + 'DataId' => ['description' => 'The value of the `dataId` parameter from the request. This field is omitted if `dataId` was not provided.', 'type' => 'string', 'example' => 'data1234', 'title' => ''], + 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 'vi_f_xxx', 'title' => ''], + 'Suggestion' => ['description' => 'The recommended action. Valid values:'."\n" + ."\n" + .'- `block`: Block the content.'."\n" + ."\n" + .'- `pass`: Pass the content.'."\n" + ."\n" + .'- `watch`: The content requires review.'."\n" + ."\n" + .'- `mask`: Mask the content.', 'type' => 'string', 'example' => 'pass', 'title' => ''], 'AudioResult' => [ - 'description' => 'The voice moderation results. The moderation results contain a structure.'."\n", 'type' => 'object', 'properties' => [ + 'Suggestion' => ['description' => 'The overall recommended action for the audio content.', 'type' => 'string', 'example' => 'pass', 'title' => ''], + 'SliceNum' => ['description' => 'The slice count.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'SliceDetails' => [ - 'description' => 'The details about the text in the moderated voice. The value is a JSON array that contains one or more elements. Each element corresponds to a text entry.'."\n", 'type' => 'array', 'items' => [ - 'description' => 'Segment details.'."\n", 'type' => 'object', 'properties' => [ - 'StartTime' => [ - 'description' => 'The start time of the text after voice-to-text conversion. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'EndTime' => [ - 'description' => 'The end time of the text after voice-to-text conversion. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '30', - ], - 'StartTimestamp' => [ - 'description' => 'The start timestamp of the segment. Unit: milliseconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1659935002123', - ], - 'EndTimestamp' => [ - 'description' => 'The end timestamp of the segment. Unit: milliseconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1685245261939', - ], - 'Url' => [ - 'description' => 'If the moderation object is a voice stream, this parameter indicates the temporary access URL of the voice stream to which the text entry corresponds. The validity period of the URL is 30 minutes. You must prepare another URL to store the voice stream at the earliest opportunity.'."\n", - 'type' => 'string', - 'example' => 'http://xxxx.abc.img', - ], - 'Text' => [ - 'description' => 'The text converted from voice.'."\n", - 'type' => 'string', - 'example' => 'Disgusting', - ], - 'Labels' => [ - 'description' => 'The details of the labels.'."\n", - 'type' => 'string', - 'example' => 'porn', - ], - 'Score' => [ - 'description' => 'The risk score. Default range: 0 to 99.'."\n", - 'type' => 'number', - 'format' => 'float', - 'example' => '5', - ], - 'Extend' => [ - 'description' => 'A reserved parameter.'."\n", - 'type' => 'string', - 'example' => '{\\"consoleProduct\\":\\"slbnext\\"}', - ], - 'RiskTips' => [ - 'description' => 'Subcategory labels. Multiple labels are separated by commas (,).'."\n", - 'type' => 'string', - 'example' => '""', - ], - 'RiskWords' => [ - 'description' => 'The risk words that are hit. Multiple words are separated by commas (,).'."\n", - 'type' => 'string', - 'example' => '""', - ], - 'RiskLevel' => [ - 'description' => 'Risk Level.', - 'type' => 'string', - 'example' => 'high', - ], - 'Descriptions' => [ - 'description' => 'The description of the labels.', - 'type' => 'string', - 'example' => 'no risk', - ], - ], - ], - ], - 'AudioSummarys' => [ - 'description' => 'Summary of voice labels.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'Object'."\n", - 'type' => 'object', - 'properties' => [ - 'Label' => [ - 'description' => 'The voice label.'."\n", - 'type' => 'string', - 'example' => 'profanity', - ], - 'LabelSum' => [ - 'description' => 'The number of times that the label is matched.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '8', - ], - 'Description' => [ - 'description' => 'The description of the labels.', - 'type' => 'string', - 'example' => 'no risk', + 'StartTime' => ['description' => 'The start time of the audio slice, in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''], + 'EndTime' => ['description' => 'The end time of the audio slice, in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''], + 'Url' => ['description' => 'The temporary URL of the audio slice.', 'type' => 'string', 'example' => 'http://xxxx.abc.wav', 'title' => ''], + 'Text' => ['description' => 'The speech-to-text transcript of the audio slice.', 'type' => 'string', 'example' => '今天天气真不错', 'title' => ''], + 'Suggestion' => ['description' => 'The recommended action. Valid values:'."\n" + ."\n" + .'- `block`: Block the content.'."\n" + ."\n" + .'- `pass`: Pass the content.'."\n" + ."\n" + .'- `watch`: The content requires review.'."\n" + ."\n" + .'- `mask`: Mask the content.', 'type' => 'string', 'example' => 'block', 'title' => ''], + 'Detail' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Result' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Label' => ['description' => 'The label of the detection result.', 'type' => 'string', 'example' => 'drug', 'title' => ''], + 'Description' => ['description' => 'The description of the label.', 'type' => 'string', 'example' => '毒品', 'title' => ''], + 'Confidence' => ['description' => 'The confidence score, ranging from 0 to 100, accurate to two decimal places.', 'type' => 'number', 'format' => 'float', 'example' => '90', 'title' => ''], + 'Level' => ['description' => 'The risk level. Valid values:'."\n" + ."\n" + .'- `high`: High risk. If the content matches an entry in a custom keyword library, the risk level defaults to high.'."\n" + ."\n" + .'- `medium`: Medium risk.'."\n" + ."\n" + .'- `low`: Low risk.'."\n" + ."\n" + .'- `none`: No risk detected.', 'type' => 'string', 'example' => 'high', 'title' => ''], + 'Ext' => ['description' => 'Additional information about the detection result.', 'type' => 'any', 'example' => '{}', 'title' => ''], + ], + 'description' => 'A single detection result.', + 'title' => '', + 'example' => '', + ], + 'description' => 'A list of detection results.', + 'title' => '', + 'example' => '', + ], + 'Type' => ['description' => 'The detection type. Valid values:'."\n" + ."\n" + .'- `contentModeration`: Content moderation.'."\n" + ."\n" + .'- `promptAttack`: Prompt attack detection.'."\n" + ."\n" + .'- `sensitiveData`: Sensitive data detection.'."\n" + ."\n" + .'- `modelHallucination`: Model hallucination.'."\n" + ."\n" + .'- `maliciousFile`: Malicious file detection.', 'type' => 'string', 'example' => 'contentModeration', 'title' => ''], + 'Level' => ['description' => 'The risk level. Valid values:'."\n" + ."\n" + .'- `high`: High risk. If the content matches an entry in a custom keyword library, the risk level defaults to high.'."\n" + ."\n" + .'- `medium`: Medium risk.'."\n" + ."\n" + .'- `low`: Low risk.'."\n" + ."\n" + .'- `none`: No risk detected.', 'type' => 'string', 'example' => 'high', 'title' => ''], + 'Suggestion' => ['description' => 'The recommended action. Valid values:'."\n" + ."\n" + .'- `block`: Block the content.'."\n" + ."\n" + .'- `pass`: Pass the content.'."\n" + ."\n" + .'- `watch`: The content requires review.'."\n" + ."\n" + .'- `mask`: Mask the content.', 'type' => 'string', 'example' => 'block', 'title' => ''], + ], + 'description' => 'Details for a single detection type.', + 'title' => '', + 'example' => '', + ], + 'description' => 'Detection details for the audio slice.', + 'title' => '', + 'example' => '', ], ], + 'description' => 'Details for a single audio slice.', + 'title' => '', + 'example' => '', ], - ], - 'RiskLevel' => [ - 'description' => 'Risk Level.', - 'type' => 'string', - 'example' => 'high', + 'description' => 'Details for each audio slice.', + 'title' => '', + 'example' => '', ], ], + 'description' => 'The audio moderation result.', + 'title' => '', + 'example' => '', ], 'FrameResult' => [ - 'description' => 'The image moderation results. If the call is successful, the HTTP status code 200 and moderation results are returned. The moderation results contain a structure.'."\n", 'type' => 'object', 'properties' => [ - 'FrameNum' => [ - 'description' => 'The number of captured frames that are returned for the video file.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], + 'SliceNum' => ['description' => 'The frame count.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], + 'Suggestion' => ['description' => 'The recommended action. Valid values:'."\n" + ."\n" + .'- `block`: Block the content.'."\n" + ."\n" + .'- `pass`: Pass the content.'."\n" + ."\n" + .'- `watch`: The content requires review.'."\n" + ."\n" + .'- `mask`: Mask the content.', 'type' => 'string', 'example' => 'pass', 'title' => ''], 'Frames' => [ - 'description' => 'The information about the frames that match the labels.'."\n", 'type' => 'array', 'items' => [ - 'description' => 'Object'."\n", 'type' => 'object', 'properties' => [ - 'TempUrl' => [ - 'description' => 'The temporary URL of a captured frame.'."\n", - 'type' => 'string', - 'example' => 'http://xxxx.abc.jpg', - ], - 'Offset' => [ - 'description' => 'The interval between the start of the video file and the captured frame. Unit: seconds.'."\n", - 'type' => 'number', - 'format' => 'float', - 'example' => '338', - ], - 'Results' => [ - 'description' => 'The results of frame moderation parameters such as the label parameter and the confidence parameter.'."\n", + 'Url' => ['description' => 'The temporary URL of the video frame.', 'type' => 'string', 'example' => 'https://xxx.jpeg', 'title' => ''], + 'Offset' => ['description' => 'The time offset of the frame in the video, in seconds.', 'type' => 'number', 'format' => 'float', 'example' => '1.5', 'title' => ''], + 'Suggestion' => ['description' => 'The recommended action. Valid values:'."\n" + ."\n" + .'- `block`: Block the content.'."\n" + ."\n" + .'- `pass`: Pass the content.'."\n" + ."\n" + .'- `watch`: The content requires review.'."\n" + ."\n" + .'- `mask`: Mask the content.', 'type' => 'string', 'example' => 'block', 'title' => ''], + 'Timestamp' => ['description' => 'The absolute timestamp of the frame, in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1684559739000', 'title' => ''], + 'Detail' => [ 'type' => 'array', 'items' => [ - 'description' => 'Object'."\n", 'type' => 'object', 'properties' => [ - 'Service' => [ - 'description' => 'The moderation service that is called.'."\n", - 'type' => 'string', - 'example' => 'tonalityImprove', - ], 'Result' => [ - 'description' => 'The results of frame moderation parameters such as the label parameter and the confidence parameter.'."\n", 'type' => 'array', 'items' => [ - 'description' => 'Object'."\n", 'type' => 'object', 'properties' => [ - 'Confidence' => [ - 'description' => 'The score of the confidence level. Valid values: 0 to 100. The value is accurate to two decimal places.'."\n", - 'type' => 'number', - 'format' => 'float', - 'example' => '50', - ], - 'Label' => [ - 'description' => 'The label returned after a frame is moderated. Multiple risk labels and the corresponding scores of confidence levels may be returned for a frame.'."\n", - 'type' => 'string', - 'example' => 'bloody', - ], - 'Description' => [ - 'description' => 'The description of the result.', - 'type' => 'string', - 'example' => 'no risk'."\n", - ], - ], - ], - ], - 'TextInImage' => [ - 'description' => 'The information about the text hit in the image is returned.'."\n", - 'type' => 'object', - ], - 'CustomImage' => [ - 'description' => 'If a custom image library is hit, information about the custom image library is returned.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'Object'."\n", - 'type' => 'object', - 'properties' => [ - 'LibId' => [ - 'description' => 'The ID of the custom image library that is hit.'."\n", - 'type' => 'string', - 'example' => '12345678', - ], - 'ImageId' => [ - 'description' => 'The ID of the custom image that is hit.'."\n", - 'type' => 'string', - 'example' => '1234', - ], - ], - ], - ], - 'PublicFigure' => [ - 'description' => 'If the video contains a specific figure, the code of the identified figure is returned.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'Object'."\n", - 'type' => 'object', - 'properties' => [ - 'FigureId' => [ - 'description' => 'The information about the code of the identified figure.'."\n", - 'type' => 'string', - 'example' => 'xxx001', - ], - 'FigureName' => [ - 'type' => 'string', - ], - 'Location' => [ - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'W' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'H' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'X' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'Y' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - ], - ], - ], - ], - ], - ], - 'LogoData' => [ - 'description' => 'Returns logo information when the video contains a logo.', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Location' => [ - 'description' => 'The location of the logo.', - 'type' => 'object', - 'properties' => [ - 'X' => [ - 'description' => 'The distance from the top-left corner of the text area to the y-axis, with the top-left corner of the image as the origin. Unit: pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '111', - ], - 'Y' => [ - 'description' => 'The distance from the top-left corner of the text area to the x-axis, with the top-left corner of the image as the origin. Unit: pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '222', - ], - 'W' => [ - 'description' => 'The width of the text area. Unit: pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '111', - ], - 'H' => [ - 'description' => 'The height of the text area. Unit: pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '111', - ], - ], - ], - 'Logo' => [ - 'description' => 'Logo information.', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'label' => [ - 'description' => 'label', - 'type' => 'string', - 'example' => 'pt_logotoSocialNetwork', - ], - 'name' => [ - 'description' => 'Logo name.', - 'type' => 'string', - 'example' => '**logo', - ], - 'confidence' => [ - 'description' => 'Confidence score, ranging from 0 to 100, with two decimal places.', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '99.10', - ], - ], - ], - ], + 'Label' => ['description' => 'The label of the detection result.', 'type' => 'string', 'example' => 'ad', 'title' => ''], + 'Description' => ['description' => 'The description of the label.', 'type' => 'string', 'example' => '广告', 'title' => ''], + 'Confidence' => ['description' => 'The confidence score, ranging from 0 to 100, accurate to two decimal places.', 'type' => 'number', 'format' => 'float', 'example' => '80', 'title' => ''], + 'Level' => ['description' => 'The risk level. Valid values:'."\n" + ."\n" + .'- `high`: High risk. If the content matches an entry in a custom keyword library, the risk level defaults to high.'."\n" + ."\n" + .'- `medium`: Medium risk.'."\n" + ."\n" + .'- `low`: Low risk.'."\n" + ."\n" + .'- `none`: No risk detected.', 'type' => 'string', 'example' => 'loose', 'title' => ''], + 'Ext' => ['description' => 'Additional information about the detection result.', 'type' => 'any', 'example' => '{}', 'title' => ''], ], + 'description' => 'A single detection result.', + 'title' => '', + 'example' => '', ], + 'description' => 'A list of detection results.', + 'title' => '', + 'example' => '', ], + 'Type' => ['description' => 'The detection type. Valid values:'."\n" + ."\n" + .'- `contentModeration`: Content moderation.'."\n" + ."\n" + .'- `promptAttack`: Prompt attack detection.'."\n" + ."\n" + .'- `sensitiveData`: Sensitive data detection.'."\n" + ."\n" + .'- `modelHallucination`: Model hallucination.'."\n" + ."\n" + .'- `maliciousFile`: Malicious file detection.', 'type' => 'string', 'example' => 'contentModeration', 'title' => ''], + 'Level' => ['description' => 'The risk level. Valid values include:'."\n" + ."\n" + .'- high: High risk. If a match is found in a custom dictionary, the risk level defaults to high.'."\n" + ."\n" + .'- medium: Medium risk.'."\n" + ."\n" + .'- low: Low risk.'."\n" + ."\n" + .'- none: No risk detected.', 'type' => 'string', 'example' => 'low', 'title' => ''], + 'Suggestion' => ['description' => 'Suggestion'."\n" + ."\n" + .'- block: A suggestion to block.'."\n" + ."\n" + .'- pass: A suggestion to pass.'."\n" + ."\n" + .'- watch: A suggestion to watch.'."\n" + ."\n" + .'- mask: A suggestion to mask.', 'type' => 'string', 'example' => 'watch', 'title' => ''], ], + 'description' => 'Details for a single detection type.', + 'title' => '', + 'example' => '', ], - ], - 'Timestamp' => [ - 'description' => 'The absolute timestamp. Unit: milliseconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1684559739000', - ], - 'RiskLevel' => [ - 'description' => 'Risk Level.', - 'type' => 'string', - 'example' => 'high', - ], - ], - ], - ], - 'FrameSummarys' => [ - 'description' => 'The summary of the labels against which captured frames are matched.'."\n", - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Label' => [ - 'description' => 'The label against which a captured frame is matched.'."\n", - 'type' => 'string', - 'example' => 'violent_armedForces', - ], - 'LabelSum' => [ - 'description' => 'The number of times that the label is matched.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '8', - ], - 'Description' => [ - 'description' => 'The description of the result.', - 'type' => 'string', - 'example' => 'no risk'."\n", + 'description' => 'A list of detection results.', + 'title' => '', + 'example' => '', ], ], - 'description' => '', + 'description' => 'The detection results for a video frame.', + 'title' => '', + 'example' => '', ], - ], - 'RiskLevel' => [ - 'description' => 'Risk Level.', - 'type' => 'string', - 'example' => 'high', + 'description' => 'The moderation results for video frames.', + 'title' => '', + 'example' => '', ], ], - ], - 'TaskId' => [ - 'description' => 'The task ID.'."\n", - 'type' => 'string', - 'example' => 'xxxxx-xxxxx', - ], - 'RiskLevel' => [ - 'description' => 'Risk Level.', - 'type' => 'string', - 'example' => 'high', - ], - 'ManualTaskId' => [ - 'type' => 'string', + 'description' => 'The video frame moderation result.', + 'title' => '', + 'example' => '', ], ], + 'description' => 'The response data.', + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'description' => 'The response schema.', + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6CF2815C-C8C7-4A01-B52E-FF6E24F53492\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success finished\\",\\n \\"Data\\": {\\n \\"LiveId\\": \\"liveId\\",\\n \\"DataId\\": \\"product_content-2055763\\",\\n \\"AudioResult\\": {\\n \\"SliceDetails\\": [\\n {\\n \\"StartTime\\": 0,\\n \\"EndTime\\": 30,\\n \\"StartTimestamp\\": 1659935002123,\\n \\"EndTimestamp\\": 1685245261939,\\n \\"Url\\": \\"http://xxxx.abc.img\\",\\n \\"Text\\": \\"今天天气真不错\\",\\n \\"Labels\\": \\"porn\\",\\n \\"Score\\": 5,\\n \\"Extend\\": \\"{\\\\\\\\\\\\\\"consoleProduct\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"slbnext\\\\\\\\\\\\\\"}\\",\\n \\"RiskTips\\": \\"\\\\\\"\\\\\\"\\",\\n \\"RiskWords\\": \\"\\\\\\"\\\\\\"\\",\\n \\"RiskLevel\\": \\"high\\",\\n \\"Descriptions\\": \\"疑似违禁内容\\"\\n }\\n ],\\n \\"AudioSummarys\\": [\\n {\\n \\"Label\\": \\"profanity\\",\\n \\"LabelSum\\": 8,\\n \\"Description\\": \\"疑似违禁内容\\"\\n }\\n ],\\n \\"RiskLevel\\": \\"high\\"\\n },\\n \\"FrameResult\\": {\\n \\"FrameNum\\": 10,\\n \\"Frames\\": [\\n {\\n \\"TempUrl\\": \\"http://xxxx.abc.jpg\\",\\n \\"Offset\\": 338,\\n \\"Results\\": [\\n {\\n \\"Service\\": \\"tonalityImprove\\",\\n \\"Result\\": [\\n {\\n \\"Confidence\\": 50,\\n \\"Label\\": \\"bloody\\",\\n \\"Description\\": \\"未检测出风险\\"\\n }\\n ],\\n \\"TextInImage\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"CustomImage\\": [\\n {\\n \\"LibId\\": \\"12345678\\",\\n \\"ImageId\\": \\"1234\\"\\n }\\n ],\\n \\"PublicFigure\\": [\\n {\\n \\"FigureId\\": \\"xxx001\\",\\n \\"FigureName\\": \\"张三\\",\\n \\"Location\\": [\\n {\\n \\"W\\": 111,\\n \\"H\\": 222,\\n \\"X\\": 111,\\n \\"Y\\": 222\\n }\\n ]\\n }\\n ],\\n \\"LogoData\\": [\\n {\\n \\"Location\\": {\\n \\"X\\": 111,\\n \\"Y\\": 222,\\n \\"W\\": 111,\\n \\"H\\": 111\\n },\\n \\"Logo\\": [\\n {\\n \\"label\\": \\"pt_logotoSocialNetwork\\",\\n \\"name\\": \\"**卫视\\",\\n \\"confidence\\": 99.1\\n }\\n ]\\n }\\n ]\\n }\\n ],\\n \\"Timestamp\\": 1684559739000,\\n \\"RiskLevel\\": \\"high\\"\\n }\\n ],\\n \\"FrameSummarys\\": [\\n {\\n \\"Label\\": \\"violent_armedForces\\",\\n \\"LabelSum\\": 8,\\n \\"Description\\": \\"未检测出风险\\"\\n }\\n ],\\n \\"RiskLevel\\": \\"high\\"\\n },\\n \\"TaskId\\": \\"xxxxx-xxxxx\\",\\n \\"RiskLevel\\": \\"high\\",\\n \\"ManualTaskId\\": \\"xxxxx-xxxxx\\"\\n }\\n}","type":"json"}]', - 'title' => 'Query Video Moderation Task Results', - 'description' => 'This operation is free of charge. We recommend that you query moderation results at least 30 seconds after you send an asynchronous moderation request. Content Moderation retains moderation results for at most 24 hours. After 24 hours, the results are deleted.', - 'translator' => 'machine', - ], - 'VideoModerationCancel' => [ - 'summary' => 'Cancels a live stream moderation task.', - 'methods' => [ - 'post', + 'errorCodes' => [ + 403 => [ + ['errorCode' => 'NoPermission', 'errorMessage' => 'You don\'t have permission.', 'description' => 'The current operation is not authorized. Please contact the main account to authorize the operation in the RAM console.'], + ], ], - 'schemes' => [ - 'https', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'MultiModalGuardAsyncResult', + 'description' => 'For APIs that incur charges, add the following sentence in bold at the beginning of the description: "Before you use this API, make sure that you fully understand the billing methods and pricing of the XXX product." Link the word \'pricing\' to https\\://www\\.aliyun.com/price/product#/ecs/detail.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], + 'ramActions' => [], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\\\n\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"SUCCESS\\",\\n \\"Data\\": {\\n \\"LiveId\\": \\"liveId\\",\\n \\"DataId\\": \\"data1234\\",\\n \\"TaskId\\": \\"vi_f_xxx\\",\\n \\"Suggestion\\": \\"pass\\",\\n \\"AudioResult\\": {\\n \\"Suggestion\\": \\"pass\\",\\n \\"SliceNum\\": 2,\\n \\"SliceDetails\\": [\\n {\\n \\"StartTime\\": 0,\\n \\"EndTime\\": 20,\\n \\"Url\\": \\"http://xxxx.abc.wav\\",\\n \\"Text\\": \\"今天天气真不错\\",\\n \\"Suggestion\\": \\"block\\",\\n \\"Detail\\": [\\n {\\n \\"Result\\": [\\n {\\n \\"Label\\": \\"drug\\",\\n \\"Description\\": \\"毒品\\",\\n \\"Confidence\\": 90,\\n \\"Level\\": \\"high\\",\\n \\"Ext\\": \\"{}\\"\\n }\\n ],\\n \\"Type\\": \\"contentModeration\\",\\n \\"Level\\": \\"high\\",\\n \\"Suggestion\\": \\"block\\"\\n }\\n ]\\n }\\n ]\\n },\\n \\"FrameResult\\": {\\n \\"SliceNum\\": 2,\\n \\"Suggestion\\": \\"pass\\",\\n \\"Frames\\": [\\n {\\n \\"Url\\": \\"https://xxx.jpeg\\",\\n \\"Offset\\": 1.5,\\n \\"Suggestion\\": \\"block\\",\\n \\"Timestamp\\": 1684559739000,\\n \\"Detail\\": [\\n {\\n \\"Result\\": [\\n {\\n \\"Label\\": \\"ad\\",\\n \\"Description\\": \\"广告\\",\\n \\"Confidence\\": 80,\\n \\"Level\\": \\"loose\\",\\n \\"Ext\\": \\"{}\\"\\n }\\n ],\\n \\"Type\\": \\"contentModeration\\",\\n \\"Level\\": \\"low\\",\\n \\"Suggestion\\": \\"watch\\"\\n }\\n ]\\n }\\n ]\\n }\\n }\\n}","type":"json"}]', + ], + 'MultiModalGuardForBase64' => [ + 'path' => '', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '201471', - 'abilityTreeNodes' => [ - 'FEATURElvwang53TCRC', - ], + 'chargeType' => 'paid', + 'abilityTreeNodes' => ['FEATURElvwangTHWXLK', 'FEATURElvwang4DJRB7', 'FEATURElvwang5OIOPT', 'FEATURElvwangCXOBXW', 'FEATURElvwang08CDRQ', 'FEATURElvwang2AB5DH', 'FEATURElvwangZUTYIL', 'FEATURElvwangEZQESQ'], + 'autoTest' => true, + 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'Service', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The type of the moderation service.', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'liveStreamDetection' => '视频直播流检测', - 'videoDetection' => '视频文件检测', - 'liveStreamDetection_cb' => '视频直播流审核_海外版', - 'videoDetection_cb' => '视频文件审核_海外版', - ], - 'example' => 'videoDetection', - ], + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'Service', 'type' => 'string', 'example' => 'query_security_check', 'required' => false], ], [ 'name' => 'ServiceParameters', 'in' => 'formData', - 'schema' => [ - 'description' => 'The parameters required by the moderation service. The value is a JSON string.', - 'type' => 'string', - 'required' => false, - 'example' => '{\\"taskId\\":\\"vi_s_4O9gp7GfNQdx9GOqdekFmk-1z2RJT\\"}', - ], + 'schema' => ['title' => '', 'description' => 'The service parameters.', 'type' => 'string', 'example' => '{"content":"test"}', 'required' => false], + ], + [ + 'name' => 'ImageBase64Str', + 'in' => 'formData', + 'schema' => ['title' => '', 'description' => 'The base64-encoded string of the image.', 'type' => 'string', 'example' => '{base64}', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', + 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.', - 'type' => 'string', - 'example' => '6CF2815C-****-****-B52E-FF6E2****492', - ], - 'Code' => [ - 'description' => 'The returned HTTP status code.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned in response to the request.', - 'type' => 'string', - 'example' => 'OK', + 'RequestId' => ['title' => '', 'description' => 'The unique identifier of the request.', 'type' => 'string', 'example' => 'XXXX'], + 'Code' => ['title' => '', 'description' => 'The error code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], + 'Message' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'OK'], + 'Data' => [ + 'title' => '', + 'description' => 'The response data.', + 'type' => 'object', + 'properties' => [ + 'Detail' => [ + 'title' => '', + 'description' => 'The details.', + 'type' => 'array', + 'items' => [ + 'title' => '', + 'description' => 'The detail object.', + 'type' => 'object', + 'properties' => [ + 'Result' => [ + 'title' => '', + 'description' => 'The result.', + 'type' => 'array', + 'items' => [ + 'title' => '', + 'description' => 'The first result in the detail data.', + 'type' => 'object', + 'properties' => [ + 'Label' => ['title' => '', 'description' => 'The label.', 'type' => 'string', 'example' => 'nonLable'], + 'Description' => ['title' => '', 'description' => 'The description.', 'type' => 'string', 'example' => '未检测出风险'], + 'Confidence' => ['title' => '', 'description' => 'The confidence level.', 'type' => 'number', 'format' => 'float', 'example' => '100'], + 'Level' => ['title' => '', 'description' => 'The risk level.', 'type' => 'string', 'example' => 'low'], + 'Ext' => ['title' => '', 'description' => 'The extension information.', 'type' => 'any', 'example' => 'json格式数据'], + ], + 'example' => '', + ], + 'example' => '', + ], + 'Type' => ['title' => '', 'description' => 'The category.', 'type' => 'string', 'example' => 'contentModeration'], + 'Level' => ['title' => '', 'description' => 'The risk level.', 'type' => 'string', 'example' => 'low'], + 'Suggestion' => ['title' => '', 'description' => 'The suggested action.', 'type' => 'string', 'example' => 'pass'], + ], + 'example' => '', + ], + 'example' => '', + ], + 'Suggestion' => ['title' => '', 'description' => 'The suggested action.', 'type' => 'string', 'example' => 'pass'], + 'DataId' => ['title' => '', 'description' => 'The data ID.', 'type' => 'string', 'example' => 'xxx'], + ], + 'enumValueTitles' => [], + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6CF2815C-****-****-B52E-FF6E2****492\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"OK\\"\\n}","type":"json"}]', - 'title' => 'VideoModerationCancel', - ], - 'FileModeration' => [ - 'summary' => 'Moderates files.', - 'methods' => [ - 'post', + 'errorCodes' => [ + 403 => [ + ['errorCode' => 'NoPermission', 'errorMessage' => 'You don\'t have permission.', 'description' => 'The current operation is not authorized. Please contact the main account to authorize the operation in the RAM console.'], + ], ], - 'schemes' => [ - 'https', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'Multimodal content moderation (Base64)', + 'summary' => 'Performs synchronous multimodal content moderation. Supports base64-encoded image strings.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], + 'ramActions' => [], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"XXXX\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": {\\n \\"Detail\\": [\\n {\\n \\"Result\\": [\\n {\\n \\"Label\\": \\"nonLable\\",\\n \\"Description\\": \\"未检测出风险\\",\\n \\"Confidence\\": 100,\\n \\"Level\\": \\"low\\",\\n \\"Ext\\": \\"json格式数据\\"\\n }\\n ],\\n \\"Type\\": \\"contentModeration\\",\\n \\"Level\\": \\"low\\",\\n \\"Suggestion\\": \\"pass\\"\\n }\\n ],\\n \\"Suggestion\\": \\"pass\\",\\n \\"DataId\\": \\"xxx\\"\\n }\\n}","type":"json"}]', + ], + 'MultiModalGuardWs' => [ + 'path' => '', + 'methods' => ['get'], + 'schemes' => ['https', 'websocket'], 'security' => [ [ 'AK' => [], @@ -2617,621 +3079,540 @@ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'paid', - 'abilityTreeCode' => '204033', - 'abilityTreeNodes' => [ - 'FEATURElvwangCXKRID', - ], + 'abilityTreeNodes' => ['FEATURElvwangTHWXLK', 'FEATURElvwang4DJRB7', 'FEATURElvwang5OIOPT', 'FEATURElvwangCXOBXW', 'FEATURElvwang08CDRQ', 'FEATURElvwangDTK4CB', 'FEATURElvwangE9ZR0N', 'FEATURElvwang2AB5DH', 'FEATURElvwangZUTYIL', 'FEATURElvwangEZQESQ', 'FEATURElvwangPB269G'], + 'autoTest' => false, + 'notSupportAutoTestReason' => 'websocket协议当前平台不支持自动化测试', + 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'Service', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The type of the moderation service.', - 'type' => 'string', - 'required' => false, - 'example' => 'document_detection', - ], + 'in' => 'query', + 'schema' => ['description' => 'The moderation service category. Valid values:'."\n" + ."\n" + .'- query_security_check_pro: AI input content security detection (pro edition).'."\n" + .'- response_security_check_pro: AI-generated content security detection (pro edition).'."\n" + .'- img_query_security_check: AIGC input image security detection.'."\n" + .'- img_response_security_check: AIGC output image security detection.'."\n" + .'- text_img_mix_guard: Multimodal (text + image) hybrid security detection.'."\n" + .'- file_security_sync_check: AIGC input or output file security detection.'."\n" + .'- text_file_sec_sync_check: Multimodal (text + file) real-time security detection.', 'type' => 'string', 'required' => false, 'example' => 'query_security_check_pro', 'title' => ''], ], [ 'name' => 'ServiceParameters', - 'in' => 'formData', + 'in' => 'query', + 'schema' => ['description' => 'The parameter set required by the moderation service, in JSON string format. The input parameter for text content is content (String), the input parameter for image content is imageUrls (JSONArray), and the input parameter for file content is fileUrls (JSONArray).', 'type' => 'string', 'required' => false, 'example' => '- 文本:'."\n" + .'{'."\n" + .' "content": "test"'."\n" + .'}'."\n" + ."\n" + .'- 图片:'."\n" + .'{'."\n" + .' "imageUrls": ["https://example.com/image.png"]'."\n" + .'}'."\n" + ."\n" + .'- 文件:'."\n" + .'{'."\n" + .' "fileUrls": ["https://example.com/file.pdf"]'."\n" + .'}', 'title' => ''], + ], + [ + 'name' => 'ProtocolType', + 'in' => 'query', + 'schema' => ['description' => 'The protocol type. Valid values:'."\n" + ."\n" + .'- OpenAI'."\n" + .'- DashScope'."\n" + .'- Anthropic', 'type' => 'string', 'required' => false, 'example' => 'DashScope', 'title' => ''], + ], + [ + 'name' => 'ModelType', + 'in' => 'query', + 'schema' => ['description' => 'The model type. Valid values:'."\n" + ."\n" + .'- LLM', 'type' => 'string', 'required' => false, 'example' => 'LLM', 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The parameters required by the moderation service. The value is a JSON string.', - 'type' => 'string', - 'required' => false, - 'example' => '{"url":"https://detect-obj.oss-cn-hangzhou.aliyuncs.com/sample/xxxx.pdf"}', + 'title' => '', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '552F83A7-80C9-17ED-B344-0E13F7D3BF00'], + ], + 'example' => '', ], ], ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'AI safety guardrail multimodal detection webSocket API', + 'summary' => 'Provides a WebSocket-based multimodal detection API for AI safety guardrails. This API supports content compliance detection, sensitive content detection, prompt attack detection, malicious file detection, malicious URL detection, and other comprehensive detection capabilities.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"552F83A7-80C9-17ED-B344-0E13F7D3BF00\\"\\n}","type":"json"}]', + ], + 'MultimodalAsyncModeration' => [ + 'summary' => 'Multimodal-Asynchronous Detection', + 'methods' => ['post'], + 'schemes' => ['https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeCode' => '211718', + 'abilityTreeNodes' => ['FEATURElvwang7UL554'], + ], + 'parameters' => [ + [ + 'name' => 'Service', + 'in' => 'query', + 'schema' => ['description' => 'The type of moderation service. Valid values:'."\n" + ."\n" + .'- post\\_text\\_image\\_detection: multimodal moderation for post text and images'."\n" + ."\n" + .'- profile\\_text\\_image\\_detection: multimodal moderation for profile picture and nickname', 'type' => 'string', 'required' => false, 'example' => 'post_text_image_detection', 'title' => ''], + ], + [ + 'name' => 'ServiceParameters', + 'in' => 'query', + 'schema' => ['description' => 'The parameter set required by the moderation service. This value must be a JSON string.', 'type' => 'string', 'required' => false, 'example' => '{"mainData":{"mainContent":"testMainContent","mainTitle":"testMainTitle","mainImages":[{"imageUrl":"https://xxxx.com/001.jpg"}]}}', 'title' => ''], + ], + ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.', - 'type' => 'string', - 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****', - ], - 'Message' => [ - 'description' => 'The message that is returned in response to the request.', - 'type' => 'string', - 'example' => 'SUCCESS', - ], - 'Code' => [ - 'description' => 'The returned HTTP status code.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], + 'RequestId' => ['description' => 'Id of the request', 'type' => 'string', 'title' => '', 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****'], + 'Code' => ['description' => 'Return code. A value of 200 indicates success.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Msg' => ['description' => 'The response message for this request.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'Data' => [ - 'description' => 'The data returned.'."\n", 'type' => 'object', 'properties' => [ - 'TaskId' => [ - 'description' => 'The task ID.'."\n", - 'type' => 'string', - 'example' => 'xxxxx-xxxxx', - ], + 'ReqId' => ['description' => 'The ReqId field returned by the URL asynchronous enhanced moderation API. Use this field to query moderation results.', 'type' => 'string', 'example' => 'A07B3DB9-D762-5C56-95B1-8EC55CF176D2', 'title' => ''], + 'DataId' => ['description' => 'The value of dataId passed in the API request. This field is absent if dataId was not included in the request.', 'type' => 'string', 'example' => '26769ada6e264e7ba9aa048241e12be9', 'title' => ''], ], + 'description' => 'Returned data.', + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'description' => 'Schema of Response', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\",\\n \\"Message\\": \\"SUCCESS\\",\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"TaskId\\": \\"xxxxx-xxxxx\\"\\n }\\n}","type":"json"}]', - 'title' => 'FileModeration', - ], - 'DescribeFileModerationResult' => [ - 'summary' => '文档审核结果', - 'methods' => [ - 'post', - 'get', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'MultimodalAsyncModeration', + 'description' => 'The asynchronous URL moderation service supports two billing methods: pay-as-you-go and resource plan usage.'."\n" + ."\n" + .'- After you activate the enhanced text moderation service, the default billing method is pay-as-you-go. You are billed daily based on actual usage. No charges apply if you do not invoke the service.'."\n" + ."\n" + .'- If your moderation volume is large or your moderation needs are relatively stable, purchase a resource plan in advance. Larger resource plans offer greater discounts. You can stack multiple resource plans.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:MultimodalAsyncModeration', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\",\\n \\"Code\\": 200,\\n \\"Msg\\": \\"OK\\",\\n \\"Data\\": {\\n \\"ReqId\\": \\"A07B3DB9-D762-5C56-95B1-8EC55CF176D2\\",\\n \\"DataId\\": \\"26769ada6e264e7ba9aa048241e12be9\\"\\n }\\n}","type":"json"}]', + ], + 'TextModeration' => [ + 'summary' => 'This service uses dynamic policies and models to defend against adversarial content. It provides moderation services for various business scenarios and detects different types of violations.', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', + 'operationType' => 'get', 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '205895', - 'abilityTreeNodes' => [ - 'FEATURElvwang6CEZ66', - ], + 'chargeType' => 'paid', + 'abilityTreeCode' => '128601', + 'abilityTreeNodes' => ['FEATURElvwang8G4HBD'], ], 'parameters' => [ [ 'name' => 'Service', 'in' => 'formData', 'schema' => [ - 'description' => 'The type of the moderation service.'."\n", + 'description' => 'The type of moderation service. Valid values:', + 'enumValueTitles' => ['pgc_detection' => 'PGC general content moderation', 'nickname_detection' => 'User nickname moderation', 'comment_multilingual_pro' => 'Multilingual moderation for international business', 'chat_detection' => 'Private chat content moderation', 'ad_compliance_detection' => 'Ad compliance moderation', 'comment_detection' => 'Public chat comment moderation', 'ai_art_detection' => 'AIGC-related text moderation'], 'type' => 'string', - 'required' => false, - 'example' => 'document_detection', + 'docRequired' => true, + 'required' => true, + 'example' => 'nickname_detection', + 'title' => '', ], ], [ 'name' => 'ServiceParameters', 'in' => 'formData', - 'schema' => [ - 'description' => 'The parameters required by the moderation service. The value is a JSON string.'."\n" - ."\n" - .'* taskId: required. The URL of the object that you want to moderate. Make sure that the URL can be accessed over the Internet.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '{\\"taskId\\":\\"vi_f_hPgx9PFIQISdlfA888hOFG-1yJq8v\\"}', - ], + 'schema' => ['description' => 'The parameters for the moderation service. The value must be a JSON string.', 'type' => 'string', 'example' => '{"content":"The map is still black"}', 'required' => false, 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'Schema of Response'."\n", + 'description' => 'The response body.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'Id of the request'."\n", - 'type' => 'string', - 'example' => '6CF2815C-C8C7-4A01-B52E-FF6E24F53492', - ], - 'Code' => [ - 'description' => 'The returned HTTP status code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned in response to the request.'."\n", - 'type' => 'string', - 'example' => 'OK', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****'], + 'Code' => ['description' => 'The response code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The response message for the request.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'Data' => [ - 'description' => 'The data returned.'."\n", + 'description' => 'The moderation result data.', 'type' => 'object', 'properties' => [ - 'DataId' => [ - 'description' => 'The ID of the moderated object.'."\n", - 'type' => 'string', - 'example' => '26769ada6e264e7ba9aa048241e12be9', - ], - 'Url' => [ - 'description' => 'The URL of the moderated object.'."\n", - 'type' => 'string', - 'example' => 'https://detect-obj.oss-cn-hangzhou.aliyuncs.com/sample/xxxx.pdf', - ], - 'DocType' => [ - 'description' => 'Optional. The document type.'."\n", - 'type' => 'string', - 'example' => 'doc', - ], - 'PageResult' => [ - 'description' => 'An array that consists of the moderation results.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The results.'."\n", - 'type' => 'object', - 'properties' => [ - 'PageNum' => [ - 'description' => 'The page number.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'ImageUrl' => [ - 'description' => 'The image URL.'."\n", - 'type' => 'string', - 'example' => 'https://detect-obj.oss-cn-hangzhou.aliyuncs.com/sample/xxxx.jpg', - ], - 'TextUrl' => [ - 'description' => 'The text URL.'."\n", - 'type' => 'string', - 'example' => 'https://detect-obj.oss-cn-hangzhou.aliyuncs.com/sample/xxxx.txt', - ], - 'ImageResult' => [ - 'description' => 'The image moderation results.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The results.'."\n", - 'type' => 'object', - 'properties' => [ - 'Description' => [ - 'description' => 'The description.'."\n", - 'type' => 'string', - 'example' => 'This is a title.'."\n", - ], - 'Service' => [ - 'description' => 'The moderation service.'."\n", - 'type' => 'string', - 'example' => 'baselineCheck', - ], - 'Location' => [ - 'description' => 'The location information'."\n", - 'type' => 'object', - 'properties' => [ - 'X' => [ - 'description' => 'The X value of the coordinate point.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '11', - ], - 'Y' => [ - 'description' => 'The Y value of the coordinate point.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '22', - ], - 'W' => [ - 'description' => 'The W value of the coordinate point.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '33', - ], - 'H' => [ - 'description' => 'The H value of the coordinate point.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '44', - ], - ], - ], - 'LabelResult' => [ - 'description' => 'The label information.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'Label' => [ - 'description' => 'The details of the labels.'."\n", - 'type' => 'string', - 'example' => 'nonlabel', - ], - 'Confidence' => [ - 'description' => 'The score of the confidence level. Valid values: 0 to 100. The value is accurate to two decimal places.'."\n", - 'type' => 'number', - 'format' => 'float', - 'example' => '25.0', - ], - 'Description' => [ - 'description' => 'The description.', - 'type' => 'string', - 'example' => 'This is a title.'."\n", - ], - ], - ], - ], - 'RiskLevel' => [ - 'description' => 'Risk Level', - 'type' => 'string', - 'example' => 'high', - ], - ], - ], - ], - 'TextResult' => [ - 'description' => 'The text moderation results.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The results.'."\n", - 'type' => 'object', - 'properties' => [ - 'Description' => [ - 'description' => 'The description.'."\n", - 'type' => 'string', - 'example' => 'This is a title.'."\n", - ], - 'Service' => [ - 'description' => 'The moderation service.'."\n", - 'type' => 'string', - 'example' => 'chat_detection', - ], - 'Text' => [ - 'description' => 'The text content.'."\n", - 'type' => 'string', - 'example' => 'This is a text.'."\n", - ], - 'TextSegment' => [ - 'description' => 'The text segmentation information.'."\n", - 'type' => 'string', - 'example' => '[0,999]', - ], - 'Labels' => [ - 'description' => 'The details of the labels.'."\n", - 'type' => 'string', - 'example' => 'porn', - ], - 'Descriptions' => [ - 'description' => 'The description of the labels.', - 'type' => 'string', - 'example' => 'no risk', - ], - 'RiskWords' => [ - 'description' => 'The risk words that are hit.'."\n", - 'type' => 'string', - 'example' => 'xxx', - ], - 'RiskTips' => [ - 'description' => 'The risk details that are hit.'."\n", - 'type' => 'string', - 'example' => 'xxx', - ], - 'RiskLevel' => [ - 'description' => 'Risk Level', - 'type' => 'string', - 'example' => 'high', - ], - ], - ], - ], - ], - ], - ], - 'PageSummary' => [ - 'description' => 'Summary of results', + 'labels' => ['description' => 'The moderation labels. If multiple labels are returned, they are separated by commas (,). Valid values: ad: advertisement profanity: profanity contraband: contraband sexual\\_content: sexual content violence: violent and terrorist content nonsense: meaningless content spam: spam negative\\_content: undesirable content cyberbullying: cyberbullying C\\_customized: A match in a custom library', 'type' => 'string', 'example' => 'porn', 'title' => ''], + 'reason' => ['description' => 'A JSON string that contains the reason for the moderation result. The string includes the following fields:'."\n" + ."\n" + .'1. riskTips: The sub-labels.'."\n" + ."\n" + .'2. riskWords: The detected risk words.'."\n" + ."\n" + .'3. adNums: The detected ad-related numbers.'."\n" + ."\n" + .'4. customizedWords: The detected custom words.'."\n" + ."\n" + .'5. customizedLibs: The names of the custom libraries that contain a match.'."\n" + ."\n" + .'6. riskLevel: The risk level, which is recommended by the system. Valid values:'."\n" + ."\n" + .'- high: high risk'."\n" + ."\n" + .'- medium: medium risk'."\n" + ."\n" + .'- low: low risk', 'type' => 'string', 'example' => '{\\"riskLevel\\":\\"high\\",\\"riskTips\\":\\"色情_低俗词\\",\\"riskWords\\":\\"色情服务\\"}', 'title' => ''], + 'accountId' => ['description' => 'The \\`accountId\\` specified in the request.', 'type' => 'string', 'example' => '123456', 'title' => ''], + 'deviceId' => ['description' => 'The \\`deviceId\\` specified in the request.', 'type' => 'string', 'example' => 'xxxxxx', 'title' => ''], + 'dataId' => ['description' => 'The data ID of the moderated object.'."\n" + ."\n" + .'> If you specify the dataId parameter in the request, its value is returned in this parameter.', 'type' => 'string', 'example' => 'text1234', 'title' => ''], + 'descriptions' => ['description' => 'The description of the label.', 'type' => 'string', 'example' => '疑似广告内容', 'title' => ''], + 'manualTaskId' => ['description' => 'The ID of the manual review task.', 'type' => 'string', 'example' => 'xxxxx-xxxxx', 'title' => ''], + 'ext' => [ 'type' => 'object', 'properties' => [ - 'PageSum' => [ - 'description' => 'Number of pages', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'ImageSummary' => [ - 'description' => 'Image Results Summary', - 'type' => 'object', - 'properties' => [ - 'RiskLevel' => [ - 'description' => 'Risk Level', - 'type' => 'string', - 'example' => 'high', - ], - 'ImageLabels' => [ - 'description' => 'Image Label', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'Label' => [ - 'description' => 'The details of the labels.', - 'type' => 'string', - 'example' => 'contraband', - ], - 'LabelSum' => [ - 'description' => 'The number of times that the label is matched.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Description' => [ - 'description' => 'The description.', - 'type' => 'string', - 'example' => 'test', - ], - ], - ], - ], - ], - ], - 'TextSummary' => [ - 'description' => 'Text Results Summary', + 'llmContent' => [ 'type' => 'object', 'properties' => [ - 'RiskLevel' => [ - 'description' => 'Risk Level', - 'type' => 'string', - 'example' => 'high', - ], - 'TextLabels' => [ - 'description' => 'Text Label', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'Label' => [ - 'description' => 'The details of the labels.', - 'type' => 'string', - 'example' => 'contraband', - ], - 'LabelSum' => [ - 'description' => 'The number of times that the label is matched.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Description' => [ - 'description' => 'The description of the labels.', - 'type' => 'string', - 'example' => 'no risk', - ], - ], - ], - ], + 'outputText' => ['description' => 'The output content.', 'type' => 'string', 'example' => '正常。文本中无风险内容。', 'title' => ''], ], + 'description' => 'The output from the Large Language Model (LLM).', + 'title' => '', + 'example' => '', ], ], - ], - 'RiskLevel' => [ - 'description' => 'Risk Level', - 'type' => 'string', - 'example' => 'high', - ], - 'AccountId' => [ - 'type' => 'string', + 'description' => 'Auxiliary reference information for the text.', + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6CF2815C-C8C7-4A01-B52E-FF6E24F53492\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": {\\n \\"DataId\\": \\"26769ada6e264e7ba9aa048241e12be9\\",\\n \\"Url\\": \\"https://detect-obj.oss-cn-hangzhou.aliyuncs.com/sample/xxxx.pdf\\",\\n \\"DocType\\": \\"doc\\",\\n \\"PageResult\\": [\\n {\\n \\"PageNum\\": 1,\\n \\"ImageUrl\\": \\"https://detect-obj.oss-cn-hangzhou.aliyuncs.com/sample/xxxx.jpg\\",\\n \\"TextUrl\\": \\"https://detect-obj.oss-cn-hangzhou.aliyuncs.com/sample/xxxx.txt\\",\\n \\"ImageResult\\": [\\n {\\n \\"Description\\": \\"这个是标题\\",\\n \\"Service\\": \\"baselineCheck\\",\\n \\"Location\\": {\\n \\"X\\": 11,\\n \\"Y\\": 22,\\n \\"W\\": 33,\\n \\"H\\": 44\\n },\\n \\"LabelResult\\": [\\n {\\n \\"Label\\": \\"nonlabel\\",\\n \\"Confidence\\": 25,\\n \\"Description\\": \\"这个是标题\\\\n\\"\\n }\\n ],\\n \\"RiskLevel\\": \\"high\\"\\n }\\n ],\\n \\"TextResult\\": [\\n {\\n \\"Description\\": \\"这是一个标题\\",\\n \\"Service\\": \\"chat_detection\\",\\n \\"Text\\": \\"吧啦吧啦\\",\\n \\"TextSegment\\": \\"[0,999]\\",\\n \\"Labels\\": \\"porn\\",\\n \\"Descriptions\\": \\"疑似广告内容\\",\\n \\"RiskWords\\": \\"xxx\\",\\n \\"RiskTips\\": \\"xxx\\",\\n \\"RiskLevel\\": \\"high\\"\\n }\\n ]\\n }\\n ],\\n \\"PageSummary\\": {\\n \\"PageSum\\": 1,\\n \\"ImageSummary\\": {\\n \\"RiskLevel\\": \\"high\\",\\n \\"ImageLabels\\": [\\n {\\n \\"Label\\": \\"contraband\\",\\n \\"LabelSum\\": 1,\\n \\"Description\\": \\"test\\"\\n }\\n ]\\n },\\n \\"TextSummary\\": {\\n \\"RiskLevel\\": \\"high\\",\\n \\"TextLabels\\": [\\n {\\n \\"Label\\": \\"contraband\\",\\n \\"LabelSum\\": 1,\\n \\"Description\\": \\"未检测出风险\\"\\n }\\n ]\\n }\\n },\\n \\"RiskLevel\\": \\"high\\",\\n \\"AccountId\\": \\"accountIdtest123\\"\\n }\\n}","type":"json"}]', - 'title' => 'Describe File Moderation Result', - ], - 'DescribeImageResultExt' => [ - 'summary' => 'Obtains more auxiliary information that is identified by calling the Image Moderation 2.0 API. The auxiliary information includes the moderation results of images and text and the hit information of custom image libraries.', - 'methods' => [ - 'post', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": {\\n \\"labels\\": \\"porn\\",\\n \\"reason\\": \\"{\\\\\\\\\\\\\\"riskLevel\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"high\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"riskTips\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"色情_低俗词\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"riskWords\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"色情服务\\\\\\\\\\\\\\"}\\",\\n \\"accountId\\": \\"123456\\",\\n \\"deviceId\\": \\"xxxxxx\\",\\n \\"dataId\\": \\"text1234\\",\\n \\"descriptions\\": \\"疑似广告内容\\",\\n \\"manualTaskId\\": \\"xxxxx-xxxxx\\",\\n \\"ext\\": {\\n \\"llmContent\\": {\\n \\"outputText\\": \\"正常。文本中无风险内容。\\"\\n }\\n }\\n }\\n}","type":"json"}]', + 'title' => 'TextModeration', + 'description' => 'Before you use this operation, review the [billing methods and pricing](https://help.aliyun.com/document_detail/464388.html?#section-itm-m2s-ugq) for Text Moderation Plus.', + 'changeSet' => [ + ['createdAt' => '2025-06-12T02:05:04.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-01-06T10:54:43.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-05-08T03:59:29.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-01-03T02:55:25.000Z', 'description' => 'Response parameters changed, Response parameters changed'], + ['createdAt' => '2022-11-30T02:27:56.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-08-02T11:31:05.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-06-02T01:46:57.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-03-24T02:48:39.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-03-24T02:48:39.000Z', 'description' => 'Request parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'TextModeration'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'yundun-greenweb:TextModeration', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'translator' => 'machine', + ], + 'TextModerationPlus' => [ + 'summary' => 'Text Moderation Plus is an upgraded service that moderates the input instructions and generated text of large language models (LLMs). This service can retrieve standard answers for specific input instructions and lets you enable or disable moderation labels.', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', + 'operationType' => 'none', 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '178655', - 'abilityTreeNodes' => [ - 'FEATURElvwangLRLIH6', - ], + 'chargeType' => 'paid', + 'abilityTreeCode' => '207632', + 'abilityTreeNodes' => ['FEATURElvwangXYAQ5C'], ], 'parameters' => [ [ - 'name' => 'ReqId', + 'name' => 'Service', 'in' => 'formData', 'schema' => [ - 'description' => 'The reqId field returned by the Url Async Moderation API.', + 'description' => 'The type of the moderation service.', + 'enumValueTitles' => ['chat_detection_pro' => 'Detects content in private chats (Professional Edition).', 'llm_response_moderation' => 'Detects text generated by large language models (LLMs).', 'llm_query_moderation' => 'Detects text input to LLMs.', 'aigc_moderation_byllm' => 'The LLM service for text moderation in AI-generated content (AIGC) scenarios.', 'nickname_detection_pro' => 'Detects user nicknames (Professional Edition).', 'comment_detection_pro' => 'Detects content in public chats and comments (Professional Edition).', 'ugc_moderation_byllm' => 'The LLM service for text moderation in user-generated content (UGC) scenarios.', 'ad_compliance_detection_pro' => 'Detects ad compliance (Professional Edition).'], 'type' => 'string', 'required' => false, - 'example' => '638EDDC65C82AB39319A9F60', + 'example' => 'ugc_moderation_byllm', + 'title' => '', ], ], [ - 'name' => 'InfoType', + 'name' => 'ServiceParameters', 'in' => 'formData', - 'schema' => [ - 'description' => 'The content of the information to be obtained. Multiple values are separated by commas.', - 'type' => 'string', - 'required' => false, - 'example' => 'customImage,textInImage', - ], + 'schema' => ['description' => 'The set of parameters required for the moderation service. The value must be a JSON string.', 'type' => 'string', 'example' => '{"content":"Test content"}', 'required' => false, 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => '', + 'description' => 'The response schema.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '6CF2815C-C8C7-4A01-B52E-FF6E24F53492', - ], - 'Code' => [ - 'description' => 'The returned HTTP status code.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Msg' => [ - 'description' => 'The message that is returned in response to the request.', - 'type' => 'string', - 'example' => 'success', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.', 'type' => 'string', 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****'], + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request was successful.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'A human-readable description of the error.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'Data' => [ - 'description' => 'The data returned.'."\n", + 'description' => 'The data that is returned.', 'type' => 'object', 'properties' => [ - 'CustomImage' => [ - 'description' => 'If a custom image library is hit, information about the hit custom image library is returned.', + 'Result' => [ + 'description' => 'The moderation results.', 'type' => 'array', 'items' => [ - 'description' => '', + 'description' => 'A collection is returned.', 'type' => 'object', 'properties' => [ - 'ImageId' => [ - 'description' => 'The image ID.', - 'type' => 'string', - 'example' => '123456', - ], - 'LibName' => [ - 'description' => 'The image library name.', - 'type' => 'string', - 'example' => '图库123', + 'Label' => ['description' => 'The label.', 'type' => 'string', 'example' => 'porn', 'title' => ''], + 'Confidence' => ['description' => 'The confidence score. The value ranges from 0 to 100. The value is accurate to two decimal places.', 'type' => 'number', 'format' => 'float', 'example' => '81.22', 'title' => ''], + 'RiskWords' => ['description' => 'The risk keywords that were hit.', 'type' => 'string', 'example' => 'XXX', 'title' => ''], + 'CustomizedHit' => [ + 'description' => 'The custom keywords that were hit.', + 'type' => 'array', + 'items' => [ + 'description' => 'The details of a custom keyword that was hit.', + 'type' => 'object', + 'properties' => [ + 'LibName' => ['description' => 'The name of the keyword library.', 'type' => 'string', 'example' => '测试词库', 'title' => ''], + 'KeyWords' => ['description' => 'The keywords that were hit, separated by commas.', 'type' => 'string', 'example' => 'xxx', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', ], - 'LibId' => [ - 'description' => 'The image library ID.', - 'type' => 'string', - 'example' => '123456', + 'Description' => ['description' => 'The description of the label.', 'type' => 'string', 'example' => '未检测出风险', 'title' => ''], + 'RiskPositions' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'RiskWord' => ['description' => 'The non-compliant word.', 'type' => 'string', 'example' => '词A', 'title' => ''], + 'StartPos' => ['description' => 'The start position of the non-compliant word.', 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'title' => ''], + 'EndPos' => ['description' => 'The end position of the non-compliant word.', 'type' => 'integer', 'format' => 'int32', 'example' => '6', 'title' => ''], + ], + 'description' => 'The position information of the risk words.', + 'title' => '', + 'example' => '', + ], + 'description' => 'The position information of the risk words.', + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], - 'TextInImage' => [ - 'description' => 'Returns the text information in the hit image.', - 'type' => 'object', - 'properties' => [ - 'OcrDatas' => [ - 'description' => 'Returns the text information in the recognized image.', - 'type' => 'array', - 'items' => [ - 'description' => 'Returns the text information in the recognized image.', - 'type' => 'string', - 'example' => 'abcd', - ], - ], - 'RiskWords' => [ - 'description' => 'The risk words that are hit. Multiple words are separated by commas (,).', - 'type' => 'array', - 'items' => [ - 'description' => 'The risk words that are hit. Multiple words are separated by commas (,).', - 'type' => 'string', - 'example' => 'abcd', - ], + 'Advice' => [ + 'description' => 'The suggested actions.', + 'type' => 'array', + 'items' => [ + 'description' => 'The details of a suggested action.', + 'type' => 'object', + 'properties' => [ + 'Answer' => ['description' => 'The suggested answer.', 'type' => 'string', 'example' => 'XXX', 'title' => ''], + 'HitLabel' => ['description' => 'The label that was hit.', 'type' => 'string', 'example' => 'XXX', 'title' => ''], + 'HitLibName' => ['description' => 'The name of the keyword library that was hit.', 'type' => 'string', 'example' => 'XXX', 'title' => ''], ], - 'CustomTexts' => [ - 'description' => 'When a custom text library is hit, the custom library ID, custom library name, and custom word are returned.', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'LibId' => [ - 'description' => 'Custom library ID.', - 'type' => 'string', - 'example' => '123456', - ], - 'LibName' => [ - 'description' => 'Custom library name.', - 'type' => 'string', - 'example' => 'test', - ], - 'KeyWords' => [ - 'description' => 'Custom words, multiple words separated by commas.', - 'type' => 'string', - 'example' => 'aaa,bbb', - ], - ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'Score' => ['description' => 'The score.', 'type' => 'number', 'format' => 'float', 'example' => '1', 'title' => ''], + 'RiskLevel' => ['description' => 'The risk level.', 'type' => 'string', 'example' => 'high', 'title' => ''], + 'DataId' => ['description' => 'The ID of the data that was moderated.'."\n" + ."\n" + .'> If you specify the \\`dataId\\` parameter in the request, the value of this parameter is returned.', 'type' => 'string', 'example' => 'text1234', 'title' => ''], + 'SensitiveResult' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Label' => ['description' => 'The label.', 'type' => 'string', 'example' => '1234', 'title' => ''], + 'SensitiveLevel' => ['description' => 'The sensitivity level.', 'type' => 'string', 'example' => 'S1', 'title' => ''], + 'SensitiveData' => [ + 'type' => 'array', + 'items' => ['description' => 'The sensitive data.', 'type' => 'string', 'example' => '上海', 'title' => ''], + 'description' => 'The list of sensitive data.', + 'title' => '', + 'example' => '', ], + 'Description' => ['description' => 'The description.', 'type' => 'string', 'example' => '省份', 'title' => ''], ], + 'description' => 'The details of a sensitive data detection result.', + 'title' => '', + 'example' => '', ], + 'description' => 'The sensitive data detection results.', + 'title' => '', + 'example' => '', ], - 'PublicFigure' => [ - 'description' => 'Person information list.', + 'AttackResult' => [ 'type' => 'array', 'items' => [ - 'description' => '', 'type' => 'object', 'properties' => [ - 'FigureId' => [ - 'description' => 'Identified person coding information.', - 'type' => 'string', - 'example' => 'yzazhzou', + 'Label' => ['description' => 'The label.', 'type' => 'string', 'example' => 'safe', 'title' => ''], + 'Confidence' => ['description' => 'The confidence score.', 'type' => 'number', 'format' => 'float', 'example' => '0', 'title' => ''], + 'AttackLevel' => ['description' => 'The attack level.', 'type' => 'string', 'example' => 'none', 'title' => ''], + 'Description' => ['description' => 'The description.', 'type' => 'string', 'example' => 'safe', 'title' => ''], + ], + 'description' => 'The details of a prompt attack detection result.', + 'title' => '', + 'example' => '', + ], + 'description' => 'The prompt attack detection results.', + 'title' => '', + 'example' => '', + ], + 'SensitiveLevel' => ['description' => 'The sensitivity level.', 'type' => 'string', 'example' => 'S0', 'title' => ''], + 'AttackLevel' => ['description' => 'The attack level.', 'type' => 'string', 'example' => 'none', 'title' => ''], + 'ManualTaskId' => ['description' => 'The ID of the manual review task.', 'type' => 'string', 'example' => 'xxxxx-xxxxx', 'title' => ''], + 'DetectedLanguage' => ['description' => 'The detected language.', 'type' => 'string', 'example' => 'en', 'title' => ''], + 'TranslatedContent' => ['description' => 'The translated content.', 'type' => 'string', 'example' => 'hello', 'title' => ''], + 'AccountId' => ['description' => 'The AccountId from the request.', 'type' => 'string', 'example' => '123456789', 'title' => ''], + 'Ext' => [ + 'type' => 'object', + 'properties' => [ + 'LlmContent' => [ + 'type' => 'object', + 'properties' => [ + 'OutputText' => ['description' => 'The output.', 'type' => 'string', 'example' => '正常。文本中无风险内容。', 'title' => ''], ], + 'description' => 'The LLM output.', + 'title' => '', + 'example' => '', ], ], + 'description' => 'The auxiliary information.', + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": {\\n \\"Result\\": [\\n {\\n \\"Label\\": \\"porn\\",\\n \\"Confidence\\": 81.22,\\n \\"RiskWords\\": \\"XXX\\",\\n \\"CustomizedHit\\": [\\n {\\n \\"LibName\\": \\"测试词库\\",\\n \\"KeyWords\\": \\"xxx\\"\\n }\\n ],\\n \\"Description\\": \\"未检测出风险\\",\\n \\"RiskPositions\\": [\\n {\\n \\"RiskWord\\": \\"词A\\",\\n \\"StartPos\\": 4,\\n \\"EndPos\\": 6\\n }\\n ]\\n }\\n ],\\n \\"Advice\\": [\\n {\\n \\"Answer\\": \\"XXX\\",\\n \\"HitLabel\\": \\"XXX\\",\\n \\"HitLibName\\": \\"XXX\\"\\n }\\n ],\\n \\"Score\\": 1,\\n \\"RiskLevel\\": \\"high\\",\\n \\"DataId\\": \\"text1234\\",\\n \\"SensitiveResult\\": [\\n {\\n \\"Label\\": \\"1234\\",\\n \\"SensitiveLevel\\": \\"S1\\",\\n \\"SensitiveData\\": [\\n \\"上海\\"\\n ],\\n \\"Description\\": \\"省份\\"\\n }\\n ],\\n \\"AttackResult\\": [\\n {\\n \\"Label\\": \\"safe\\",\\n \\"Confidence\\": 0,\\n \\"AttackLevel\\": \\"none\\",\\n \\"Description\\": \\"safe\\"\\n }\\n ],\\n \\"SensitiveLevel\\": \\"S0\\",\\n \\"AttackLevel\\": \\"none\\",\\n \\"ManualTaskId\\": \\"xxxxx-xxxxx\\",\\n \\"DetectedLanguage\\": \\"en\\",\\n \\"TranslatedContent\\": \\"hello\\",\\n \\"AccountId\\": \\"123456789\\",\\n \\"Ext\\": {\\n \\"LlmContent\\": {\\n \\"OutputText\\": \\"正常。文本中无风险内容。\\"\\n }\\n }\\n }\\n}","type":"json"}]', + 'title' => 'TextModerationPlus', + 'description' => 'Before you use this API, [activate AI Guardrails Pro](https://common-buy.aliyun.com/?commodityCode=lvwang_cip_public_cn) and make sure that you understand the [billing methods and pricing](https://help.aliyun.com/document_detail/2671445.html?#section-6od-32j-99n) for Text Moderation Plus.', + 'changeSet' => [ + ['createdAt' => '2025-06-12T02:05:04.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-03-19T07:10:46.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-01-06T10:54:43.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-09-06T02:38:00.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-07-03T11:18:48.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-05-27T07:14:29.000Z', 'description' => 'Response parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'TextModerationPlus'], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6CF2815C-C8C7-4A01-B52E-FF6E24F53492\\",\\n \\"Code\\": 200,\\n \\"Msg\\": \\"success\\",\\n \\"Data\\": {\\n \\"CustomImage\\": [\\n {\\n \\"ImageId\\": \\"123456\\",\\n \\"LibName\\": \\"图库123\\",\\n \\"LibId\\": \\"123456\\"\\n }\\n ],\\n \\"TextInImage\\": {\\n \\"OcrDatas\\": [\\n \\"abcd\\"\\n ],\\n \\"RiskWords\\": [\\n \\"abcd\\"\\n ],\\n \\"CustomTexts\\": [\\n {\\n \\"LibId\\": \\"123456\\",\\n \\"LibName\\": \\"自定义库1\\",\\n \\"KeyWords\\": \\"自定义词1,自定义词2\\"\\n }\\n ]\\n },\\n \\"PublicFigure\\": [\\n {\\n \\"FigureId\\": \\"yzazhzou\\"\\n }\\n ]\\n }\\n}","type":"json"}]', - 'title' => 'DescribeImageResultExt', + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:TextModerationPlus', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + ], + 'translator' => 'machine', ], 'UrlAsyncModeration' => [ - 'summary' => 'Identifies whether URL links contain risks such as fraud, pornographic, and gambling content, to protect the platform content ecosystem.', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'https', - ], + 'summary' => 'The URL asynchronous moderation service detects threats such as fraud, pornography, and gambling in URLs to protect the content ecosystem of your platform.', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -3244,33 +3625,21 @@ 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeCode' => '211718', - 'abilityTreeNodes' => [ - 'FEATURElvwang7UL554', - ], + 'abilityTreeNodes' => ['FEATURElvwang7UL554'], ], 'parameters' => [ [ 'name' => 'Service', 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the moderation service.', - 'type' => 'string', - 'required' => false, - 'example' => 'url_detection', - ], + 'schema' => ['description' => 'Service name: URL threat detection', 'type' => 'string', 'example' => 'url_detection_pro', 'required' => false, 'title' => ''], ], [ 'name' => 'ServiceParameters', 'in' => 'query', - 'schema' => [ - 'description' => 'The parameters required by the moderation service. The value is a JSON string.', - 'type' => 'string', - 'required' => false, - 'example' => '{'."\n" - .' "url": "https://help.aliyun.com/",'."\n" - .' "dataId": "url123******"'."\n" - .'}', - ], + 'schema' => ['description' => 'The parameter set for the content moderation object. This parameter is a JSON string. For more information, see the description of ServiceParameters.', 'type' => 'string', 'required' => false, 'example' => '{'."\n" + .' "url": "https://help.aliyun.com/",'."\n" + .' "dataId": "url123******"'."\n" + .'}', 'title' => ''], ], ], 'responses' => [ @@ -3280,204 +3649,191 @@ 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'Id of the request', - 'type' => 'string', - 'example' => '6CF2815C-****-****-B52E-FF6E2****492', - ], - 'Code' => [ - 'description' => 'The returned HTTP status code.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Msg' => [ - 'description' => 'The message that is returned in response to the request.', - 'type' => 'string', - 'example' => 'success', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'Id of the request', 'type' => 'string', 'example' => '6CF2815C-****-****-B52E-FF6E2****492'], + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request was successful.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Msg' => ['description' => 'The response message for the current request.', 'type' => 'string', 'example' => 'success', 'title' => ''], 'Data' => [ - 'description' => 'The data returned.'."\n", + 'description' => 'The returned data.', 'type' => 'object', 'properties' => [ - 'ReqId' => [ - 'description' => 'The reqId field returned by the Url Async Moderation API.', - 'type' => 'string', - 'example' => 'A07B3DB9-D762-5C56-95B1-8EC55CF176D2', - ], - 'DataId' => [ - 'description' => 'The ID of the moderated object.', - 'type' => 'string', - 'example' => '26769ada6e264e7ba9aa048241e12be9', - ], + 'ReqId' => ['description' => 'The ReqId field returned by the enhanced URL asynchronous moderation API. You can use this field to query the detection results.', 'type' => 'string', 'example' => 'A07B3DB9-D762-5C56-95B1-8EC55CF176D2', 'title' => ''], + 'DataId' => ['description' => 'The value of dataId that you specified in the API request. If you did not specify this parameter in the request, this field is not returned.', 'type' => 'string', 'example' => '26769ada6e264e7ba9aa048241e12be9', 'title' => ''], ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], + 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6CF2815C-****-****-B52E-FF6E2****492\\",\\n \\"Code\\": 200,\\n \\"Msg\\": \\"success\\",\\n \\"Data\\": {\\n \\"ReqId\\": \\"A07B3DB9-D762-5C56-95B1-8EC55CF176D2\\",\\n \\"DataId\\": \\"26769ada6e264e7ba9aa048241e12be9\\"\\n }\\n}","type":"json"}]', 'title' => 'UrlAsyncModeration', - ], - 'DescribeUrlModerationResult' => [ - 'summary' => 'Queries the moderation results based on the ReqId returned by asynchronous URL moderation.', - 'methods' => [ - 'post', + 'description' => 'The URL asynchronous moderation service supports the pay-as-you-go and resource plan billing methods.'."\n" + ."\n" + .'- After you activate the enhanced edition of Text Moderation, the default billing method is pay-as-you-go. You are charged CNY 30 per 10,000 calls based on your daily usage. No fees are incurred if you do not call the service.'."\n" + ."\n" + .'- If you have many moderation requests or relatively fixed moderation requirements, we recommend that you purchase resource plans in advance. The larger the resource plan you purchase, the greater the discount you receive. You can purchase and use multiple resource plans.', + 'requestParamsDescription' => '### Description of ServiceParameters'."\n" + ."\n" + .'| **Name** | **Type** | **Required** | **Example** | **Description** |'."\n" + .'| ------------- | -------- | ------------ | -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |'."\n" + .'| url | String | Yes | <https://help.aliyun.com/> | The URL to be detected. Note: Make sure that the URL is in a valid format. Make sure that you pass only one URL in each request. |'."\n" + .'| **dataId** | String | No | url123\\*\\*\\*\\* | The data ID of the detection object. The value can contain letters, digits, underscores (\\_), hyphens (-), and periods (.). The value can be up to 64 characters in length. You can use this ID to uniquely identify your business data. |'."\n" + .'| **callback** | String | No | http\\://www\\.aliyun.com | The callback URL that is used to receive the detection results. The URL can be an HTTP or HTTPS URL. If you do not specify this parameter, you must periodically poll the detection results. The callback interface must support the POST method, UTF-8 encoding, and the form parameters **ReqId**, **Checksum**, and **Content**. AI Guardrails sets **ReqId**, **Checksum**, and **Content** based on the following rules and formats, and calls your callback interface to return the detection results. - **ReqId**: The request ID that is returned after you submit an asynchronous detection task. - **Checksum**: A string that is generated using the SHA256 algorithm based on the user UID, seed, and content. The user UID is the ID of your Alibaba Cloud account. You can view the UID in the [Alibaba Cloud Management Console](https://account.console.aliyun.com/#/secure). For tamper-proofing, after you receive the pushed results, you can generate a string based on the preceding algorithm and compare the string with the value of **Checksum**. **Note** The user UID must be the UID of an Alibaba Cloud account, not the UID of a RAM user. - **Content**: A JSON string. You must parse and invert the string to a JSON object. For an example of the **Content** result, see the sample response of a query for detection results. **Note** After your server-side callback interface receives the results pushed by AI Guardrails, if the returned HTTP status code is 200, the results are received. Other HTTP status codes indicate that the results failed to be received. If the results fail to be received, AI Guardrails repeatedly pushes the detection results for a maximum of 16 times until the results are received. If the results are not received after 16 retries, AI Guardrails stops pushing the results. We recommend that you check the status of the callback interface. |'."\n" + .'| **seed** | String | No | abc\\*\\*\\*\\* | A random string. This value is used for the signature in the callback notification request. The value can contain letters, digits, and underscores (\\_). The value can be up to 64 characters in length. You can customize this parameter. You can use this parameter to verify that the request is initiated by the Alibaba Cloud AI Guardrails service when you receive a callback notification from AI Guardrails. **Note** If you use a callback, you must specify this parameter. |'."\n" + .'| **cryptType** | String | No | SHA256 | When you use a callback notification (callback), you can set the algorithm that is used to encrypt the content of the callback notification. AI Guardrails encrypts the returned result (a string that consists of the **user UID, seed, and content**) based on the encryption algorithm that you specify, and then sends the encrypted result to your callback URL. Valid values: ● **SHA256** (default): the SHA256 encryption algorithm. ● **SM3**: the SM3 encryption algorithm. A hexadecimal string that consists of lowercase letters and digits is returned. For example, if abc is encrypted using the SM3 algorithm, the encrypted string is returned. |', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UrlAsyncModeration'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:UrlAsyncModeration', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'translator' => 'manual', + ], + 'VideoModeration' => [ + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '211720', - 'abilityTreeNodes' => [ - 'FEATURElvwang7UL554', - ], + 'chargeType' => 'paid', + 'abilityTreeCode' => '187556', + 'abilityTreeNodes' => ['FEATURElvwang53TCRC'], ], 'parameters' => [ [ - 'name' => 'ReqId', + 'name' => 'Service', 'in' => 'formData', 'schema' => [ - 'description' => 'The ReqId field returned by an asynchronous URL moderation operation.'."\n", + 'description' => 'The service code for video moderation.', 'type' => 'string', 'required' => false, - 'example' => 'B0963D30-BAB4-562F-9ED0-7A23AEC51C7C', + 'enumValueTitles' => ['liveStreamDetection' => '视频直播流审核', 'videoDetection' => '视频文件审核', 'liveStreamDetection_cb' => '视频直播流审核_海外版', 'videoDetection_cb' => '视频文件审核_海外版'], + 'title' => '', + 'example' => 'videoDetection', ], ], + [ + 'name' => 'ServiceParameters', + 'in' => 'formData', + 'schema' => ['description' => 'The parameters that are required for the moderation service. The value must be a JSON string.'."\n" + ."\n" + .'- url: Required. The URL of the object to be moderated. Make sure that the URL can be accessed over the Internet.'."\n" + .'- dataId: Optional. The data ID of the object to be moderated.'."\n" + ."\n" + .'For more information, see [ServiceParameter](https://help.aliyun.com/document_detail/2505810.html).', 'type' => 'string', 'required' => false, 'title' => '', 'example' => '{"url": "https://talesofai.oss-cn-shanghai.aliyuncs.com/xxx.mp4", "dataId": "data1234"}'], + ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'Schema of Response'."\n", + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '01F9144A-2088-5D87-935B-2DB865284B1A', - ], - 'Code' => [ - 'description' => 'The returned HTTP status code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Msg' => [ - 'description' => 'The message that is returned in response to the request.'."\n", - 'type' => 'string', - 'example' => 'success', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'Id of the request', 'type' => 'string', 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****'], + 'Message' => ['description' => 'The response message.', 'type' => 'string', 'title' => '', 'example' => 'SUCCESS'], + 'Code' => ['description' => 'The return code. A return code of 200 indicates that the request was successful.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '200'], 'Data' => [ - 'description' => 'The data returned.'."\n", + 'description' => 'The returned data.', 'type' => 'object', 'properties' => [ - 'DataId' => [ - 'description' => 'The value of dataId that is specified in the API request. If this parameter is not specified in the API request, this field is not available in the response.'."\n", - 'type' => 'string', - 'example' => '26769ada6e264e7ba9aa048241e12be9', - ], - 'ReqId' => [ - 'description' => 'The ReqId field returned by an asynchronous URL moderation operation.'."\n", - 'type' => 'string', - 'example' => 'B0963D30-BAB4-562F-9ED0-7A23AEC51C7C'."\n", - ], - 'Result' => [ - 'description' => 'The returned results.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The returned results.'."\n", - 'type' => 'object', - 'properties' => [ - 'Label' => [ - 'description' => 'The labels returned after the asynchronous URL moderation.'."\n", - 'type' => 'string', - 'example' => 'sexual_url', - ], - 'Confidence' => [ - 'description' => 'The score of the confidence level. Valid values: 0 to 100. The value is accurate to two decimal places.'."\n", - 'type' => 'number', - 'format' => 'float', - 'example' => '81.22', - ], - ], - ], - ], - 'ExtraInfo' => [ - 'description' => 'The supplementary information.'."\n", - 'type' => 'object', - 'properties' => [ - 'IcpType' => [ - 'description' => 'The type of the ICP filing.'."\n", - 'type' => 'string', - 'example' => 'xx', - ], - 'IcpNo' => [ - 'description' => 'The ICP number.'."\n", - 'type' => 'string', - 'example' => 'xx', - ], - 'SiteType' => [ - 'description' => 'The type of site', - 'type' => 'string', - 'example' => 'game', - ], - ], - ], + 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'title' => '', 'example' => 'xxxxx-xxxxx'], + 'DataId' => ['description' => 'The value of the dataId parameter that you specified in the API request. This parameter is not returned if you did not specify the dataId parameter in the request.', 'type' => 'string', 'title' => '', 'example' => 'data1234'], ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"01F9144A-2088-5D87-935B-2DB865284B1A\\",\\n \\"Code\\": 200,\\n \\"Msg\\": \\"success\\",\\n \\"Data\\": {\\n \\"DataId\\": \\"26769ada6e264e7ba9aa048241e12be9\\",\\n \\"ReqId\\": \\"B0963D30-BAB4-562F-9ED0-7A23AEC51C7C\\\\n\\",\\n \\"Result\\": [\\n {\\n \\"Label\\": \\"sexual_url\\",\\n \\"Confidence\\": 81.22\\n }\\n ],\\n \\"ExtraInfo\\": {\\n \\"IcpType\\": \\"企业\\",\\n \\"IcpNo\\": \\"ICP备123456789\\",\\n \\"SiteType\\": \\"game\\"\\n }\\n }\\n}","type":"json"}]', - 'title' => 'DescribeUrlModerationResult', - 'description' => '* Billing: This operation is free of charge.'."\n" - .'* Query timeout: We recommend that you query moderation results at least 480 seconds after you send an asynchronous moderation request. Content Moderation retains moderation results for up to 3 days. After 3 days, the results are deleted.'."\n" - .'* You can call this operation up to 100 times per second per account. If the number of the calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n", - ], - 'DescribeUploadToken' => [ - 'summary' => 'Queries the token for uploading files.', - 'methods' => [ - 'post', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'VideoModeration', + 'summary' => 'The enhanced video moderation feature of Content Moderation detects threats and non-compliant content in video files. Use this operation to submit a moderation task.', + 'description' => 'Before you call this operation, make sure that you have activated the [enhanced Content Moderation](https://common-buy.aliyun.com/?commodityCode=lvwang_cip_public_cn) service and understand the [billing methods](https://help.aliyun.com/document_detail/2505807.html) and [pricing](https://www.aliyun.com/price/product?#/lvwang/detail/cdibag) of the enhanced video moderation feature.', + 'changeSet' => [ + ['createdAt' => '2024-03-26T02:18:01.000Z', 'description' => 'Response parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'VideoModeration'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:VideoModeration', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\",\\n \\"Message\\": \\"SUCCESS\\",\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"TaskId\\": \\"xxxxx-xxxxx\\",\\n \\"DataId\\": \\"data1234\\"\\n }\\n}","type":"json"}]', + ], + 'VideoModerationCancel' => [ + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeCode' => '186981', - 'abilityTreeNodes' => [ - 'FEATURElvwang78REFZ', + 'abilityTreeCode' => '201471', + 'abilityTreeNodes' => ['FEATURElvwang53TCRC'], + ], + 'parameters' => [ + [ + 'name' => 'Service', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The moderation service type.', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => ['liveStreamDetection' => '视频直播流检测', 'videoDetection' => '视频文件检测', 'liveStreamDetection_cb' => '视频直播流审核_海外版', 'videoDetection_cb' => '视频文件审核_海外版'], + 'title' => '', + 'example' => 'videoDetection', + ], + ], + [ + 'name' => 'ServiceParameters', + 'in' => 'formData', + 'schema' => ['description' => 'The TaskId of the task to be canceled.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => '{\\"taskId\\":\\"vi_s_4O9gp7GfNQdx9GOqdekFmk-1z2RJT\\"}'], ], ], - 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ @@ -3485,88 +3841,41 @@ 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****', - ], - 'Code' => [ - 'description' => 'The returned HTTP status code.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Msg' => [ - 'description' => 'The message that is returned in response to the request.', - 'type' => 'string', - 'example' => 'OK', - ], - 'Data' => [ - 'description' => 'The data returned.'."\n", - 'type' => 'object', - 'properties' => [ - 'AccessKeyId' => [ - 'description' => 'The AccessKey ID.'."\n", - 'type' => 'string', - 'example' => 'STS.NUEUjvDqMuvH6oQA1TXxxH4wVR', - ], - 'AccessKeySecret' => [ - 'description' => 'The AccessKey secret.'."\n", - 'type' => 'string', - 'example' => 'xxxx', - ], - 'SecurityToken' => [ - 'description' => 'The security token.'."\n", - 'type' => 'string', - 'example' => 'xxxx', - ], - 'FileNamePrefix' => [ - 'description' => 'The file prefix.', - 'type' => 'string', - 'example' => 'upload/1xxb89/', - ], - 'OssInternalEndPoint' => [ - 'description' => 'the oss intranet point.', - 'type' => 'string', - 'example' => 'https://oss-cn-shanghai-internal.aliyuncs.com', - ], - 'OssInternetEndPoint' => [ - 'description' => 'the oss internet point.', - 'type' => 'string', - 'example' => 'https://oss-cn-shanghai.aliyuncs.com', - ], - 'BucketName' => [ - 'description' => 'The bucket name.'."\n", - 'type' => 'string', - 'example' => 'oss-cip-shanghai', - ], - 'Expiration' => [ - 'description' => 'The time when the file sharing link expires.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1720577200', - ], - ], - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.', 'type' => 'string', 'example' => '6CF2815C-****-****-B52E-FF6E2****492'], + 'Code' => ['description' => 'The status code. The status code 200 indicates that the request was successful.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '200'], + 'Message' => ['description' => 'The message.', 'type' => 'string', 'title' => '', 'example' => 'OK'], ], ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\",\\n \\"Code\\": 200,\\n \\"Msg\\": \\"OK\\",\\n \\"Data\\": {\\n \\"AccessKeyId\\": \\"STS.NUEUjvDqMuvH6oQA1TXxxH4wVR\\",\\n \\"AccessKeySecret\\": \\"xxxx\\",\\n \\"SecurityToken\\": \\"xxxx\\",\\n \\"FileNamePrefix\\": \\"upload/1xxb89/\\",\\n \\"OssInternalEndPoint\\": \\"https://oss-cn-shanghai-internal.aliyuncs.com\\",\\n \\"OssInternetEndPoint\\": \\"https://oss-cn-shanghai.aliyuncs.com\\",\\n \\"BucketName\\": \\"oss-cip-shanghai\\",\\n \\"Expiration\\": 1720577200\\n }\\n}","type":"json"}]', - 'title' => 'DescribeUploadToken', - ], - 'ImageBatchModeration' => [ - 'summary' => '图片批量调用', - 'methods' => [ - 'post', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'VideoModerationCancel', + 'summary' => 'Cancels an ApsaraVideo Live moderation task.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'VideoModerationCancel'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:VideoModerationCancel', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6CF2815C-****-****-B52E-FF6E2****492\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"OK\\"\\n}","type":"json"}]', + ], + 'VideoModerationResult' => [ + 'summary' => 'Retrieves the task result of an enhanced video content moderation node.', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -3577,550 +3886,459 @@ 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', - 'chargeType' => 'paid', - 'abilityTreeCode' => '214644', - 'abilityTreeNodes' => [ - 'FEATURElvwang78REFZ', - 'FEATURElvwangRPPHPG', - 'FEATURElvwangRBUEEU', - 'FEATURElvwang7UTKSK', - 'FEATURElvwangYHRCHH', - 'FEATURElvwang8B97ZG', - 'FEATURElvwangT9BDZM', - ], - 'tenantRelevance' => 'publicInformation', + 'chargeType' => 'free', + 'abilityTreeCode' => '187919', + 'abilityTreeNodes' => ['FEATURElvwang53TCRC'], ], 'parameters' => [ [ 'name' => 'Service', - 'in' => 'query', + 'in' => 'formData', 'schema' => [ - 'description' => 'The types of detection supported by the enhanced image review, separated by English commas. Values:'."\n" - ."\n" - .'- baselineCheck:General Baseline Detection'."\n" - .'- baselineCheck_pro:General Baseline Detection_Pro Edition'."\n" - .'- tonalityImprove:Content governance monitoring'."\n" - .'- aigcCheck:AIGC image detection', + 'description' => 'The ServiceCode for video moderation.', + 'enumValueTitles' => ['liveStreamDetection' => 'ApsaraVideo Live stream moderation', 'videoDetection' => 'video file moderation.', 'liveStreamDetection_cb' => 'ApsaraVideo Live stream moderation (international edition)', 'videoDetection_cb' => 'video file moderation (international edition)'], 'type' => 'string', 'required' => false, - 'example' => 'baselineCheck,tonalityImprove', + 'example' => 'videoDetection', + 'title' => '', ], ], [ 'name' => 'ServiceParameters', - 'in' => 'query', - 'schema' => [ - 'description' => 'The set of relevant parameters for content detection objects.', - 'type' => 'string', - 'required' => false, - 'example' => '{'."\n" - .' "imageUrl": "https://img.alicdn.com/tfs/TB1U4r9AeH2gK0jSZJnXXaT1FXa-2880-480.png",'."\n" - .' "dataId": "img123****"'."\n" - .' }', - ], + 'in' => 'formData', + 'schema' => ['description' => 'The parameter set required by the moderation service. taskId specifies the taskId of the moderation task to query. Only one taskId can be specified per request.', 'type' => 'string', 'required' => false, 'example' => '{"taskId":"au_f_8PoWiZKoLbczp5HRn69VdT-1y8@U5"}', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => '', + 'title' => '', + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of this invocation request, generated by Alibaba Cloud as a unique identifier for the request, can be used for troubleshooting and pinpointing issues.', - 'type' => 'string', - 'example' => '6CF2815C-C8C7-4A01-B52E-FF6E24F53492'."\n", - ], - 'Code' => [ - 'description' => 'Return code. A return of 200 represents success.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Msg' => [ - 'description' => 'The response message for this request.', - 'type' => 'string', - 'example' => 'success', - ], + 'RequestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '6CF2815C-C8C7-4A01-B52E-FF6E24F53492'], + 'Code' => ['description' => 'The return code. A value of 200 indicates success.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The return message.', 'type' => 'string', 'example' => 'success finished', 'title' => ''], 'Data' => [ - 'description' => 'The result of image content detection.', + 'description' => 'The moderation result data.', 'type' => 'object', 'properties' => [ - 'DataId' => [ - 'description' => 'To detect the data ID corresponding to the object.', - 'type' => 'string', - 'example' => '26769ada6e264e7ba9aa048241e12be9', - ], - 'Results' => [ - 'description' => 'The risk labels, confidence scores, and other parameters for each service\'s image detection, in an array structure.', - 'type' => 'array', - 'items' => [ - 'description' => 'data structure.', - 'type' => 'object', - 'properties' => [ - 'Service' => [ - 'description' => 'The enhanced image detection service supports various detection services.', - 'type' => 'string', - 'example' => 'baselineCheck', - ], - 'Result' => [ - 'description' => 'The risk labels, confidence scores, and other parameters of image detection results, in an array structure.', - 'type' => 'array', - 'items' => [ - 'description' => 'data structure.', - 'type' => 'object', - 'properties' => [ - 'Label' => [ - 'description' => 'The labels returned after image content detection. A single image may have multiple labels and corresponding scores detected.', - 'type' => 'string', - 'example' => 'violent_explosion', - ], - 'Confidence' => [ - 'description' => 'Confidence score, ranging from 0 to 100, rounded to two decimal places. Some labels do not have a confidence score.', - 'type' => 'number', - 'format' => 'float', - 'example' => '81.22', - ], - 'Description' => [ - 'description' => 'Description.', - 'type' => 'string', - 'example' => 'No risk detected', - ], - ], - ], - ], - 'Ext' => [ - 'description' => 'Image supplementary reference information.', + 'LiveId' => ['description' => 'The unique ID of the live stream.', 'type' => 'string', 'example' => 'liveId', 'title' => ''], + 'DataId' => ['description' => 'The value of dataId passed in the API request. This field is not returned if dataId was not specified in the request.', 'type' => 'string', 'example' => 'product_content-2055763', 'title' => ''], + 'AudioResult' => [ + 'description' => 'The segmented results of video audio moderation.', + 'type' => 'object', + 'properties' => [ + 'SliceDetails' => [ + 'description' => 'The list of audio segments.', + 'type' => 'array', + 'items' => [ + 'description' => 'The segment details.', 'type' => 'object', 'properties' => [ - 'TextInImage' => [ - 'description' => 'Return the text information from the recognized images.', - 'type' => 'object', - 'properties' => [ - 'OcrResult' => [ - 'description' => 'Return the text information of each line recognized in the image.', - 'type' => 'array', - 'items' => [ - 'description' => 'data structure.', - 'type' => 'object', - 'properties' => [ - 'Text' => [ - 'description' => 'Text information.', - 'type' => 'string', - 'example' => 'abcd', - ], - 'Location' => [ - 'description' => 'Text line coordinate information.', - 'type' => 'object', - 'properties' => [ - 'X' => [ - 'description' => 'The distance from the top-left corner of the text area to the y-axis, with the top-left corner of the image as the origin, in pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '11', - ], - 'Y' => [ - 'description' => 'The distance from the top-left corner of the text area to the x-axis, with the top-left corner of the image as the origin, in pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '22', - ], - 'H' => [ - 'description' => 'The height of the text area, in pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '33', - ], - 'W' => [ - 'description' => 'The width of the text area, in pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '44', - ], - ], - ], - ], - ], - ], - 'RiskWord' => [ - 'description' => 'hit risk keywords', - 'type' => 'array', - 'items' => [ - 'description' => 'Text information.', - 'type' => 'string', - 'example' => 'Rocket.', - ], - ], - 'CustomText' => [ - 'description' => 'When a custom text library is matched, return the custom library ID, custom library name, and custom words.', - 'type' => 'array', - 'items' => [ - 'description' => 'data structure.', - 'type' => 'object', - 'properties' => [ - 'LibId' => [ - 'description' => 'Custom library ID.', - 'type' => 'string', - 'example' => '123456', - ], - 'LibName' => [ - 'description' => 'Custom library name.', - 'type' => 'string', - 'example' => 'Custom Library 1', - ], - 'KeyWords' => [ - 'description' => 'Custom words, separate multiple words with commas.', - 'type' => 'string', - 'example' => 'Custom Word 1 and Custom Word 2', - ], - ], - ], - ], - ], - ], - 'CustomImage' => [ - 'description' => 'Custom image library hit information list.', + 'StartTime' => ['description' => 'The start time of the segment, in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''], + 'EndTime' => ['description' => 'The end time of the segment, in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '30', 'title' => ''], + 'StartTimestamp' => ['description' => 'The start timestamp, in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1659935002123', 'title' => ''], + 'EndTimestamp' => ['description' => 'The end timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1685245261939', 'title' => ''], + 'Url' => ['description' => 'The temporary URL of the audio segment file.', 'type' => 'string', 'example' => 'http://xxxx.abc.img', 'title' => ''], + 'Text' => ['description' => 'The transcribed text of the audio segment.', 'type' => 'string', 'example' => '今天天气真不错', 'title' => ''], + 'Labels' => ['description' => 'The violated labels that were hit.', 'type' => 'string', 'example' => 'porn', 'title' => ''], + 'Score' => ['description' => 'The risk score. Default range: 0 to 99.', 'type' => 'number', 'format' => 'float', 'example' => '5', 'title' => ''], + 'Extend' => ['description' => 'The extended field.', 'type' => 'string', 'example' => '{\\"consoleProduct\\":\\"slbnext\\"}', 'title' => ''], + 'RiskTips' => ['description' => 'The details of the hit risk.', 'type' => 'string', 'example' => '""', 'title' => ''], + 'RiskWords' => ['description' => 'The risk keywords that were hit.', 'type' => 'string', 'example' => '""', 'title' => ''], + 'RiskLevel' => ['description' => 'The risk level, returned based on the configured high and low risk score thresholds. Valid values:'."\n" + ."\n" + .'- high: High risk.'."\n" + ."\n" + .'- medium: Medium risk.'."\n" + .' '."\n" + .'- low: Low risk.'."\n" + ."\n" + .'- none: No risk detected.', 'type' => 'string', 'example' => 'high', 'title' => ''], + 'Descriptions' => ['description' => 'The label descriptions.', 'type' => 'string', 'example' => '疑似违禁内容', 'title' => ''], + 'Result' => [ + 'title' => '', + 'description' => 'The text detection result.', 'type' => 'array', 'items' => [ - 'description' => 'data structure.', + 'title' => '', + 'description' => 'The individual result.', 'type' => 'object', 'properties' => [ - 'LibId' => [ - 'description' => 'Custom library ID', - 'type' => 'string', - 'example' => '1965304870002', - ], - 'ImageId' => [ - 'description' => 'The ID of the hit custom image.', - 'type' => 'string', - 'example' => '1965304870002', + 'Label' => ['title' => '', 'description' => 'The label.', 'type' => 'string', 'example' => 'profanity'], + 'Confidence' => ['title' => '', 'description' => 'The confidence level.', 'type' => 'number', 'format' => 'float', 'example' => '99.9'], + 'RiskWords' => ['title' => '', 'description' => 'The hit risk content.', 'type' => 'string', 'example' => 'fxxk'], + 'RiskLevel' => ['title' => '', 'description' => 'The risk level.', 'type' => 'string', 'example' => 'high'], + 'CustomizedHit' => [ + 'title' => '', + 'description' => 'The list of hit custom libraries.', + 'type' => 'array', + 'items' => [ + 'title' => '', + 'description' => 'The hit custom library.', + 'type' => 'object', + 'properties' => [ + 'LibName' => ['title' => '', 'description' => 'The name of the custom library.', 'type' => 'string', 'example' => '备用词库02'], + 'KeyWords' => ['title' => '', 'description' => 'The custom keywords.', 'type' => 'string', 'example' => 'fxxk'], + ], + 'example' => '', + ], + 'example' => '', ], - 'LibName' => [ - 'description' => 'The name of the hit custom gallery.', - 'type' => 'string', - 'example' => 'Whitelist', + 'Description' => ['title' => '', 'description' => 'The description.', 'type' => 'string', 'example' => '疑似违禁内容'], + 'RiskPositions' => [ + 'title' => '', + 'description' => 'The list of risk positions.', + 'type' => 'array', + 'items' => [ + 'title' => '', + 'description' => 'The risk position.', + 'type' => 'object', + 'properties' => [ + 'RiskWord' => ['title' => '', 'description' => 'The detected sensitive word.', 'type' => 'string', 'example' => 'fxxk'], + 'StartPos' => ['title' => '', 'description' => 'The start position.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], + 'EndPos' => ['title' => '', 'description' => 'The end position.', 'type' => 'integer', 'format' => 'int32', 'example' => '3'], + ], + 'example' => '', + ], + 'example' => '', ], ], + 'example' => '', ], + 'example' => '', ], - 'PublicFigure' => [ - 'description' => 'List of character information.', + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'AudioSummarys' => [ + 'description' => 'The audio label summary.', + 'type' => 'array', + 'items' => [ + 'description' => 'The object.', + 'type' => 'object', + 'properties' => [ + 'Label' => ['description' => 'The video audio label.', 'type' => 'string', 'example' => 'profanity', 'title' => ''], + 'LabelSum' => ['description' => 'The number of times the label was detected.', 'type' => 'integer', 'format' => 'int32', 'example' => '8', 'title' => ''], + 'Description' => ['description' => 'The label descriptions.', 'type' => 'string', 'example' => '疑似违禁内容', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'RiskLevel' => ['description' => 'The risk level, returned based on the configured high and low risk score thresholds. Valid values:'."\n" + ."\n" + .'- high: High risk.'."\n" + ."\n" + .'- medium: Medium risk.'."\n" + .' '."\n" + .'- low: Low risk.'."\n" + ."\n" + .'- none: No risk detected.', 'type' => 'string', 'example' => 'high', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'FrameResult' => [ + 'description' => 'The list of video frame capture results.', + 'type' => 'object', + 'properties' => [ + 'FrameNum' => ['description' => 'The number of result frames.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], + 'Frames' => [ + 'description' => 'The information about video frames that contain hit labels.', + 'type' => 'array', + 'items' => [ + 'description' => 'The object.', + 'type' => 'object', + 'properties' => [ + 'TempUrl' => ['description' => 'The temporary access URL of the captured frame image.', 'type' => 'string', 'example' => 'http://xxxx.abc.jpg', 'title' => ''], + 'Offset' => ['description' => 'The offset of the captured frame.', 'type' => 'number', 'format' => 'float', 'example' => '338', 'title' => ''], + 'Results' => [ + 'description' => 'The frame detection result details.', 'type' => 'array', 'items' => [ - 'description' => 'data structure.', + 'description' => 'The object.', 'type' => 'object', 'properties' => [ - 'FigureName' => [ - 'description' => 'The identified person\'s name information.', - 'type' => 'string', - 'example' => 'xxxxx', + 'Service' => ['description' => 'The image moderation service type.', 'type' => 'string', 'example' => 'tonalityImprove', 'title' => ''], + 'Result' => [ + 'description' => 'The hit result details.', + 'type' => 'array', + 'items' => [ + 'description' => 'The object.', + 'type' => 'object', + 'properties' => [ + 'Confidence' => ['description' => 'The confidence score, ranging from 0 to 100, rounded to two decimal places.', 'type' => 'number', 'format' => 'float', 'example' => '50', 'title' => ''], + 'Label' => ['description' => 'The classification of the detection result.', 'type' => 'string', 'example' => 'bloody', 'title' => ''], + 'Description' => ['description' => 'The description of the Label field.', 'type' => 'string', 'example' => '未检测出风险', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', ], - 'FigureId' => [ - 'description' => 'Identify the encoded information of the person.', - 'type' => 'string', - 'example' => '12324222', + 'TextInImage' => ['description' => 'The text information detected in the hit image.', 'type' => 'object', 'title' => '', 'example' => ''], + 'CustomImage' => [ + 'description' => 'The custom image library information returned when a custom image library is hit.', + 'type' => 'array', + 'items' => [ + 'description' => 'The object.', + 'type' => 'object', + 'properties' => [ + 'LibId' => ['description' => 'The ID of the hit custom image library.', 'type' => 'string', 'example' => '12345678', 'title' => ''], + 'ImageId' => ['description' => 'The ID of the hit custom image.', 'type' => 'string', 'example' => '1234', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', ], - 'Location' => [ - 'description' => 'The location information of the identifier.', + 'PublicFigure' => [ + 'description' => 'The identified public figure codes returned when the video contains specific public figures.', 'type' => 'array', 'items' => [ - 'description' => 'data structure.', + 'description' => 'The object.', 'type' => 'object', 'properties' => [ - 'X' => [ - 'description' => 'The distance from the top-left corner of the text area to the y-axis, with the top-left corner of the image as the origin, in pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '11', - ], - 'Y' => [ - 'description' => 'The distance from the top-left corner of the text area to the x-axis, with the top-left corner of the image as the origin, in pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '22', - ], - 'W' => [ - 'description' => 'The height of the text area, in pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '330', - ], - 'H' => [ - 'description' => 'The width of the text area, in pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '440', + 'FigureId' => ['description' => 'The code of the identified public figure.', 'type' => 'string', 'example' => 'xxx001', 'title' => ''], + 'FigureName' => ['description' => 'The name of the identified public figure.', 'type' => 'string', 'example' => '张三', 'title' => ''], + 'Location' => [ + 'description' => 'The location of the identified public figure.', + 'type' => 'array', + 'items' => [ + 'description' => 'The location object.', + 'type' => 'object', + 'properties' => [ + 'H' => ['description' => 'The height.', 'type' => 'integer', 'format' => 'int32', 'example' => '222', 'title' => ''], + 'W' => ['description' => 'The width.', 'type' => 'integer', 'format' => 'int32', 'example' => '111', 'title' => ''], + 'X' => ['description' => 'The x-coordinate of the starting point.', 'type' => 'integer', 'format' => 'int32', 'example' => '111', 'title' => ''], + 'Y' => ['description' => 'The y-coordinate of the starting point.', 'type' => 'integer', 'format' => 'int32', 'example' => '222', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], - ], - ], - ], - 'LogoData' => [ - 'description' => 'Logo identification information.', - 'type' => 'object', - 'properties' => [ - 'Location' => [ - 'description' => 'The location information of the identifier.', - 'type' => 'object', - 'properties' => [ - 'X' => [ - 'description' => 'The distance from the top-left corner of the text area to the y-axis, with the top-left corner of the image as the origin, in pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '11', - ], - 'Y' => [ - 'description' => 'The distance from the top-left corner of the text area to the x-axis, with the top-left corner of the image as the origin, in pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '22', - ], - 'W' => [ - 'description' => 'The height of the text area, in pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '330', - ], - 'H' => [ - 'description' => 'The width of the text area, in pixels.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '440', + 'LogoData' => [ + 'description' => 'The logo information returned when a logo is detected in the video.', + 'type' => 'array', + 'items' => [ + 'description' => 'The logo information object.', + 'type' => 'object', + 'properties' => [ + 'Location' => [ + 'description' => 'The text line and coordinate information.', + 'type' => 'object', + 'properties' => [ + 'X' => ['description' => 'The distance from the upper-left corner of the text area to the y-axis, with the upper-left corner of the image as the origin. Unit: pixels.', 'type' => 'integer', 'format' => 'int32', 'example' => '111', 'title' => ''], + 'Y' => ['description' => 'The distance from the upper-left corner of the text area to the x-axis, with the upper-left corner of the image as the origin. Unit: pixels.', 'type' => 'integer', 'format' => 'int32', 'example' => '222', 'title' => ''], + 'W' => ['description' => 'The width of the text area. Unit: pixels.', 'type' => 'integer', 'format' => 'int32', 'example' => '111', 'title' => ''], + 'H' => ['description' => 'The height of the text area. Unit: pixels.', 'type' => 'integer', 'format' => 'int32', 'example' => '111', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'Logo' => [ + 'description' => 'The logo information.', + 'type' => 'array', + 'items' => [ + 'description' => 'The logo object.', + 'type' => 'object', + 'properties' => [ + 'label' => ['description' => 'The hit label.', 'type' => 'string', 'example' => 'pt_logotoSocialNetwork', 'title' => ''], + 'name' => ['description' => 'The logo name.', 'type' => 'string', 'example' => '**卫视', 'title' => ''], + 'confidence' => ['description' => 'The confidence score, ranging from 0 to 100, rounded to two decimal places.', 'type' => 'integer', 'format' => 'int64', 'example' => '99.1', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], - ], - 'Logo' => [ - 'description' => 'identification information', - 'type' => 'array', - 'items' => [ - 'description' => 'data structure.', + 'VlContent' => [ + 'title' => '', + 'description' => 'The large model result.', 'type' => 'object', 'properties' => [ - 'Label' => [ - 'description' => 'Identify the category.', - 'type' => 'string', - 'example' => 'logo_sns', - ], - 'Name' => [ - 'description' => 'identifier name.', - 'type' => 'string', - 'example' => 'Alibaba Cloud', - ], - 'Confidence' => [ - 'description' => 'Confidence score, from 0 to 100, rounded to two decimal places.', - 'type' => 'number', - 'format' => 'float', - 'example' => '99.1', - ], + 'OutputText' => ['title' => '', 'description' => 'The output text from the large model.', 'type' => 'string', 'example' => 'in the picture XXX'], ], + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], + 'Timestamp' => ['description' => 'The absolute timestamp. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1684559739000', 'title' => ''], + 'RiskLevel' => ['description' => 'The risk level, returned based on the configured high and low risk score thresholds. Valid values:'."\n" + ."\n" + .'- high: High risk.'."\n" + ."\n" + .'- medium: Medium risk.'."\n" + .' '."\n" + .'- low: Low risk.'."\n" + ."\n" + .'- none: No risk detected.', 'type' => 'string', 'example' => 'high', 'title' => ''], ], + 'title' => '', + 'example' => '', ], - 'RiskLevel' => [ - 'description' => 'Risk level.', - 'type' => 'string', - 'example' => 'high', + 'title' => '', + 'example' => '', + ], + 'FrameSummarys' => [ + 'description' => 'The video frame label summary.', + 'type' => 'array', + 'items' => [ + 'description' => 'The video frame label object.', + 'type' => 'object', + 'properties' => [ + 'Label' => ['description' => 'The video frame label.', 'type' => 'string', 'example' => 'violent_armedForces', 'title' => ''], + 'LabelSum' => ['description' => 'The number of times the label was detected.', 'type' => 'integer', 'format' => 'int32', 'example' => '8', 'title' => ''], + 'Description' => ['description' => 'The description of the Label field.', 'type' => 'string', 'example' => '未检测出风险', 'title' => ''], + ], + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], + 'RiskLevel' => ['description' => 'The risk level, returned based on the configured high and low risk score thresholds. Valid values:'."\n" + ."\n" + .'- high: High risk.'."\n" + ."\n" + .'- medium: Medium risk.'."\n" + .' '."\n" + .'- low: Low risk.'."\n" + ."\n" + .'- none: No risk detected.', 'type' => 'string', 'example' => 'high', 'title' => ''], ], + 'title' => '', + 'example' => '', ], - 'Result' => [ - 'description' => 'The risk labels, confidence scores, and other parameters of image detection results, in an array structure.', - 'type' => 'array', - 'items' => [ - 'description' => 'data structure.', - 'type' => 'object', - 'properties' => [ - 'Label' => [ - 'description' => 'The labels returned after image content detection. A single image may be associated with multiple labels and corresponding scores.', - 'type' => 'string', - 'example' => 'violent_explosion', - ], - 'Confidence' => [ - 'description' => 'Confidence score, ranging from 0 to 100, retained to two decimal places. Some labels do not have a confidence score.', - 'type' => 'number', - 'format' => 'float', - 'example' => '81.22', - ], - 'Description' => [ - 'description' => 'Description.', - 'type' => 'string', - 'example' => 'No risk detected', + 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 'xxxxx-xxxxx', 'title' => ''], + 'RiskLevel' => ['description' => 'The risk level, returned based on the configured high and low risk score thresholds. Valid values:'."\n" + ."\n" + .'- high: High risk.'."\n" + ."\n" + .'- medium: Medium risk.'."\n" + .' '."\n" + .'- low: Low risk.'."\n" + ."\n" + .'- none: No risk detected.', 'type' => 'string', 'example' => 'high', 'title' => ''], + 'ManualTaskId' => ['description' => 'The manual review task ID.', 'type' => 'string', 'example' => 'xxxxx-xxxxx', 'title' => ''], + 'Ext' => [ + 'title' => '', + 'description' => 'The extended information.', + 'type' => 'object', + 'properties' => [ + 'AigcData' => [ + 'description' => 'The AIGC metadata detection result.', + 'type' => 'object', + 'properties' => [ + 'AIGC' => [ + 'description' => 'The AIGC metadata.', + 'type' => 'object', + 'properties' => [ + 'Label' => ['description' => 'Indicates whether the content is generated by artificial intelligence (AI). Valid values:'."\n" + ."\n" + .'- 1: The content is AI-generated content (AIGC).'."\n" + ."\n" + .'- 2: (Propagation platforms only) The content may be AI-generated content generation.'."\n" + ."\n" + .'- 3: (Propagation platforms only) The content is suspected to be AI-generated content generation.', 'type' => 'string', 'example' => '1', 'title' => ''], + 'ProduceID' => ['description' => 'The content production ID, a unique identifier used by the production platform to trace synthesized content.', 'type' => 'string', 'example' => '123******456'."\n" + ."\n", 'title' => ''], + 'ContentProducer' => ['description' => 'The code or name of the service provider, used to identify the content producer.', 'type' => 'string', 'example' => '001191******M000100Y43', 'title' => ''], + 'PropagateID' => ['description' => 'The content propagation ID, a unique identifier assigned by the propagation platform to the distributed AI-generated content.', 'type' => 'string', 'example' => '123******456'."\n", 'title' => ''], + 'ContentPropagator' => ['description' => 'The name, code, or identifier of the propagation platform. For services that provide artificial intelligence-generated content, this value can be the same as ContentProducer.', 'type' => 'string', 'example' => '001191******M000100Y43', 'title' => ''], + 'ReservedCode1' => ['description' => 'A reserved field.'."\n" + ."\n" + .'This field can store information used by the content generation service provider for self-initiated security protection and content/identifier integrity assurance. A hashing mechanism based on ContentProducer and ProduceID can be used to securely store and verify critical information.', 'type' => 'string', 'example' => 'd41d**********427e'."\n", 'title' => ''], + 'ReservedCode2' => ['description' => 'A reserved field.'."\n" + ."\n" + .'This field can be used by the content propagation service provider for self-initiated security protection and content/identifier integrity assurance. A hashing mechanism based on ContentProducer and ProduceID can be used to securely store and verify critical information.', 'type' => 'string', 'example' => 'd41d**********427e', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'Result' => ['description' => 'The detection result.', 'type' => 'string', 'example' => 'None', 'title' => ''], ], + 'title' => '', + 'example' => '', ], ], - ], - 'RiskLevel' => [ - 'description' => 'Risk level.', - 'type' => 'string', - 'example' => 'high', - ], - 'ManualTaskId' => [ - 'type' => 'string', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6CF2815C-C8C7-4A01-B52E-FF6E24F53492\\\\n\\",\\n \\"Code\\": 200,\\n \\"Msg\\": \\"success\\",\\n \\"Data\\": {\\n \\"DataId\\": \\"26769ada6e264e7ba9aa048241e12be9\\",\\n \\"Results\\": [\\n {\\n \\"Service\\": \\"baselineCheck\\",\\n \\"Result\\": [\\n {\\n \\"Label\\": \\"violent_explosion\\",\\n \\"Confidence\\": 81.22,\\n \\"Description\\": \\"未检测出风险\\"\\n }\\n ],\\n \\"Ext\\": {\\n \\"TextInImage\\": {\\n \\"OcrResult\\": [\\n {\\n \\"Text\\": \\"abcd\\",\\n \\"Location\\": {\\n \\"X\\": 11,\\n \\"Y\\": 22,\\n \\"H\\": 33,\\n \\"W\\": 44\\n }\\n }\\n ],\\n \\"RiskWord\\": [\\n \\"火箭\\"\\n ],\\n \\"CustomText\\": [\\n {\\n \\"LibId\\": \\"123456\\",\\n \\"LibName\\": \\"自定义库1\\",\\n \\"KeyWords\\": \\"自定义词1,自定义词2\\"\\n }\\n ]\\n },\\n \\"CustomImage\\": [\\n {\\n \\"LibId\\": \\"1965304870002\\",\\n \\"ImageId\\": \\"1965304870002\\",\\n \\"LibName\\": \\"白名单\\"\\n }\\n ],\\n \\"PublicFigure\\": [\\n {\\n \\"FigureName\\": \\"xxxxx\\",\\n \\"FigureId\\": \\"12324222\\",\\n \\"Location\\": [\\n {\\n \\"X\\": 11,\\n \\"Y\\": 22,\\n \\"W\\": 330,\\n \\"H\\": 440\\n }\\n ]\\n }\\n ],\\n \\"LogoData\\": {\\n \\"Location\\": {\\n \\"X\\": 11,\\n \\"Y\\": 22,\\n \\"W\\": 330,\\n \\"H\\": 440\\n },\\n \\"Logo\\": [\\n {\\n \\"Label\\": \\"logo_sns\\",\\n \\"Name\\": \\"阿里云\\",\\n \\"Confidence\\": 99.1\\n }\\n ]\\n }\\n },\\n \\"RiskLevel\\": \\"high\\"\\n }\\n ],\\n \\"Result\\": [\\n {\\n \\"Label\\": \\"violent_explosion\\",\\n \\"Confidence\\": 81.22,\\n \\"Description\\": \\"未检测出风险\\"\\n }\\n ],\\n \\"RiskLevel\\": \\"high\\",\\n \\"ManualTaskId\\": \\"xxxxx-xxxxx\\"\\n }\\n}","type":"json"}]', - 'title' => '图片批量检测', - 'requestParamsDescription' => '```'."\n" - .'{'."\n" - .' "Services": "baselineCheck,tonalityImprove",'."\n" - .' "ServiceParameters": {'."\n" - .' "imageUrl": "https://img.alicdn.com/tfs/TB1U4r9AeH2gK0jSZJnXXaT1FXa-2880-480.png",'."\n" - .' "dataId": "img123****"'."\n" - .' }'."\n" - .'}'."\n" - ."\n" - .'```', - ], - 'ManualCallback' => [ - 'summary' => 'Content Security Manual Review Result Callback Interface', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'operationType' => 'write', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'none', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '264346', - 'abilityTreeNodes' => [ - 'FEATURElvwangIBEW89', - 'FEATURElvwangU90H4V', - 'FEATURElvwangBBY7QM', - 'FEATURElvwang870NMI', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6CF2815C-C8C7-4A01-B52E-FF6E24F53492\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success finished\\",\\n \\"Data\\": {\\n \\"LiveId\\": \\"liveId\\",\\n \\"DataId\\": \\"product_content-2055763\\",\\n \\"AudioResult\\": {\\n \\"SliceDetails\\": [\\n {\\n \\"StartTime\\": 0,\\n \\"EndTime\\": 30,\\n \\"StartTimestamp\\": 1659935002123,\\n \\"EndTimestamp\\": 1685245261939,\\n \\"Url\\": \\"http://xxxx.abc.img\\",\\n \\"Text\\": \\"今天天气真不错\\",\\n \\"Labels\\": \\"porn\\",\\n \\"Score\\": 5,\\n \\"Extend\\": \\"{\\\\\\\\\\\\\\"consoleProduct\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"slbnext\\\\\\\\\\\\\\"}\\",\\n \\"RiskTips\\": \\"\\\\\\"\\\\\\"\\",\\n \\"RiskWords\\": \\"\\\\\\"\\\\\\"\\",\\n \\"RiskLevel\\": \\"high\\",\\n \\"Descriptions\\": \\"疑似违禁内容\\",\\n \\"Result\\": [\\n {\\n \\"Label\\": \\"profanity\\",\\n \\"Confidence\\": 99.9,\\n \\"RiskWords\\": \\"fxxk\\",\\n \\"RiskLevel\\": \\"high\\",\\n \\"CustomizedHit\\": [\\n {\\n \\"LibName\\": \\"备用词库02\\",\\n \\"KeyWords\\": \\"fxxk\\"\\n }\\n ],\\n \\"Description\\": \\"疑似违禁内容\\",\\n \\"RiskPositions\\": [\\n {\\n \\"RiskWord\\": \\"fxxk\\",\\n \\"StartPos\\": 0,\\n \\"EndPos\\": 3\\n }\\n ]\\n }\\n ]\\n }\\n ],\\n \\"AudioSummarys\\": [\\n {\\n \\"Label\\": \\"profanity\\",\\n \\"LabelSum\\": 8,\\n \\"Description\\": \\"疑似违禁内容\\"\\n }\\n ],\\n \\"RiskLevel\\": \\"high\\"\\n },\\n \\"FrameResult\\": {\\n \\"FrameNum\\": 10,\\n \\"Frames\\": [\\n {\\n \\"TempUrl\\": \\"http://xxxx.abc.jpg\\",\\n \\"Offset\\": 338,\\n \\"Results\\": [\\n {\\n \\"Service\\": \\"tonalityImprove\\",\\n \\"Result\\": [\\n {\\n \\"Confidence\\": 50,\\n \\"Label\\": \\"bloody\\",\\n \\"Description\\": \\"未检测出风险\\"\\n }\\n ],\\n \\"TextInImage\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"CustomImage\\": [\\n {\\n \\"LibId\\": \\"12345678\\",\\n \\"ImageId\\": \\"1234\\"\\n }\\n ],\\n \\"PublicFigure\\": [\\n {\\n \\"FigureId\\": \\"xxx001\\",\\n \\"FigureName\\": \\"张三\\",\\n \\"Location\\": [\\n {\\n \\"H\\": 222,\\n \\"W\\": 111,\\n \\"X\\": 111,\\n \\"Y\\": 222\\n }\\n ]\\n }\\n ],\\n \\"LogoData\\": [\\n {\\n \\"Location\\": {\\n \\"X\\": 111,\\n \\"Y\\": 222,\\n \\"W\\": 111,\\n \\"H\\": 111\\n },\\n \\"Logo\\": [\\n {\\n \\"label\\": \\"pt_logotoSocialNetwork\\",\\n \\"name\\": \\"**卫视\\",\\n \\"confidence\\": 99.1\\n }\\n ]\\n }\\n ],\\n \\"VlContent\\": {\\n \\"OutputText\\": \\"in the picture XXX\\"\\n }\\n }\\n ],\\n \\"Timestamp\\": 1684559739000,\\n \\"RiskLevel\\": \\"high\\"\\n }\\n ],\\n \\"FrameSummarys\\": [\\n {\\n \\"Label\\": \\"violent_armedForces\\",\\n \\"LabelSum\\": 8,\\n \\"Description\\": \\"未检测出风险\\"\\n }\\n ],\\n \\"RiskLevel\\": \\"high\\"\\n },\\n \\"TaskId\\": \\"xxxxx-xxxxx\\",\\n \\"RiskLevel\\": \\"high\\",\\n \\"ManualTaskId\\": \\"xxxxx-xxxxx\\",\\n \\"Ext\\": {\\n \\"AigcData\\": {\\n \\"AIGC\\": {\\n \\"Label\\": \\"1\\",\\n \\"ProduceID\\": \\"123******456\\\\n\\\\n\\",\\n \\"ContentProducer\\": \\"001191******M000100Y43\\",\\n \\"PropagateID\\": \\"123******456\\\\n\\",\\n \\"ContentPropagator\\": \\"001191******M000100Y43\\",\\n \\"ReservedCode1\\": \\"d41d**********427e\\\\n\\",\\n \\"ReservedCode2\\": \\"d41d**********427e\\"\\n },\\n \\"Result\\": \\"None\\"\\n }\\n }\\n }\\n}","type":"json"}]', + 'title' => 'Query video moderation task results', + 'description' => 'This operation is not billed. Set the polling interval to 30 seconds (query results 30 seconds after submitting the asynchronous moderation task). The maximum query window is 24 hours. After that, results are automatically deleted.', + 'changeSet' => [ + ['createdAt' => '2025-06-12T02:05:04.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-03-13T01:43:03.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-01-09T12:40:10.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-09-23T13:28:56.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-03-26T02:18:01.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-12-27T10:12:17.000Z', 'description' => 'Response parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'VideoModerationResult'], ], - 'tenantRelevance' => 'publicInformation', ], - 'parameters' => [ - [ - 'name' => 'Code', - 'in' => 'formData', - 'schema' => [ - 'description' => 'Code value', - 'type' => 'string', - 'required' => false, - 'example' => '200', - ], - ], + 'ramActions' => [ [ - 'name' => 'Msg', - 'in' => 'formData', - 'schema' => [ - 'description' => 'Message information', - 'type' => 'string', - 'required' => false, - 'example' => 'OK', - ], - ], - [ - 'name' => 'Checksum', - 'in' => 'formData', - 'schema' => [ - 'description' => 'Checksum.', - 'type' => 'string', - 'required' => false, - 'example' => 'abc', - ], - ], - [ - 'name' => 'ReqId', - 'in' => 'formData', - 'schema' => [ - 'description' => 'Platform request ID, used for troubleshooting assistance', - 'type' => 'string', - 'required' => false, - 'example' => 'B0963D30-BAB4-562F-9ED0-7A23AEC51C7C', - ], - ], - [ - 'name' => 'Data', - 'in' => 'formData', - 'schema' => [ - 'description' => 'Returned data.', - 'type' => 'string', - 'required' => false, - 'example' => '{\'Result\': [{\'Confidence\': 100.0, \'CustomizedHit\': [{\'KeyWords\': u\'\\u4fdd\\u969c,\\u6700\\u5927,\\u9ad8\\u7ea7\', \'LibName\': u\'\\u4f18\\u8def\\u654f\\u611f\\u8bcd\'}], \'Label\': \'customized\'}]}', - ], - ], - [ - 'name' => 'Channel', - 'in' => 'formData', - 'schema' => [ - 'description' => 'Channel field', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'ant' => 'ant', - ], - 'example' => 'ant', - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Response Schema', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'ID of the request', - 'type' => 'string', - 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****'."\n", - ], - 'Message' => [ - 'description' => 'Message information', - 'type' => 'string', - 'example' => 'SUCCESS', - ], - 'Code' => [ - 'description' => 'Error code', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:VideoModerationResult', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\\\n\\",\\n \\"Message\\": \\"SUCCESS\\",\\n \\"Code\\": 200\\n}","type":"json"}]', - 'title' => 'Manual Review Channel Callback Interface', - 'extraInfo' => '无', - 'translator' => 'machine', ], - 'ManualModeration' => [ - 'summary' => 'Content Security Manual Review Request Interface', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'https', - ], + 'VoiceModeration' => [ + 'summary' => 'Submits a task for enhanced voice moderation.', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -4129,132 +4347,106 @@ 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', + 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'paid', - 'abilityTreeCode' => '264342', - 'abilityTreeNodes' => [ - 'FEATURElvwangIBEW89', - 'FEATURElvwangU90H4V', - 'FEATURElvwangBBY7QM', - 'FEATURElvwang870NMI', - ], - 'tenantRelevance' => 'publicInformation', + 'abilityTreeCode' => '162159', + 'abilityTreeNodes' => ['FEATURElvwang6QCU1H', 'FEATURElvwangPAXR7J'], ], 'parameters' => [ [ 'name' => 'Service', 'in' => 'formData', - 'schema' => [ - 'description' => 'Service.', - 'type' => 'string', - 'required' => false, - 'example' => 'imageManualCheck', - ], + 'schema' => ['description' => 'The ServiceCode for voice moderation.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'title' => '', 'example' => 'audio_media_detection'], ], [ 'name' => 'ServiceParameters', 'in' => 'formData', - 'schema' => [ - 'description' => 'Parameter set required for the review service, in JSON string format.'."\n" - .'- url: The URL of the object to be checked. Please ensure that this URL is publicly accessible.'."\n" - .'- dataId: Optional, the data ID corresponding to the object being checked.', - 'type' => 'string', - 'required' => false, - 'example' => '{"url": "https://talesofai.oss-cn-shanghai.aliyuncs.com/xxx.mp4", "dataId": "data1234"}', - ], + 'schema' => ['description' => 'The set of parameters that are required for the moderation service. The value must be a JSON string.'."\n" + ."\n" + .'url: Required. The URL of the object to be detected. Make sure that the URL is accessible over the Internet. dataId: Optional. The data ID of the object to be detected. For more information, see ServiceParameter.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => '{"url": "http://aliyundoc.com/test.flv", "dataId": "data1234"}'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'Response Schema', + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'ID of the request', - 'type' => 'string', - 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****', - ], - 'Message' => [ - 'description' => 'Error message', - 'type' => 'string', - 'example' => 'SUCCESS', - ], - 'Code' => [ - 'description' => 'Status code', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'Id of the request', 'type' => 'string', 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****'], + 'Code' => ['description' => 'The error code.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '200'], + 'Message' => ['description' => 'The error message.', 'type' => 'string', 'title' => '', 'example' => 'SUCCESS'], 'Data' => [ - 'description' => 'Returned data.', + 'description' => 'The data structure of the returned task information.', 'type' => 'object', 'properties' => [ - 'DataId' => [ - 'description' => 'The value of dataId passed during the API request. This field will not be present if it was not provided during the request.', - 'type' => 'string', - 'example' => '2a5389eb-4ff8-4584-ac99-644e2a539aa1', - ], - 'TaskId' => [ - 'description' => 'Task ID', - 'type' => 'string', - 'example' => 'xxxxx-xxxxx', - ], + 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'title' => '', 'example' => 'xxxxx-xxxxx'], + 'DataId' => ['description' => 'The value of the dataId parameter that you specify in the API request. If you do not specify this parameter in the request, this field is not returned.', 'type' => 'string', 'title' => '', 'example' => 'data1234'], ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'VoiceModeration', + 'changeSet' => [ + ['createdAt' => '2024-03-26T02:18:00.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-04-04T03:41:29.000Z', 'description' => 'Response parameters changed'], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\",\\n \\"Message\\": \\"SUCCESS\\",\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"DataId\\": \\"2a5389eb-4ff8-4584-ac99-644e2a539aa1\\",\\n \\"TaskId\\": \\"xxxxx-xxxxx\\"\\n }\\n}","type":"json"}]', - 'title' => 'ManualModeration', - 'translator' => 'machine', - ], - 'ManualModerationResult' => [ - 'summary' => 'Retrieve manual review results', - 'methods' => [ - 'post', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'VoiceModeration'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'yundun-greenweb:VoiceModeration', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"SUCCESS\\",\\n \\"Data\\": {\\n \\"TaskId\\": \\"xxxxx-xxxxx\\",\\n \\"DataId\\": \\"data1234\\"\\n }\\n}","type":"json"}]', + ], + 'VoiceModerationCancel' => [ + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeCode' => '264414', - 'abilityTreeNodes' => [ - 'FEATURElvwangIBEW89', - 'FEATURElvwangU90H4V', - 'FEATURElvwangBBY7QM', - 'FEATURElvwang870NMI', - ], - 'tenantRelevance' => 'publicInformation', + 'abilityTreeCode' => '164076', + 'abilityTreeNodes' => ['FEATURElvwang6QCU1H', 'FEATURElvwangPAXR7J'], ], 'parameters' => [ [ + 'name' => 'Service', + 'in' => 'formData', + 'schema' => ['description' => 'The type of moderation service. Valid values include \\`nickname\\_detection\\` for user nicknames. Other values are to be determined.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'title' => '', 'example' => 'nickname_detection'], + ], + [ 'name' => 'ServiceParameters', 'in' => 'formData', - 'schema' => [ - 'description' => 'Set of parameters required by the service, in JSON string format.'."\n" - .'- TaskId: The task ID returned when the task was submitted.', - 'type' => 'string', - 'required' => false, - 'example' => '{\\"TaskId\\":\\"e5f2d886-4c23-440d-999c-bd98acde11b6\\"}', - ], + 'schema' => ['description' => 'The ID of the task that you want to cancel.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => '{'."\n" + .' "taskId": "xxxxx-xxxx"'."\n" + .' }'], ], ], 'responses' => [ @@ -4264,411 +4456,895 @@ 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'ID of the request', - 'type' => 'string', - 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****', - ], - 'Message' => [ - 'description' => 'Error message', - 'type' => 'string', - 'example' => 'SUCCESS', - ], - 'Code' => [ - 'description' => 'Error code.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Data' => [ - 'description' => 'Returned data.', - 'type' => 'object', - 'properties' => [ - 'RiskLevel' => [ - 'description' => 'Risk level, returned based on the set high and low risk scores. Possible values include:'."\n" - ."\n" - .'- high: High risk'."\n" - .' '."\n" - .'- low: Low risk'."\n" - ."\n" - .' - none: No risk detected', - 'type' => 'string', - 'example' => 'high', - ], - 'DataId' => [ - 'description' => 'The value of dataId passed during the API request. This field will not be present if it was not provided during the request.', - 'type' => 'string', - 'example' => 'data1234', - ], - 'TaskId' => [ - 'description' => 'Task ID', - 'type' => 'string', - 'example' => 'xxxxx-xxxxx', - ], - 'Result' => [ - 'description' => 'Detailed label results.', - 'type' => 'array', - 'items' => [ - 'description' => 'Label item structure.', - 'type' => 'object', - 'properties' => [ - 'Label' => [ - 'description' => 'Risk label', - 'type' => 'string', - 'example' => 'violent_explosion', - ], - 'Description' => [ - 'description' => 'Label description', - 'type' => 'string', - 'example' => 'no risk', - ], - ], - ], - ], - ], - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'Id of the request', 'type' => 'string', 'example' => '4A926AE2-4C96-573F-824F-0532960799F8'], + 'Code' => ['description' => 'The return code. A return code of 200 indicates that the request is successful.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '200'], + 'Message' => ['description' => 'The response message.', 'type' => 'string', 'title' => '', 'example' => 'SUCCESS'], ], ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'VoiceModerationCancel', + 'summary' => 'This operation cancels an enhanced voice moderation task.', + 'changeSet' => [ + ['createdAt' => '2023-04-04T03:41:29.000Z', 'description' => 'Response parameters changed'], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\",\\n \\"Message\\": \\"SUCCESS\\",\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"RiskLevel\\": \\"high\\",\\n \\"DataId\\": \\"data1234\\",\\n \\"TaskId\\": \\"xxxxx-xxxxx\\",\\n \\"Result\\": [\\n {\\n \\"Label\\": \\"violent_explosion\\",\\n \\"Description\\": \\"未检测出风险\\"\\n }\\n ]\\n }\\n}","type":"json"}]', - 'title' => 'Content Security Manual Review Result Retrieval Interface', - 'translator' => 'machine', - ], - 'MultiModalGuard' => [ - 'summary' => '同步检测接口', - 'path' => '', - 'methods' => [ - 'post', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'VoiceModerationCancel'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:VoiceModerationCancel', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4A926AE2-4C96-573F-824F-0532960799F8\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"SUCCESS\\"\\n}","type":"json"}]', + ], + 'VoiceModerationResult' => [ + 'summary' => 'Retrieve the detection results for enhanced voice moderation.', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', - 'chargeType' => 'paid', - 'abilityTreeNodes' => [ - 'FEATURElvwang828K27', - ], + 'chargeType' => 'free', + 'abilityTreeCode' => '162180', + 'abilityTreeNodes' => ['FEATURElvwang6QCU1H', 'FEATURElvwangPAXR7J'], ], 'parameters' => [ [ 'name' => 'Service', 'in' => 'formData', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'query_security_check', - ], + 'schema' => ['description' => 'The moderation service type. Supported values include `nickname_detection` for user nickname moderation. Support for more types is planned.', 'type' => 'string', 'docRequired' => true, 'title' => '', 'required' => true, 'example' => 'nickname_detection'], ], [ 'name' => 'ServiceParameters', 'in' => 'formData', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => '', - ], + 'schema' => ['description' => 'Parameters that the gateway sends to the backend service.'."\n" + ."\n" + .'For more information, see [ServiceParameter](~~43988~~).', 'type' => 'string', 'title' => '', 'required' => false, 'example' => '暂无'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'Schema of Response', + 'description' => 'The response schema.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '', - 'type' => 'string', - 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****', - ], - 'Code' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'OK', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.', 'type' => 'string', 'example' => '2881AD4F-638B-52A3-BA20-F74C5B1CEAE3'], + 'Code' => ['description' => 'The error code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'SUCCESS', 'title' => ''], 'Data' => [ - 'description' => '', + 'description' => 'The data returned.', 'type' => 'object', 'properties' => [ - 'Detail' => [ - 'description' => '', + 'Url' => ['description' => 'The task URL.', 'type' => 'string', 'example' => '暂无', 'title' => ''], + 'LiveId' => ['description' => 'The unique ID of the live stream.', 'type' => 'string', 'example' => 'liveId', 'title' => ''], + 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 'kw24ihd0WGkdi5nniVZM@qOj-1x5Ibb', 'title' => ''], + 'SliceDetails' => [ + 'description' => 'The slice results.', 'type' => 'array', 'items' => [ - 'description' => '', + 'description' => 'A slice result entry.', 'type' => 'object', 'properties' => [ - 'Suggestion' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'pass', - ], - 'Type' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'contentModeration', - ], - 'Level' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'none', - ], + 'StartTime' => ['description' => 'The start time of the slice, in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''], + 'EndTime' => ['description' => 'The end time of the slice, in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''], + 'StartTimestamp' => ['description' => 'The start timestamp of the slice, in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1678854649720', 'title' => ''], + 'EndTimestamp' => ['description' => 'The end timestamp of the slice, in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1678854649720', 'title' => ''], + 'Url' => ['description' => 'The temporary URL of the audio slice.', 'type' => 'string', 'example' => '暂无', 'title' => ''], + 'Text' => ['description' => 'The transcribed text of the audio slice.', 'type' => 'string', 'example' => '今天天气真不错', 'title' => ''], + 'Labels' => ['description' => 'The matched violation labels.', 'type' => 'string', 'example' => 'sexual_sounds', 'title' => ''], + 'Score' => ['description' => 'The risk score. The value ranges from 0 to 99.', 'type' => 'number', 'format' => 'float', 'example' => '87.01', 'title' => ''], + 'Extend' => ['description' => 'Extended information.', 'type' => 'string', 'example' => '{\\"riskWords\\":\\"色情服务\\","adNums":"\\","riskTips":"涉政_人物,涉政_红歌"}', 'title' => ''], + 'RiskTips' => ['description' => 'Details about the matched risk.', 'type' => 'string', 'example' => '涉政_人物', 'title' => ''], + 'RiskWords' => ['description' => 'The matched risk keywords.', 'type' => 'string', 'example' => '色情服务', 'title' => ''], + 'OriginAlgoResult' => ['description' => 'A reserved field.', 'type' => 'object', 'title' => '', 'example' => ''], + 'RiskLevel' => ['description' => 'The risk level, which is determined based on the configured thresholds for high and low risk scores. Valid values:'."\n" + ."\n" + .'- `high`: high risk'."\n" + ."\n" + .'- `medium`: medium risk'."\n" + ."\n" + .'- `low`: low risk'."\n" + ."\n" + .'- `none`: no risk detected', 'type' => 'string', 'example' => 'high', 'title' => ''], + 'Descriptions' => ['description' => 'The description of the label.', 'type' => 'string', 'example' => '疑似违禁内容', 'title' => ''], 'Result' => [ - 'description' => '', 'type' => 'array', 'items' => [ - 'description' => '', 'type' => 'object', 'properties' => [ - 'Ext' => [ - 'description' => '', - 'type' => 'any', - 'example' => '{}', - ], - 'Description' => [ - 'description' => '', - 'type' => 'string', + 'Label' => ['description' => 'The label.', 'type' => 'string', 'title' => '', 'example' => 'ad'], + 'Confidence' => ['description' => 'The confidence score.', 'type' => 'number', 'format' => 'float', 'title' => '', 'example' => '100.00'], + 'RiskWords' => ['description' => 'The matched risky content.', 'type' => 'string', 'title' => '', 'example' => 'XX'], + 'RiskLevel' => ['description' => 'The risk level.', 'type' => 'string', 'title' => '', 'example' => 'high'], + 'CustomizedHit' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'LibName' => ['description' => 'The name of the custom library.', 'type' => 'string', 'title' => '', 'example' => 'insultLib'], + 'KeyWords' => ['description' => 'The custom keyword.', 'type' => 'string', 'title' => '', 'example' => 'fxxk'], + ], + 'description' => 'A matched custom library.', + 'title' => '', + 'example' => '', + ], + 'description' => 'The matched custom libraries.', + 'title' => '', 'example' => '', ], - 'Confidence' => [ - 'description' => '', - 'type' => 'number', - 'format' => 'float', - 'example' => '0', - ], - 'Label' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'contraband_act', - ], - 'Level' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'none', + 'Description' => ['description' => 'The description.', 'type' => 'string', 'title' => '', 'example' => 'profanity'], + 'RiskPositions' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'RiskWord' => ['description' => 'The detected sensitive word.', 'type' => 'string', 'title' => '', 'example' => 'fxxk'], + 'StartPos' => ['description' => 'The start position.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '1'], + 'EndPos' => ['description' => 'The end position.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '4'], + ], + 'description' => 'A risk position.', + 'title' => '', + 'example' => '', + ], + 'description' => 'A list of risk positions.', + 'title' => '', + 'example' => '', ], ], + 'description' => 'A single result.', + 'title' => '', + 'example' => '', ], + 'description' => 'The text detection results.', + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], - 'Suggestion' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'pass', - ], - 'DataId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'data1234', - ], + 'DataId' => ['description' => 'The value of the `dataId` parameter you specified in the request. This parameter is returned only if you specified it in the request.', 'type' => 'string', 'example' => 'data1234', 'title' => ''], + 'RiskLevel' => ['description' => 'The risk level, which is determined based on the configured thresholds for high and low risk scores. Valid values:'."\n" + ."\n" + .'- `high`: high risk'."\n" + ."\n" + .'- `medium`: medium risk'."\n" + ."\n" + .'- `low`: low risk'."\n" + ."\n" + .'- `none`: no risk detected', 'type' => 'string', 'example' => 'high', 'title' => ''], + 'ManualTaskId' => ['description' => 'The ID of the manual review task.', 'type' => 'string', 'example' => 'xxxxx-xxxxx', 'title' => ''], ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'errorCodes' => [ - 403 => [ - [ - 'errorCode' => 'NoPermission', - 'errorMessage' => 'You don\'t have permission.', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2881AD4F-638B-52A3-BA20-F74C5B1CEAE3\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"SUCCESS\\",\\n \\"Data\\": {\\n \\"Url\\": \\"暂无\\",\\n \\"LiveId\\": \\"liveId\\",\\n \\"TaskId\\": \\"kw24ihd0WGkdi5nniVZM@qOj-1x5Ibb\\",\\n \\"SliceDetails\\": [\\n {\\n \\"StartTime\\": 0,\\n \\"EndTime\\": 10,\\n \\"StartTimestamp\\": 1678854649720,\\n \\"EndTimestamp\\": 1678854649720,\\n \\"Url\\": \\"暂无\\",\\n \\"Text\\": \\"今天天气真不错\\",\\n \\"Labels\\": \\"sexual_sounds\\",\\n \\"Score\\": 87.01,\\n \\"Extend\\": \\"{\\\\\\\\\\\\\\"riskWords\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"色情服务\\\\\\\\\\\\\\",\\\\\\"adNums\\\\\\":\\\\\\"\\\\\\\\\\\\\\",\\\\\\"riskTips\\\\\\":\\\\\\"涉政_人物,涉政_红歌\\\\\\"}\\",\\n \\"RiskTips\\": \\"涉政_人物\\",\\n \\"RiskWords\\": \\"色情服务\\",\\n \\"OriginAlgoResult\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"RiskLevel\\": \\"high\\",\\n \\"Descriptions\\": \\"疑似违禁内容\\",\\n \\"Result\\": [\\n {\\n \\"Label\\": \\"ad\\",\\n \\"Confidence\\": 100,\\n \\"RiskWords\\": \\"XX\\",\\n \\"RiskLevel\\": \\"high\\",\\n \\"CustomizedHit\\": [\\n {\\n \\"LibName\\": \\"insultLib\\",\\n \\"KeyWords\\": \\"fxxk\\"\\n }\\n ],\\n \\"Description\\": \\"profanity\\",\\n \\"RiskPositions\\": [\\n {\\n \\"RiskWord\\": \\"fxxk\\",\\n \\"StartPos\\": 1,\\n \\"EndPos\\": 4\\n }\\n ]\\n }\\n ]\\n }\\n ],\\n \\"DataId\\": \\"data1234\\",\\n \\"RiskLevel\\": \\"high\\",\\n \\"ManualTaskId\\": \\"xxxxx-xxxxx\\"\\n }\\n}","type":"json"}]', + 'title' => 'VoiceModerationResult', + 'changeSet' => [ + ['createdAt' => '2025-06-12T02:05:05.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-01-09T12:40:10.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-14T10:21:04.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-03-26T02:18:00.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-03-15T03:33:44.000Z', 'description' => 'Response parameters changed, Response parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'VoiceModerationResult'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'yundun-greenweb:VoiceModerationResult', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + ], + ], + 'endpoints' => [ + ['regionId' => 'cn-shenzhen', 'regionName' => 'China (Shenzhen)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'green-cip.cn-shenzhen.aliyuncs.com', 'endpoint' => 'green-cip.cn-shenzhen.aliyuncs.com', 'vpc' => 'green-cip-vpc.cn-shenzhen.aliyuncs.com'], + ['regionId' => 'cn-beijing', 'regionName' => 'China (Beijing)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'green-cip.cn-beijing.aliyuncs.com', 'endpoint' => 'green-cip.cn-beijing.aliyuncs.com', 'vpc' => 'green-cip-vpc.cn-beijing.aliyuncs.com'], + ['regionId' => 'cn-shanghai', 'regionName' => 'China (Shanghai)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'green-cip.cn-shanghai.aliyuncs.com', 'endpoint' => 'green-cip.cn-shanghai.aliyuncs.com', 'vpc' => 'green-cip-vpc.cn-shanghai.aliyuncs.com'], + ['regionId' => 'cn-hongkong', 'regionName' => 'China (Hong Kong)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'green-cip.cn-hongkong.aliyuncs.com', 'endpoint' => 'green-cip.cn-hongkong.aliyuncs.com', 'vpc' => 'green-cip-vpc.cn-hongkong.aliyuncs.com'], + ['regionId' => 'ap-southeast-1', 'regionName' => 'Singapore', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'green-cip.ap-southeast-1.aliyuncs.com', 'endpoint' => 'green-cip.ap-southeast-1.aliyuncs.com', 'vpc' => 'green-cip-vpc.ap-southeast-1.aliyuncs.com'], + ['regionId' => 'cn-hangzhou', 'regionName' => 'China (Hangzhou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'green-cip.cn-hangzhou.aliyuncs.com', 'endpoint' => 'green-cip.cn-hangzhou.aliyuncs.com', 'vpc' => 'green-cip-vpc.cn-hangzhou.aliyuncs.com'], + ['regionId' => 'us-east-1', 'regionName' => 'US (Virginia)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'green-cip.us-east-1.aliyuncs.com', 'endpoint' => 'green-cip.us-east-1.aliyuncs.com', 'vpc' => 'green-cip-vpc.us-east-1.aliyuncs.com'], + ['regionId' => 'eu-central-1', 'regionName' => 'Germany (Frankfurt)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'green-cip.eu-central-1.aliyuncs.com', 'endpoint' => 'green-cip.eu-central-1.aliyuncs.com', 'vpc' => 'green-cip-vpc.eu-central-1.aliyuncs.com'], + ], + 'errorCodes' => [ + ['code' => '408', 'message' => 'No permissions.', 'http_code' => 200, 'description' => 'The current operation is not authorized. Please contact the main account to authorize the operation in the RAM console.'], + ['code' => '411', 'message' => 'You don\'t have permission.', 'http_code' => 403, 'description' => 'The current operation is not authorized. Please contact the main account to authorize the operation in the RAM console.'], + ['code' => 'CustomServiceConfigServicesRequired', 'message' => 'Select at least one instrumentation configuration service when saving a multimodal service configuration.', 'http_code' => 400, 'description' => 'Select at least one instrumentation configuration service when saving a multimodal service configuration'], + ['code' => 'NoPermission', 'message' => 'No permissions.', 'http_code' => 200, 'description' => 'The current operation is not authorized. Please contact the main account to authorize the operation in the RAM console.'], + ['code' => 'NoPermission', 'message' => 'you don\'t have permission.', 'http_code' => 200, 'description' => 'The current operation is not authorized. Please contact the main account to authorize the operation in the RAM console.'."\n"], + ['code' => 'NoPermission', 'message' => 'You don\'t have permission.', 'http_code' => 403, 'description' => 'The current operation is not authorized. Please contact the main account to authorize the operation in the RAM console.'], + ['code' => 'NoPermission', 'message' => 'You don\'t have permission.', 'http_code' => 403, 'description' => 'The current operation is not authorized. Please contact the main account to authorize the operation in the RAM console.'], + ['code' => 'OneFeatureRequired', 'message' => 'Keep at least one switch item when detecting an item configuration to turn off the switch item.', 'http_code' => 400, 'description' => 'Keep at least one switch item when detecting an item configuration to turn off the switch item'."\n" + ."\n"], + ['code' => 'ScanResultQueryFailed', 'message' => 'Data query failed.', 'http_code' => 200, 'description' => 'Data query failed'], + ['code' => 'UserNotOwner', 'message' => 'No permission.', 'http_code' => 401, 'description' => 'No permission'], + ['code' => 'USER_NOT_OWNER', 'message' => 'No permission.', 'http_code' => 401, 'description' => 'No permission'], + ['code' => 'LibCountOverLimit', 'message' => 'The number of libraries has exceeded the limit.', 'http_code' => 400, 'description' => 'The number of libraries has exceeded the limit'], + ['code' => 'InvalidRequestParameters', 'message' => 'Invalid request parameters.', 'http_code' => 400, 'description' => 'Invalid request parameters.'], + ['code' => 'SampleCountOverLimit', 'message' => 'The number of samples has exceeded the limit.', 'http_code' => 400, 'description' => 'The number of samples has exceeded the limit.'], + ], + 'changeSet' => [ + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'TextModerationPlus'], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": {\\n \\"Detail\\": [\\n {\\n \\"Suggestion\\": \\"pass\\",\\n \\"Type\\": \\"contentModeration\\",\\n \\"Level\\": \\"none\\",\\n \\"Result\\": [\\n {\\n \\"Ext\\": \\"{}\\",\\n \\"Description\\": \\"疑似违禁行为\\",\\n \\"Confidence\\": 0,\\n \\"Label\\": \\"contraband_act\\",\\n \\"Level\\": \\"none\\"\\n }\\n ]\\n }\\n ],\\n \\"Suggestion\\": \\"pass\\",\\n \\"DataId\\": \\"data1234\\"\\n }\\n}","type":"json"}]', + 'createdAt' => '2025-03-19T07:10:51.000Z', + 'description' => '', ], - 'MultiModalAgent' => [ - 'summary' => '多模态AgentAPI同步检测接口', - 'path' => '', - 'methods' => [ - 'post', + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'DescribeImageModerationResult'], + ['description' => 'Response parameters changed', 'api' => 'ImageModeration'], ], - 'schemes' => [ - 'https', + 'createdAt' => '2025-03-17T05:57:01.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'VideoModerationResult'], ], - 'security' => [ - [ - 'AK' => [], + 'createdAt' => '2025-03-13T01:43:10.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'DescribeFileModerationResult'], + ], + 'createdAt' => '2025-01-09T12:55:00.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'VideoModerationResult'], + ['description' => 'Response parameters changed', 'api' => 'VoiceModerationResult'], + ], + 'createdAt' => '2025-01-09T12:40:18.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'TextModeration'], + ['description' => 'Response parameters changed', 'api' => 'TextModerationPlus'], + ], + 'createdAt' => '2025-01-06T10:54:50.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'ImageBatchModeration'], + ], + 'createdAt' => '2024-11-28T07:35:15.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'ImageModeration'], + ], + 'createdAt' => '2024-11-07T13:31:25.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'VoiceModerationResult'], + ], + 'createdAt' => '2024-10-14T10:21:11.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'VideoModerationResult'], + ], + 'createdAt' => '2024-09-23T13:29:06.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'DescribeFileModerationResult'], + ], + 'createdAt' => '2024-09-13T08:40:18.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'TextModerationPlus'], + ], + 'createdAt' => '2024-09-06T02:38:08.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'DescribeImageModerationResult'], + ['description' => 'Response parameters changed', 'api' => 'ImageModeration'], + ], + 'createdAt' => '2024-08-20T09:56:06.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'DescribeUrlModerationResult'], + ['description' => 'Response parameters changed', 'api' => 'ImageModeration'], + ], + 'createdAt' => '2024-07-25T09:35:00.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'TextModerationPlus'], + ], + 'createdAt' => '2024-07-03T11:18:54.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'DescribeImageModerationResult'], + ['description' => 'Response parameters changed', 'api' => 'ImageModeration'], + ], + 'createdAt' => '2024-07-03T11:04:30.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'ImageModeration'], + ], + 'createdAt' => '2024-05-30T09:10:09.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'TextModerationPlus'], + ], + 'createdAt' => '2024-05-27T07:14:34.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'ImageModeration'], + ], + 'createdAt' => '2024-05-11T05:53:39.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'ImageModeration'], + ], + 'createdAt' => '2024-04-19T03:30:20.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'DescribeImageResultExt'], + ], + 'createdAt' => '2024-04-11T11:01:03.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'VideoModeration'], + ['description' => 'Response parameters changed', 'api' => 'VideoModerationResult'], + ['description' => 'Response parameters changed', 'api' => 'VoiceModeration'], + ['description' => 'Response parameters changed', 'api' => 'VoiceModerationResult'], + ], + 'createdAt' => '2024-03-26T02:18:07.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'DescribeImageModerationResult'], + ], + 'createdAt' => '2024-01-03T11:20:11.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'VideoModerationResult'], + ], + 'createdAt' => '2023-12-27T10:12:24.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'DescribeImageModerationResult'], + ], + 'createdAt' => '2023-11-09T03:38:43.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'DescribeImageResultExt'], + ], + 'createdAt' => '2023-06-20T05:54:26.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'ImageModeration'], + ['description' => 'Response parameters changed', 'api' => 'TextModeration'], + ], + 'createdAt' => '2023-05-08T03:59:34.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'VoiceModeration'], + ['description' => 'Response parameters changed', 'api' => 'VoiceModerationCancel'], + ], + 'createdAt' => '2023-04-04T03:41:34.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed, Response parameters changed', 'api' => 'VoiceModerationResult'], + ], + 'createdAt' => '2023-03-24T08:22:10.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed, Response parameters changed', 'api' => 'TextModeration'], + ], + 'createdAt' => '2023-01-03T02:55:48.000Z', + 'description' => '接口返回更新', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'TextModeration'], + ], + 'createdAt' => '2022-11-30T02:29:17.000Z', + 'description' => '日常稳定性更新', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'TextModeration'], + ], + 'createdAt' => '2022-08-02T11:31:16.000Z', + 'description' => '接口更新', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'TextModeration'], + ], + 'createdAt' => '2022-06-02T01:47:32.000Z', + 'description' => '接口更新', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'TextModeration'], + ], + 'createdAt' => '2022-05-18T03:45:12.000Z', + 'description' => '接口更新', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'TextModeration'], + ], + 'createdAt' => '2022-04-26T06:34:52.000Z', + 'description' => '新版本接口发布', + ], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'VoiceModerationResult'], + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'VideoModerationResult'], + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeFileModerationResult'], + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeImageResultExt'], + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'TextModerationPlus'], + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ImageAsyncModeration'], + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ManualModeration'], + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'FileModeration'], + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'TextModeration'], + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'VideoModerationCancel'], + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ImageBatchModeration'], + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'VoiceModerationCancel'], + ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeUrlModerationResult'], + ['threshold' => '200', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ManualCallback'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ManualModerationResult'], + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeUploadToken'], + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'VoiceModeration'], + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ImageModeration'], + ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UrlAsyncModeration'], + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeImageModerationResult'], + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'VideoModeration'], + ], + ], + 'ram' => [ + 'productCode' => 'Aligreen', + 'productName' => 'AI Guardrails', + 'ramCodes' => ['yundun-greenweb'], + 'ramLevel' => 'OPERATION', + 'ramConditions' => [], + 'ramActions' => [ + [ + 'apiName' => 'VideoModerationResult', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:VideoModerationResult', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ + [ + 'apiName' => 'FileModeration', + 'description' => '', 'operationType' => 'none', - 'riskType' => 'none', - 'chargeType' => 'paid', - 'abilityTreeNodes' => [ - 'FEATURElvwang828K27', + 'ramAction' => [ + 'action' => 'yundun-greenweb:FileModeration', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'ServiceParameters', - 'in' => 'formData', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => '', + [ + 'apiName' => 'ImageAsyncModeration', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:ImageAsyncModeration', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], - [ - 'name' => 'AppID', - 'in' => 'formData', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'txt_check_agent_01', + ], + [ + 'apiName' => 'MultiModalGuardAsyncResult', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:MultiModalGuardAsyncResult', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'Id of the request', - 'type' => 'string', - 'example' => 'AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****', - ], - 'Code' => [ - 'description' => '', - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'SUCCESS', - ], - 'Data' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'DataId' => [ - 'description' => '', - 'type' => 'string', - 'example' => '26769ada6e264e7ba9aa048241e12be9', - ], - 'RiskLevel' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'high', - ], - 'Result' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'Label' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'violent_explosion', - ], - 'Description' => [ - 'description' => '', - 'type' => 'string', - 'example' => '', - ], - 'Reason' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'TRACER_SLB_ALL_DEST_WEIGHT_0', - ], - ], - ], - ], - 'Usage' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'PromptLength' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '100', - ], - 'ContentLength' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '10', - ], - 'AgentDetail' => [ - 'description' => '', - 'type' => 'object', - ], - ], - ], - ], - ], - ], + [ + 'apiName' => 'ImageModeration', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'yundun-greenweb:ImageModeration', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'errorCodes' => [ - 403 => [ - [ - 'errorCode' => 'NoPermission', - 'errorMessage' => 'You don\'t have permission.', + [ + 'apiName' => 'DescribeMultimodalModerationResult', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:DescribeMultimodalModerationResult', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + [ + 'apiName' => 'MultimodalAsyncModeration', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:MultimodalAsyncModeration', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'DescribeImageModerationResult', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:DescribeImageModerationResult', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'DescribeImageResultExt', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'yundun-greenweb:DescribeImageResultExt', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'VoiceModerationCancel', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:VoiceModerationCancel', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'VoiceModeration', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'yundun-greenweb:VoiceModeration', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'DescribeUploadToken', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:DescribeUploadToken', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'MultiModalGuardAsync', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:MultiModalGuardAsync', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'ImageBatchModeration', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:ImageBatchModeration', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'TextModeration', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'yundun-greenweb:TextModeration', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'DescribeFileModerationResult', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:DescribeFileModerationResult', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'VoiceModerationResult', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'yundun-greenweb:VoiceModerationResult', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'DescribeUrlModerationResult', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:DescribeUrlModerationResult', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'ManualModeration', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:ManualModeration', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'ManualModerationResult', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:ManualModerationResult', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'MultiModalGuard', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'yundun-greenweb:MultiModalGuard', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'TextModerationPlus', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:TextModerationPlus', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'MultiModalAgent', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:MultiModalAgent', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'VideoModerationCancel', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:VideoModerationCancel', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'VideoModeration', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:VideoModeration', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'ManualCallback', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:ManualCallback', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'UrlAsyncModeration', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'yundun-greenweb:UrlAsyncModeration', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Aligreen', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"SUCCESS\\",\\n \\"Data\\": {\\n \\"DataId\\": \\"26769ada6e264e7ba9aa048241e12be9\\",\\n \\"RiskLevel\\": \\"high\\",\\n \\"Result\\": [\\n {\\n \\"Label\\": \\"violent_explosion\\",\\n \\"Description\\": \\"未检测出风险\\",\\n \\"Reason\\": \\"TRACER_SLB_ALL_DEST_WEIGHT_0\\"\\n }\\n ],\\n \\"Usage\\": {\\n \\"PromptLength\\": 100,\\n \\"ContentLength\\": 10,\\n \\"AgentDetail\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n }\\n }\\n }\\n}","type":"json"}]', - ], - ], - 'endpoints' => [ - [ - 'regionId' => 'cn-shenzhen', - 'endpoint' => 'green-cip.cn-shenzhen.aliyuncs.com', - ], - [ - 'regionId' => 'cn-beijing', - 'endpoint' => 'green-cip.cn-beijing.aliyuncs.com', - ], - [ - 'regionId' => 'cn-shanghai', - 'endpoint' => 'green-cip.cn-shanghai.aliyuncs.com', - ], - [ - 'regionId' => 'ap-southeast-1', - 'endpoint' => 'green-cip.ap-southeast-1.aliyuncs.com', ], + 'resourceTypes' => [], ], ]; |
