diff options
Diffstat (limited to 'data/zh_cn/resourcedirectorymaster')
| -rw-r--r-- | data/zh_cn/resourcedirectorymaster/2022-04-19/api-docs.php | 12880 |
1 files changed, 5168 insertions, 7712 deletions
diff --git a/data/zh_cn/resourcedirectorymaster/2022-04-19/api-docs.php b/data/zh_cn/resourcedirectorymaster/2022-04-19/api-docs.php index 3ba78ec..c873eef 100644 --- a/data/zh_cn/resourcedirectorymaster/2022-04-19/api-docs.php +++ b/data/zh_cn/resourcedirectorymaster/2022-04-19/api-docs.php @@ -1,134 +1,50 @@ <?php return [ 'version' => '1.0', - 'info' => [ - 'style' => 'RPC', - 'product' => 'ResourceDirectoryMaster', - 'version' => '2022-04-19', - ], + 'info' => ['style' => 'RPC', 'product' => 'ResourceDirectoryMaster', 'version' => '2022-04-19'], 'directories' => [ [ - 'id' => 349700, - 'title' => '服务', + 'children' => ['EnableResourceDirectory', 'SendVerificationCodeForEnableRD', 'GetResourceDirectory', 'DestroyResourceDirectory'], 'type' => 'directory', - 'children' => [ - 'EnableResourceDirectory', - 'SendVerificationCodeForEnableRD', - 'GetResourceDirectory', - 'DestroyResourceDirectory', - ], + 'title' => '服务', + 'id' => 49726, ], [ - 'id' => 349705, - 'title' => '资源夹', + 'children' => ['CreateFolder', 'GetFolder', 'DeleteFolder', 'ListFoldersForParent', 'UpdateFolder', 'ListAncestors', 'ListAuthorizedFolders'], 'type' => 'directory', - 'children' => [ - 'CreateFolder', - 'GetFolder', - 'DeleteFolder', - 'ListFoldersForParent', - 'UpdateFolder', - 'ListAncestors', - 'ListAuthorizedFolders', - ], + 'title' => '资源夹', + 'id' => 49731, ], [ - 'id' => 349713, - 'title' => '成员', - 'type' => 'directory', 'children' => [ - 'CreateResourceAccount', - 'GetAccount', - 'MoveAccount', - 'UpdateAccount', - 'ListAccounts', - 'RemoveCloudAccount', - 'ListAccountsForParent', - 'GetPayerForAccount', - 'UpdatePayerForAccount', - 'InviteAccountToResourceDirectory', - 'AcceptHandshake', - 'GetHandshake', - 'DeclineHandshake', - 'CancelHandshake', - 'ListHandshakesForAccount', - 'ListHandshakesForResourceDirectory', - 'SendVerificationCodeForBindSecureMobilePhone', - 'BindSecureMobilePhone', - 'SetMemberDeletionPermission', - 'SetMemberDisplayNameSyncStatus', - 'CheckAccountDelete', - 'GetAccountDeletionCheckResult', - 'DeleteAccount', - 'GetAccountDeletionStatus', - 'TagResources', - 'UntagResources', - 'ListTagResources', - 'ListTagKeys', - 'ListTagValues', - 'ChangeAccountEmail', - 'RetryChangeAccountEmail', - 'CancelChangeAccountEmail', - 'AddMessageContact', - 'SendEmailVerificationForMessageContact', - 'SendPhoneVerificationForMessageContact', - 'ListMessageContactVerifications', - 'AssociateMembers', - 'DisassociateMembers', - 'GetMessageContact', - 'ListMessageContacts', - 'DeleteMessageContact', - 'GetMessageContactDeletionStatus', - 'UpdateMessageContact', - 'CancelMessageContactUpdate', - 'PrecheckForConsolidatedBillingAccount', - 'ListAuthorizedAccounts', + 'CreateResourceAccount', 'GetAccount', 'MoveAccount', 'UpdateAccount', 'ListAccounts', 'RemoveCloudAccount', 'ListAccountsForParent', 'GetPayerForAccount', 'UpdatePayerForAccount', 'InviteAccountToResourceDirectory', 'AcceptHandshake', 'GetHandshake', 'DeclineHandshake', 'CancelHandshake', 'ListHandshakesForAccount', 'ListHandshakesForResourceDirectory', 'SendVerificationCodeForBindSecureMobilePhone', 'BindSecureMobilePhone', 'SetMemberDeletionPermission', 'SetMemberDisplayNameSyncStatus', + 'CheckAccountDelete', 'GetAccountDeletionCheckResult', 'DeleteAccount', 'GetAccountDeletionStatus', 'TagResources', 'UntagResources', 'ListTagResources', 'ListTagKeys', 'ListTagValues', 'ChangeAccountEmail', 'RetryChangeAccountEmail', 'CancelChangeAccountEmail', 'AddMessageContact', 'SendEmailVerificationForMessageContact', 'SendPhoneVerificationForMessageContact', 'ListMessageContactVerifications', 'AssociateMembers', 'DisassociateMembers', 'GetMessageContact', 'ListMessageContacts', + 'DeleteMessageContact', 'GetMessageContactDeletionStatus', 'UpdateMessageContact', 'CancelMessageContactUpdate', 'PrecheckForConsolidatedBillingAccount', 'ListAuthorizedAccounts', ], + 'type' => 'directory', + 'title' => '成员', + 'id' => 49739, ], [ - 'id' => 349760, - 'title' => '管控策略', + 'children' => ['EnableControlPolicy', 'DisableControlPolicy', 'GetControlPolicyEnablementStatus', 'CreateControlPolicy', 'GetControlPolicy', 'ListControlPolicies', 'UpdateControlPolicy', 'DeleteControlPolicy', 'AttachControlPolicy', 'DetachControlPolicy', 'ListControlPolicyAttachmentsForTarget', 'ListTargetAttachmentsForControlPolicy'], 'type' => 'directory', - 'children' => [ - 'EnableControlPolicy', - 'DisableControlPolicy', - 'GetControlPolicyEnablementStatus', - 'CreateControlPolicy', - 'GetControlPolicy', - 'ListControlPolicies', - 'UpdateControlPolicy', - 'DeleteControlPolicy', - 'AttachControlPolicy', - 'DetachControlPolicy', - 'ListControlPolicyAttachmentsForTarget', - 'ListTargetAttachmentsForControlPolicy', - ], + 'title' => '管控策略', + 'id' => 84106, ], [ - 'id' => 349773, - 'title' => '可信服务', + 'children' => ['ListTrustedServiceStatus', 'RegisterDelegatedAdministrator', 'DeregisterDelegatedAdministrator', 'ListDelegatedAdministrators', 'ListDelegatedServicesForAccount'], 'type' => 'directory', - 'children' => [ - 'ListTrustedServiceStatus', - 'RegisterDelegatedAdministrator', - 'DeregisterDelegatedAdministrator', - 'ListDelegatedAdministrators', - 'ListDelegatedServicesForAccount', - ], + 'title' => '可信服务', + 'id' => 84119, ], ], 'components' => [ 'schemas' => [], ], 'apis' => [ - 'EnableResourceDirectory' => [ - 'summary' => '调用EnableResourceDirectory开通资源目录。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'AcceptHandshake' => [ + 'summary' => '被邀请的阿里云账号调用AcceptHandshake接受邀请。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -136,82 +52,14 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'create', - 'riskType' => 'none', - 'chargeType' => 'free', - ], + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ - 'name' => 'MAName', - 'in' => 'query', - 'schema' => [ - 'description' => '新管理账号名称。'."\n" - ."\n" - .'格式:`<前缀>@rdadmin.aliyunid.com`。其中,<前缀>允许输入英文字母、数字、特殊字符`_.-`,且必须以英文字母或数字开头和结尾,不能输入连续特殊字符。<前缀>的长度为2~50个字符。', - 'type' => 'string', - 'required' => false, - 'example' => 'user01@rdadmin.aliyunid.com', - ], - ], - [ - 'name' => 'MASecureMobilePhone', - 'in' => 'query', - 'schema' => [ - 'description' => '新创建管理账号的安全手机号码。'."\n" - ."\n" - .'置空表示采用当前登录账号的安全手机号码。该手机号码必须与[SendVerificationCodeForEnableRD](~~SendVerificationCodeForEnableRD~~)中获取验证码时使用的手机号码一致。'."\n" - ."\n" - .'格式:`<国家码>-<手机号码>`。'."\n" - ."\n" - .'<props="intl">'."\n" - .'> 不支持填写`86-<手机号码>`的中国内地手机号码。'."\n" - .'</props>'."\n" - ."\n\n" - .'<props="china">'."\n" - .'> 仅支持填写`86-<手机号码>`的中国内地手机号码。'."\n" - .'</props>', - 'type' => 'string', - 'required' => false, - 'example' => 'xx-13900001234', - ], - ], - [ - 'name' => 'VerificationCode', - 'in' => 'query', - 'schema' => [ - 'description' => '验证码。'."\n" - ."\n" - .'您可以调用[SendVerificationCodeForEnableRD](~~SendVerificationCodeForEnableRD~~)获取验证码。', - 'type' => 'string', - 'required' => false, - 'example' => '123456', - ], - ], - [ - 'name' => 'EnableMode', - 'in' => 'query', - 'schema' => [ - 'description' => '开通方式。取值:'."\n" - ."\n" - .'- CurrentAccount:使用当前登录账号开通资源目录。'."\n" - .'- NewManagementAccount:新创建管理账号开通资源目录。该方式下,您需要配置`MAName`、`MASecureMobilePhone`和`VerificationCode`。', - 'type' => 'string', - 'required' => true, - 'example' => 'CurrentAccount', - ], - ], - [ - 'name' => 'DryRun', + 'name' => 'HandshakeId', 'in' => 'query', - 'schema' => [ - 'description' => '是否只预检此次请求。取值:'."\n" - .'- **true**:开通资源目录检查,不会实际开通资源目录。'."\n" - .'- **false**(默认值):开通资源目录。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => '邀请ID。'."\n" + ."\n" + .'您可以调用[ListHandshakesForAccount](~~ListHandshakesForAccount~~)获取邀请ID。', 'type' => 'string', 'required' => true, 'example' => 'h-Ih8IuPfvV0t0****'], ], ], 'responses' => [ @@ -220,111 +68,63 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'ResourceDirectory' => [ - 'description' => '资源目录信息。', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '5828C836-3286-49A6-9006-15231BB19342'], + 'Handshake' => [ + 'description' => '邀请信息。', 'type' => 'object', 'properties' => [ - 'ResourceDirectoryId' => [ - 'description' => '资源目录ID。', - 'type' => 'string', - 'example' => 'rd-54****', - ], - 'MasterAccountId' => [ - 'description' => '管理账号ID。', - 'type' => 'string', - 'example' => '507408460615****', - ], - 'MasterAccountName' => [ - 'description' => '管理账号名称。', - 'type' => 'string', - 'example' => 'alice@example.com', - ], - 'RootFolderId' => [ - 'description' => 'Root资源夹ID。', - 'type' => 'string', - 'example' => 'r-G9****', - ], - 'CreateTime' => [ - 'description' => '资源目录开通时间。', - 'type' => 'string', - 'example' => '2021-12-08T02:15:31.744Z', - ], + 'Status' => ['description' => '邀请状态。取值:'."\n" + ."\n" + .'- Pending:等待确认。'."\n" + .'- Accepted:已接受。'."\n" + .'- Cancelled:已取消。'."\n" + .'- Declined:已拒绝。'."\n" + .'- Expired:超时。', 'type' => 'string', 'example' => 'Accepted'], + 'ExpireTime' => ['description' => '邀请的过期时间(UTC时间)。', 'type' => 'string', 'example' => '2021-01-20T02:15:40Z'], + 'ResourceDirectoryId' => ['description' => '资源目录ID。', 'type' => 'string', 'example' => 'rd-3G****'], + 'CreateTime' => ['description' => '邀请的创建时间(UTC时间)。', 'type' => 'string', 'example' => '2021-01-06T02:15:40Z'], + 'Note' => ['description' => '备注。', 'type' => 'string', 'example' => '欢迎您加入'], + 'TargetEntity' => ['description' => '被邀请的阿里云账号ID或登录邮箱。', 'type' => 'string', 'example' => '177242285274****'], + 'MasterAccountId' => ['description' => '资源目录的管理账号ID。', 'type' => 'string', 'example' => '151266687691****'], + 'MasterAccountName' => ['description' => '资源目录的管理账号名称。', 'type' => 'string', 'example' => 'CompanyA'], + 'ModifyTime' => ['description' => '邀请的修改时间(UTC时间)。', 'type' => 'string', 'example' => '2021-01-06T02:16:40Z'], + 'TargetType' => ['description' => '被邀请的阿里云账号类型。取值:'."\n" + ."\n" + .'- Account:阿里云账号ID。'."\n" + .'- Email:阿里云账号登录邮箱。', 'type' => 'string', 'example' => 'Account'], + 'HandshakeId' => ['description' => '邀请ID。', 'type' => 'string', 'example' => 'h-Ih8IuPfvV0t0****'], ], ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'EC2FE94D-A4A2-51A1-A493-5C273A36C46A', - ], ], ], ], ], 'errorCodes' => [ + 400 => [ + ['errorCode' => 'MissingParameter.HandshakeId', 'errorMessage' => 'You must specify HandshakeId.', 'description' => ''], + ['errorCode' => 'InvalidParameter.HandshakeId', 'errorMessage' => 'The HandshakeId is invalid.', 'description' => ''], + ], + 404 => [ + ['errorCode' => 'EntityNotExists.Handshake', 'errorMessage' => 'The specified handshake does not exist.', 'description' => ''], + ['errorCode' => 'SpecifiedResourceDirectoryNotExists', 'errorMessage' => 'The specified resource directory does not exist. You must specify a valid resource directory.', 'description' => ''], + ], 409 => [ - [ - 'errorCode' => 'NotSupport.AccountInAnotherResourceDirectory', - 'errorMessage' => 'The specified account is an Alibaba Cloud account or already exists in another resource directory.', - ], - [ - 'errorCode' => 'Invalid.EnterpriseName', - 'errorMessage' => 'You must specify the enterprise name.', - ], - [ - 'errorCode' => 'EnterpriseRealNameVerificationError', - 'errorMessage' => 'The specified account does not pass enterprise real-name verification. We recommend you first complete enterprise real-name verification for the account.', - ], - [ - 'errorCode' => 'EntityAlreadyExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is already enabled. We recommend that you do not enable the resource directory again.', - ], - [ - 'errorCode' => 'InvalidParameter.ManagementAccountName.AlreadyUsed', - 'errorMessage' => 'The ManagementAccountName has been used.', - ], - [ - 'errorCode' => 'Invalid.VerificationCode', - 'errorMessage' => 'The verification code is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.ManagementAccountName', - 'errorMessage' => 'The management account name is in the wrong format.', - ], - [ - 'errorCode' => 'InvalidParameter.ManagementAccountSecurityInfo', - 'errorMessage' => 'The parameter management account secure mobile phone is invalid.', - ], - [ - 'errorCode' => 'MissingSecureMobilePhone', - 'errorMessage' => 'Secure mobile phone is missing.', - ], - [ - 'errorCode' => 'MissingSecurityInfo', - 'errorMessage' => 'Security info is missing.', - ], - [ - 'errorCode' => 'NotSupport.Account.Site', - 'errorMessage' => 'The caller is not a China site account, which is not supported.', - ], - [ - 'errorCode' => 'Invalid.AccountType', - 'errorMessage' => 'The specified profile type of account is invalid.', - ], + ['errorCode' => 'HandshakeStatusMismatch', 'errorMessage' => 'The invitation is invalid.', 'description' => ''], + ['errorCode' => 'NotSupport.AccountInAnotherResourceDirectory', 'errorMessage' => 'Your account is a management account for another resource directory or a member of another resource directory.', 'description' => ''], + ['errorCode' => 'Invalid.AccountType', 'errorMessage' => 'The specified profile type of account is invalid.', 'description' => ''], + ['errorCode' => 'NotSupport.Account.RealNameType', 'errorMessage' => 'Your account is not a real-name of enterprise type, so you cannot accept the invitation.', 'description' => ''], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"ResourceDirectory\\": {\\n \\"ResourceDirectoryId\\": \\"rd-54****\\",\\n \\"MasterAccountId\\": \\"507408460615****\\",\\n \\"MasterAccountName\\": \\"alice@example.com\\",\\n \\"RootFolderId\\": \\"r-G9****\\",\\n \\"CreateTime\\": \\"2021-12-08T02:15:31.744Z\\"\\n },\\n \\"RequestId\\": \\"EC2FE94D-A4A2-51A1-A493-5C273A36C46A\\"\\n}","errorExample":""},{"type":"xml","example":"<EnableResourceDirectoryResponse>\\n <RequestId>EC2FE94D-A4A2-51A1-A493-5C273A36C46A</RequestId>\\n <ResourceDirectory>\\n <ResourceDirectoryId>rd-54****</ResourceDirectoryId>\\n <MasterAccountName>alice@example.com</MasterAccountName>\\n <RootFolderId>r-G9****</RootFolderId>\\n <CreateTime>2021-12-08T02:15:31.744Z</CreateTime>\\n <MasterAccountId>507408460615****</MasterAccountId>\\n </ResourceDirectory>\\n</EnableResourceDirectoryResponse>","errorExample":""}]', - 'title' => '开通资源目录', - 'description' => '您可以使用当前登录账号或新创建管理账号两种方式开通资源目录。更多信息,请参见[开通资源目录](~~111215~~)。', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"5828C836-3286-49A6-9006-15231BB19342\\",\\n \\"Handshake\\": {\\n \\"Status\\": \\"Accepted\\",\\n \\"ExpireTime\\": \\"2021-01-20T02:15:40Z\\",\\n \\"ResourceDirectoryId\\": \\"rd-3G****\\",\\n \\"CreateTime\\": \\"2021-01-06T02:15:40Z\\",\\n \\"Note\\": \\"欢迎您加入\\",\\n \\"TargetEntity\\": \\"177242285274****\\",\\n \\"MasterAccountId\\": \\"151266687691****\\",\\n \\"MasterAccountName\\": \\"CompanyA\\",\\n \\"ModifyTime\\": \\"2021-01-06T02:16:40Z\\",\\n \\"TargetType\\": \\"Account\\",\\n \\"HandshakeId\\": \\"h-Ih8IuPfvV0t0****\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<AcceptHandshakeResponse>\\n <RequestId>5828C836-3286-49A6-9006-15231BB19342</RequestId>\\n <Handshake>\\n <Status>Accepted</Status>\\n <ModifyTime>2021-01-06T02:16:40Z</ModifyTime>\\n <ResourceDirectoryId>rd-3G****</ResourceDirectoryId>\\n <HandshakeId>h-Ih8IuPfvV0t0****</HandshakeId>\\n <Note>欢迎您加入</Note>\\n <CreateTime>2021-01-06T02:15:40Z</CreateTime>\\n <TargetType>Account</TargetType>\\n <MasterAccountId>151266687691****</MasterAccountId>\\n <MasterAccountName>CompanyA</MasterAccountName>\\n <ExpireTime>2021-01-20T02:15:40Z</ExpireTime>\\n <TargetEntity>177242285274****</TargetEntity>\\n </Handshake>\\n</AcceptHandshakeResponse>","errorExample":""}]', + 'title' => '接受邀请', + 'description' => '被邀请的阿里云账号成功加入资源目录后,会成为资源目录的成员。资源目录默认使用被邀请的阿里云账号名称作为该成员的成员名称和账号名称。', + 'responseParamsDescription' => ' ', + 'changeSet' => [], ], - 'SendVerificationCodeForEnableRD' => [ - 'summary' => '通过新创建的管理账号开通资源目录时,调用SendVerificationCodeForEnableRD向新管理账号的安全手机发送验证码。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'AddMessageContact' => [ + 'summary' => '添加消息通知联系人。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -332,163 +132,169 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'none', - 'riskType' => 'none', - 'chargeType' => 'free', - 'tenantRelevance' => 'publicInformation', - ], + 'systemTags' => ['operationType' => 'create'], 'parameters' => [ [ - 'name' => 'SecureMobilePhone', + 'name' => 'Name', + 'in' => 'query', + 'schema' => ['description' => '联系人的名称。'."\n" + ."\n" + .'联系人的名称在资源目录内必须唯一。'."\n" + ."\n" + .'格式:2~12个英文字母或汉字。', 'type' => 'string', 'required' => true, 'example' => 'tom'], + ], + [ + 'name' => 'EmailAddress', + 'in' => 'query', + 'schema' => ['description' => '联系人的邮箱地址。'."\n" + ."\n" + .'添加邮箱地址后,您需要继续调用[SendEmailVerificationForMessageContact](~~SendEmailVerificationForMessageContact~~)向该邮箱地址发送验证信息,通过验证后,该联系人的邮箱地址才能生效。', 'type' => 'string', 'required' => true, 'example' => 'someone***@example.com'], + ], + [ + 'name' => 'PhoneNumber', + 'in' => 'query', + 'schema' => ['description' => '联系人的手机号码。'."\n" + ."\n" + .'格式:`<国家码>-<手机号码>`。'."\n" + ."\n" + .'> 仅支持填写`86-<手机号码>`的中国内地手机号码。'."\n" + ."\n" + .'添加手机号码后,您需要继续调用[SendPhoneVerificationForMessageContact](~~SendPhoneVerificationForMessageContact~~)向该手机号码发送验证信息,通过验证后,该联系人的手机号码才能生效。', 'type' => 'string', 'required' => false, 'example' => '86-139****1234'], + ], + [ + 'name' => 'Title', 'in' => 'query', 'schema' => [ - 'description' => '新创建的管理账号的安全手机号码。置空表示采用当前登录账号的安全手机号码。'."\n" - ."\n" - .'格式:`<国家码>-<手机号码>`。'."\n" - ."\n" - .'<props="intl">'."\n" - .'> 不支持填写`86-<手机号码>`的中国内地手机号码。'."\n" - .'</props>'."\n" - ."\n" - .'<props="china">'."\n" - .'> 仅支持填写`86-<手机号码>`的中国内地手机号码。'."\n" - .'</props>', + 'description' => '联系人的职位。', 'type' => 'string', - 'required' => false, - 'example' => 'xx-13900001234', + 'required' => true, + 'enumValueTitles' => ['FinanceDirector' => '财务负责人', 'TechnicalDirector' => '技术负责人', 'MaintenanceDirector' => '运维负责人', 'CEO' => 'CEO', 'ProjectDirector' => '项目负责人', 'Other' => '其它'], + 'example' => 'TechnicalDirector', + ], + ], + [ + 'name' => 'MessageTypes', + 'in' => 'query', + 'style' => 'flat', + 'schema' => [ + 'description' => '联系人接收的消息分类。', + 'type' => 'array', + 'items' => [ + 'description' => '联系人接收的消息分类。', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => ['ServiceMessage' => '服务消息', 'FaultMessage' => '故障消息', 'AccountExpenses' => '账号资金消息', 'SecurityMessage' => '安全消息', 'ActivityMessage' => '活动消息', 'ProductMessage' => '产品消息'], + 'example' => 'AccountExpenses', + ], + 'required' => true, ], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => 'Schema of Response', 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'EC2FE94D-A4A2-51A1-A493-5C273A36C46A', + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => '2DFCE4C9-04A9-4C83-BB14-FE791275EC53'], + 'Contact' => [ + 'description' => '联系人信息。', + 'type' => 'object', + 'properties' => [ + 'ContactId' => ['description' => '联系人ID。', 'type' => 'string', 'example' => 'c-qL4HqKONzOM7****'], + 'CreateDate' => ['description' => '联系人创建时间。', 'type' => 'string', 'example' => '2023-03-27 17:19:21'], + ], ], ], ], ], ], 'errorCodes' => [ - 409 => [ - [ - 'errorCode' => 'NotSupport.AccountInAnotherResourceDirectory', - 'errorMessage' => 'The specified account is an Alibaba Cloud account or already exists in another resource directory.', - ], - [ - 'errorCode' => 'EntityAlreadyExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is already enabled. We recommend that you do not enable the resource directory again.', - ], - [ - 'errorCode' => 'SendValidateCodeExceedsLimitForAccount', - 'errorMessage' => 'For the same account, the number of verification codes sent exceeds the limit.', - ], - [ - 'errorCode' => 'InvalidParameter.MobileCountryCode', - 'errorMessage' => 'The current site does not support the country code.', - ], + 400 => [ + ['errorCode' => 'MissingParameter.Name', 'errorMessage' => 'You must specify Name.', 'description' => ''], + ['errorCode' => 'InvalidParameter.Name', 'errorMessage' => 'The Name is invalid.', 'description' => ''], + ['errorCode' => 'InvalidParameter.Name.Length', 'errorMessage' => 'The Name exceeds the length limit.', 'description' => ''], + ['errorCode' => 'InvalidParameter.Name.AlreadyUsed', 'errorMessage' => 'The Name already exists. Please change to another name.', 'description' => ''], + ['errorCode' => 'MissingParameter.EmailAddress', 'errorMessage' => 'You must specify EmailAddress.', 'description' => ''], + ['errorCode' => 'InvalidParameter.EmailAddress', 'errorMessage' => 'The EmailAddress is invalid.', 'description' => ''], + ['errorCode' => 'MissingParameter.PhoneNumber', 'errorMessage' => 'You must specify PhoneNumber.', 'description' => ''], + ['errorCode' => 'InvalidParameter.PhoneNumber', 'errorMessage' => 'The PhoneNumber is invalid.', 'description' => ''], + ['errorCode' => 'MissingParameter.Title', 'errorMessage' => 'You must specify Title.', 'description' => ''], + ['errorCode' => 'InvalidParameter.Title', 'errorMessage' => 'The Title is invalid.', 'description' => ''], + ['errorCode' => 'MissingParameter.MessageTypes', 'errorMessage' => 'You must specify MessageTypes.', 'description' => ''], + ['errorCode' => 'InvalidParameter.MessageTypes', 'errorMessage' => 'The MessageTypes is invalid.', 'description' => ''], + ['errorCode' => 'LimitExceeded.Contacts', 'errorMessage' => 'The maximum number of contacts in a resource directory exceeds the limit.', 'description' => ''], + ['errorCode' => 'InvalidParameter.MobileCountryCode', 'errorMessage' => 'The current site does not support the country code.', 'description' => ''], + ['errorCode' => 'InvalidParameter.EmailAddress.Length', 'errorMessage' => 'The EmailAddress exceeds the length limit.', 'description' => ''], + ], + 429 => [ + ['errorCode' => 'ConcurrentCallNotSupported', 'errorMessage' => 'The operation conflicts with other operations. Please try again later.', 'description' => ''], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"EC2FE94D-A4A2-51A1-A493-5C273A36C46A\\"\\n}","errorExample":""},{"type":"xml","example":"<SendVerificationCodeForEnableRDResponse>\\n <RequestId>EC2FE94D-A4A2-51A1-A493-5C273A36C46A</RequestId>\\n</SendVerificationCodeForEnableRDResponse>","errorExample":""}]', - 'title' => '向新管理账号的安全手机发送验证码', - 'description' => '每个阿里云账号每天最多发送100次验证码。', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2DFCE4C9-04A9-4C83-BB14-FE791275EC53\\",\\n \\"Contact\\": {\\n \\"ContactId\\": \\"c-qL4HqKONzOM7****\\",\\n \\"CreateDate\\": \\"2023-03-27 17:19:21\\"\\n }\\n}","type":"json"}]', + 'title' => '添加联系人', + 'changeSet' => [], ], - 'GetResourceDirectory' => [ - 'summary' => '调用GetResourceDirectory获取资源目录信息。管理账号调用时,返回管理账号开通的资源目录详情。成员调用时,返回成员所属的资源目录详情。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'AssociateMembers' => [ + 'summary' => '为资源目录、资源夹或成员绑定联系人。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - 'riskType' => 'none', - 'chargeType' => 'free', + 'systemTags' => ['operationType' => 'update'], + 'parameters' => [ + [ + 'name' => 'ContactId', + 'in' => 'query', + 'schema' => ['description' => '联系人ID。', 'type' => 'string', 'required' => false, 'example' => 'c-qL4HqKONzOM7****'], + ], + [ + 'name' => 'Members', + 'in' => 'query', + 'style' => 'flat', + 'schema' => [ + 'description' => '绑定目标。', + 'type' => 'array', + 'items' => ['description' => '绑定目标。取值:'."\n" + ."\n" + .'- 资源目录ID:为整个资源目录绑定联系人。'."\n" + .'- 资源夹ID:为指定资源夹绑定联系人。'."\n" + .'- 成员ID:为指定成员绑定联系人。'."\n" + ."\n" + .'N的取值范围:1~5,即每次最多添加5个绑定目标。', 'type' => 'string', 'required' => false, 'example' => 'fd-ZDNPiT****'], + 'required' => false, + ], + ], ], - 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ + 'title' => 'Schema of Response', 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'CD76D376-2517-4924-92C5-DBC52262F93A', - ], - 'ResourceDirectory' => [ - 'description' => '资源目录信息。', - 'type' => 'object', - 'properties' => [ - 'RootFolderId' => [ - 'description' => 'Root资源夹ID。', - 'type' => 'string', - 'example' => 'r-Zo****', - ], - 'ResourceDirectoryId' => [ - 'description' => '资源目录ID。', - 'type' => 'string', - 'example' => 'rd-St****', - ], - 'CreateTime' => [ - 'description' => '资源目录开通时间。', - 'type' => 'string', - 'example' => '2019-02-18T15:32:10.473Z', - ], - 'MasterAccountId' => [ - 'description' => '管理账号ID。', - 'type' => 'string', - 'example' => '172845045600****', - ], - 'MasterAccountName' => [ - 'description' => '管理账号名称。', - 'type' => 'string', - 'example' => 'aliyun-admin', - ], - 'ControlPolicyStatus' => [ - 'description' => '管控策略状态。取值:'."\n" + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => '95060F1D-6990-4645-8920-A81D1BBFE992'], + 'Members' => [ + 'description' => '绑定目标。', + 'type' => 'array', + 'items' => [ + 'description' => '绑定目标。', + 'type' => 'object', + 'properties' => [ + 'ContactId' => ['description' => '联系人ID。', 'type' => 'string', 'example' => 'c-qL4HqKONzOM7****'], + 'MemberId' => ['description' => '绑定目标ID。取值:'."\n" ."\n" - .'- Enabled:已开启。'."\n" - .'- PendingEnable:开启中。'."\n" - .'- Disabled:已关闭。'."\n" - .'- PendingDisable:关闭中。', - 'type' => 'string', - 'example' => 'Enabled', - ], - 'MemberDeletionStatus' => [ - 'description' => '是否开启了成员删除许可。取值:'."\n" - .'- Enabled:已开启。允许通过调用[DeleteAccount](~~DeleteAccount~~)删除资源账号类型的成员。'."\n" - .'- Disabled:已关闭。不允许删除资源账号类型的成员。', - 'type' => 'string', - 'example' => 'Enabled', - ], - 'IdentityInformation' => [ - 'description' => '成员实名信息。', - 'type' => 'string', - 'example' => '***有限公司', - ], - 'MemberAccountDisplayNameSyncStatus' => [ - 'description' => '成员账号显示名称同步状态。取值:'."\n" - .'- Enabled:已开启。'."\n" - .'- Disabled:已关闭。', - 'type' => 'string', - 'example' => 'Enabled', + .'- 资源目录ID。'."\n" + .'- 资源夹ID。'."\n" + .'- 成员ID。', 'type' => 'string', 'example' => 'fd-ZDNPiT****'], + 'ModifyDate' => ['description' => '绑定时间。', 'type' => 'string', 'example' => '2023-03-27 17:19:21'], ], ], ], @@ -497,26 +303,30 @@ ], ], 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidParameter.ContactId', 'errorMessage' => 'The ContactId is invalid.', 'description' => ''], + ['errorCode' => 'MissingParameter.ContactId', 'errorMessage' => 'You must specify ContactId.', 'description' => ''], + ['errorCode' => 'InvalidParameter.Members', 'errorMessage' => 'The Members is invalid.', 'description' => ''], + ['errorCode' => 'InvalidParameter.Members.Duplicate', 'errorMessage' => 'The Members contains duplicate values.', 'description' => ''], + ['errorCode' => 'LimitExceeded.ContactMembers', 'errorMessage' => 'The maximum number of contact members exceeds the limit.', 'description' => ''], + ['errorCode' => 'InvalidMember', 'errorMessage' => 'The member does not exist in the resource directory.', 'description' => ''], + ['errorCode' => 'ContactStatusMismatchAction', 'errorMessage' => 'The status of the contact does not allow the specified operation.', 'description' => ''], + ], 404 => [ - [ - 'errorCode' => 'ResourceDirectoryNotInUse', - 'errorMessage' => 'The specified account is not an Alibaba Cloud account or a member account of the resource directory.', - ], + ['errorCode' => 'EntityNotExists.Contact', 'errorMessage' => 'This Contact does not exist.', 'description' => ''], + ], + 429 => [ + ['errorCode' => 'ConcurrentCallNotSupported', 'errorMessage' => 'The operation conflicts with other operations. Please try again later.', 'description' => ''], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CD76D376-2517-4924-92C5-DBC52262F93A\\",\\n \\"ResourceDirectory\\": {\\n \\"RootFolderId\\": \\"r-Zo****\\",\\n \\"ResourceDirectoryId\\": \\"rd-St****\\",\\n \\"CreateTime\\": \\"2019-02-18T15:32:10.473Z\\",\\n \\"MasterAccountId\\": \\"172845045600****\\",\\n \\"MasterAccountName\\": \\"aliyun-admin\\",\\n \\"ControlPolicyStatus\\": \\"Enabled\\",\\n \\"MemberDeletionStatus\\": \\"Enabled\\",\\n \\"IdentityInformation\\": \\"***有限公司\\",\\n \\"MemberAccountDisplayNameSyncStatus\\": \\"Enabled\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<GetResourceDirectoryResponse>\\n <RequestId>CD76D376-2517-4924-92C5-DBC52262F93A</RequestId>\\n <ResourceDirectory>\\n <RootFolderId>r-Zo****</RootFolderId>\\n <ResourceDirectoryId>rd-St****</ResourceDirectoryId>\\n <CreateTime>2019-02-18T15:32:10.473Z</CreateTime>\\n <MasterAccountId>172845045600****</MasterAccountId>\\n <MasterAccountName>aliyun-admin</MasterAccountName>\\n <ControlPolicyStatus>Enabled</ControlPolicyStatus>\\n <MemberDeletionStatus>Enabled</MemberDeletionStatus>\\n <IdentityInformation>***有限公司</IdentityInformation>\\n </ResourceDirectory>\\n</GetResourceDirectoryResponse>","errorExample":""}]', - 'title' => '获取资源目录信息', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"95060F1D-6990-4645-8920-A81D1BBFE992\\",\\n \\"Members\\": [\\n {\\n \\"ContactId\\": \\"c-qL4HqKONzOM7****\\",\\n \\"MemberId\\": \\"fd-ZDNPiT****\\",\\n \\"ModifyDate\\": \\"2023-03-27 17:19:21\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => '绑定联系人', + 'changeSet' => [], ], - 'DestroyResourceDirectory' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'AttachControlPolicy' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -524,58 +334,83 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'delete', + 'systemTags' => ['operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free'], + 'parameters' => [ + [ + 'name' => 'PolicyId', + 'in' => 'query', + 'schema' => ['description' => '管控策略ID。', 'type' => 'string', 'required' => true, 'example' => 'cp-jExXAqIYkwHN****'], + ], + [ + 'name' => 'TargetId', + 'in' => 'query', + 'schema' => ['description' => '目标节点。取值:'."\n" + ."\n" + .'- Root ID:为Root资源夹绑定管控策略。'."\n" + .'- 资源夹ID:为资源夹绑定管控策略。'."\n" + .'- 成员ID:为成员绑定管控策略。', 'type' => 'string', 'required' => true, 'example' => 'fd-ZDNPiT****'], + ], ], - 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '95060F1D-6990-4645-8920-A81D1BBFE992'], ], ], ], ], 'errorCodes' => [ 404 => [ - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], + ['errorCode' => 'EntityNotExists.Target', 'errorMessage' => 'The specified target does not exist in the resource directory.', 'description' => '关联目标在资源目录中不存在。'], + ['errorCode' => 'EntityNotExists.ResourceControlPolicy', 'errorMessage' => 'The specified resource control policy does not exist.', 'description' => '资源管控策略不存在。'], ], 409 => [ - [ - 'errorCode' => 'DeleteConflict.ResourceDirectory.Account', - 'errorMessage' => 'Failed to delete the resource directory because one or more member accounts exist. We recommend that you first remove these member accounts.', - ], + ['errorCode' => 'EntityAlreadyExists.ResourceControlPolicy', 'errorMessage' => 'The resource control policy already exists.', 'description' => '资源管控策略已存在。'], + ['errorCode' => 'EntityAlreadyExists.ResourceControlPolicyAttachment', 'errorMessage' => 'The resource control policy attachment already exists.', 'description' => '指定目标已关联该资源管控策略。 '], + ['errorCode' => 'LimitExceeded.ResourceControlPolicyAttachment', 'errorMessage' => 'The resource control policy attachment number exceeds the limit.', 'description' => '资源管控策略绑定数量超出限制。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<DestroyResourceDirectoryResponse>\\r\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\r\\n</DestroyResourceDirectoryResponse>","errorExample":""}]', - 'title' => '关闭资源目录', - 'summary' => '调用DestroyResourceDirectory关闭资源目录。此操作不可恢复,请您慎重操作。', - 'description' => '关闭资源目录前,请确认已完成以下操作:'."\n" - .'- 资源目录内所有云账号类型的成员已被移除。具体操作,请参见[RemoveCloudAccount](~~RemoveCloudAccount~~)。'."\n" - .'- 资源目录内除Root资源夹外的资源夹已全部删除。具体操作,请参见[DeleteFolder](~~DeleteFolder~~)。', - 'requestParamsDescription' => ' ', + 'title' => '绑定管控策略', + 'summary' => '调用AttachControlPolicy绑定管控策略。', + 'description' => '绑定成功后,资源夹或成员将会立即受到管控策略的管控。请务必确定绑定操作的结果是符合预期的,以免影响您的业务正常运行。'."\n" + ."\n" + .'系统会默认为资源夹和成员绑定系统策略FullAliyunAccess。'."\n" + ."\n" + .'管控策略在绑定节点下整体生效,即父资源夹绑定的管控策略,会在其子资源夹及其成员上生效。'."\n" + ."\n" + .'每个节点(资源夹、成员)最多允许绑定10条管控策略。', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', - ], - 'CreateFolder' => [ - 'summary' => '调用CreateFolder创建资源夹。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'AttachControlPolicy'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:AttachControlPolicy', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager::{#accountId}:account/{#ResourceDirectoryPath}'], + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Folder', 'arn' => 'acs:resourcemanager::{#accountId}:folder/{#ResourceDirectoryPath}'], + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'ControlPolicy', 'arn' => 'acs:resourcemanager::{#accountId}:policy/controlpolicy/{#PolicyId}'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"95060F1D-6990-4645-8920-A81D1BBFE992\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<AttachControlPolicyResponse>\\r\\n\\t<RequestId>95060F1D-6990-4645-8920-A81D1BBFE992</RequestId>\\r\\n</AttachControlPolicyResponse>","errorExample":""}]', + ], + 'BindSecureMobilePhone' => [ + 'summary' => '调用BindSecureMobilePhone为资源账号类型的成员设置安全手机号码。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -583,62 +418,34 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'create', - 'riskType' => 'none', - 'chargeType' => 'free', - ], + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ - 'name' => 'ParentFolderId', + 'name' => 'VerificationCode', 'in' => 'query', - 'schema' => [ - 'description' => '父资源夹ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'r-b1****', - ], + 'schema' => ['description' => '验证码。'."\n" + ."\n" + .'您可以调用[SendVerificationCodeForBindSecureMobilePhone](~~SendVerificationCodeForBindSecureMobilePhone~~)获取验证码。', 'type' => 'string', 'required' => true, 'example' => '123456'], ], [ - 'name' => 'FolderName', + 'name' => 'SecureMobilePhone', 'in' => 'query', - 'schema' => [ - 'description' => '资源夹名称。'."\n" - ."\n" - .'长度为1~24个字符或汉字,可包含汉字、英文字母、数字、下划线(_)、半角句号(.)和短划线(-)。', - 'type' => 'string', - 'required' => true, - 'example' => 'rdFolder', - ], + 'schema' => ['description' => '安全手机号码。'."\n" + ."\n" + .'该手机号码必须与[SendVerificationCodeForBindSecureMobilePhone](~~SendVerificationCodeForBindSecureMobilePhone~~)中获取验证码时设置的手机号码一致。'."\n" + ."\n" + .'格式:<国家码>-<手机号码>。'."\n" + ."\n" + .'<props="china">'."\n" + .'> 仅支持填写`86-<手机号码>`的中国内地手机号码。</props>'."\n" + ."\n\n" + .'<props="intl">'."\n" + .'> 不支持填写`86-<手机号码>`的中国内地手机号码。</props>', 'type' => 'string', 'required' => true, 'example' => 'xx-13900001234'], ], [ - 'name' => 'Tag', + 'name' => 'AccountId', 'in' => 'query', - 'style' => 'flat', - 'schema' => [ - 'description' => '资源夹的标签。', - 'type' => 'array', - 'items' => [ - 'description' => '资源夹的标签。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '标签键。', - 'type' => 'string', - 'required' => false, - 'example' => 'k1', - ], - 'Value' => [ - 'description' => '标签值。', - 'type' => 'string', - 'required' => false, - 'example' => 'v1', - ], - ], - 'required' => false, - ], - 'required' => false, - ], + 'schema' => ['description' => '成员ID。', 'type' => 'string', 'required' => true, 'example' => '138660628348****'], ], ], 'responses' => [ @@ -647,120 +454,50 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'Folder' => [ - 'description' => '资源夹信息。', - 'type' => 'object', - 'properties' => [ - 'CreateTime' => [ - 'description' => '资源夹创建时间。', - 'type' => 'string', - 'example' => '2019-02-19T09:34:50.757Z', - ], - 'FolderId' => [ - 'description' => '资源夹ID。', - 'type' => 'string', - 'example' => 'fd-u8B321****', - ], - 'FolderName' => [ - 'description' => '资源夹名称。', - 'type' => 'string', - 'example' => 'rdFolder', - ], - 'ParentFolderId' => [ - 'description' => '父资源夹ID。', - 'type' => 'string', - 'example' => 'r-b1****', - ], - ], - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C2CBCA30-C8DD-423E-B4AD-4FB694C9180C', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '0217AFEB-5318-56D4-B167-1933D83EDF3F'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.ParentFolderId', - 'errorMessage' => 'The ParentFolderId is invalid.', - ], - [ - 'errorCode' => 'MissingParameter.Folder.Name', - 'errorMessage' => 'You must specify the resource folder name.', - ], - [ - 'errorCode' => 'InvalidParameter.Folder.Name', - 'errorMessage' => 'The Name of folder is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Folder.Name.Length', - 'errorMessage' => 'The Name of folder exceeds the length limit.', - ], - [ - 'errorCode' => 'InvalidParameter.Folder.Name.AlreadyUsed', - 'errorMessage' => 'The name already exists under the same parent. Please change to another name.', - ], - ], - 404 => [ - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], - [ - 'errorCode' => 'EntityNotExists.Folder', - 'errorMessage' => 'The resource directory folder does not exist.', - ], + ['errorCode' => 'NotSupport.Site.Action', 'errorMessage' => 'Site does not allow current action.', 'description' => ''], ], 409 => [ - [ - 'errorCode' => 'LimitExceeded.Folder.Depth', - 'errorMessage' => 'The folder depth exceeds the limit of 5.', - ], - [ - 'errorCode' => 'QuotaExceeded.Folder.Count', - 'errorMessage' => 'The number of folders exceeds the quota.', - ], + ['errorCode' => 'NotSupport.AccountInAnotherResourceDirectory', 'errorMessage' => 'The specified account is an Alibaba Cloud account or already exists in another resource directory.', 'description' => ''], + ['errorCode' => 'Invalid.EnterpriseName', 'errorMessage' => 'You must specify the enterprise name.', 'description' => ''], + ['errorCode' => 'EnterpriseRealNameVerificationError', 'errorMessage' => 'The specified account does not pass enterprise real-name verification. We recommend you first complete enterprise real-name verification for the account.', 'description' => ''], + ['errorCode' => 'EntityAlreadyExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is already enabled. We recommend that you do not enable the resource directory again.', 'description' => ''], + ['errorCode' => 'Invalid.VerificationCode', 'errorMessage' => 'The verification code is invalid.', 'description' => ''], + ['errorCode' => 'AccountTypeMismatch', 'errorMessage' => 'The type or status of the member account cannot satisfy the current operation.', 'description' => ''], + ['errorCode' => 'AccountSecureMobileAlreadyExists', 'errorMessage' => 'The secure mobile number of the member already exists.', 'description' => ''], + ['errorCode' => 'CallerIdentityError', 'errorMessage' => 'Please use the RAM user or role of the Management Account.', 'description' => ''], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Folder\\": {\\n \\"CreateTime\\": \\"2019-02-19T09:34:50.757Z\\",\\n \\"FolderId\\": \\"fd-u8B321****\\",\\n \\"FolderName\\": \\"rdFolder\\",\\n \\"ParentFolderId\\": \\"r-b1****\\"\\n },\\n \\"RequestId\\": \\"C2CBCA30-C8DD-423E-B4AD-4FB694C9180C\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<CreateFolderResponse>\\r\\n <Folder>\\r\\n <FolderName>rdFolder</FolderName> \\r\\n <ParentFolderId>r-b1****</ParentFolderId>\\r\\n <FolderId>fd-u8B321****</FolderId>\\r\\n <CreateTime>2019-02-19T09:34:50.757Z</CreateTime>\\r\\n </Folder>\\r\\n <RequestId>C2CBCA30-C8DD-423E-B4AD-4FB694C9180C</RequestId>\\r\\n</CreateFolderResponse>","errorExample":""}]', - 'title' => '创建资源夹', - 'description' => '最多支持创建5级资源夹。', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"0217AFEB-5318-56D4-B167-1933D83EDF3F\\"\\n}","errorExample":""},{"type":"xml","example":"<BindSecureMobilePhoneResponse>\\n <RequestId>0217AFEB-5318-56D4-B167-1933D83EDF3F</RequestId>\\n</BindSecureMobilePhoneResponse>","errorExample":""}]', + 'title' => '设置安全手机号码', + 'description' => '本API仅用于首次设置资源账号安全手机号码,不能用于修改已有的安全手机号码。'."\n" + ."\n" + .'为确保系统可以记录到管理操作的具体操作者,请使用管理账号下具有资源目录管理权限(AliyunResourceDirectoryFullAccess)的RAM用户或RAM角色调用本API。', + 'changeSet' => [], ], - 'GetFolder' => [ - 'summary' => '调用GetFolder获取资源夹信息。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'CancelChangeAccountEmail' => [ + 'summary' => '调用CancelChangeAccountEmail取消修改成员邮箱。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - ], + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ - 'name' => 'FolderId', + 'name' => 'AccountId', 'in' => 'query', - 'schema' => [ - 'description' => '资源夹ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'fd-Jyl5U7****', - ], + 'schema' => ['description' => '成员ID。', 'type' => 'string', 'required' => true, 'example' => '181761095690****'], ], ], 'responses' => [ @@ -769,81 +506,25 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C2CBCA30-C8DD-423E-B4AD-4FB694C9180C', - ], - 'Folder' => [ - 'description' => '资源夹信息。', - 'type' => 'object', - 'properties' => [ - 'FolderId' => [ - 'description' => '资源夹ID。', - 'type' => 'string', - 'example' => 'fd-Jyl5U7****', - ], - 'CreateTime' => [ - 'description' => '资源夹创建时间。', - 'type' => 'string', - 'example' => '2021-06-15T06:39:08.521Z', - ], - 'ParentFolderId' => [ - 'description' => '父资源夹ID。', - 'type' => 'string', - 'example' => 'r-Wm****', - ], - 'FolderName' => [ - 'description' => '资源夹名称。', - 'type' => 'string', - 'example' => 'Applications', - ], - 'ResourceDirectoryPath' => [ - 'description' => '资源夹在资源目录中的路径ID(RDPath)。', - 'type' => 'string', - 'example' => 'rd-3G****/r-Wm****/fd-Jyl5U7****', - ], - ], - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE'], ], ], ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'MissingParameter.FolderId', - 'errorMessage' => 'You must specify FolderId.', - ], - [ - 'errorCode' => 'InvalidParameter.FolderId', - 'errorMessage' => 'The FolderId is invalid.', - ], - ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], - [ - 'errorCode' => 'EntityNotExists.Folder', - 'errorMessage' => 'The resource directory folder does not exist.', - ], + ['errorCode' => 'EntityNotExists.EmailModifyRecord', 'errorMessage' => 'This email modification record of the account does not exist.', 'description' => ''], + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => ''], + ['errorCode' => 'EntityNotExists.Account', 'errorMessage' => 'This resource directory account does not exist.', 'description' => ''], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C2CBCA30-C8DD-423E-B4AD-4FB694C9180C\\",\\n \\"Folder\\": {\\n \\"FolderId\\": \\"fd-Jyl5U7****\\",\\n \\"CreateTime\\": \\"2021-06-15T06:39:08.521Z\\",\\n \\"ParentFolderId\\": \\"r-Wm****\\",\\n \\"FolderName\\": \\"Applications\\",\\n \\"ResourceDirectoryPath\\": \\"rd-3G****/r-Wm****/fd-Jyl5U7****\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<GetFolderResponse>\\r\\n\\t<RequestId>88EF473E-D5CD-589F-AAB3-F6E0D12AECA3</RequestId>\\r\\n\\t<Folder>\\r\\n\\t\\t<CreateTime>2021-06-15T06:39:08.521Z</CreateTime>\\r\\n\\t\\t<FolderId>fd-Jyl5U7****</FolderId>\\r\\n\\t\\t<FolderName>Applications</FolderName>\\r\\n\\t\\t<ParentFolderId>r-Wm****</ParentFolderId>\\r\\n\\t\\t<ResourceDirectoryPath>rd-3G****/r-Wm****/fd-Jyl5U7****</ResourceDirectoryPath>\\r\\n\\t</Folder>\\r\\n</GetFolderResponse>","errorExample":""}]', - 'title' => '获取资源夹信息', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\"\\n}","errorExample":""},{"type":"xml","example":"<CancelChangeAccountEmailResponse>\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\n</CancelChangeAccountEmailResponse>","errorExample":""}]', + 'title' => '取消修改成员邮箱', + 'changeSet' => [], ], - 'DeleteFolder' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'CancelHandshake' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -851,19 +532,12 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'delete', - ], + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ - 'name' => 'FolderId', + 'name' => 'HandshakeId', 'in' => 'query', - 'schema' => [ - 'description' => '资源夹ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'fd-ae1in7****', - ], + 'schema' => ['description' => '邀请ID。', 'type' => 'string', 'required' => true, 'example' => 'h-ycm4rp****'], ], ], 'responses' => [ @@ -872,10 +546,32 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE'], + 'Handshake' => [ + 'description' => '邀请信息。', + 'type' => 'object', + 'properties' => [ + 'Status' => ['description' => '邀请状态。'."\n" + ."\n" + .'- Pending:等待确认。'."\n" + .'- Accepted:已接受。'."\n" + .'- Cancelled:已取消。'."\n" + .'- Declined:已拒绝。'."\n" + .'- Expired:超时。', 'type' => 'string', 'example' => 'Cancelled'], + 'ExpireTime' => ['description' => '邀请的过期时间(UTC时间)。', 'type' => 'string', 'example' => '2018-08-24T09:55:41Z'], + 'ResourceDirectoryId' => ['description' => '资源目录ID。', 'type' => 'string', 'example' => 'h-ycm4rp****'], + 'CreateTime' => ['description' => '邀请的创建时间(UTC时间)。', 'type' => 'string', 'example' => '2018-08-10T09:55:41Z'], + 'Note' => ['description' => '备注。', 'type' => 'string', 'example' => '欢迎您加入'], + 'TargetEntity' => ['description' => '被邀请账号ID或登录邮箱。', 'type' => 'string', 'example' => 'someone@example.com'], + 'MasterAccountId' => ['description' => '资源目录管理账号ID。', 'type' => 'string', 'example' => '172841235500****'], + 'MasterAccountName' => ['description' => '资源目录管理账号名称。', 'type' => 'string', 'example' => 'Alice'], + 'ModifyTime' => ['description' => '邀请的修改时间(UTC时间)。', 'type' => 'string', 'example' => '2018-08-10T09:55:41Z'], + 'TargetType' => ['description' => '被邀请账号类型。'."\n" + ."\n" + .'- Account:账号ID。'."\n" + .'- Email:账号登录邮箱。', 'type' => 'string', 'example' => 'Email'], + 'HandshakeId' => ['description' => '邀请ID。', 'type' => 'string', 'example' => 'h-ycm4rp****'], + ], ], ], ], @@ -883,144 +579,111 @@ ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'MissingParameter.FolderId', - 'errorMessage' => 'You must specify FolderId.', - ], - [ - 'errorCode' => 'InvalidParameter.FolderId', - 'errorMessage' => 'The FolderId is invalid.', - ], + ['errorCode' => 'MissingParameter.HandshakeId', 'errorMessage' => 'You must specify HandshakeId.', 'description' => ''], + ['errorCode' => 'InvalidParameter.HandshakeId', 'errorMessage' => 'The HandshakeId is invalid.', 'description' => ''], ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], - [ - 'errorCode' => 'EntityNotExists.Folder', - 'errorMessage' => 'The resource directory folder does not exist.', - ], + ['errorCode' => 'EntityNotExists.Handshake', 'errorMessage' => 'The specified handshake does not exist.', 'description' => ''], ], 409 => [ - [ - 'errorCode' => 'DeleteConflict.Folder.SubFolder', - 'errorMessage' => 'This folder has sub folders.', - ], - [ - 'errorCode' => 'DeleteConflict.Folder.Account', - 'errorMessage' => 'This folder has accounts.', - ], + ['errorCode' => 'HandshakeStatusMismatch', 'errorMessage' => 'The invitation is invalid.', 'description' => ''], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<DeleteFolderResponse>\\r\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\r\\n</DeleteFolderResponse>","errorExample":""}]', - 'title' => '删除资源夹', - 'summary' => '调用DeleteFolder删除资源夹。', - 'description' => '删除资源夹前,请确保资源夹下不存在成员或子资源夹。', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\",\\n \\"Handshake\\": {\\n \\"Status\\": \\"Cancelled\\",\\n \\"ExpireTime\\": \\"2018-08-24T09:55:41Z\\",\\n \\"ResourceDirectoryId\\": \\"h-ycm4rp****\\",\\n \\"CreateTime\\": \\"2018-08-10T09:55:41Z\\",\\n \\"Note\\": \\"欢迎您加入\\",\\n \\"TargetEntity\\": \\"someone@example.com\\",\\n \\"MasterAccountId\\": \\"172841235500****\\",\\n \\"MasterAccountName\\": \\"Alice\\",\\n \\"ModifyTime\\": \\"2018-08-10T09:55:41Z\\",\\n \\"TargetType\\": \\"Email\\",\\n \\"HandshakeId\\": \\"h-ycm4rp****\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<CancelHandshakeResponse>\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\n <Handshake>\\n <HandshakeId>h-ycm4rp****</HandshakeId>\\n <ResourceDirectoryId>rd-abcdef****</ResourceDirectoryId>\\n <MasterAccountId>172841235500****</MasterAccountId>\\n <MasterAccountName>Alice</MasterAccountName>\\n <TargetEntity>someone@example.com</TargetEntity>\\n <TargetType>Email</TargetType>\\n <Note>欢迎您加入</Note>\\n <Status>Cancelled</Status>\\n <CreateTime>2018-08-10T09:55:41Z</CreateTime>\\n <ModifyTime>2018-08-10T09:55:41Z</ModifyTime>\\n <ExpireTime>2018-08-24T09:55:41Z</ExpireTime>\\n </Handshake>\\n</CancelHandshakeResponse>","errorExample":""}]', + 'title' => '取消邀请', + 'summary' => '调用CancelHandshake取消邀请。', + 'responseParamsDescription' => '关于公共请求参数的详情,请参见[公共参数](~~159973~~)。', 'extraInfo' => ' ', + 'changeSet' => [], ], - 'ListFoldersForParent' => [ - 'summary' => '调用ListFoldersForParent查询指定资源夹的子资源夹列表。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'CancelMessageContactUpdate' => [ + 'summary' => '取消更新联系人手机或邮箱。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'list', - 'riskType' => 'none', - 'chargeType' => 'free', - ], + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ - 'name' => 'ParentFolderId', + 'name' => 'ContactId', 'in' => 'query', - 'schema' => [ - 'description' => '父资源夹ID。'."\n" - ."\n" - .'当该参数置空时,查询的是Root资源夹下的下一级子资源夹。', - 'type' => 'string', - 'required' => false, - 'example' => 'r-b1****', - ], + 'schema' => ['description' => '联系人ID。', 'type' => 'string', 'required' => false, 'example' => 'c-qL4HqKONzOM7****'], ], [ - 'name' => 'QueryKeyword', + 'name' => 'PhoneNumber', 'in' => 'query', - 'schema' => [ - 'description' => '查询关键字,例如:资源夹名称。'."\n" - ."\n" - .'支持模糊查询。', - 'type' => 'string', - 'required' => false, - 'example' => 'rdFolder', - ], + 'schema' => ['description' => '联系人的手机号码。'."\n" + ."\n" + .'格式:`<国家码>-<手机号码>`。'."\n" + ."\n" + .'<props="china">'."\n" + .'> 仅支持填写`86-<手机号码>`的中国内地手机号码。</props>', 'type' => 'string', 'required' => false, 'example' => '86-139****1234'], ], [ - 'name' => 'PageNumber', + 'name' => 'EmailAddress', 'in' => 'query', + 'schema' => ['description' => '联系人的邮箱地址。', 'type' => 'string', 'required' => false, 'example' => 'someone***@example.com'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '页码。'."\n" - ."\n" - .'起始值:1。默认值:1。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', + 'title' => 'Schema of Response', + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE'], + ], ], ], + ], + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'MissingParameter.ContactId', 'errorMessage' => 'You must specify ContactId.', 'description' => ''], + ['errorCode' => 'InvalidParameter.ContactId', 'errorMessage' => 'The ContactId is invalid.', 'description' => ''], + ['errorCode' => 'InvalidParameter.PhoneNumber', 'errorMessage' => 'The PhoneNumber is invalid.', 'description' => ''], + ['errorCode' => 'InvalidParameter.MobileCountryCode', 'errorMessage' => 'The current site does not support the country code.', 'description' => ''], + ['errorCode' => 'InvalidParameter.EmailAddress', 'errorMessage' => 'The EmailAddress is invalid.', 'description' => ''], + ['errorCode' => 'ContactStatusMismatchAction', 'errorMessage' => 'The status of the contact does not allow the specified operation.', 'description' => ''], + ], + 404 => [ + ['errorCode' => 'EntityNotExists.Contact', 'errorMessage' => 'This Contact does not exist.', 'description' => ''], + ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\"\\n}","type":"json"}]', + 'title' => '取消更新联系人手机或邮箱', + 'changeSet' => [], + ], + 'ChangeAccountEmail' => [ + 'summary' => '调用ChangeAccountEmail修改成员邮箱。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'PageSize', + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => ['operationType' => 'update'], + 'parameters' => [ + [ + 'name' => 'AccountId', 'in' => 'query', - 'schema' => [ - 'description' => '分页时每页显示的数据行数。'."\n" - ."\n" - .'取值范围:1~100。默认值:10。'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '成员ID。', 'type' => 'string', 'required' => true, 'example' => '181761095690****'], ], [ - 'name' => 'Tag', + 'name' => 'Email', 'in' => 'query', - 'style' => 'flat', - 'schema' => [ - 'description' => '通过标签过滤。', - 'type' => 'array', - 'items' => [ - 'description' => '过滤的标签列表。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '标签键。', - 'type' => 'string', - 'required' => false, - 'example' => 'k1', - ], - 'Value' => [ - 'description' => '标签值。', - 'type' => 'string', - 'required' => false, - 'example' => 'v1', - ], - ], - 'required' => false, - ], - 'required' => false, - ], + 'schema' => ['description' => '成员邮箱。'."\n" + ."\n" + .'> 系统将自动发送验证邮件到所填邮箱,通过验证后修改才会生效,验证通过后系统会同步修改该账号的邮箱和安全邮箱。', 'type' => 'string', 'required' => true, 'example' => 'someone@example.com'], ], ], 'responses' => [ @@ -1029,127 +692,29 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'Folders' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'Folder' => [ - 'description' => '资源夹列表。', - 'type' => 'array', - 'items' => [ - 'description' => '资源夹列表。', - 'type' => 'object', - 'properties' => [ - 'CreateTime' => [ - 'description' => '资源夹创建时间。', - 'type' => 'string', - 'example' => '2015-01-23T12:33:18Z', - ], - 'FolderId' => [ - 'description' => '资源夹ID。', - 'type' => 'string', - 'example' => 'rd-evic31****', - ], - 'FolderName' => [ - 'description' => '资源夹名称。', - 'type' => 'string', - 'example' => 'project-1', - ], - 'Tags' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'Tag' => [ - 'description' => '资源夹所有的标签。', - 'type' => 'array', - 'items' => [ - 'description' => '资源夹所有的标签。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '标签键。', - 'type' => 'string', - 'example' => 'k1', - ], - 'Value' => [ - 'description' => '标签值。', - 'type' => 'string', - 'example' => 'v1', - ], - ], - ], - ], - ], - ], - ], - ], - ], - ], - ], - 'PageNumber' => [ - 'description' => '页码。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'PageSize' => [ - 'description' => '分页时每页显示的数据行数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '5', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '7B8A4E7D-6CFF-471D-84DF-195A7A241ECB', - ], - 'TotalCount' => [ - 'description' => '数据总条数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.ParentFolderId', - 'errorMessage' => 'The ParentFolderId is invalid.', - ], + ['errorCode' => 'NotSupportedOperation.Account.EmailModify', 'errorMessage' => 'The operation is not supported because the account email is being modifying.', 'description' => ''], + ['errorCode' => 'NotSupport.InvitedAccount', 'errorMessage' => 'The current operation is not supported for accounts invited to join the resource directory.', 'description' => ''], ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], - [ - 'errorCode' => 'EntityNotExists.Folder', - 'errorMessage' => 'The resource directory folder does not exist.', - ], + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => ''], + ['errorCode' => 'EntityNotExists.Account', 'errorMessage' => 'This resource directory account does not exist.', 'description' => ''], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Folders\\": {\\n \\"Folder\\": [\\n {\\n \\"CreateTime\\": \\"2015-01-23T12:33:18Z\\",\\n \\"FolderId\\": \\"rd-evic31****\\",\\n \\"FolderName\\": \\"project-1\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"Key\\": \\"k1\\",\\n \\"Value\\": \\"v1\\"\\n }\\n ]\\n }\\n }\\n ]\\n },\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 5,\\n \\"RequestId\\": \\"7B8A4E7D-6CFF-471D-84DF-195A7A241ECB\\",\\n \\"TotalCount\\": 2\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<ListFoldersForParentResponse>\\r\\n <RequestId>7B8A4E7D-6CFF-471D-84DF-195A7A241ECB</RequestId>\\r\\n <PageNumber>1</PageNumber>\\r\\n <PageSize>5</PageSize>\\r\\n <TotalCount>2</TotalCount>\\r\\n <Folders>\\r\\n <Folder>\\r\\n <FolderId>rd-evic31****</FolderId>\\r\\n <FolderName>project-1</FolderName>\\r\\n <CreateTime>2015-01-23T12:33:18Z</CreateTime>\\r\\n </Folder>\\r\\n <Folder>\\r\\n <FolderId>fd-evic31****</FolderId>\\r\\n <FolderName>project-2</FolderName>\\r\\n <CreateTime>2015-01-23T12:33:18Z</CreateTime>\\r\\n </Folder>\\r\\n </Folders>\\r\\n</ListFoldersForParentResponse>","errorExample":""}]', - 'title' => '查询指定资源夹的子资源夹列表', - 'description' => '您只能查看指定资源夹下一级的子资源夹列表,无法查看更深层级的资源夹列表。', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\"\\n}","errorExample":""},{"type":"xml","example":"<ChangeAccountEmailResponse>\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\n</ChangeAccountEmailResponse>","errorExample":""}]', + 'title' => '修改成员邮箱', + 'changeSet' => [], ], - 'UpdateFolder' => [ - 'summary' => '调用UpdateFolder修改资源夹名称。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'CheckAccountDelete' => [ + 'summary' => '调用CheckAccountDelete执行成员删除检查任务。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -1157,31 +722,12 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - ], + 'systemTags' => ['operationType' => 'get'], 'parameters' => [ [ - 'name' => 'FolderId', - 'in' => 'query', - 'schema' => [ - 'description' => '资源夹ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'fd-u8B321****', - ], - ], - [ - 'name' => 'NewFolderName', + 'name' => 'AccountId', 'in' => 'query', - 'schema' => [ - 'description' => '新资源夹名称。'."\n" - ."\n" - .'长度为1~24个字符或汉字,可包含汉字、英文字母、数字、下划线(_)、点号(.)和短横线(-)。', - 'type' => 'string', - 'required' => true, - 'example' => 'rdFolder', - ], + 'schema' => ['description' => '待删除的成员ID。', 'type' => 'string', 'required' => true, 'example' => '179855839641****'], ], ], 'responses' => [ @@ -1190,121 +736,107 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C2CBCA30-C8DD-423E-B4AD-4FB694C9180C', - ], - 'Folder' => [ - 'description' => '资源夹信息。', - 'type' => 'object', - 'properties' => [ - 'FolderId' => [ - 'description' => '资源夹ID。', - 'type' => 'string', - 'example' => 'fd-u8B321****', - ], - 'CreateTime' => [ - 'description' => '资源夹创建时间。', - 'type' => 'string', - 'example' => '2019-02-19T09:34:50.757Z', - ], - 'ParentFolderId' => [ - 'description' => '父资源夹ID。', - 'type' => 'string', - 'example' => 'r-b1****', - ], - 'FolderName' => [ - 'description' => '资源夹名称。', - 'type' => 'string', - 'example' => 'rdFolder', - ], - ], - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '7CDDDCEF-CDFD-0825-B7D7-217BE0897B22'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'MissingParameter.Folder.Name', - 'errorMessage' => 'You must specify the resource folder name.', - ], - [ - 'errorCode' => 'InvalidParameter.Folder.Name', - 'errorMessage' => 'The Name of folder is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Folder.Name.Length', - 'errorMessage' => 'The Name of folder exceeds the length limit.', - ], - [ - 'errorCode' => 'MissingParameter.FolderId', - 'errorMessage' => 'You must specify FolderId.', - ], - [ - 'errorCode' => 'InvalidParameter.FolderId', - 'errorMessage' => 'The FolderId is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Folder.Name.AlreadyUsed', - 'errorMessage' => 'The name already exists under the same parent. Please change to another name.', - ], + ['errorCode' => 'MissingParameter.AccountId', 'errorMessage' => 'You must specify AccountId.', 'description' => ''], + ['errorCode' => 'InvalidParameter.AccountId', 'errorMessage' => 'The AccountId is invalid.', 'description' => ''], ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], - [ - 'errorCode' => 'EntityNotExists.Folder', - 'errorMessage' => 'The resource directory folder does not exist.', - ], + ['errorCode' => 'EntityNotExists.Account', 'errorMessage' => 'This resource directory account does not exist.', 'description' => ''], + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => ''], ], 409 => [ - [ - 'errorCode' => 'LimitExceeded.Folder.Depth', - 'errorMessage' => 'The folder depth exceeds the limit of 5.', - ], + ['errorCode' => 'AccountTypeOrStatusMismatch', 'errorMessage' => 'You cannot perform the action on the member account.', 'description' => ''], + ['errorCode' => 'InvalidControlPolicyEnablementStatus', 'errorMessage' => 'The control policy enablement status is not valid to perform this operation.', 'description' => ''], + ['errorCode' => 'NoLicense.ResourceDirectory', 'errorMessage' => 'The resource directory has not enabled the delete operation.', 'description' => ''], + ['errorCode' => 'UnknownError.Account', 'errorMessage' => 'The deletion failed. An unknown error occurred. Please try again later.', 'description' => ''], + ['errorCode' => 'CallerIdentityError.DeleteAccount', 'errorMessage' => 'Please use the RAM user or role of the management account to delete.', 'description' => ''], + ['errorCode' => 'RemoveConfilctAccountAsDelegatedAdministator', 'errorMessage' => 'You attempted to remove a member that is registered as a delegated administrator. To complete this operation, you must first deregister this account as a delegated administrator.', 'description' => ''], + ['errorCode' => 'LegalEntityDifferent', 'errorMessage' => 'The account legal entity is different from the one of the Management Account.', 'description' => ''], + ['errorCode' => 'MemberTypeError.DeleteAccount', 'errorMessage' => 'You can only delete accounts of the resource account type created by Resource Directory.', 'description' => ''], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C2CBCA30-C8DD-423E-B4AD-4FB694C9180C\\",\\n \\"Folder\\": {\\n \\"FolderId\\": \\"fd-u8B321****\\",\\n \\"CreateTime\\": \\"2019-02-19T09:34:50.757Z\\",\\n \\"ParentFolderId\\": \\"r-b1****\\",\\n \\"FolderName\\": \\"rdFolder\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<UpdateFolderResponse>\\r\\n <Folder>\\r\\n <FolderName>rdFolder</FolderName>\\r\\n <ParentFolderId>r-b1****</ParentFolderId>\\r\\n <FolderId>fd-u8B321****</FolderId>\\r\\n <CreateTime>2019-02-19T09:34:50.757Z</CreateTime>\\r\\n </Folder>\\r\\n <RequestId>C2CBCA30-C8DD-423E-B4AD-4FB694C9180C</RequestId>\\r\\n</UpdateFolderResponse>","errorExample":""}]', - 'title' => '修改资源夹', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"7CDDDCEF-CDFD-0825-B7D7-217BE0897B22\\"\\n}","errorExample":""},{"type":"xml","example":"<CheckAccountDeleteResponse>\\n <RequestId>7CDDDCEF-CDFD-0825-B7D7-217BE0897B22</RequestId>\\n</CheckAccountDeleteResponse>","errorExample":""}]', + 'title' => '成员删除检查', + 'description' => '删除成员前,您需要调用本API对目标成员进行删除前的条件检查。', + 'extraInfo' => '### 后续操作'."\n" + .'您可以调用[GetAccountDeletionCheckResult](~~GetAccountDeletionCheckResult~~)查询删除检查的结果。', + 'changeSet' => [], ], - 'ListAncestors' => [ - 'summary' => '调用ListAncestors查看指定资源夹的所有父资源夹信息。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'CreateControlPolicy' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'list', - ], + 'systemTags' => ['operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ - 'name' => 'ChildId', + 'name' => 'PolicyName', + 'in' => 'query', + 'schema' => ['description' => '管控策略名称。'."\n" + ."\n" + .'长度为1~128个字符,必须以英文字母开头,可以包含英文字母、数字和短划线(-)。', 'type' => 'string', 'required' => true, 'example' => 'ExampleControlPolicy'], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => ['description' => '管控策略描述。'."\n" + ."\n" + .'长度为1~1024个字符,必须以英文字母开头,可以包含英文字母、数字、下划线(_)和短划线(-)。', 'type' => 'string', 'required' => false, 'example' => 'ExampleControlPolicy'], + ], + [ + 'name' => 'EffectScope', + 'in' => 'query', + 'schema' => ['description' => '管控策略的生效范围。'."\n" + ."\n" + .'取值:RAM,表示该管控策略仅针对RAM用户或RAM角色生效。'."\n" + ."\n", 'type' => 'string', 'required' => true, 'example' => 'RAM'], + ], + [ + 'name' => 'PolicyDocument', 'in' => 'query', + 'schema' => ['description' => '管控策略内容。'."\n" + ."\n" + .'最大长度为4096个字符。'."\n" + ."\n" + .'管控策略语言,请参见[管控策略语言](~~179096~~)。'."\n" + ."\n" + .'管控策略示例,请参见[自定义管控策略示例](~~181474~~)。', 'type' => 'string', 'required' => true, 'example' => '{"Version":"1","Statement":[{"Effect":"Deny","Action":["ram:UpdateRole","ram:DeleteRole","ram:AttachPolicyToRole","ram:DetachPolicyFromRole"],"Resource":"acs:ram:*:*:role/ResourceDirectoryAccountAccessRole"}]}'], + ], + [ + 'name' => 'Tag', + 'in' => 'query', + 'style' => 'flat', 'schema' => [ - 'description' => '子资源夹ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'fd-i1c9nr****', + 'description' => '管控策略的标签。', + 'type' => 'array', + 'items' => [ + 'description' => '管控策略的标签。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '标签键。', 'type' => 'string', 'required' => false, 'example' => 'k1'], + 'Value' => ['description' => '标签值。', 'type' => 'string', 'required' => false, 'example' => 'v1'], + ], + 'required' => false, + ], + 'required' => false, ], ], + [ + 'name' => 'ControlPolicyType', + 'in' => 'query', + 'schema' => ['type' => 'string', 'example' => 'RESOURCE_CONTROL_POLICY'], + ], ], 'responses' => [ 200 => [ @@ -1312,118 +844,106 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '83AFBEB6-DC03-406E-9686-867461FF6698', - ], - 'Folders' => [ + 'ControlPolicy' => [ + 'description' => '管控策略详情。', 'type' => 'object', - 'itemNode' => true, 'properties' => [ - 'Folder' => [ - 'description' => '资源夹信息。', - 'type' => 'array', - 'items' => [ - 'description' => '资源夹信息。', - 'type' => 'object', - 'properties' => [ - 'FolderId' => [ - 'description' => '资源夹ID。', - 'type' => 'string', - 'example' => 'r-b1****', - ], - 'CreateTime' => [ - 'description' => '资源夹创建时间。', - 'type' => 'string', - 'example' => '2019-01-18T10:03:35.217Z', - ], - 'FolderName' => [ - 'description' => '资源夹名称。', - 'type' => 'string', - 'example' => 'root', - ], - ], - ], - ], + 'AttachmentCount' => ['description' => '管控策略被引用的次数。', 'type' => 'string', 'example' => '0'], + 'CreateDate' => ['description' => '管控策略创建时间。', 'type' => 'string', 'example' => '2021-03-18T09:24:19Z'], + 'Description' => ['description' => '管控策略描述。', 'type' => 'string', 'example' => 'ExampleControlPolicy'], + 'EffectScope' => ['description' => '管控策略生效范围。'."\n" + ."\n\n" + .'取值:RAM,表示该管控策略仅针对RAM用户或RAM角色生效。', 'type' => 'string', 'example' => 'RAM'], + 'PolicyId' => ['description' => '管控策略ID。', 'type' => 'string', 'example' => 'cp-jExXAqIYkwHN****'], + 'PolicyName' => ['description' => '管控策略名称。', 'type' => 'string', 'example' => 'ExampleControlPolicy'], + 'PolicyType' => ['description' => '管控策略类型。取值:'."\n" + ."\n" + .'- System:系统管控策略。'."\n" + .'- Custom:自定义管控策略。', 'type' => 'string', 'example' => 'Custom'], + 'UpdateDate' => ['description' => '管控策略更新时间。', 'type' => 'string', 'example' => '2021-03-18T09:24:19Z'], + 'ControlPolicyType' => ['type' => 'string', 'example' => 'RESOURCE_CONTROL_POLICY'], ], ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '776B05B3-A0B0-464B-A191-F4E1119A94B2'], ], ], ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'MissingParameter.ChildId', - 'errorMessage' => 'You must specify ChildId.', - ], - [ - 'errorCode' => 'InvalidParameter.ChildId', - 'errorMessage' => 'The ChildId is invalid.', - ], - ], - 404 => [ - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], - [ - 'errorCode' => 'EntityNotExists.Folder', - 'errorMessage' => 'The resource directory folder does not exist.', - ], + 409 => [ + ['errorCode' => 'InvalidParameter.PolicyDocument.Length', 'errorMessage' => 'The maximum length of the policy document is exceeded. It must not exceed 4096 characters.', 'description' => ''], + ['errorCode' => 'ResourceControlPolicyNotEnabled', 'errorMessage' => 'Resource control policy has not been enabled.', 'description' => '资源管控策略未处于Enabled状态下。'], + ['errorCode' => 'InvalidResourceControlPolicyEnablementStatus', 'errorMessage' => 'The resource control policy enablement status is not valid to perform this operation.', 'description' => '在当前的资源管控策略启用状态下,无法进行此操作。 '], + ['errorCode' => 'LimitExceeded.ResourceControlPolicy', 'errorMessage' => 'The resource control policy number exceeds the limit.', 'description' => '资源管控策略数量超出限制。 '], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"83AFBEB6-DC03-406E-9686-867461FF6698\\",\\n \\"Folders\\": {\\n \\"Folder\\": [\\n {\\n \\"FolderId\\": \\"r-b1****\\",\\n \\"CreateTime\\": \\"2019-01-18T10:03:35.217Z\\",\\n \\"FolderName\\": \\"root\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<ListAncestorsResponse>\\r\\n <Folders>\\r\\n <Folder>\\r\\n <FolderName>root</FolderName>\\r\\n <FolderId>r-b1****</FolderId>\\r\\n <CreateTime>2019-01-18T10:03:35.217Z</CreateTime>\\r\\n </Folder>\\r\\n <Folder>\\r\\n <FolderName>myFirstFd</FolderName>\\r\\n <FolderId>fd-0adR35****</FolderId>\\r\\n <CreateTime>2019-01-23T08:48:37.530Z</CreateTime>\\r\\n </Folder>\\r\\n </Folders>\\r\\n <RequestId>83AFBEB6-DC03-406E-9686-867461FF6698</RequestId>\\r\\n</ListAncestorsResponse>","errorExample":""}]', - 'title' => '查看指定资源夹的所有父资源夹信息', - 'requestParamsDescription' => ' ', + 'title' => '创建管控策略', + 'summary' => '调用CreateControlPolicy创建自定义管控策略。', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', - ], - 'ListAuthorizedFolders' => [ - 'summary' => '调用ListAuthorizedFolders列举有查询权限的资源夹列表。', - 'methods' => [ - 'post', - 'get', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateControlPolicy'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'resourcemanager:CreateControlPolicy', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"ControlPolicy\\": {\\n \\"AttachmentCount\\": \\"0\\",\\n \\"CreateDate\\": \\"2021-03-18T09:24:19Z\\",\\n \\"Description\\": \\"ExampleControlPolicy\\",\\n \\"EffectScope\\": \\"RAM\\",\\n \\"PolicyId\\": \\"cp-jExXAqIYkwHN****\\",\\n \\"PolicyName\\": \\"ExampleControlPolicy\\",\\n \\"PolicyType\\": \\"Custom\\",\\n \\"UpdateDate\\": \\"2021-03-18T09:24:19Z\\",\\n \\"ControlPolicyType\\": \\"RESOURCE_CONTROL_POLICY\\"\\n },\\n \\"RequestId\\": \\"776B05B3-A0B0-464B-A191-F4E1119A94B2\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<CreateControlPolicyResponse>\\r\\n\\t<ControlPolicy>\\r\\n\\t\\t<PolicyType>Custom</PolicyType>\\r\\n\\t\\t<UpdateDate>2021-03-18T09:24:19Z</UpdateDate>\\r\\n\\t\\t<Description>ExampleControlPolicy</Description>\\r\\n\\t\\t<AttachmentCount>0</AttachmentCount>\\r\\n\\t\\t<PolicyName>ExampleControlPolicy</PolicyName>\\r\\n\\t\\t<CreateDate>2021-03-18T09:24:19Z</CreateDate>\\r\\n\\t\\t<PolicyId>cp-jExXAqIYkwHN****</PolicyId>\\r\\n\\t\\t<EffectScope>RAM</EffectScope>\\r\\n\\t</ControlPolicy>\\r\\n\\t<RequestId>776B05B3-A0B0-464B-A191-F4E1119A94B2</RequestId>\\r\\n</CreateControlPolicyResponse>\\t\\r\\n","errorExample":""}]', + ], + 'CreateFolder' => [ + 'summary' => '调用CreateFolder创建资源夹。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'list', - ], + 'systemTags' => ['operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ - 'name' => 'PageNumber', + 'name' => 'ParentFolderId', 'in' => 'query', - 'schema' => [ - 'description' => '页码。'."\n" - ."\n" - .'起始值:1。默认值:1。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => '父资源夹ID。', 'type' => 'string', 'required' => false, 'example' => 'r-b1****'], ], [ - 'name' => 'PageSize', + 'name' => 'FolderName', 'in' => 'query', + 'schema' => ['description' => '资源夹名称。'."\n" + ."\n" + .'长度为1~24个字符或汉字,可包含汉字、英文字母、数字、下划线(_)、半角句号(.)和短划线(-)。', 'type' => 'string', 'required' => true, 'example' => 'rdFolder'], + ], + [ + 'name' => 'Tag', + 'in' => 'query', + 'style' => 'flat', 'schema' => [ - 'description' => '分页时每页显示的数据行数。'."\n" - ."\n" - .'取值范围:1~100。默认值:10。', - 'type' => 'integer', - 'format' => 'int32', + 'description' => '资源夹的标签。', + 'type' => 'array', + 'items' => [ + 'description' => '资源夹的标签。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '标签键。', 'type' => 'string', 'required' => false, 'example' => 'k1'], + 'Value' => ['description' => '标签值。', 'type' => 'string', 'required' => false, 'example' => 'v1'], + ], + 'required' => false, + ], 'required' => false, - 'example' => '10', ], ], ], @@ -1433,78 +953,48 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'TotalCount' => [ - 'description' => '数据总条数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '7B8A4E7D-6CFF-471D-84DF-195A7A241ECB', - ], - 'PageSize' => [ - 'description' => '分页时每页显示的数据行数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'PageNumber' => [ - 'description' => '页码。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Folders' => [ + 'Folder' => [ + 'description' => '资源夹信息。', 'type' => 'object', - 'itemNode' => true, 'properties' => [ - 'Folder' => [ - 'description' => '资源夹列表。', - 'type' => 'array', - 'items' => [ - 'description' => '资源夹列表。', - 'type' => 'object', - 'properties' => [ - 'FolderId' => [ - 'description' => '资源夹ID。', - 'type' => 'string', - 'example' => 'fd-bVaRIG****', - ], - 'ResourceDirectoryPath' => [ - 'description' => '资源夹在资源目录中的路径ID(RDPath)。', - 'type' => 'string', - 'example' => 'rd-k3****/r-Wm****/fd-bVaRIG****', - ], - 'FolderName' => [ - 'description' => '资源夹名称。', - 'type' => 'string', - 'example' => 'project-1', - ], - ], - ], - ], + 'CreateTime' => ['description' => '资源夹创建时间。', 'type' => 'string', 'example' => '2019-02-19T09:34:50.757Z'], + 'FolderId' => ['description' => '资源夹ID。', 'type' => 'string', 'example' => 'fd-u8B321****'], + 'FolderName' => ['description' => '资源夹名称。', 'type' => 'string', 'example' => 'rdFolder'], + 'ParentFolderId' => ['description' => '父资源夹ID。', 'type' => 'string', 'example' => 'r-b1****'], ], ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'C2CBCA30-C8DD-423E-B4AD-4FB694C9180C'], ], ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidParameter.ParentFolderId', 'errorMessage' => 'The ParentFolderId is invalid.', 'description' => ''], + ['errorCode' => 'MissingParameter.Folder.Name', 'errorMessage' => 'You must specify the resource folder name.', 'description' => ''], + ['errorCode' => 'InvalidParameter.Folder.Name', 'errorMessage' => 'The Name of folder is invalid.', 'description' => ''], + ['errorCode' => 'InvalidParameter.Folder.Name.Length', 'errorMessage' => 'The Name of folder exceeds the length limit.', 'description' => ''], + ['errorCode' => 'InvalidParameter.Folder.Name.AlreadyUsed', 'errorMessage' => 'The name already exists under the same parent. Please change to another name.', 'description' => ''], + ], + 404 => [ + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => ''], + ['errorCode' => 'EntityNotExists.Folder', 'errorMessage' => 'The resource directory folder does not exist.', 'description' => ''], + ], + 409 => [ + ['errorCode' => 'LimitExceeded.Folder.Depth', 'errorMessage' => 'The folder depth exceeds the limit of 5.', 'description' => ''], + ['errorCode' => 'QuotaExceeded.Folder.Count', 'errorMessage' => 'The number of folders exceeds the quota.', 'description' => ''], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TotalCount\\": 2,\\n \\"RequestId\\": \\"7B8A4E7D-6CFF-471D-84DF-195A7A241ECB\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"Folders\\": {\\n \\"Folder\\": [\\n {\\n \\"FolderId\\": \\"fd-bVaRIG****\\",\\n \\"ResourceDirectoryPath\\": \\"rd-k3****/r-Wm****/fd-bVaRIG****\\",\\n \\"FolderName\\": \\"project-1\\"\\n }\\n ]\\n }\\n}","type":"json"}]', - 'title' => '列举有查询权限的资源夹列表', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Folder\\": {\\n \\"CreateTime\\": \\"2019-02-19T09:34:50.757Z\\",\\n \\"FolderId\\": \\"fd-u8B321****\\",\\n \\"FolderName\\": \\"rdFolder\\",\\n \\"ParentFolderId\\": \\"r-b1****\\"\\n },\\n \\"RequestId\\": \\"C2CBCA30-C8DD-423E-B4AD-4FB694C9180C\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<CreateFolderResponse>\\r\\n <Folder>\\r\\n <FolderName>rdFolder</FolderName> \\r\\n <ParentFolderId>r-b1****</ParentFolderId>\\r\\n <FolderId>fd-u8B321****</FolderId>\\r\\n <CreateTime>2019-02-19T09:34:50.757Z</CreateTime>\\r\\n </Folder>\\r\\n <RequestId>C2CBCA30-C8DD-423E-B4AD-4FB694C9180C</RequestId>\\r\\n</CreateFolderResponse>","errorExample":""}]', + 'title' => '创建资源夹', + 'description' => '最多支持创建5级资源夹。', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], ], 'CreateResourceAccount' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -1512,66 +1002,44 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'create', - ], + 'systemTags' => ['operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ 'name' => 'DisplayName', 'in' => 'query', - 'schema' => [ - 'description' => '成员显示名称。'."\n" - ."\n" - .'长度范围:2~50个字符或汉字。'."\n" - ."\n" - .'格式:允许输入汉字、英文字母、数字、下划线(_)、半角句号(.)、短划线(-)和空格。'."\n" - ."\n" - .'成员显示名称在资源目录内必须唯一。', - 'type' => 'string', - 'required' => true, - 'example' => 'Dev', - ], + 'schema' => ['description' => '成员显示名称。'."\n" + ."\n" + .'长度范围:2~50个字符或汉字。'."\n" + ."\n" + .'格式:允许输入汉字、英文字母、数字、下划线(_)、半角句号(.)、短划线(-)和空格。'."\n" + ."\n" + .'成员显示名称在资源目录内必须唯一。', 'type' => 'string', 'required' => true, 'example' => 'Dev'], ], [ 'name' => 'ParentFolderId', 'in' => 'query', - 'schema' => [ - 'description' => '父资源夹ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'fd-r23M55****', - ], + 'schema' => ['description' => '父资源夹ID。', 'type' => 'string', 'required' => false, 'example' => 'fd-r23M55****'], ], [ 'name' => 'PayerAccountId', 'in' => 'query', - 'schema' => [ - 'description' => '结算账号ID。置空则采用新创建的成员自主结算。', - 'type' => 'string', - 'required' => false, - 'example' => '12323344****', - ], + 'schema' => ['description' => '结算账号ID。置空则采用新创建的成员自主结算。', 'type' => 'string', 'required' => false, 'example' => '12323344****'], ], [ 'name' => 'AccountNamePrefix', 'in' => 'query', - 'schema' => [ - 'description' => '账号名称前缀。置空则系统随机生成。'."\n" - ."\n" - .'<props="china">长度范围:2~50个字符或汉字。</props>'."\n" - ."\n" - .'<props="intl">长度范围:2~37个字符。</props>'."\n" - ."\n" - .'格式:允许输入英文字母、数字和特殊字符`_.-`,必须以英文字母或数字开头和结尾,且不能输入连续的特殊字符`_.-`。'."\n" - ."\n" - .'完整账号名称的格式为<AccountNamePrefix>@<ResourceDirectoryId>.aliyunid.com,例如:`alice@rd-3G****.aliyunid.com`'."\n" - ."\n" - .'账号名称在资源目录内必须唯一。'."\n" - ."\n\n", - 'type' => 'string', - 'required' => false, - 'example' => 'alice', - ], + 'schema' => ['description' => '账号名称前缀。置空则系统随机生成。'."\n" + ."\n" + .'<props="china">长度范围:2~50个字符或汉字。</props>'."\n" + ."\n" + .'<props="intl">长度范围:2~37个字符。</props>'."\n" + ."\n" + .'格式:允许输入英文字母、数字和特殊字符`_.-`,必须以英文字母或数字开头和结尾,且不能输入连续的特殊字符`_.-`。'."\n" + ."\n" + .'完整账号名称的格式为<AccountNamePrefix>@<ResourceDirectoryId>.aliyunid.com,例如:`alice@rd-3G****.aliyunid.com`'."\n" + ."\n" + .'账号名称在资源目录内必须唯一。'."\n" + ."\n\n", 'type' => 'string', 'required' => false, 'example' => 'alice'], ], [ 'name' => 'Tag', @@ -1584,18 +1052,8 @@ 'description' => '成员的标签。', 'type' => 'object', 'properties' => [ - 'Key' => [ - 'description' => '标签键。', - 'type' => 'string', - 'required' => false, - 'example' => 'k1', - ], - 'Value' => [ - 'description' => '标签值。', - 'type' => 'string', - 'required' => false, - 'example' => 'v1', - ], + 'Key' => ['description' => '标签键。', 'type' => 'string', 'required' => false, 'example' => 'k1'], + 'Value' => ['description' => '标签值。', 'type' => 'string', 'required' => false, 'example' => 'v1'], ], 'required' => false, ], @@ -1605,29 +1063,19 @@ [ 'name' => 'ResellAccountType', 'in' => 'query', - 'schema' => [ - 'description' => '成员的身份类型。取值:'."\n" - ."\n" - .'- resell(默认值):分销账号。创建的成员将自动与您的分销商建立分销关系,同时您需要使用管理账号为新成员付款。'."\n" - .'- non_resell :非分销账号。创建的成员为阿里云普通账号,与您当前的分销商无关联关系,该账号直接从阿里云购买资源,需自主付款。'."\n" - ."\n" - .'> 该参数仅支持国际站分销客户。', - 'type' => 'string', - 'required' => false, - 'example' => 'resell', - ], + 'schema' => ['description' => '成员的身份类型。取值:'."\n" + ."\n" + .'- resell(默认值):分销账号。创建的成员将自动与您的分销商建立分销关系,同时您需要使用管理账号为新成员付款。'."\n" + .'- non_resell :非分销账号。创建的成员为阿里云普通账号,与您当前的分销商无关联关系,该账号直接从阿里云购买资源,需自主付款。'."\n" + ."\n" + .'> 该参数仅支持国际站分销客户。', 'type' => 'string', 'required' => false, 'example' => 'resell'], ], [ 'name' => 'DryRun', 'in' => 'query', - 'schema' => [ - 'description' => '是否只预检此次请求。取值:'."\n" - .'- true:发送检查请求,不会实际创建成员。检查项当前包括当前账号是否允许设置成员的身份类型。如果检查不通过,则返回对应错误码。'."\n" - .'- false(默认):发送正常请求,通过检查后直接创建成员。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => '是否只预检此次请求。取值:'."\n" + .'- true:发送检查请求,不会实际创建成员。检查项当前包括当前账号是否允许设置成员的身份类型。如果检查不通过,则返回对应错误码。'."\n" + .'- false(默认):发送正常请求,通过检查后直接创建成员。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], ], 'responses' => [ @@ -1640,211 +1088,68 @@ 'description' => '成员信息。', 'type' => 'object', 'properties' => [ - 'Status' => [ - 'description' => '成员加入状态。取值为CreateSuccess,表示创建成功。', - 'type' => 'string', - 'example' => 'CreateSuccess', - ], - 'Type' => [ - 'description' => '成员类型。取值为ResourceAccount,表示资源账号。', - 'type' => 'string', - 'example' => 'ResourceAccount', - ], - 'DisplayName' => [ - 'description' => '成员显示名称。', - 'type' => 'string', - 'example' => 'Dev', - ], - 'FolderId' => [ - 'description' => '资源夹ID。', - 'type' => 'string', - 'example' => 'fd-r23M55****', - ], - 'ResourceDirectoryId' => [ - 'description' => '资源目录ID。', - 'type' => 'string', - 'example' => 'rd-3G****', - ], - 'JoinTime' => [ - 'description' => '成员加入时间(UTC时间)。', - 'type' => 'string', - 'example' => '2020-12-31T03:37:39.456Z', - ], - 'AccountId' => [ - 'description' => '成员ID。', - 'type' => 'string', - 'example' => '112730938585****', - ], - 'JoinMethod' => [ - 'description' => '成员加入方式。取值:'."\n" - ."\n" - .'- invited:邀请。'."\n" - .'- created:创建。', - 'type' => 'string', - 'example' => 'created', - ], - 'ModifyTime' => [ - 'description' => '成员修改时间(UTC时间)。', - 'type' => 'string', - 'example' => '2020-12-31T03:37:39.456Z', - ], - 'AccountName' => [ - 'description' => '账号名称。', - 'type' => 'string', - 'example' => 'alice@rd-3g****.aliyunid.com', - ], + 'Status' => ['description' => '成员加入状态。取值为CreateSuccess,表示创建成功。', 'type' => 'string', 'example' => 'CreateSuccess'], + 'Type' => ['description' => '成员类型。取值为ResourceAccount,表示资源账号。', 'type' => 'string', 'example' => 'ResourceAccount'], + 'DisplayName' => ['description' => '成员显示名称。', 'type' => 'string', 'example' => 'Dev'], + 'FolderId' => ['description' => '资源夹ID。', 'type' => 'string', 'example' => 'fd-r23M55****'], + 'ResourceDirectoryId' => ['description' => '资源目录ID。', 'type' => 'string', 'example' => 'rd-3G****'], + 'JoinTime' => ['description' => '成员加入时间(UTC时间)。', 'type' => 'string', 'example' => '2020-12-31T03:37:39.456Z'], + 'AccountId' => ['description' => '成员ID。', 'type' => 'string', 'example' => '112730938585****'], + 'JoinMethod' => ['description' => '成员加入方式。取值:'."\n" + ."\n" + .'- invited:邀请。'."\n" + .'- created:创建。', 'type' => 'string', 'example' => 'created'], + 'ModifyTime' => ['description' => '成员修改时间(UTC时间)。', 'type' => 'string', 'example' => '2020-12-31T03:37:39.456Z'], + 'AccountName' => ['description' => '账号名称。', 'type' => 'string', 'example' => 'alice@rd-3g****.aliyunid.com'], ], ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'B356A415-D860-43E5-865A-E2193D62BBD6', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'B356A415-D860-43E5-865A-E2193D62BBD6'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'MissingParameter.Account.DisplayName', - 'errorMessage' => 'You must specify DisplayName.', - ], - [ - 'errorCode' => 'InvalidParameter.Account.DisplayName', - 'errorMessage' => 'The DisplayName of account is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Account.DisplayName.Length', - 'errorMessage' => 'The DisplayName of the account exceeds the length limit.', - ], - [ - 'errorCode' => 'InvalidParameter.ParentFolderId', - 'errorMessage' => 'The ParentFolderId is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Account.AccountNamePrefix', - 'errorMessage' => 'The account name prefix is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Account.AccountNamePrefix.Length', - 'errorMessage' => 'The account name prefix exceeds the length limit.', - ], - [ - 'errorCode' => 'NotSupport.Site.Action', - 'errorMessage' => 'Site does not allow current action.', - ], + ['errorCode' => 'MissingParameter.Account.DisplayName', 'errorMessage' => 'You must specify DisplayName.', 'description' => '显示名缺失,请指定显示名。'], + ['errorCode' => 'InvalidParameter.Account.DisplayName', 'errorMessage' => 'The DisplayName of account is invalid.', 'description' => '显示名无效,请输入字符或汉字,可包含汉字、英文字母、数字、下划线(_)、半角句号(.)和短划线(-)。'], + ['errorCode' => 'InvalidParameter.Account.DisplayName.Length', 'errorMessage' => 'The DisplayName of the account exceeds the length limit.', 'description' => '显示名长度超出限制,长度为2~50个字符或汉字。'], + ['errorCode' => 'InvalidParameter.ParentFolderId', 'errorMessage' => 'The ParentFolderId is invalid.', 'description' => '父资源夹ID无效,资源夹ID应以“r-”开头+6位数字或英文字母或以“fd-”开头+10位数字或英文字母。'], + ['errorCode' => 'InvalidParameter.Account.AccountNamePrefix', 'errorMessage' => 'The account name prefix is invalid.', 'description' => ''], + ['errorCode' => 'InvalidParameter.Account.AccountNamePrefix.Length', 'errorMessage' => 'The account name prefix exceeds the length limit.', 'description' => '账号名称前缀长度超出限制。'], + ['errorCode' => 'NotSupport.Site.Action', 'errorMessage' => 'Site does not allow current action.', 'description' => '该操作不支持当前站点。'], ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], - [ - 'errorCode' => 'EntityNotExists.Folder', - 'errorMessage' => 'The resource directory folder does not exist.', - ], + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => '当前账号未启用资源目录,请先启用资源目录。'], + ['errorCode' => 'EntityNotExists.Folder', 'errorMessage' => 'The resource directory folder does not exist.', 'description' => '资源夹不存在,请先创建资源夹。'], ], 409 => [ - [ - 'errorCode' => 'LimitExceeded.Account', - 'errorMessage' => 'The maximum number of member accounts in a resource directory exceeds the limit.', - ], - [ - 'errorCode' => 'InvalidParameter.Account.DisplayName.AlreadyUsed', - 'errorMessage' => 'The displayname of account has been used.', - ], - [ - 'errorCode' => 'EntityAlreadyExists.ResourceDirectory.Account', - 'errorMessage' => 'The email address that the system generates when you create a member account already exists. Try again later.', - ], - [ - 'errorCode' => 'Invalid.PayRelation', - 'errorMessage' => 'Failed to create a member. The specified billing account is unavailable. Please change to another billing account and try again.', - ], - [ - 'errorCode' => 'NotSupport.PayerAccountInAnotherResourceDirectory', - 'errorMessage' => 'The specified settlement account does not exist in the resource directory. You must specify a valid settlement account.', - ], - [ - 'errorCode' => 'CreateAccountDisabled', - 'errorMessage' => 'The specified resource directory cannot create a new account.', - ], - [ - 'errorCode' => 'PaymentAccountEnterpriseVerifyError', - 'errorMessage' => 'The type of the payment account is not enterprise verified.', - ], - [ - 'errorCode' => 'PaymentAccountFinancialRelationshipVerifyError', - 'errorMessage' => 'The payment account must not be the beneficiary account from other financial relationships.', - ], - [ - 'errorCode' => 'PaymentAccountEnterpriseTypeError', - 'errorMessage' => 'The type of the payment account is not enterprise.', - ], - [ - 'errorCode' => 'PaymentAccountFinancialRelationshipsChangeFrequencyVerifyError', - 'errorMessage' => 'The financial relationship of payment account changes too frequently. Please try again later.', - ], - [ - 'errorCode' => 'MemberAccountVirtualCloudOperatorVerifyError', - 'errorMessage' => 'The type of the member account must not be virtual operator.', - ], - [ - 'errorCode' => 'MemberAccountResellerVerifyError', - 'errorMessage' => 'The type of the member account must not be reseller.', - ], - [ - 'errorCode' => 'PaymentAccountVirtualCloudOperatorVerifyError', - 'errorMessage' => 'The type of the payment account must not be virtual operator.', - ], - [ - 'errorCode' => 'PaymentAccountResellerVerifyError', - 'errorMessage' => 'The type of the payment account must not be reseller.', - ], - [ - 'errorCode' => 'PaymentAccountCreditIdentityTypeError', - 'errorMessage' => 'The identity of the payment account is not credit.', - ], - [ - 'errorCode' => 'InconsistentEnterpriseNameError', - 'errorMessage' => 'The enterprise name of the payment account and the member account must be consistent.', - ], - [ - 'errorCode' => 'PaymentAccountEnterpriseInvoiceError', - 'errorMessage' => 'No enterprise invoice header information is set for the payment account.', - ], - [ - 'errorCode' => 'UnknownFinancialError', - 'errorMessage' => 'An unknown financial error occurred.', - ], - [ - 'errorCode' => 'BusinessRestricted', - 'errorMessage' => 'Business is restricted. Please contact your customer service manager.', - ], - [ - 'errorCode' => 'FundAccountHasArrearsAmount', - 'errorMessage' => 'There are arrears in the current payment account. You cannot change the payment account. Please settle the arrears and try again.', - ], - [ - 'errorCode' => 'FundAccountOwnerPayedByOthers', - 'errorMessage' => 'If the payment has been made by another account, it is not allowed to be used as the main payment account.', - ], - [ - 'errorCode' => 'UserOwnFundAccountPayForOthers', - 'errorMessage' => 'If the account has been used as the main payment account, it is not allowed to set up payment by others.', - ], - [ - 'errorCode' => 'EcoRelationCheckFailed', - 'errorMessage' => 'Accounts associated with partners are not allowed to set up agency payment relationships.', - ], - [ - 'errorCode' => 'NotSupport.SettingResellAccountType', - 'errorMessage' => 'The current account does not support setting the resellAccountType for members.', - ], + ['errorCode' => 'LimitExceeded.Account', 'errorMessage' => 'The maximum number of member accounts in a resource directory exceeds the limit.', 'description' => '资源目录中的成员数量超出限制。'], + ['errorCode' => 'InvalidParameter.Account.DisplayName.AlreadyUsed', 'errorMessage' => 'The displayname of account has been used.', 'description' => '显示名已被占用,请更换其他名称。'], + ['errorCode' => 'EntityAlreadyExists.ResourceDirectory.Account', 'errorMessage' => 'The email address that the system generates when you create a member account already exists. Try again later.', 'description' => '创建成员时系统生成的邮箱已被占用,请重试。'], + ['errorCode' => 'Invalid.PayRelation', 'errorMessage' => 'Failed to create a member. The specified billing account is unavailable. Please change to another billing account and try again.', 'description' => '成员创建失败。您选择的结算账号不可用,请更换后重新尝试。'], + ['errorCode' => 'NotSupport.PayerAccountInAnotherResourceDirectory', 'errorMessage' => 'The specified settlement account does not exist in the resource directory. You must specify a valid settlement account.', 'description' => ''], + ['errorCode' => 'CreateAccountDisabled', 'errorMessage' => 'The specified resource directory cannot create a new account.', 'description' => ''], + ['errorCode' => 'PaymentAccountEnterpriseVerifyError', 'errorMessage' => 'The type of the payment account is not enterprise verified.', 'description' => '结算账号不是企业实名类型。'], + ['errorCode' => 'PaymentAccountFinancialRelationshipVerifyError', 'errorMessage' => 'The payment account must not be the beneficiary account from other financial relationships.', 'description' => '结算账号不能是其他财务关系的财务子账号。'], + ['errorCode' => 'PaymentAccountEnterpriseTypeError', 'errorMessage' => 'The type of the payment account is not enterprise.', 'description' => '结算账号不是企业类型。'], + ['errorCode' => 'PaymentAccountFinancialRelationshipsChangeFrequencyVerifyError', 'errorMessage' => 'The financial relationship of payment account changes too frequently. Please try again later.', 'description' => '结算账号的财务关系变更太频繁。请稍后重试。'], + ['errorCode' => 'MemberAccountVirtualCloudOperatorVerifyError', 'errorMessage' => 'The type of the member account must not be virtual operator.', 'description' => ''], + ['errorCode' => 'MemberAccountResellerVerifyError', 'errorMessage' => 'The type of the member account must not be reseller.', 'description' => ''], + ['errorCode' => 'PaymentAccountVirtualCloudOperatorVerifyError', 'errorMessage' => 'The type of the payment account must not be virtual operator.', 'description' => '结算账号不能是虚拟运营商类型。'], + ['errorCode' => 'PaymentAccountResellerVerifyError', 'errorMessage' => 'The type of the payment account must not be reseller.', 'description' => '结算账号不能是分销商类型。'], + ['errorCode' => 'PaymentAccountCreditIdentityTypeError', 'errorMessage' => 'The identity of the payment account is not credit.', 'description' => ''], + ['errorCode' => 'InconsistentEnterpriseNameError', 'errorMessage' => 'The enterprise name of the payment account and the member account must be consistent.', 'description' => ''], + ['errorCode' => 'PaymentAccountEnterpriseInvoiceError', 'errorMessage' => 'No enterprise invoice header information is set for the payment account.', 'description' => '结算账号的企业发票抬头信息未设置。'], + ['errorCode' => 'UnknownFinancialError', 'errorMessage' => 'An unknown financial error occurred.', 'description' => '未知的财资错误。'], + ['errorCode' => 'BusinessRestricted', 'errorMessage' => 'Business is restricted. Please contact your customer service manager.', 'description' => '业务受限,请联系您的客户经理处理。'], + ['errorCode' => 'FundAccountHasArrearsAmount', 'errorMessage' => 'There are arrears in the current payment account. You cannot change the payment account. Please settle the arrears and try again.', 'description' => '当前付款账户存在欠费,您不可变更付款账户,请结清欠费后重试。'], + ['errorCode' => 'FundAccountOwnerPayedByOthers', 'errorMessage' => 'If the payment has been made by another account, it is not allowed to be used as the main payment account.', 'description' => '已经由其他账号代付的,不允许再作为代付主账号。'], + ['errorCode' => 'UserOwnFundAccountPayForOthers', 'errorMessage' => 'If the account has been used as the main payment account, it is not allowed to set up payment by others.', 'description' => '已经作为代付主账号的,不允许再设置由他人代付。'], + ['errorCode' => 'EcoRelationCheckFailed', 'errorMessage' => 'Accounts associated with partners are not allowed to set up agency payment relationships.', 'description' => '生态伙伴关联的账号,不允许设置代付关系。'], + ['errorCode' => 'NotSupport.SettingResellAccountType', 'errorMessage' => 'The current account does not support setting the resellAccountType for members.', 'description' => '当前账号不支持设置成员的身份类型。'], + ['errorCode' => 'InvalidParameter.Email.AlreadyUsed', 'errorMessage' => 'The email has been used.', 'description' => '邮箱已被占用,请更换其他邮箱。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Account\\": {\\n \\"Status\\": \\"CreateSuccess\\",\\n \\"Type\\": \\"ResourceAccount\\",\\n \\"DisplayName\\": \\"Dev\\",\\n \\"FolderId\\": \\"fd-r23M55****\\",\\n \\"ResourceDirectoryId\\": \\"rd-3G****\\",\\n \\"JoinTime\\": \\"2020-12-31T03:37:39.456Z\\",\\n \\"AccountId\\": \\"112730938585****\\",\\n \\"JoinMethod\\": \\"created\\",\\n \\"ModifyTime\\": \\"2020-12-31T03:37:39.456Z\\",\\n \\"AccountName\\": \\"alice@rd-3g****.aliyunid.com\\"\\n },\\n \\"RequestId\\": \\"B356A415-D860-43E5-865A-E2193D62BBD6\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateResourceAccountResponse>\\n <Account>\\n <Status>CreateSuccess</Status>\\n <Type>ResourceAccount</Type>\\n <DisplayName>Dev</DisplayName>\\n <FolderId>fd-r23M55****</FolderId>\\n <ResourceDirectoryId>rd-3G****</ResourceDirectoryId>\\n <JoinTime>2020-12-31T03:37:39.456Z</JoinTime>\\n <AccountId>112730938585****</AccountId>\\n <JoinMethod>created</JoinMethod>\\n <ModifyTime>2020-12-31T03:37:39.456Z</ModifyTime>\\n <AccountName>alice@rd-3g****.aliyunid.com</AccountName>\\n </Account>\\n <RequestId>B356A415-D860-43E5-865A-E2193D62BBD6</RequestId>\\n</CreateResourceAccountResponse>","errorExample":""}]', 'title' => '创建成员', 'summary' => '调用CreateResourceAccount创建资源账号类型的成员。', 'description' => '在资源目录内,成员作为资源容器,是一种资源分组单位。成员通常用于指代一个项目或应用,每个成员中的资源相对其他成员中的资源是物理隔离的。'."\n" @@ -1853,51 +1158,43 @@ 'requestParamsDescription' => ' 关于公共请求参数的详情,请参见[公共参数](~~159973~~)。', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', - ], - 'GetAccount' => [ - 'summary' => '查询成员信息。', - 'methods' => [ - 'post', - 'get', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateResourceAccount'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'resourcemanager:CreateResourceAccount', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Folder', 'arn' => 'acs:resourcemanager:*:{#accountId}:folder/{#ResourceDirectoryPath}'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Account\\": {\\n \\"Status\\": \\"CreateSuccess\\",\\n \\"Type\\": \\"ResourceAccount\\",\\n \\"DisplayName\\": \\"Dev\\",\\n \\"FolderId\\": \\"fd-r23M55****\\",\\n \\"ResourceDirectoryId\\": \\"rd-3G****\\",\\n \\"JoinTime\\": \\"2020-12-31T03:37:39.456Z\\",\\n \\"AccountId\\": \\"112730938585****\\",\\n \\"JoinMethod\\": \\"created\\",\\n \\"ModifyTime\\": \\"2020-12-31T03:37:39.456Z\\",\\n \\"AccountName\\": \\"alice@rd-3g****.aliyunid.com\\"\\n },\\n \\"RequestId\\": \\"B356A415-D860-43E5-865A-E2193D62BBD6\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateResourceAccountResponse>\\n <Account>\\n <Status>CreateSuccess</Status>\\n <Type>ResourceAccount</Type>\\n <DisplayName>Dev</DisplayName>\\n <FolderId>fd-r23M55****</FolderId>\\n <ResourceDirectoryId>rd-3G****</ResourceDirectoryId>\\n <JoinTime>2020-12-31T03:37:39.456Z</JoinTime>\\n <AccountId>112730938585****</AccountId>\\n <JoinMethod>created</JoinMethod>\\n <ModifyTime>2020-12-31T03:37:39.456Z</ModifyTime>\\n <AccountName>alice@rd-3g****.aliyunid.com</AccountName>\\n </Account>\\n <RequestId>B356A415-D860-43E5-865A-E2193D62BBD6</RequestId>\\n</CreateResourceAccountResponse>","errorExample":""}]', + ], + 'DeclineHandshake' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - 'riskType' => 'none', - 'chargeType' => 'free', - ], + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ - 'name' => 'AccountId', - 'in' => 'query', - 'schema' => [ - 'description' => '成员ID。', - 'type' => 'string', - 'required' => true, - 'example' => '181761095690****', - ], - ], - [ - 'name' => 'IncludeTags', + 'name' => 'HandshakeId', 'in' => 'query', - 'schema' => [ - 'description' => '是否返回标签信息。取值:'."\n" - ."\n" - .'- false(默认值):不返回。'."\n" - .'- true:返回。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '邀请ID。', 'type' => 'string', 'required' => true, 'example' => 'h-ycm4rp****'], ], ], 'responses' => [ @@ -1906,175 +1203,61 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'Account' => [ - 'description' => '成员信息。', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE'], + 'Handshake' => [ + 'description' => '邀请信息。', 'type' => 'object', 'properties' => [ - 'Status' => [ - 'description' => '成员加入状态。取值:'."\n" - ."\n" - .'- CreateSuccess:创建成功。'."\n" - .'- PromoteVerifying:升级确认中。'."\n" - .'- PromoteFailed:升级失败。'."\n" - .'- PromoteExpired:升级过期。'."\n" - .'- PromoteCancelled:升级取消。'."\n" - .'- PromoteSuccess:升级成功。'."\n" - .'- InviteSuccess:邀请成功。', - 'type' => 'string', - 'example' => 'CreateSuccess', - ], - 'Type' => [ - 'description' => '成员类型。取值:'."\n" - ."\n" - .'- CloudAccount:云账号。'."\n" - .'- ResourceAccount:资源账号。', - 'type' => 'string', - 'example' => 'ResourceAccount', - ], - 'DisplayName' => [ - 'description' => '成员名称。', - 'type' => 'string', - 'example' => 'admin', - ], - 'FolderId' => [ - 'description' => '资源夹ID。', - 'type' => 'string', - 'example' => 'fd-bVaRIG****', - ], - 'ResourceDirectoryId' => [ - 'description' => '资源目录ID。', - 'type' => 'string', - 'example' => 'rd-k3****', - ], - 'IdentityInformation' => [ - 'description' => '实名认证信息。', - 'type' => 'string', - 'example' => 'aliyun-admin', - ], - 'JoinTime' => [ - 'description' => '成员加入时间。', - 'type' => 'string', - 'example' => '2015-01-23T12:33:18Z', - ], - 'AccountId' => [ - 'description' => '成员ID。', - 'type' => 'string', - 'example' => '181761095690****', - ], - 'JoinMethod' => [ - 'description' => '成员加入方式。取值:'."\n" - ."\n" - .'- invited:邀请。'."\n" - .'- created:创建。', - 'type' => 'string', - 'example' => 'created', - ], - 'ModifyTime' => [ - 'description' => '成员修改时间。', - 'type' => 'string', - 'example' => '2015-01-23T12:33:18Z', - ], - 'AccountName' => [ - 'description' => '账号名称。', - 'type' => 'string', - 'example' => 'someone@example.com', - ], - 'ResourceDirectoryPath' => [ - 'description' => '成员在资源目录中的路径ID(RDPath)。', - 'type' => 'string', - 'example' => 'rd-k3****/r-Wm****/fd-bVaRIG****/181761095690****', - ], - 'Tags' => [ - 'description' => '标签。', - 'type' => 'array', - 'items' => [ - 'description' => '标签列表。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '标签键。', - 'type' => 'string', - 'example' => 'tag_key', - ], - 'Value' => [ - 'description' => '标签值。', - 'type' => 'string', - 'example' => 'tag_value', - ], - ], - ], - ], - 'Location' => [ - 'description' => '成员所在资源目录的位置。', - 'type' => 'string', - 'example' => 'root/AlRd****/Z5Aa****', - ], - 'EmailStatus' => [ - 'description' => '邮箱状态。取值:'."\n" - ."\n" - .'- 空:不存在邮箱修改记录。'."\n" - .'- WAIT_MODIFY:正在修改中。'."\n" - .'- CANCELLED:修改取消。'."\n" - .'- EXPIRED:修改过期。', - 'type' => 'string', - 'example' => 'WAIT_MODIFY', - ], - 'HasSecureMobilePhone' => [ - 'description' => '成员是否已绑定安全手机。取值:'."\n" - .'- true:成员已绑定安全手机。'."\n" - .'- false:成员未绑定安全手机。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'SecureMobilePhone' => [ - 'description' => '安全手机号码。', - 'type' => 'string', - 'example' => '1234567****', - ], + 'Status' => ['description' => '邀请状态。'."\n" + ."\n" + .'- Pending:等待确认。'."\n" + .'- Accepted:已接受。'."\n" + .'- Cancelled:已取消。'."\n" + .'- Declined:已拒绝。'."\n" + .'- Expired:超时。', 'type' => 'string', 'example' => 'Declined'], + 'ExpireTime' => ['description' => '邀请的过期时间。', 'type' => 'string', 'example' => '2018-08-10T09:55:41Z'], + 'ResourceDirectoryId' => ['description' => '资源目录ID。', 'type' => 'string', 'example' => 'rd-abcdef****'], + 'CreateTime' => ['description' => '邀请的创建时间。', 'type' => 'string', 'example' => '2018-08-10T09:55:41Z'], + 'Note' => ['description' => '备注。', 'type' => 'string', 'example' => '欢迎您加入'], + 'TargetEntity' => ['description' => '被邀请账号ID或登录邮箱。', 'type' => 'string', 'example' => 'someone@example.com'], + 'MasterAccountId' => ['description' => '资源目录主账号ID。', 'type' => 'string', 'example' => '172841235500****'], + 'MasterAccountName' => ['description' => '资源目录主账号名称。', 'type' => 'string', 'example' => 'Alice'], + 'ModifyTime' => ['description' => '邀请的修改时间。', 'type' => 'string', 'example' => '2018-08-10T09:55:41Z'], + 'TargetType' => ['description' => '被邀请账号类型。'."\n" + ."\n" + .'- Account:账号ID。'."\n" + .'- Email:账号登录邮箱。', 'type' => 'string', 'example' => 'Email'], + 'HandshakeId' => ['description' => '邀请ID。', 'type' => 'string', 'example' => 'h-ycm4rp****'], ], ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE', - ], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'MissingParameter.AccountId', - 'errorMessage' => 'You must specify AccountId.', - ], - [ - 'errorCode' => 'InvalidParameter.AccountId', - 'errorMessage' => 'The AccountId is invalid.', - ], + ['errorCode' => 'MissingParameter.HandshakeId', 'errorMessage' => 'You must specify HandshakeId.', 'description' => ''], + ['errorCode' => 'InvalidParameter.HandshakeId', 'errorMessage' => 'The HandshakeId is invalid.', 'description' => ''], ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.Account', - 'errorMessage' => 'This resource directory account does not exist.', - ], - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], + ['errorCode' => 'EntityNotExists.Handshake', 'errorMessage' => 'The specified handshake does not exist.', 'description' => ''], + ], + 409 => [ + ['errorCode' => 'HandshakeStatusMismatch', 'errorMessage' => 'The invitation is invalid.', 'description' => ''], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Account\\": {\\n \\"Status\\": \\"CreateSuccess\\",\\n \\"Type\\": \\"ResourceAccount\\",\\n \\"DisplayName\\": \\"admin\\",\\n \\"FolderId\\": \\"fd-bVaRIG****\\",\\n \\"ResourceDirectoryId\\": \\"rd-k3****\\",\\n \\"IdentityInformation\\": \\"aliyun-admin\\",\\n \\"JoinTime\\": \\"2015-01-23T12:33:18Z\\",\\n \\"AccountId\\": \\"181761095690****\\",\\n \\"JoinMethod\\": \\"created\\",\\n \\"ModifyTime\\": \\"2015-01-23T12:33:18Z\\",\\n \\"AccountName\\": \\"someone@example.com\\",\\n \\"ResourceDirectoryPath\\": \\"rd-k3****/r-Wm****/fd-bVaRIG****/181761095690****\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"tag_key\\",\\n \\"Value\\": \\"tag_value\\"\\n }\\n ],\\n \\"Location\\": \\"root/AlRd****/Z5Aa****\\",\\n \\"EmailStatus\\": \\"WAIT_MODIFY\\",\\n \\"HasSecureMobilePhone\\": true,\\n \\"SecureMobilePhone\\": \\"1234567****\\"\\n },\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\"\\n}","errorExample":""},{"type":"xml","example":"<GetAccountResponse>\\n <Account>\\n <Status>CreateSuccess</Status>\\n <Type>ResourceAccount</Type>\\n <DisplayName>admin</DisplayName>\\n <FolderId>fd-bVaRIG****</FolderId>\\n <ResourceDirectoryId>rd-k3****</ResourceDirectoryId>\\n <IdentityInformation>aliyun-admin</IdentityInformation>\\n <JoinTime>2015-01-23T12:33:18Z</JoinTime>\\n <AccountId>181761095690****</AccountId>\\n <JoinMethod>created</JoinMethod>\\n <ModifyTime>2015-01-23T12:33:18Z</ModifyTime>\\n <AccountName>someone@example.com</AccountName>\\n <ResourceDirectoryPath>rd-k3****/r-Wm****/fd-bVaRIG****/181761095690****</ResourceDirectoryPath>\\n <Tags>\\n <Key>tag_key</Key>\\n <Value>tag_value</Value>\\n </Tags>\\n <Location>root/AlRd****/Z5Aa****</Location>\\n <EmailStatus>WAIT_MODIFY</EmailStatus>\\n </Account>\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\n</GetAccountResponse>","errorExample":""}]', - 'title' => '查询成员信息', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\",\\n \\"Handshake\\": {\\n \\"Status\\": \\"Declined\\",\\n \\"ExpireTime\\": \\"2018-08-10T09:55:41Z\\",\\n \\"ResourceDirectoryId\\": \\"rd-abcdef****\\",\\n \\"CreateTime\\": \\"2018-08-10T09:55:41Z\\",\\n \\"Note\\": \\"欢迎您加入\\",\\n \\"TargetEntity\\": \\"someone@example.com\\",\\n \\"MasterAccountId\\": \\"172841235500****\\",\\n \\"MasterAccountName\\": \\"Alice\\",\\n \\"ModifyTime\\": \\"2018-08-10T09:55:41Z\\",\\n \\"TargetType\\": \\"Email\\",\\n \\"HandshakeId\\": \\"h-ycm4rp****\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<DeclineHandshakeResponse>\\r\\n\\t<RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\r\\n\\t<Handshake>\\r\\n\\t\\t<HandshakeId>h-ycm4rp****</HandshakeId>\\r\\n\\t\\t<ResourceDirectoryId>rd-abcdef****</ResourceDirectoryId>\\r\\n\\t\\t<MasterAccountId>172841235500****</MasterAccountId>\\r\\n\\t\\t<MasterAccountName>Alice</MasterAccountName>\\r\\n\\t\\t<TargetEntity>someone@example.com</TargetEntity>\\r\\n\\t\\t<TargetType>Email</TargetType>\\r\\n\\t\\t<Note>欢迎您加入</Note>\\r\\n\\t\\t<Status>Declined</Status>\\r\\n\\t\\t<CreateTime>2018-08-10T09:55:41Z</CreateTime>\\r\\n\\t\\t<ModifyTime>2018-08-10T09:55:41Z</ModifyTime>\\r\\n\\t\\t<ExpireTime>2018-08-17T09:55:41Z7</ExpireTime>\\r\\n\\t</Handshake>\\r\\n</DeclineHandshakeResponse>\\t\\r\\n","errorExample":""}]', + 'title' => '拒绝邀请', + 'summary' => '调用DeclineHandshake拒绝邀请。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], ], - 'MoveAccount' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'DeleteAccount' => [ + 'summary' => '调用DeleteAccount删除资源类型的成员。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -2082,28 +1265,26 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - ], + 'systemTags' => ['operationType' => 'delete'], 'parameters' => [ [ 'name' => 'AccountId', 'in' => 'query', - 'schema' => [ - 'description' => '需要移动的账号ID。', - 'type' => 'string', - 'required' => true, - 'example' => '12323344****', - ], + 'schema' => ['description' => '待删除的成员ID。', 'type' => 'string', 'required' => true, 'example' => '169946124551****'], ], [ - 'name' => 'DestinationFolderId', + 'name' => 'AbandonableCheckId', 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'description' => '目标资源夹ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'fd-bVaRIG****', + 'description' => '可以选择放弃并继续执行成员删除的检查项ID。'."\n" + ."\n" + .'该ID从[GetAccountDeletionCheckResult](~~GetAccountDeletionCheckResult~~)的返回参数AbandonableChecks中获取。', + 'type' => 'array', + 'items' => ['description' => '可以选择放弃并继续执行成员删除的检查项ID。'."\n" + ."\n" + .'该ID从[GetAccountDeletionCheckResult](~~GetAccountDeletionCheckResult~~)的返回参数AbandonableChecks中获取。', 'type' => 'string', 'required' => false, 'example' => 'NON_SP_cs'], + 'required' => false, ], ], ], @@ -2113,70 +1294,50 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '009429F8-C1C0-5872-B674-A6C2333B9647'], + 'DeletionType' => ['description' => '删除类型。取值:'."\n" + ."\n" + .'- 0:直接删除。如果成员最近30天内不存在后付费资源,则系统会直接删除该成员。'."\n" + .'- 1:静默期删除。如果成员最近30天内存在后付费资源,则会进入静默期。等待静默期结束后,系统才会开始删除该成员。关于静默期的更多信息,请参见[什么是成员删除的静默期](~~446079~~)。', 'type' => 'string', 'example' => '0'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'MissingParameter.AccountId', - 'errorMessage' => 'You must specify AccountId.', - ], - [ - 'errorCode' => 'InvalidParameter.AccountId', - 'errorMessage' => 'The AccountId is invalid.', - ], - [ - 'errorCode' => 'MissingParameter.DestinationFolderId', - 'errorMessage' => 'You must specify DestinationFolderId.', - ], - [ - 'errorCode' => 'InvalidParameter.DestinationFolderId', - 'errorMessage' => 'The DestinationFolderId is invalid.', - ], + ['errorCode' => 'MissingParameter.AccountId', 'errorMessage' => 'You must specify AccountId.', 'description' => ''], + ['errorCode' => 'InvalidParameter.AccountId', 'errorMessage' => 'The AccountId is invalid.', 'description' => ''], ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.Account', - 'errorMessage' => 'This resource directory account does not exist.', - ], - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], - [ - 'errorCode' => 'EntityNotExists.Folder', - 'errorMessage' => 'The resource directory folder does not exist.', - ], + ['errorCode' => 'EntityNotExists.Account', 'errorMessage' => 'This resource directory account does not exist.', 'description' => ''], + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => ''], ], 409 => [ - [ - 'errorCode' => 'AccountTypeOrStatusMismatch', - 'errorMessage' => 'You cannot perform the action on the member account.', - ], + ['errorCode' => 'AccountTypeOrStatusMismatch', 'errorMessage' => 'You cannot perform the action on the member account.', 'description' => ''], + ['errorCode' => 'NoLicense.ResourceDirectory', 'errorMessage' => 'The resource directory has not enabled the delete operation.', 'description' => ''], + ['errorCode' => 'UnknownError.Account', 'errorMessage' => 'Delete failed. An unknown error occurred. Please try again later.', 'description' => ''], + ['errorCode' => 'AccountNotExist.DeleteAccount', 'errorMessage' => 'The deletion failed. The account does not exist. Please confirm whether it has been deleted.', 'description' => ''], + ['errorCode' => 'ExistProcessingDeleteFlow.DeleteAccount', 'errorMessage' => 'The request is invalid. The account is already in the process of deletion. Please do not repeat the operation.', 'description' => ''], + ['errorCode' => 'CreditControlBlock.DeleteAccount', 'errorMessage' => 'The deletion failed. There are unsettled bills in the current account. Please settle them first and try again.', 'description' => ''], + ['errorCode' => 'SpBlock.DeleteAccount', 'errorMessage' => 'The deletion failed. There is a specific product under the current account. Please clear it and try again.', 'description' => ''], + ['errorCode' => 'PeripheralError.DeleteAccount', 'errorMessage' => 'The deletion failed. The deletion process is abnormal. Please try again later.', 'description' => ''], + ['errorCode' => 'MemberTypeError.DeleteAccount', 'errorMessage' => 'Cloud account type members do not support deletion.', 'description' => ''], + ['errorCode' => 'CallerIdentityError.DeleteAccount', 'errorMessage' => 'Please use the RAM user or role of the management account to delete.', 'description' => ''], + ['errorCode' => 'ExistPrepaidInstance.DeleteAccount', 'errorMessage' => 'The deletion failed. There are prepaid products under the current account. Please release them and try again.', 'description' => ''], + ['errorCode' => 'ForbidDelete.Account', 'errorMessage' => 'Delete is prohibited. The current account is abnormal. Please contact customer service.', 'description' => ''], + ['errorCode' => 'QuotaExceeded.DeleteAccount', 'errorMessage' => 'You have exceeded delete account quota for the past 30 days.', 'description' => ''], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<MoveAccountResponse>\\r\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\r\\n</MoveAccountResponse>","errorExample":""}]', - 'title' => '移动成员', - 'summary' => '调用MoveAccount将成员移动到另一个资源夹。', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"009429F8-C1C0-5872-B674-A6C2333B9647\\",\\n \\"DeletionType\\": \\"0\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteAccountResponse>\\n <RequestId>55B22096-0D0C-542D-9A01-9B95977D3A10</RequestId>\\n <DeletionType>0</DeletionType>\\n</DeleteAccountResponse>","errorExample":""}]', + 'title' => '删除资源账号', + 'description' => '删除成员前,建议您先调用[CheckAccountDelete](~~CheckAccountDelete~~)和[GetAccountDeletionCheckResult](~~GetAccountDeletionCheckResult~~),对成员进行删除前的条件检查。只有符合删除条件的成员,才能调用DeleteAccount成功将其删除。'."\n" + ."\n" + .'成功提交成员删除申请后,您可以通过[GetAccountDeletionStatus](~~GetAccountDeletionStatus~~)查询删除状态。且成员一旦删除,成员中的所有资源及数据都会被删除,您无法再次登录和使用它,将无法找回,请您谨慎操作。关于成员删除的更多信息,请参见[删除资源账号类型的成员](~~446078~~)。', + 'changeSet' => [], ], - 'UpdateAccount' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'DeleteControlPolicy' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -2184,319 +1345,76 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - ], + 'systemTags' => ['operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ - 'name' => 'NewDisplayName', - 'in' => 'query', - 'schema' => [ - 'description' => '新的成员名称。'."\n" - .'> `NewDisplayName`与`NewAccountType`任选其一设置,不能同时设置。', - 'type' => 'string', - 'required' => false, - 'example' => 'admin', - ], - ], - [ - 'name' => 'NewAccountType', - 'in' => 'query', - 'schema' => [ - 'description' => '新的成员类型。取值:'."\n" - ."\n" - .'- ResourceAccount:将指定的云账号切换为资源账号。'."\n" - .'- CloudAccount:将指定的资源账号切换为云账号。'."\n" - ."\n" - .'> `NewDisplayName`与`NewAccountType`任选其一设置,不能同时设置。', - 'type' => 'string', - 'required' => false, - 'example' => 'ResourceAccount', - ], - ], - [ - 'name' => 'AccountId', - 'in' => 'query', - 'schema' => [ - 'description' => '成员ID。', - 'type' => 'string', - 'required' => true, - 'example' => '12323344****', - ], - ], - [ - 'name' => 'DryRun', + 'name' => 'PolicyId', 'in' => 'query', - 'schema' => [ - 'description' => '是否只预检此次请求。取值:'."\n" - .'- true:发送检查请求,不会修改成员信息。检查项包括成员状态是否可以修改、成员是否具有安全信息等。如果检查不通过,则返回对应错误码。'."\n" - .'- false(默认):发送正常请求,通过检查后直接修改成员。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => '管控策略ID。', 'type' => 'string', 'required' => true, 'example' => 'cp-SImPt8GCEwiq****'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回参数。', + 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'Account' => [ - 'description' => '成员信息。', - 'type' => 'object', - 'properties' => [ - 'Status' => [ - 'description' => '成员加入状态。取值:'."\n" - ."\n" - .'- CreateSuccess:创建成功。'."\n" - .'- InviteSuccess:邀请成功。'."\n" - .'- Removed:已移除。'."\n" - .'- SwitchSuccess:切换成功。', - 'type' => 'string', - 'example' => 'CreateSuccess', - ], - 'Type' => [ - 'description' => '成员类型。取值:'."\n" - ."\n" - .'- CloudAccount:云账号。'."\n" - .'- ResourceAccount:资源账号。', - 'type' => 'string', - 'example' => 'ResourceAccount', - ], - 'DisplayName' => [ - 'description' => '成员名称。', - 'type' => 'string', - 'example' => 'admin', - ], - 'FolderId' => [ - 'description' => '资源夹ID。', - 'type' => 'string', - 'example' => 'fd-bVaRIG****', - ], - 'ResourceDirectoryId' => [ - 'description' => '资源目录ID。', - 'type' => 'string', - 'example' => 'rd-k3****', - ], - 'JoinTime' => [ - 'description' => '成员加入时间(UTC时间)。', - 'type' => 'string', - 'example' => '2015-01-23T12:33:18Z', - ], - 'AccountId' => [ - 'description' => '成员ID。', - 'type' => 'string', - 'example' => '12323344****', - ], - 'JoinMethod' => [ - 'description' => '成员加入方式。取值:'."\n" - ."\n" - .'- invited:邀请。'."\n" - .'- created:创建。', - 'type' => 'string', - 'example' => 'created', - ], - 'ModifyTime' => [ - 'description' => '成员修改时间(UTC时间)。', - 'type' => 'string', - 'example' => '2015-01-23T12:33:18Z', - ], - 'AccountName' => [ - 'description' => '阿里云账号名称。', - 'type' => 'string', - 'example' => 'ecs-manager@aliyun.com', - ], - ], - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'C8541E06-B207-46BF-92C9-DC8DE4609D75'], ], ], ], ], 'errorCodes' => [ 404 => [ - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], - [ - 'errorCode' => 'EntityNotExists.Account', - 'errorMessage' => 'This resource directory account does not exist.', - ], + ['errorCode' => 'EntityNotExists.ResourceControlPolicy', 'errorMessage' => 'The specified resource control policy does not exist.', 'description' => '资源管控策略不存在。'], ], 409 => [ - [ - 'errorCode' => 'InvalidParameter.Account.DisplayName.AlreadyUsed', - 'errorMessage' => 'The displayname of account has been used.', - ], - [ - 'errorCode' => 'MissingDisplayNameOrAccountType', - 'errorMessage' => 'Either display name or account type must be specified.', - ], - [ - 'errorCode' => 'AccountTypeMismatch', - 'errorMessage' => 'The type or status of the member account cannot satisfy the current operation.', - ], - [ - 'errorCode' => 'PrimaryAkInUse', - 'errorMessage' => 'The account has the primary AK in use.', - ], - [ - 'errorCode' => 'MissingSecurityInfo', - 'errorMessage' => 'Security information is missing.', - ], - [ - 'errorCode' => 'LegalEntityDifferent', - 'errorMessage' => 'The account legal entity is different from the one of the Management Account.', - ], - [ - 'errorCode' => 'CallerIdentityError', - 'errorMessage' => 'Please use the RAM user or role of the Management Account.', - ], + ['errorCode' => 'InvalidResourceControlPolicyEnablementStatus', 'errorMessage' => 'The resource control policy enablement status is not valid to perform this operation.', 'description' => '在当前的资源管控策略启用状态下,无法进行此操作。 '], + ['errorCode' => 'DeleteConflict.SystemResourceControlPolicy', 'errorMessage' => 'The system resource control policy cannot be deleted.', 'description' => '系统资源管控策略无法删除。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Account\\": {\\n \\"Status\\": \\"CreateSuccess\\",\\n \\"Type\\": \\"ResourceAccount\\",\\n \\"DisplayName\\": \\"admin\\",\\n \\"FolderId\\": \\"fd-bVaRIG****\\",\\n \\"ResourceDirectoryId\\": \\"rd-k3****\\",\\n \\"JoinTime\\": \\"2015-01-23T12:33:18Z\\",\\n \\"AccountId\\": \\"12323344****\\",\\n \\"JoinMethod\\": \\"created\\",\\n \\"ModifyTime\\": \\"2015-01-23T12:33:18Z\\",\\n \\"AccountName\\": \\"ecs-manager@aliyun.com\\"\\n },\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<UpdateAccountResponse>\\r\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\r\\n <Account>\\r\\n <ResourceDirectoryId>rd-k3****</ResourceDirectoryId>\\r\\n <AccountId>12323344****</AccountId>\\r\\n <DisplayName>admin</DisplayName>\\r\\n <FolderId>fd-bVaRIG****</FolderId>\\r\\n <JoinMethod>created</JoinMethod>\\r\\n <JoinTime>2015-01-23T12:33:18Z</JoinTime>\\r\\n <Type>ResourceAccount</Type>\\r\\n <Status>CreateSuccess</Status>\\r\\n <RecordId>06950264-3f0d-4ca9-82dd-6ee7a3d33d6b</RecordId>\\r\\n <ModifyTime>2015-01-23T12:33:18Z</ModifyTime>\\r\\n </Account>\\r\\n</UpdateAccountResponse>","errorExample":""}]', - 'title' => '修改成员', - 'summary' => '调用UpdateAccount修改成员名称或切换成员类型。', - 'description' => '### 前提条件'."\n" - ."\n" - .'- 为确保系统可以记录到管理操作的具体操作者,请使用管理账号下具有资源目录管理权限(AliyunResourceDirectoryFullAccess)的RAM用户或RAM角色调用本API。'."\n" - .'- 资源账号切换为云账号时需要满足的条件,请参见[资源账号切换为云账号](~~111233~~)。'."\n" - .'- 云账号切换为资源账号时需要满足的条件,请参见[云账号切换为资源账号](~~209980~~)。', + 'title' => '删除管控策略', + 'summary' => '调用DeleteControlPolicy删除自定义管控策略。', + 'description' => '对于已绑定了资源夹或成员账号的自定义管控策略,需要先调用[DetachControlPolicy](~~DetachControlPolicy~~)解绑,然后才能删除。', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', - ], - 'ListAccounts' => [ - 'summary' => '查询整个资源目录下的所有成员列表。', - 'methods' => [ - 'post', - 'get', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteControlPolicy'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'resourcemanager:DeleteControlPolicy', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'ControlPolicy', 'arn' => 'acs:resourcemanager::{#accountId}:policy/controlpolicy/{#PolicyId}'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C8541E06-B207-46BF-92C9-DC8DE4609D75\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<DeleteControlPolicyResponse>\\r\\n\\t<RequestId>C8541E06-B207-46BF-92C9-DC8DE4609D75</RequestId>\\r\\n</DeleteControlPolicyResponse>\\t\\r\\n","errorExample":""}]', + ], + 'DeleteFolder' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'list', - 'riskType' => 'none', - 'chargeType' => 'free', - ], + 'systemTags' => ['operationType' => 'delete'], 'parameters' => [ [ - 'name' => 'PageNumber', - 'in' => 'query', - 'schema' => [ - 'description' => '页码。'."\n" - ."\n" - .'起始值:1。默认值:1。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], - ], - [ - 'name' => 'PageSize', - 'in' => 'query', - 'schema' => [ - 'description' => '分页时每页显示的数据行数。'."\n" - ."\n" - .'取值范围:1~100。默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], - ], - [ - 'name' => 'QueryKeyword', - 'in' => 'query', - 'schema' => [ - 'description' => '查询关键字,例如:成员名称。'."\n" - ."\n" - .'支持模糊查询。', - 'type' => 'string', - 'required' => false, - 'example' => 'Advance', - ], - ], - [ - 'name' => 'Tag', - 'in' => 'query', - 'style' => 'flat', - 'schema' => [ - 'description' => '通过标签过滤。', - 'type' => 'array', - 'items' => [ - 'description' => '过滤的标签列表。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '标签键。', - 'type' => 'string', - 'required' => false, - 'example' => 'tag_key', - ], - 'Value' => [ - 'description' => '标签值。', - 'type' => 'string', - 'required' => false, - 'example' => 'tag_value', - ], - ], - 'required' => false, - ], - 'required' => false, - ], - ], - [ - 'name' => 'IncludeTags', - 'in' => 'query', - 'schema' => [ - 'description' => '是否返回标签信息。取值:'."\n" - ."\n" - .'- false(默认值):不返回。'."\n" - .'- true:返回。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - ], - [ - 'name' => 'MaxResults', - 'in' => 'query', - 'schema' => [ - 'description' => '分页时每页显示的数据行数。设置该值后,优先使用NextToken的分页方式。'."\n" - ."\n" - .'取值范围:1~100。默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], - ], - [ - 'name' => 'NextToken', + 'name' => 'FolderId', 'in' => 'query', - 'schema' => [ - 'description' => '用来标记当前开始读取的位置,置空表示从头开始。', - 'type' => 'string', - 'required' => false, - 'example' => 'TGlzdFJlc291cm****', - ], + 'schema' => ['description' => '资源夹ID。', 'type' => 'string', 'required' => true, 'example' => 'fd-ae1in7****'], ], ], 'responses' => [ @@ -2505,196 +1423,38 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'TotalCount' => [ - 'description' => '数据总条数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '7B8A4E7D-6CFF-471D-84DF-195A7A241ECB', - ], - 'PageSize' => [ - 'description' => '分页时每页显示的数据行数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '5', - ], - 'PageNumber' => [ - 'description' => '页码。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'NextToken' => [ - 'description' => '用来表示当前调用返回读取到的位置,空代表数据已经读取完毕。', - 'type' => 'string', - 'example' => 'TGlzdFJlc291cm****', - ], - 'Accounts' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'Account' => [ - 'description' => '成员列表。', - 'type' => 'array', - 'items' => [ - 'description' => '成员列表。', - 'type' => 'object', - 'properties' => [ - 'Status' => [ - 'description' => '成员加入状态。取值:'."\n" - ."\n" - .'- CreateSuccess:创建成功。'."\n" - .'- PromoteVerifying:升级确认中。'."\n" - .'- PromoteFailed:升级失败。'."\n" - .'- PromoteExpired:升级过期。'."\n" - .'- PromoteCancelled:升级取消。'."\n" - .'- PromoteSuccess:升级成功。'."\n" - .'- InviteSuccess:邀请成功。', - 'type' => 'string', - 'example' => 'CreateSuccess', - ], - 'Type' => [ - 'description' => '成员类型。取值:'."\n" - ."\n" - .'- CloudAccount:云账号。'."\n" - .'- ResourceAccount:资源账号。', - 'type' => 'string', - 'example' => 'ResourceAccount', - ], - 'DisplayName' => [ - 'description' => '成员名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'FolderId' => [ - 'description' => '资源夹ID。', - 'type' => 'string', - 'example' => 'fd-QRzuim****', - ], - 'ResourceDirectoryId' => [ - 'description' => '资源目录ID。', - 'type' => 'string', - 'example' => 'rd-3G****', - ], - 'JoinTime' => [ - 'description' => '成员加入时间(UTC时间)。', - 'type' => 'string', - 'example' => '2021-01-18T08:01:50.522Z', - ], - 'AccountId' => [ - 'description' => '成员账号ID。', - 'type' => 'string', - 'example' => '181761095690****', - ], - 'JoinMethod' => [ - 'description' => '成员加入方式。取值:'."\n" - ."\n" - .'- invited:邀请。'."\n" - .'- created:创建。', - 'type' => 'string', - 'example' => 'created', - ], - 'ModifyTime' => [ - 'description' => '成员修改时间(UTC时间)。', - 'type' => 'string', - 'example' => '2021-01-18T08:04:37.668Z', - ], - 'ResourceDirectoryPath' => [ - 'description' => '成员在资源目录中的路径ID(RDPath)。', - 'type' => 'string', - 'example' => 'rd-3G****/r-Wm****/fd-QRzuim****/181761095690****', - ], - 'AccountName' => [ - 'description' => '账号名称。', - 'type' => 'string', - 'example' => 'oxy01414357@alibaba-inc.com', - ], - 'DeletionStatus' => [ - 'description' => '成员删除状态。取值:'."\n" - .'- Checking:检查中。'."\n" - .'- Deleting:删除中。'."\n" - .'- CheckFailed:检查失败。'."\n" - .'- DeleteFailed:删除失败。'."\n" - ."\n" - .'> 当账号未发起删除流程时,该字段为空。', - 'type' => 'string', - 'example' => 'Checking', - ], - 'Tags' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'Tag' => [ - 'description' => '成员所有的标签。', - 'type' => 'array', - 'items' => [ - 'description' => '成员所有的标签列表。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '标签键。', - 'type' => 'string', - 'example' => 'tag_key', - ], - 'Value' => [ - 'description' => '标签值。', - 'type' => 'string', - 'example' => 'tag_value', - ], - ], - ], - ], - ], - ], - ], - ], - ], - ], - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.MaxResults', - 'errorMessage' => 'The MaxResults is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.NextToken', - 'errorMessage' => 'The NextToken is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.NextToken.Length', - 'errorMessage' => 'The maximum length of NextToken (256 characters) is exceeded.', - ], + ['errorCode' => 'MissingParameter.FolderId', 'errorMessage' => 'You must specify FolderId.', 'description' => ''], + ['errorCode' => 'InvalidParameter.FolderId', 'errorMessage' => 'The FolderId is invalid.', 'description' => ''], ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => ''], + ['errorCode' => 'EntityNotExists.Folder', 'errorMessage' => 'The resource directory folder does not exist.', 'description' => ''], + ], + 409 => [ + ['errorCode' => 'DeleteConflict.Folder.SubFolder', 'errorMessage' => 'This folder has sub folders.', 'description' => ''], + ['errorCode' => 'DeleteConflict.Folder.Account', 'errorMessage' => 'This folder has accounts.', 'description' => ''], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"TotalCount\\": 2,\\n \\"RequestId\\": \\"7B8A4E7D-6CFF-471D-84DF-195A7A241ECB\\",\\n \\"PageSize\\": 5,\\n \\"PageNumber\\": 1,\\n \\"NextToken\\": \\"TGlzdFJlc291cm****\\",\\n \\"Accounts\\": {\\n \\"Account\\": [\\n {\\n \\"Status\\": \\"CreateSuccess\\",\\n \\"Type\\": \\"ResourceAccount\\",\\n \\"DisplayName\\": \\"test\\",\\n \\"FolderId\\": \\"fd-QRzuim****\\",\\n \\"ResourceDirectoryId\\": \\"rd-3G****\\",\\n \\"JoinTime\\": \\"2021-01-18T08:01:50.522Z\\",\\n \\"AccountId\\": \\"181761095690****\\",\\n \\"JoinMethod\\": \\"created\\",\\n \\"ModifyTime\\": \\"2021-01-18T08:04:37.668Z\\",\\n \\"ResourceDirectoryPath\\": \\"rd-3G****/r-Wm****/fd-QRzuim****/181761095690****\\",\\n \\"AccountName\\": \\"oxy01414357@alibaba-inc.com\\",\\n \\"DeletionStatus\\": \\"Checking\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"Key\\": \\"tag_key\\",\\n \\"Value\\": \\"tag_value\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ListAccountsResponse>\\n <TotalCount>2</TotalCount>\\n <RequestId>7B8A4E7D-6CFF-471D-84DF-195A7A241ECB</RequestId>\\n <PageSize>1</PageSize>\\n <PageNumber>2</PageNumber>\\n <Accounts>\\n <Status>CreateSuccess</Status>\\n <Type>ResourceAccount</Type>\\n <DisplayName>test</DisplayName>\\n <FolderId>fd-QRzuim****</FolderId>\\n <ResourceDirectoryId>rd-3G****</ResourceDirectoryId>\\n <JoinTime>2021-01-18T08:01:50.522Z</JoinTime>\\n <AccountId>181761095690****</AccountId>\\n <JoinMethod>created</JoinMethod>\\n <ModifyTime>2021-01-18T08:04:37.668Z</ModifyTime>\\n <ResourceDirectoryPath>rd-3G****/r-Wm****/fd-QRzuim****/181761095690****</ResourceDirectoryPath>\\n <Tags>\\n <Key>tag_key</Key>\\n <Value>tag_value</Value>\\n </Tags>\\n </Accounts>\\n</ListAccountsResponse>","errorExample":""}]', - 'title' => '查询整个资源目录下的所有成员列表', - 'description' => '资源目录的管理账号和可信服务的委派管理员账号可以调用该接口。', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<DeleteFolderResponse>\\r\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\r\\n</DeleteFolderResponse>","errorExample":""}]', + 'title' => '删除资源夹', + 'summary' => '调用DeleteFolder删除资源夹。', + 'description' => '删除资源夹前,请确保资源夹下不存在成员或子资源夹。', + 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', + 'changeSet' => [], ], - 'RemoveCloudAccount' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'DeleteMessageContact' => [ + 'summary' => '删除联系人。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -2702,443 +1462,146 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'delete', - ], + 'systemTags' => ['operationType' => 'delete'], 'parameters' => [ [ - 'name' => 'AccountId', + 'name' => 'ContactId', 'in' => 'query', - 'schema' => [ - 'description' => '成员ID。', - 'type' => 'string', - 'required' => true, - 'example' => '177242285274****', - ], + 'schema' => ['description' => '联系人ID。', 'type' => 'string', 'required' => true, 'example' => 'c-qL4HqKONzOM7****'], + ], + [ + 'name' => 'RetainContactInMembers', + 'in' => 'query', + 'schema' => ['description' => '是否保留成员中的联系人。取值:'."\n" + .'- true(默认值):保留。保留成员中的此联系人,联系人仍可以接收成员的消息。'."\n" + .'- false:不保留。将此联系人从成员中移除,此联系人不再接收成员的消息。当选择False时此接口结果异步返回,您可以通过[GetMessageContactDeletionStatus](~~GetMessageContactDeletionStatus~~)获取删除结果。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => 'Schema of Response', 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE'], + 'Status' => ['description' => '联系人删除状态。取值:'."\n" + .'- Deleting:删除中。'."\n" + .'- Deleted:已删除。', 'type' => 'string', 'example' => 'Deleting'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'MissingParameter.AccountId', - 'errorMessage' => 'You must specify AccountId.', - ], - [ - 'errorCode' => 'InvalidParameter.AccountId', - 'errorMessage' => 'The AccountId is invalid.', - ], + ['errorCode' => 'InvalidParameter.ContactId', 'errorMessage' => 'The ContactId is invalid.', 'description' => ''], + ['errorCode' => 'MissingParameter.ContactId', 'errorMessage' => 'You must specify ContactId.', 'description' => ''], ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.Account', - 'errorMessage' => 'This resource directory account does not exist.', - ], - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], + ['errorCode' => 'EntityNotExists.Contact', 'errorMessage' => 'This Contact does not exist.', 'description' => ''], ], - 409 => [ - [ - 'errorCode' => 'AccountTypeOrStatusMismatch', - 'errorMessage' => 'You cannot perform the action on the member account.', - ], - [ - 'errorCode' => 'Deny.TrustedService', - 'errorMessage' => 'You attempted to remove an account that is used in %s. To complete this operation, you must first remove this account from the Trusted Service.', - ], + 429 => [ + ['errorCode' => 'ConcurrentCallNotSupported', 'errorMessage' => 'The operation conflicts with other operations. Please try again later.', 'description' => ''], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<RemoveCloudAccountResponse>\\r\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\r\\n</RemoveCloudAccountResponse>","errorExample":""}]', - 'title' => '移除云账号类型的成员', - 'summary' => '调用RemoveCloudAccount移除云账号类型的成员。', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\",\\n \\"Status\\": \\"Deleting\\"\\n}","type":"json"}]', + 'title' => '删除联系人', + 'changeSet' => [], ], - 'ListAccountsForParent' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'DeregisterDelegatedAdministrator' => [ + 'summary' => '调用DeregisterDelegatedAdministrator移除可信服务的委派管理员账号。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'list', - ], + 'systemTags' => ['operationType' => 'delete'], 'parameters' => [ [ - 'name' => 'ParentFolderId', - 'in' => 'query', - 'schema' => [ - 'description' => '资源夹ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'fd-bVaRIG****', - ], - ], - [ - 'name' => 'QueryKeyword', - 'in' => 'query', - 'schema' => [ - 'description' => '查询关键字,例如:成员名称。'."\n" - ."\n" - .'支持模糊查询。', - 'type' => 'string', - 'required' => false, - 'example' => 'admin', - ], - ], - [ - 'name' => 'PageNumber', - 'in' => 'query', - 'schema' => [ - 'description' => '页码。'."\n" - ."\n" - .'起始值:1。默认值:1。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], - ], - [ - 'name' => 'PageSize', - 'in' => 'query', - 'schema' => [ - 'description' => '分页时每页显示的数据行数。'."\n" - ."\n" - .'取值范围:1~100。默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], - ], - [ - 'name' => 'Tag', + 'name' => 'AccountId', 'in' => 'query', - 'style' => 'flat', - 'schema' => [ - 'description' => '通过标签过滤。', - 'type' => 'array', - 'items' => [ - 'description' => '过滤的标签列表。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '标签键。', - 'type' => 'string', - 'required' => false, - 'example' => 'tag_key', - ], - 'Value' => [ - 'description' => '标签值。', - 'type' => 'string', - 'required' => false, - 'example' => 'tag_value', - ], - ], - 'required' => false, - ], - 'required' => false, - ], + 'schema' => ['description' => '资源目录中的成员ID。', 'type' => 'string', 'required' => true, 'example' => '181761095690****'], ], [ - 'name' => 'IncludeTags', + 'name' => 'ServicePrincipal', 'in' => 'query', - 'schema' => [ - 'description' => '是否返回标签信息。取值:'."\n" - ."\n" - .'- false(默认值):不返回。'."\n" - .'- true:返回。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '可信服务的标识。', 'type' => 'string', 'required' => true, 'example' => 'cloudfw.aliyuncs.com'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回结果。', + 'description' => '返回结果', 'type' => 'object', 'properties' => [ - 'TotalCount' => [ - 'description' => '数据总条数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '7B8A4E7D-6CFF-471D-84DF-195A7A241ECB', - ], - 'PageSize' => [ - 'description' => '分页时每页显示的数据行数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '5', - ], - 'PageNumber' => [ - 'description' => '页码。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Accounts' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'Account' => [ - 'description' => '成员信息。', - 'type' => 'array', - 'items' => [ - 'description' => '成员信息', - 'type' => 'object', - 'properties' => [ - 'Status' => [ - 'description' => '成员加入状态。取值:'."\n" - ."\n" - .'- CreateSuccess:创建成功。'."\n" - .'- PromoteVerifying:升级确认中。'."\n" - .'- PromoteFailed:升级失败。'."\n" - .'- PromoteExpired:升级过期。'."\n" - .'- PromoteCancelled:升级取消。'."\n" - .'- PromoteSuccess:升级成功。'."\n" - .'- InviteSuccess:邀请成功。', - 'type' => 'string', - 'example' => 'CreateSuccess', - ], - 'Type' => [ - 'description' => '成员类型。取值:'."\n" - ."\n" - .'- CloudAccount:云账号。'."\n" - .'- ResourceAccount:资源账号。', - 'type' => 'string', - 'example' => 'ResourceAccount', - ], - 'DisplayName' => [ - 'description' => '成员名称。', - 'type' => 'string', - 'example' => 'admin', - ], - 'FolderId' => [ - 'description' => '资源夹ID。', - 'type' => 'string', - 'example' => 'fd-bVaRIG****', - ], - 'ResourceDirectoryId' => [ - 'description' => '资源目录ID。', - 'type' => 'string', - 'example' => 'rd-k4****', - ], - 'JoinTime' => [ - 'description' => '成员加入时间(UTC时间)。', - 'type' => 'string', - 'example' => '2015-01-23T12:33:18Z', - ], - 'AccountId' => [ - 'description' => '成员账号ID。', - 'type' => 'string', - 'example' => '184311716100****', - ], - 'JoinMethod' => [ - 'description' => '成员加入方式。'."\n" - ."\n" - .'- invited:邀请。'."\n" - .'- created:创建。', - 'type' => 'string', - 'example' => 'created', - ], - 'ModifyTime' => [ - 'description' => '成员修改时间(UTC时间)。', - 'type' => 'string', - 'example' => '2015-01-23T12:33:18Z', - ], - 'AccountName' => [ - 'description' => '账号名称。', - 'type' => 'string', - 'example' => 'hdd01429358@alibaba-inc.com', - ], - 'DeletionStatus' => [ - 'description' => '成员删除状态。取值:'."\n" - .'- Checking:检查中。'."\n" - .'- Deleting:删除中。'."\n" - .'- CheckFailed:检查失败。'."\n" - .'- DeleteFailed:删除失败。'."\n" - ."\n" - .'> 当账号未发起删除流程时,该字段为空。', - 'type' => 'string', - 'example' => 'Checking', - ], - 'Tags' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'Tag' => [ - 'description' => '成员所有的标签。', - 'type' => 'array', - 'items' => [ - 'description' => '成员标签列表。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '标签键。', - 'type' => 'string', - 'example' => 'tag_key', - ], - 'Value' => [ - 'description' => '标签值。', - 'type' => 'string', - 'example' => 'tag_value', - ], - ], - ], - ], - ], - ], - ], - ], - ], - ], - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'DF5D5C52-7BD0-40E7-94C6-23A1505038A2'], ], ], ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter.ParentFolderId', - 'errorMessage' => 'The ParentFolderId is invalid.', - ], - ], - 404 => [ - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], - [ - 'errorCode' => 'EntityNotExists.Folder', - 'errorMessage' => 'The resource directory folder does not exist.', - ], + 409 => [ + ['errorCode' => 'InvalidParameter.ServicePrincipal', 'errorMessage' => 'The specified ServicePrincipal is invalid.', 'description' => ''], + ['errorCode' => 'AccountNotRegistered', 'errorMessage' => 'The specified account is not a delegated administrator for this service.', 'description' => ''], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"TotalCount\\": 2,\\n \\"RequestId\\": \\"7B8A4E7D-6CFF-471D-84DF-195A7A241ECB\\",\\n \\"PageSize\\": 5,\\n \\"PageNumber\\": 1,\\n \\"Accounts\\": {\\n \\"Account\\": [\\n {\\n \\"Status\\": \\"CreateSuccess\\",\\n \\"Type\\": \\"ResourceAccount\\",\\n \\"DisplayName\\": \\"admin\\",\\n \\"FolderId\\": \\"fd-bVaRIG****\\",\\n \\"ResourceDirectoryId\\": \\"rd-k4****\\",\\n \\"JoinTime\\": \\"2015-01-23T12:33:18Z\\",\\n \\"AccountId\\": \\"184311716100****\\",\\n \\"JoinMethod\\": \\"created\\",\\n \\"ModifyTime\\": \\"2015-01-23T12:33:18Z\\",\\n \\"AccountName\\": \\"hdd01429358@alibaba-inc.com\\",\\n \\"DeletionStatus\\": \\"Checking\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"Key\\": \\"tag_key\\",\\n \\"Value\\": \\"tag_value\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ListAccountsForParentResponse>\\n <TotalCount>2</TotalCount>\\n <RequestId>7B8A4E7D-6CFF-471D-84DF-195A7A241ECB</RequestId>\\n <PageSize>1</PageSize>\\n <PageNumber>2</PageNumber>\\n <Accounts>\\n <Status>CreateSuccess</Status>\\n <Type>ResourceAccount</Type>\\n <DisplayName>admin</DisplayName>\\n <FolderId>fd-bVaRIG****</FolderId>\\n <ResourceDirectoryId>rd-k4****</ResourceDirectoryId>\\n <JoinTime>2015-01-23T12:33:18Z</JoinTime>\\n <AccountId>184311716100****</AccountId>\\n <JoinMethod>created</JoinMethod>\\n <ModifyTime>2015-01-23T12:33:18Z</ModifyTime>\\n <Tags>\\n <Key>tag_key</Key>\\n <Value>tag_value</Value>\\n </Tags>\\n </Accounts>\\n</ListAccountsForParentResponse>","errorExample":""}]', - 'title' => '查询资源夹下的成员列表', - 'summary' => '调用ListAccountsForParent查询资源夹下的成员列表。', - 'requestParamsDescription' => ' 关于公共请求参数的详情,请参见[公共参数](~~159973~~)。', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"DF5D5C52-7BD0-40E7-94C6-23A1505038A2\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<DeregisterDelegatedAdministratorResponse>\\r\\n\\t<RequestId>DF5D5C52-7BD0-40E7-94C6-23A1505038A2</RequestId>\\r\\n</DeregisterDelegatedAdministratorResponse>\\t\\r\\n","errorExample":""}]', + 'title' => '移除可信服务的委派管理员账号', + 'description' => '如果被移除的委派管理账号在可信服务中存在历史管理任务,移除操作可能对可信服务的正常使用产生影响。请在移除前慎重考虑可能产生的影响,然后再进行移除操作。', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', + 'changeSet' => [], ], - 'GetPayerForAccount' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'DestroyResourceDirectory' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - ], - 'parameters' => [ - [ - 'name' => 'AccountId', - 'in' => 'query', - 'schema' => [ - 'description' => '账号ID。', - 'type' => 'string', - 'required' => true, - 'example' => '12323344****', - ], - ], - ], + 'systemTags' => ['operationType' => 'delete'], + 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'PayerAccountName' => [ - 'description' => '结算账号名称。', - 'type' => 'string', - 'example' => 'Alice', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE', - ], - 'PayerAccountId' => [ - 'description' => '结算账号ID。', - 'type' => 'string', - 'example' => '172841235500****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE'], ], ], ], ], 'errorCodes' => [ 404 => [ - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], - [ - 'errorCode' => 'EntityNotExists.Account', - 'errorMessage' => 'This resource directory account does not exist.', - ], + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => ''], + ], + 409 => [ + ['errorCode' => 'DeleteConflict.ResourceDirectory.Account', 'errorMessage' => 'Failed to delete the resource directory because one or more member accounts exist. We recommend that you first remove these member accounts.', 'description' => ''], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"PayerAccountName\\": \\"Alice\\",\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\",\\n \\"PayerAccountId\\": \\"172841235500****\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<GetPayerForAccountResponse>\\r\\n\\t<RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\r\\n\\t<PayerAccountId>172841235500****</PayerAccountId>\\r\\n\\t<PayerAccountName>Alice</PayerAccountName>\\r\\n</GetPayerForAccountResponse>\\t\\r\\n","errorExample":""}]', - 'title' => '获取结算账号信息', - 'summary' => '调用GetPayerForAccount获取结算账号信息。', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<DestroyResourceDirectoryResponse>\\r\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\r\\n</DestroyResourceDirectoryResponse>","errorExample":""}]', + 'title' => '关闭资源目录', + 'summary' => '调用DestroyResourceDirectory关闭资源目录。此操作不可恢复,请您慎重操作。', + 'description' => '关闭资源目录前,请确认已完成以下操作:'."\n" + .'- 资源目录内所有云账号类型的成员已被移除。具体操作,请参见[RemoveCloudAccount](~~RemoveCloudAccount~~)。'."\n" + .'- 资源目录内除Root资源夹外的资源夹已全部删除。具体操作,请参见[DeleteFolder](~~DeleteFolder~~)。', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', + 'changeSet' => [], ], - 'UpdatePayerForAccount' => [ - 'summary' => '更新成员的结算账号。', - 'path' => '', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'DetachControlPolicy' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -3146,87 +1609,79 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - 'riskType' => 'none', - 'chargeType' => 'free', - 'autoTest' => true, - 'tenantRelevance' => 'tenant', - ], + 'systemTags' => ['operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ - 'name' => 'AccountId', + 'name' => 'PolicyId', 'in' => 'query', - 'schema' => [ - 'description' => '成员账号ID。', - 'type' => 'string', - 'required' => true, - 'example' => '138660628348****', - ], + 'schema' => ['description' => '管控策略ID。', 'type' => 'string', 'required' => true, 'example' => 'cp-jExXAqIYkwHN****'], ], [ - 'name' => 'PayerAccountId', + 'name' => 'TargetId', 'in' => 'query', - 'schema' => [ - 'description' => '结算账号ID。', - 'type' => 'string', - 'required' => true, - 'example' => '12323344****', - ], + 'schema' => ['description' => '目标节点。取值:'."\n" + ."\n" + .'- Root ID:为Root资源夹解绑管控策略。'."\n" + .'- 资源夹ID:为资源夹解绑管控策略。'."\n" + .'- 成员ID:为成员解绑管控策略。', 'type' => 'string', 'required' => true, 'example' => 'fd-ZDNPiT****'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '9EA4F962-1A2E-4AFE-BE0C-B14736FC46CC'], ], ], ], ], 'errorCodes' => [ + 400 => [ + ['errorCode' => 'NotSupport.DetachLastControlPolicy', 'errorMessage' => 'It is not detach the last control policy on the target node.', 'description' => '不允许解绑目标节点上的最后一个管控策略。'], + ['errorCode' => 'NotSupport.DetachLastResourceControlPolicy', 'errorMessage' => 'It is not supported to detach the last resource control policy.', 'description' => '不允许解绑目标节点上的最后一个资源管控策略。 '], + ['errorCode' => 'NotSupport.DetachSystemResourceControlPolicy', 'errorMessage' => 'It is not supported to detach system resource control policy.', 'description' => '不允许解绑目标节点上的系统资源管控策略。 '], + ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.Account', - 'errorMessage' => 'This resource directory account does not exist.', - ], + ['errorCode' => 'EntityNotExists.Target', 'errorMessage' => 'The specified target does not exist in the resource directory.', 'description' => '关联目标在资源目录中不存在。'], + ['errorCode' => 'EntityNotExists.ResourceControlPolicy', 'errorMessage' => 'The specified resource control policy does not exist.', 'description' => '资源管控策略不存在。'], + ['errorCode' => 'EntityNotExists.ResourceControlPolicyAttachment', 'errorMessage' => 'The specified resource control policy attachment does not exist.', 'description' => '指定目标上的指定资源管控策略不存在。'], ], - 409 => [ - [ - 'errorCode' => 'AccountTypeMismatch', - 'errorMessage' => 'The type or status of the member account cannot satisfy the current operation.', - ], - [ - 'errorCode' => 'InconsistentEnterpriseNameError', - 'errorMessage' => 'The enterprise name of the payment account and the member must be consistent.', - ], - [ - 'errorCode' => 'NotSupport.PayerAccountInAnotherResourceDirectory', - 'errorMessage' => 'The specified payment account does not exist in the resource directory. You must specify a valid payment account.', + ], + 'title' => '解绑管控策略', + 'summary' => '调用DetachControlPolicy解绑管控策略。', + 'description' => '解绑成功后,原绑定的资源夹或成员将会立即失去管控策略的管控。请务必确定解绑操作的结果是符合预期的,以免影响您的业务正常运行。'."\n" + ."\n" + .'系统策略和自定义管控策略都可以解绑,但资源夹或成员上绑定的最后一条管控策略不允许解绑。', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DetachControlPolicy'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:DetachControlPolicy', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager::{#accountId}:account/{#ResourceDirectoryPath}'], + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'ControlPolicy', 'arn' => 'acs:resourcemanager::{#accountId}:policy/controlpolicy/{#PolicyId}'], + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Folder', 'arn' => 'acs:resourcemanager::{#accountId}:folder/{#ResourceDirectoryPath}'], + ], ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\"\\n}","type":"json"}]', - 'title' => '更新成员的结算账号', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9EA4F962-1A2E-4AFE-BE0C-B14736FC46CC\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<DetachControlPolicyResponse>\\r\\n\\t<RequestId>9EA4F962-1A2E-4AFE-BE0C-B14736FC46CC</RequestId>\\r\\n</DetachControlPolicyResponse>\\t\\r\\n","errorExample":""}]', ], - 'InviteAccountToResourceDirectory' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'DisableControlPolicy' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -3234,82 +1689,15 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'create', - ], + 'systemTags' => ['operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ - 'name' => 'TargetEntity', - 'in' => 'query', - 'schema' => [ - 'description' => '被邀请账号ID或登录邮箱。', - 'type' => 'string', - 'required' => true, - 'example' => 'someone@example.com', - ], - ], - [ - 'name' => 'TargetType', - 'in' => 'query', - 'schema' => [ - 'description' => '被邀请账号类型。取值:'."\n" - ."\n" - .'- Account:账号ID。'."\n" - .'- Email:账号登录邮箱。', - 'type' => 'string', - 'required' => true, - 'example' => 'Email', - ], - ], - [ - 'name' => 'Note', + 'name' => 'ControlPolicyType', 'in' => 'query', 'schema' => [ - 'description' => '备注。'."\n" - ."\n" - .'最大长度为1024个字符。', 'type' => 'string', - 'required' => false, - 'example' => '欢迎您加入', - ], - ], - [ - 'name' => 'Tag', - 'in' => 'query', - 'style' => 'flat', - 'schema' => [ - 'description' => '标签。', - 'type' => 'array', - 'items' => [ - 'description' => '标签。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '标签键。', - 'type' => 'string', - 'required' => false, - 'example' => 'k1', - ], - 'Value' => [ - 'description' => '标签值。', - 'type' => 'string', - 'required' => false, - 'example' => 'v1', - ], - ], - 'required' => false, - ], - 'required' => false, - ], - ], - [ - 'name' => 'ParentFolderId', - 'in' => 'query', - 'schema' => [ - 'description' => '父资源夹ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'r-b1****', + 'example' => 'RESOURCE_CONTROL_POLICY', + 'enum' => [], ], ], ], @@ -3319,180 +1707,50 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE', - ], - 'Handshake' => [ - 'description' => '邀请信息。', - 'type' => 'object', - 'properties' => [ - 'Status' => [ - 'description' => '邀请状态。取值:'."\n" - ."\n" - .'- Pending:等待确认。'."\n" - .'- Accepted:已接受。'."\n" - .'- Cancelled:已取消。'."\n" - .'- Declined:已拒绝。'."\n" - .'- Expired:超时。', - 'type' => 'string', - 'example' => 'Pending', - ], - 'ExpireTime' => [ - 'description' => '邀请的过期时间(UTC时间)。', - 'type' => 'string', - 'example' => '2018-08-24T09:55:41Z', - ], - 'ResourceDirectoryId' => [ - 'description' => '资源目录ID。', - 'type' => 'string', - 'example' => 'rd-abcdef****', - ], - 'CreateTime' => [ - 'description' => '邀请的创建时间(UTC时间)。', - 'type' => 'string', - 'example' => '2018-08-10T09:55:41Z', - ], - 'Note' => [ - 'description' => '备注。', - 'type' => 'string', - 'example' => '欢迎您加入', - ], - 'TargetEntity' => [ - 'description' => '被邀请账号ID或登录邮箱。', - 'type' => 'string', - 'example' => 'someone@example.com', - ], - 'MasterAccountId' => [ - 'description' => '资源目录管理账号ID。', - 'type' => 'string', - 'example' => '172841235500****', - ], - 'MasterAccountName' => [ - 'description' => '资源目录管理账号名称。', - 'type' => 'string', - 'example' => 'Alice', - ], - 'ModifyTime' => [ - 'description' => '邀请的修改时间(UTC时间)。', - 'type' => 'string', - 'example' => '2018-08-10T09:55:41Z', - ], - 'TargetType' => [ - 'description' => '被邀请账号类型。取值:'."\n" - ."\n" - .'- Account:账号ID。'."\n" - .'- Email:账号登录邮箱。', - 'type' => 'string', - 'example' => 'Email', - ], - 'HandshakeId' => [ - 'description' => '邀请ID。', - 'type' => 'string', - 'example' => 'h-ycm4rp****', - ], - ], - ], + 'EnablementStatus' => ['description' => '管控策略状态。取值:'."\n" + ."\n" + .'- Enabled:已开启。'."\n" + .'- PendingEnable:开启中。'."\n" + .'- Disabled:已关闭。'."\n" + .'- PendingDisable:关闭中。', 'type' => 'string', 'example' => 'PendingDisable'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '7C709979-451D-4C92-835D-7DDCCAA562E9'], + 'ControlPolicyType' => ['type' => 'string', 'example' => 'RESOURCE_CONTROL_POLICY'], ], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'MissingParameter.TargetEntity', - 'errorMessage' => 'You must specify TargetEntity.', - ], - [ - 'errorCode' => 'InvalidParameter.TargetEntity', - 'errorMessage' => 'The TargetEntity is invalid.', - ], - [ - 'errorCode' => 'MissingParameter.TargetType', - 'errorMessage' => 'You must specify TargetType.', - ], - [ - 'errorCode' => 'InvalidParameter.TargetType', - 'errorMessage' => 'The TargetType is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Note.Length', - 'errorMessage' => 'The length of the invitation note exceeds the limit.', - ], - [ - 'errorCode' => 'InvalidParameter.Note', - 'errorMessage' => 'The Note is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.ParentFolderId', - 'errorMessage' => 'The ParentFolderId is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.AccountId', - 'errorMessage' => 'The AccountId is invalid.', - ], - ], - 404 => [ - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], - [ - 'errorCode' => 'EntityNotExists.Folder', - 'errorMessage' => 'The resource directory folder does not exist.', - ], + 'title' => '关闭管控策略', + 'summary' => '调用DisableControlPolicy关闭管控策略功能。', + 'description' => '关闭管控策略功能后,您绑定到资源夹和成员账号上的管控策略会全部自动解绑。但管控策略本身不会被删除,只是不能再绑定到任何目标节点上。'."\n" + ."\n" + .'> 关闭管控策略将会影响整个资源目录内资源夹和成员账号的权限,请谨慎操作。', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DisableControlPolicy'], ], - 409 => [ - [ - 'errorCode' => 'LimitExceeded.Account', - 'errorMessage' => 'The maximum number of member accounts in a resource directory exceeds the limit.', - ], - [ - 'errorCode' => 'LimitExceeded.InvitationRate', - 'errorMessage' => 'The number of invitations sent exceeds the limit.', - ], - [ - 'errorCode' => 'EntityAlreadyExists.Handshake', - 'errorMessage' => 'Handshakes with the same target entity already exist.', - ], - [ - 'errorCode' => 'Invalid.AccountType', - 'errorMessage' => 'The specified profile type of account is invalid.', - ], - [ - 'errorCode' => 'EntityAlreadyExists.ResourceDir.Account', - 'errorMessage' => 'This resource directory account already exists.', - ], - [ - 'errorCode' => 'LimitExceeded.Invitation.InvalidTarget', - 'errorMessage' => 'The maximum number of invalid targets that can be invited by a single account is exceeded.', - ], - [ - 'errorCode' => 'NotSupport.AccountInAnotherResourceDirectory', - 'errorMessage' => 'The invited account already belongs to another resource directory. To continue, remove the account from the other resource directory.', - ], - [ - 'errorCode' => 'LegalEntityMismatch', - 'errorMessage' => 'The account does not have the same legal entity as the management account.', + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:DisableControlPolicy', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'ResourceDirectory', 'arn' => 'acs:resourcemanager::{#accountId}:policy/controlpolicy/*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\",\\n \\"Handshake\\": {\\n \\"Status\\": \\"Pending\\",\\n \\"ExpireTime\\": \\"2018-08-24T09:55:41Z\\",\\n \\"ResourceDirectoryId\\": \\"rd-abcdef****\\",\\n \\"CreateTime\\": \\"2018-08-10T09:55:41Z\\",\\n \\"Note\\": \\"欢迎您加入\\",\\n \\"TargetEntity\\": \\"someone@example.com\\",\\n \\"MasterAccountId\\": \\"172841235500****\\",\\n \\"MasterAccountName\\": \\"Alice\\",\\n \\"ModifyTime\\": \\"2018-08-10T09:55:41Z\\",\\n \\"TargetType\\": \\"Email\\",\\n \\"HandshakeId\\": \\"h-ycm4rp****\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<InviteAccountToResourceDirectoryResponse>\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\n <Handshake>\\n <HandshakeId>h-ycm4rp****</HandshakeId>\\n <ResourceDirectoryId>rd-abcdef****</ResourceDirectoryId>\\n <MasterAccountId>172841235500****</MasterAccountId>\\n <MasterAccountName>Alice</MasterAccountName>\\n <TargetEntity>someone@example.com</TargetEntity>\\n <TargetType>Email</TargetType>\\n <Note>欢迎您加入</Note>\\n <Status>Pending</Status>\\n <CreateTime>2018-08-10T09:55:41Z</CreateTime>\\n <ModifyTime>2018-08-10T09:55:41Z</ModifyTime>\\n <ExpireTime>2018-08-24T09:55:41Z</ExpireTime>\\n </Handshake>\\n</InviteAccountToResourceDirectoryResponse>","errorExample":""}]', - 'title' => '邀请外部账号加入资源目录', - 'summary' => '调用InviteAccountToResourceDirectory邀请外部账号加入资源目录。', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EnablementStatus\\": \\"PendingDisable\\",\\n \\"RequestId\\": \\"7C709979-451D-4C92-835D-7DDCCAA562E9\\",\\n \\"ControlPolicyType\\": \\"RESOURCE_CONTROL_POLICY\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<DisableControlPolicyResponse>\\r\\n\\t<EnablementStatus>PendingDisable</EnablementStatus>\\r\\n\\t<RequestId>7C709979-451D-4C92-835D-7DDCCAA562E9</RequestId>\\r\\n</DisableControlPolicyResponse>\\t\\r\\n","errorExample":""}]', ], - 'AcceptHandshake' => [ - 'summary' => '被邀请的阿里云账号调用AcceptHandshake接受邀请。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'DisassociateMembers' => [ + 'summary' => '为资源目录、资源夹或成员解绑联系人。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -3500,101 +1758,53 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - ], + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ - 'name' => 'HandshakeId', + 'name' => 'ContactId', 'in' => 'query', + 'schema' => ['description' => '联系人ID。', 'type' => 'string', 'required' => true, 'example' => 'c-qL4HqKONzOM7****'], + ], + [ + 'name' => 'Members', + 'in' => 'query', + 'style' => 'flat', 'schema' => [ - 'description' => '邀请ID。'."\n" + 'description' => '解绑目标。', + 'type' => 'array', + 'items' => ['description' => '解绑目标。取值:'."\n" ."\n" - .'您可以调用[ListHandshakesForAccount](~~ListHandshakesForAccount~~)获取邀请ID。', - 'type' => 'string', + .'- 资源目录ID:为整个资源目录解绑联系人。'."\n" + .'- 资源夹ID:为指定资源夹解绑联系人。'."\n" + .'- 成员ID:为指定成员解绑联系人。'."\n" + ."\n" + .'N的取值范围:1~5,即每次最多解绑5个目标。', 'type' => 'string', 'required' => false, 'example' => 'fd-ZDNPiT****'], 'required' => true, - 'example' => 'h-Ih8IuPfvV0t0****', ], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => 'Schema of Response', 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '5828C836-3286-49A6-9006-15231BB19342', - ], - 'Handshake' => [ - 'description' => '邀请信息。', - 'type' => 'object', - 'properties' => [ - 'Status' => [ - 'description' => '邀请状态。取值:'."\n" - ."\n" - .'- Pending:等待确认。'."\n" - .'- Accepted:已接受。'."\n" - .'- Cancelled:已取消。'."\n" - .'- Declined:已拒绝。'."\n" - .'- Expired:超时。', - 'type' => 'string', - 'example' => 'Accepted', - ], - 'ExpireTime' => [ - 'description' => '邀请的过期时间(UTC时间)。', - 'type' => 'string', - 'example' => '2021-01-20T02:15:40Z', - ], - 'ResourceDirectoryId' => [ - 'description' => '资源目录ID。', - 'type' => 'string', - 'example' => 'rd-3G****', - ], - 'CreateTime' => [ - 'description' => '邀请的创建时间(UTC时间)。', - 'type' => 'string', - 'example' => '2021-01-06T02:15:40Z', - ], - 'Note' => [ - 'description' => '备注。', - 'type' => 'string', - 'example' => '欢迎您加入', - ], - 'TargetEntity' => [ - 'description' => '被邀请的阿里云账号ID或登录邮箱。', - 'type' => 'string', - 'example' => '177242285274****', - ], - 'MasterAccountId' => [ - 'description' => '资源目录的管理账号ID。', - 'type' => 'string', - 'example' => '151266687691****', - ], - 'MasterAccountName' => [ - 'description' => '资源目录的管理账号名称。', - 'type' => 'string', - 'example' => 'CompanyA', - ], - 'ModifyTime' => [ - 'description' => '邀请的修改时间(UTC时间)。', - 'type' => 'string', - 'example' => '2021-01-06T02:16:40Z', - ], - 'TargetType' => [ - 'description' => '被邀请的阿里云账号类型。取值:'."\n" + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => '95060F1D-6990-4645-8920-A81D1BBFE992'], + 'Members' => [ + 'description' => '解绑目标。', + 'type' => 'array', + 'items' => [ + 'description' => '解绑目标。', + 'type' => 'object', + 'properties' => [ + 'ContactId' => ['description' => '联系人ID。', 'type' => 'string', 'example' => 'c-qL4HqKONzOM7****'], + 'MemberId' => ['description' => '解绑目标ID。取值:'."\n" ."\n" - .'- Account:阿里云账号ID。'."\n" - .'- Email:阿里云账号登录邮箱。', - 'type' => 'string', - 'example' => 'Account', - ], - 'HandshakeId' => [ - 'description' => '邀请ID。', - 'type' => 'string', - 'example' => 'h-Ih8IuPfvV0t0****', + .'- 资源目录ID。'."\n" + .'- 资源夹ID。'."\n" + .'- 成员ID。', 'type' => 'string', 'example' => 'fd-ZDNPiT****'], + 'ModifyDate' => ['description' => '解绑时间。', 'type' => 'string', 'example' => '2023-03-27 17:19:21'], ], ], ], @@ -3604,77 +1814,40 @@ ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'MissingParameter.HandshakeId', - 'errorMessage' => 'You must specify HandshakeId.', - ], - [ - 'errorCode' => 'InvalidParameter.HandshakeId', - 'errorMessage' => 'The HandshakeId is invalid.', - ], + ['errorCode' => 'InvalidParameter.ContactId', 'errorMessage' => 'The ContactId is invalid.', 'description' => ''], + ['errorCode' => 'MissingParameter.ContactId', 'errorMessage' => 'You must specify ContactId.', 'description' => ''], + ['errorCode' => 'InvalidParameter.Members', 'errorMessage' => 'The Members is invalid.', 'description' => ''], + ['errorCode' => 'InvalidParameter.Members.Duplicate', 'errorMessage' => 'The Members contains duplicate values.', 'description' => ''], + ['errorCode' => 'InvalidParameter.Members.Length', 'errorMessage' => 'The maximum number of Members exceeds the limit.', 'description' => ''], + ['errorCode' => 'QuotaExceeded.Members', 'errorMessage' => 'The maximum number of Members exceeds the limit.', 'description' => ''], + ['errorCode' => 'InvalidMember', 'errorMessage' => 'The member does not exist in the resource directory.', 'description' => ''], + ['errorCode' => 'ContactStatusMismatchAction', 'errorMessage' => 'The status of the contact does not allow the specified operation.', 'description' => ''], ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.Handshake', - 'errorMessage' => 'The specified handshake does not exist.', - ], - [ - 'errorCode' => 'SpecifiedResourceDirectoryNotExists', - 'errorMessage' => 'The specified resource directory does not exist. You must specify a valid resource directory.', - ], - ], - 409 => [ - [ - 'errorCode' => 'HandshakeStatusMismatch', - 'errorMessage' => 'The invitation is invalid.', - ], - [ - 'errorCode' => 'NotSupport.AccountInAnotherResourceDirectory', - 'errorMessage' => 'Your account is a management account for another resource directory or a member of another resource directory.', - ], - [ - 'errorCode' => 'Invalid.AccountType', - 'errorMessage' => 'The specified profile type of account is invalid.', - ], - [ - 'errorCode' => 'NotSupport.Account.RealNameType', - 'errorMessage' => 'Your account is not a real-name of enterprise type, so you cannot accept the invitation.', - ], + ['errorCode' => 'EntityNotExists.Contact', 'errorMessage' => 'This Contact does not exist.', 'description' => ''], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"5828C836-3286-49A6-9006-15231BB19342\\",\\n \\"Handshake\\": {\\n \\"Status\\": \\"Accepted\\",\\n \\"ExpireTime\\": \\"2021-01-20T02:15:40Z\\",\\n \\"ResourceDirectoryId\\": \\"rd-3G****\\",\\n \\"CreateTime\\": \\"2021-01-06T02:15:40Z\\",\\n \\"Note\\": \\"欢迎您加入\\",\\n \\"TargetEntity\\": \\"177242285274****\\",\\n \\"MasterAccountId\\": \\"151266687691****\\",\\n \\"MasterAccountName\\": \\"CompanyA\\",\\n \\"ModifyTime\\": \\"2021-01-06T02:16:40Z\\",\\n \\"TargetType\\": \\"Account\\",\\n \\"HandshakeId\\": \\"h-Ih8IuPfvV0t0****\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<AcceptHandshakeResponse>\\n <RequestId>5828C836-3286-49A6-9006-15231BB19342</RequestId>\\n <Handshake>\\n <Status>Accepted</Status>\\n <ModifyTime>2021-01-06T02:16:40Z</ModifyTime>\\n <ResourceDirectoryId>rd-3G****</ResourceDirectoryId>\\n <HandshakeId>h-Ih8IuPfvV0t0****</HandshakeId>\\n <Note>欢迎您加入</Note>\\n <CreateTime>2021-01-06T02:15:40Z</CreateTime>\\n <TargetType>Account</TargetType>\\n <MasterAccountId>151266687691****</MasterAccountId>\\n <MasterAccountName>CompanyA</MasterAccountName>\\n <ExpireTime>2021-01-20T02:15:40Z</ExpireTime>\\n <TargetEntity>177242285274****</TargetEntity>\\n </Handshake>\\n</AcceptHandshakeResponse>","errorExample":""}]', - 'title' => '接受邀请', - 'description' => '被邀请的阿里云账号成功加入资源目录后,会成为资源目录的成员。资源目录默认使用被邀请的阿里云账号名称作为该成员的成员名称和账号名称。', - 'responseParamsDescription' => ' ', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"95060F1D-6990-4645-8920-A81D1BBFE992\\",\\n \\"Members\\": [\\n {\\n \\"ContactId\\": \\"c-qL4HqKONzOM7****\\",\\n \\"MemberId\\": \\"fd-ZDNPiT****\\",\\n \\"ModifyDate\\": \\"2023-03-27 17:19:21\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => '解绑联系人', + 'changeSet' => [], ], - 'GetHandshake' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'EnableControlPolicy' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - ], + 'systemTags' => ['operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ - 'name' => 'HandshakeId', + 'name' => 'ControlPolicyType', 'in' => 'query', - 'schema' => [ - 'description' => '邀请ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'h-ycm4rp****', - ], + 'schema' => ['type' => 'string', 'example' => 'RESOURCE_CONTROL_POLICY'], ], ], 'responses' => [ @@ -3683,145 +1856,54 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE', - ], - 'Handshake' => [ - 'description' => '邀请信息。', - 'type' => 'object', - 'properties' => [ - 'Status' => [ - 'description' => '邀请状态。'."\n" - ."\n" - .'- Pending:等待确认。'."\n" - .'- Accepted:已接受。'."\n" - .'- Cancelled:已取消。'."\n" - .'- Declined:已拒绝。'."\n" - .'- Expired:超时。', - 'type' => 'string', - 'example' => 'Pending', - ], - 'ExpireTime' => [ - 'description' => '邀请的过期时间(UTC时间)。', - 'type' => 'string', - 'example' => '2018-08-24T09:55:41Z', - ], - 'CreateTime' => [ - 'description' => '邀请的创建时间(UTC时间)。', - 'type' => 'string', - 'example' => '2018-08-10T09:55:41Z', - ], - 'TargetEntity' => [ - 'description' => '被邀请账号ID或登录邮箱。', - 'type' => 'string', - 'example' => 'someone@example.com', - ], - 'MasterAccountId' => [ - 'description' => '资源目录管理账号ID。', - 'type' => 'string', - 'example' => '172841235500****', - ], - 'HandshakeId' => [ - 'description' => '邀请ID。', - 'type' => 'string', - 'example' => 'h-ycm4rp****', - ], - 'MasterAccountRealName' => [ - 'description' => '资源目录管理账号实名认证信息。'."\n" - ."\n" - .'> 被邀请方调用此接口时,才能查看该参数。', - 'type' => 'string', - 'example' => 'company', - ], - 'ResourceDirectoryId' => [ - 'description' => '资源目录ID。', - 'type' => 'string', - 'example' => 'rd-abcdef****', - ], - 'InvitedAccountRealName' => [ - 'description' => '被邀请方实名认证信息。'."\n" - ."\n" - .'> 被邀请方调用此接口时,才能查看该参数。', - 'type' => 'string', - 'example' => 'Alice', - ], - 'Note' => [ - 'description' => '备注。', - 'type' => 'string', - 'example' => '欢迎您加入', - ], - 'MasterAccountName' => [ - 'description' => '资源目录管理账号名称。', - 'type' => 'string', - 'example' => 'company@example.com', - ], - 'TargetType' => [ - 'description' => '被邀请账号类型。'."\n" - ."\n" - .'- Account:账号ID。'."\n" - .'- Email:账号登录邮箱。', - 'type' => 'string', - 'example' => 'Email', - ], - 'ModifyTime' => [ - 'description' => '邀请的修改时间(UTC时间)。', - 'type' => 'string', - 'example' => '2018-08-10T09:55:41Z', - ], - ], - ], + 'EnablementStatus' => ['description' => '管控策略状态。取值:'."\n" + ."\n" + .'- Enabled:已开启。'."\n" + .'- PendingEnable:开启中。'."\n" + .'- Disabled:已关闭。'."\n" + .'- PendingDisable:关闭中。', 'type' => 'string', 'example' => 'PendingEnable'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '8CE7BD95-EFFA-4911-A1E0-BD4412697FEB'], + 'ControlPolicyType' => ['type' => 'string', 'example' => 'RESOURCE_CONTROL_POLICY'], ], ], ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'MissingParameter.HandshakeId', - 'errorMessage' => 'You must specify HandshakeId.', - ], - [ - 'errorCode' => 'InvalidParameter.HandshakeId', - 'errorMessage' => 'The HandshakeId is invalid.', - ], - ], - 404 => [ - [ - 'errorCode' => 'EntityNotExists.Handshake', - 'errorMessage' => 'The specified handshake does not exist.', - ], - ], 409 => [ - [ - 'errorCode' => 'HandshakeStatusMismatch', - 'errorMessage' => 'The invitation is invalid.', - ], - [ - 'errorCode' => 'MissingAccountRealName', - 'errorMessage' => 'The name of the invited account is not specified.', - ], - [ - 'errorCode' => 'NoRealNameAuthentication', - 'errorMessage' => 'The account invited has not passed real-name authentication.', - ], + ['errorCode' => 'Throttling.EnableControlPolicy', 'errorMessage' => 'The enable operation is too frequent. Please try again in %s minute(s).', 'description' => '启用管控策略操作过于频繁。请在 %s 分钟后再开启。'], + ['errorCode' => 'Throttling.EnableResourceControlPolicy', 'errorMessage' => 'The enable operation is too frequent. Please try again in %s minute(s).', 'description' => '启用资源管控策略操作过于频繁。请在 %s 分钟后再开启。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\",\\n \\"Handshake\\": {\\n \\"Status\\": \\"Pending\\",\\n \\"ExpireTime\\": \\"2018-08-24T09:55:41Z\\",\\n \\"CreateTime\\": \\"2018-08-10T09:55:41Z\\",\\n \\"TargetEntity\\": \\"someone@example.com\\",\\n \\"MasterAccountId\\": \\"172841235500****\\",\\n \\"HandshakeId\\": \\"h-ycm4rp****\\",\\n \\"MasterAccountRealName\\": \\"company\\",\\n \\"ResourceDirectoryId\\": \\"rd-abcdef****\\",\\n \\"InvitedAccountRealName\\": \\"Alice\\",\\n \\"Note\\": \\"欢迎您加入\\",\\n \\"MasterAccountName\\": \\"company@example.com\\",\\n \\"TargetType\\": \\"Email\\",\\n \\"ModifyTime\\": \\"2018-08-10T09:55:41Z\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<GetHandshakeResponse>\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\n <Handshake>\\n <HandshakeId>h-ycm4rp****</HandshakeId>\\n <ResourceDirectoryId>rd-abcdef****</ResourceDirectoryId>\\n <MasterAccountId>172841235500****</MasterAccountId>\\n <MasterAccountName>company@example.com</MasterAccountName>\\n <MasterAccountRealName>company</MasterAccountRealName>\\n <InvitedAccountRealName>Alice</InvitedAccountRealName>\\n <TargetEntity>someone@example.com</TargetEntity>\\n <TargetType>Email</TargetType>\\n <Note>欢迎您加入</Note>\\n <Status>Pending</Status>\\n <CreateTime>2018-08-10T09:55:41Z</CreateTime>\\n <ModifyTime>2018-08-10T09:55:41Z</ModifyTime>\\n <ExpireTime>2018-08-24T09:55:41Z</ExpireTime>\\n </Handshake>\\n</GetHandshakeResponse>","errorExample":""}]', - 'title' => '获取邀请信息', - 'summary' => '调用GetHandshake获取邀请信息。', + 'title' => '开启管控策略', + 'summary' => '调用EnableControlPolicy开启管控策略功能。', + 'description' => '资源目录管控策略是一种基于资源结构(资源夹或成员账号)的访问控制策略,可以统一管理资源目录各层级内资源访问的权限边界,建立企业整体访问控制原则或局部专用原则。管控策略只定义权限边界,并不真正授予权限,您还需要在某个成员账号中使用访问控制(RAM)设置权限后,相应身份才具备对资源的访问权限。更多信息,请参见[管控策略概述](~~178671~~)。', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', - ], - 'DeclineHandshake' => [ - 'methods' => [ - 'post', - 'get', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'EnableControlPolicy'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:EnableControlPolicy', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'ResourceDirectory', 'arn' => 'acs:resourcemanager::{#accountId}:policy/controlpolicy/*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EnablementStatus\\": \\"PendingEnable\\",\\n \\"RequestId\\": \\"8CE7BD95-EFFA-4911-A1E0-BD4412697FEB\\",\\n \\"ControlPolicyType\\": \\"RESOURCE_CONTROL_POLICY\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<EnableControlPolicyResponse>\\r\\n\\t<EnablementStatus>PendingEnable</EnablementStatus>\\r\\n\\t<RequestId>8CE7BD95-EFFA-4911-A1E0-BD4412697FEB</RequestId>\\r\\n</EnableControlPolicyResponse>","errorExample":""}]', + ], + 'EnableResourceDirectory' => [ + 'summary' => '调用EnableResourceDirectory开通资源目录。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -3829,19 +1911,53 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - ], + 'systemTags' => ['operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ - 'name' => 'HandshakeId', + 'name' => 'MAName', 'in' => 'query', - 'schema' => [ - 'description' => '邀请ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'h-ycm4rp****', - ], + 'schema' => ['description' => '新管理账号名称。'."\n" + ."\n" + .'格式:`<前缀>@rdadmin.aliyunid.com`。其中,<前缀>允许输入英文字母、数字、特殊字符`_.-`,且必须以英文字母或数字开头和结尾,不能输入连续特殊字符。<前缀>的长度为2~50个字符。', 'type' => 'string', 'required' => false, 'example' => 'user01@rdadmin.aliyunid.com'], + ], + [ + 'name' => 'MASecureMobilePhone', + 'in' => 'query', + 'schema' => ['description' => '新创建管理账号的安全手机号码。'."\n" + ."\n" + .'置空表示采用当前登录账号的安全手机号码。该手机号码必须与[SendVerificationCodeForEnableRD](~~SendVerificationCodeForEnableRD~~)中获取验证码时使用的手机号码一致。'."\n" + ."\n" + .'格式:`<国家码>-<手机号码>`。'."\n" + ."\n" + .'<props="intl">'."\n" + .'> 不支持填写`86-<手机号码>`的中国内地手机号码。'."\n" + .'</props>'."\n" + ."\n\n" + .'<props="china">'."\n" + .'> 仅支持填写`86-<手机号码>`的中国内地手机号码。'."\n" + .'</props>', 'type' => 'string', 'required' => false, 'example' => 'xx-13900001234'], + ], + [ + 'name' => 'VerificationCode', + 'in' => 'query', + 'schema' => ['description' => '验证码。'."\n" + ."\n" + .'您可以调用[SendVerificationCodeForEnableRD](~~SendVerificationCodeForEnableRD~~)获取验证码。', 'type' => 'string', 'required' => false, 'example' => '123456'], + ], + [ + 'name' => 'EnableMode', + 'in' => 'query', + 'schema' => ['description' => '开通方式。取值:'."\n" + ."\n" + .'- CurrentAccount:使用当前登录账号开通资源目录。'."\n" + .'- NewManagementAccount:新创建管理账号开通资源目录。该方式下,您需要配置`MAName`、`MASecureMobilePhone`和`VerificationCode`。', 'type' => 'string', 'required' => true, 'example' => 'CurrentAccount'], + ], + [ + 'name' => 'DryRun', + 'in' => 'query', + 'schema' => ['description' => '是否只预检此次请求。取值:'."\n" + .'- **true**:开通资源目录检查,不会实际开通资源目录。'."\n" + .'- **false**(默认值):开通资源目录。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], ], 'responses' => [ @@ -3850,144 +1966,86 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE', - ], - 'Handshake' => [ - 'description' => '邀请信息。', + 'ResourceDirectory' => [ + 'description' => '资源目录信息。', 'type' => 'object', 'properties' => [ - 'Status' => [ - 'description' => '邀请状态。'."\n" - ."\n" - .'- Pending:等待确认。'."\n" - .'- Accepted:已接受。'."\n" - .'- Cancelled:已取消。'."\n" - .'- Declined:已拒绝。'."\n" - .'- Expired:超时。', - 'type' => 'string', - 'example' => 'Declined', - ], - 'ExpireTime' => [ - 'description' => '邀请的过期时间。', - 'type' => 'string', - 'example' => '2018-08-10T09:55:41Z', - ], - 'ResourceDirectoryId' => [ - 'description' => '资源目录ID。', - 'type' => 'string', - 'example' => 'rd-abcdef****', - ], - 'CreateTime' => [ - 'description' => '邀请的创建时间。', - 'type' => 'string', - 'example' => '2018-08-10T09:55:41Z', - ], - 'Note' => [ - 'description' => '备注。', - 'type' => 'string', - 'example' => '欢迎您加入', - ], - 'TargetEntity' => [ - 'description' => '被邀请账号ID或登录邮箱。', - 'type' => 'string', - 'example' => 'someone@example.com', - ], - 'MasterAccountId' => [ - 'description' => '资源目录主账号ID。', - 'type' => 'string', - 'example' => '172841235500****', - ], - 'MasterAccountName' => [ - 'description' => '资源目录主账号名称。', - 'type' => 'string', - 'example' => 'Alice', - ], - 'ModifyTime' => [ - 'description' => '邀请的修改时间。', - 'type' => 'string', - 'example' => '2018-08-10T09:55:41Z', - ], - 'TargetType' => [ - 'description' => '被邀请账号类型。'."\n" - ."\n" - .'- Account:账号ID。'."\n" - .'- Email:账号登录邮箱。', - 'type' => 'string', - 'example' => 'Email', - ], - 'HandshakeId' => [ - 'description' => '邀请ID。', - 'type' => 'string', - 'example' => 'h-ycm4rp****', - ], + 'ResourceDirectoryId' => ['description' => '资源目录ID。', 'type' => 'string', 'example' => 'rd-54****'], + 'MasterAccountId' => ['description' => '管理账号ID。', 'type' => 'string', 'example' => '507408460615****'], + 'MasterAccountName' => ['description' => '管理账号名称。', 'type' => 'string', 'example' => 'alice@example.com'], + 'RootFolderId' => ['description' => 'Root资源夹ID。', 'type' => 'string', 'example' => 'r-G9****'], + 'CreateTime' => ['description' => '资源目录开通时间。', 'type' => 'string', 'example' => '2021-12-08T02:15:31.744Z'], ], ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'EC2FE94D-A4A2-51A1-A493-5C273A36C46A'], ], ], ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'MissingParameter.HandshakeId', - 'errorMessage' => 'You must specify HandshakeId.', - ], - [ - 'errorCode' => 'InvalidParameter.HandshakeId', - 'errorMessage' => 'The HandshakeId is invalid.', - ], + 409 => [ + ['errorCode' => 'NotSupport.AccountInAnotherResourceDirectory', 'errorMessage' => 'The specified account is an Alibaba Cloud account or already exists in another resource directory.', 'description' => '您的账号是另一个资源目录的管理账号或是另一个资源目录内的成员。'], + ['errorCode' => 'Invalid.EnterpriseName', 'errorMessage' => 'You must specify the enterprise name.', 'description' => '账号未设置企业名称,请您先完成企业名称设置。'], + ['errorCode' => 'EnterpriseRealNameVerificationError', 'errorMessage' => 'The specified account does not pass enterprise real-name verification. We recommend you first complete enterprise real-name verification for the account.', 'description' => '当前账号未经过企业实名认证。请您先完成企业实名认证。'], + ['errorCode' => 'EntityAlreadyExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is already enabled. We recommend that you do not enable the resource directory again.', 'description' => '账号已开通资源目录,请勿重复开通。'], + ['errorCode' => 'InvalidParameter.ManagementAccountName.AlreadyUsed', 'errorMessage' => 'The ManagementAccountName has been used.', 'description' => '管理账号名称已被占用,请更换其他名称。'], + ['errorCode' => 'Invalid.VerificationCode', 'errorMessage' => 'The verification code is invalid.', 'description' => '验证码无效。'], + ['errorCode' => 'InvalidParameter.ManagementAccountName', 'errorMessage' => 'The management account name is in the wrong format.', 'description' => '管理账号名称格式错误。'], + ['errorCode' => 'InvalidParameter.ManagementAccountSecurityInfo', 'errorMessage' => 'The parameter management account secure mobile phone is invalid.', 'description' => '安全手机号码格式不正确。'], + ['errorCode' => 'MissingSecureMobilePhone', 'errorMessage' => 'Secure mobile phone is missing.', 'description' => '缺少安全手机号码。'], + ['errorCode' => 'MissingSecurityInfo', 'errorMessage' => 'Security info is missing.', 'description' => '缺少安全信息。'], + ['errorCode' => 'NotSupport.Account.Site', 'errorMessage' => 'The caller is not a China site account, which is not supported.', 'description' => '当前账号所属站点错误,请更换为中国站账号。'], + ['errorCode' => 'Invalid.AccountType', 'errorMessage' => 'The specified profile type of account is invalid.', 'description' => '账号类型无效,请您使用企业类型账号。'], ], - 404 => [ - [ - 'errorCode' => 'EntityNotExists.Handshake', - 'errorMessage' => 'The specified handshake does not exist.', - ], + ], + 'title' => '开通资源目录', + 'description' => '您可以使用当前登录账号或新创建管理账号两种方式开通资源目录。更多信息,请参见[开通资源目录](~~111215~~)。', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'EnableResourceDirectory'], ], - 409 => [ - [ - 'errorCode' => 'HandshakeStatusMismatch', - 'errorMessage' => 'The invitation is invalid.', + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'resourcemanager:EnableResourceDirectory', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\",\\n \\"Handshake\\": {\\n \\"Status\\": \\"Declined\\",\\n \\"ExpireTime\\": \\"2018-08-10T09:55:41Z\\",\\n \\"ResourceDirectoryId\\": \\"rd-abcdef****\\",\\n \\"CreateTime\\": \\"2018-08-10T09:55:41Z\\",\\n \\"Note\\": \\"欢迎您加入\\",\\n \\"TargetEntity\\": \\"someone@example.com\\",\\n \\"MasterAccountId\\": \\"172841235500****\\",\\n \\"MasterAccountName\\": \\"Alice\\",\\n \\"ModifyTime\\": \\"2018-08-10T09:55:41Z\\",\\n \\"TargetType\\": \\"Email\\",\\n \\"HandshakeId\\": \\"h-ycm4rp****\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<DeclineHandshakeResponse>\\r\\n\\t<RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\r\\n\\t<Handshake>\\r\\n\\t\\t<HandshakeId>h-ycm4rp****</HandshakeId>\\r\\n\\t\\t<ResourceDirectoryId>rd-abcdef****</ResourceDirectoryId>\\r\\n\\t\\t<MasterAccountId>172841235500****</MasterAccountId>\\r\\n\\t\\t<MasterAccountName>Alice</MasterAccountName>\\r\\n\\t\\t<TargetEntity>someone@example.com</TargetEntity>\\r\\n\\t\\t<TargetType>Email</TargetType>\\r\\n\\t\\t<Note>欢迎您加入</Note>\\r\\n\\t\\t<Status>Declined</Status>\\r\\n\\t\\t<CreateTime>2018-08-10T09:55:41Z</CreateTime>\\r\\n\\t\\t<ModifyTime>2018-08-10T09:55:41Z</ModifyTime>\\r\\n\\t\\t<ExpireTime>2018-08-17T09:55:41Z7</ExpireTime>\\r\\n\\t</Handshake>\\r\\n</DeclineHandshakeResponse>\\t\\r\\n","errorExample":""}]', - 'title' => '拒绝邀请', - 'summary' => '调用DeclineHandshake拒绝邀请。', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"ResourceDirectory\\": {\\n \\"ResourceDirectoryId\\": \\"rd-54****\\",\\n \\"MasterAccountId\\": \\"507408460615****\\",\\n \\"MasterAccountName\\": \\"alice@example.com\\",\\n \\"RootFolderId\\": \\"r-G9****\\",\\n \\"CreateTime\\": \\"2021-12-08T02:15:31.744Z\\"\\n },\\n \\"RequestId\\": \\"EC2FE94D-A4A2-51A1-A493-5C273A36C46A\\"\\n}","errorExample":""},{"type":"xml","example":"<EnableResourceDirectoryResponse>\\n <RequestId>EC2FE94D-A4A2-51A1-A493-5C273A36C46A</RequestId>\\n <ResourceDirectory>\\n <ResourceDirectoryId>rd-54****</ResourceDirectoryId>\\n <MasterAccountName>alice@example.com</MasterAccountName>\\n <RootFolderId>r-G9****</RootFolderId>\\n <CreateTime>2021-12-08T02:15:31.744Z</CreateTime>\\n <MasterAccountId>507408460615****</MasterAccountId>\\n </ResourceDirectory>\\n</EnableResourceDirectoryResponse>","errorExample":""}]', ], - 'CancelHandshake' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'GetAccount' => [ + 'summary' => '查询成员信息。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - ], + 'systemTags' => ['operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ - 'name' => 'HandshakeId', + 'name' => 'AccountId', 'in' => 'query', - 'schema' => [ - 'description' => '邀请ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'h-ycm4rp****', - ], + 'schema' => ['description' => '成员ID。', 'type' => 'string', 'required' => true, 'example' => '181761095690****'], + ], + [ + 'name' => 'IncludeTags', + 'in' => 'query', + 'schema' => ['description' => '是否返回标签信息。取值:'."\n" + ."\n" + .'- false(默认值):不返回。'."\n" + .'- true:返回。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], ], 'responses' => [ @@ -3996,159 +2054,115 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE', - ], - 'Handshake' => [ - 'description' => '邀请信息。', + 'Account' => [ + 'description' => '成员信息。', 'type' => 'object', 'properties' => [ - 'Status' => [ - 'description' => '邀请状态。'."\n" - ."\n" - .'- Pending:等待确认。'."\n" - .'- Accepted:已接受。'."\n" - .'- Cancelled:已取消。'."\n" - .'- Declined:已拒绝。'."\n" - .'- Expired:超时。', - 'type' => 'string', - 'example' => 'Cancelled', - ], - 'ExpireTime' => [ - 'description' => '邀请的过期时间(UTC时间)。', - 'type' => 'string', - 'example' => '2018-08-24T09:55:41Z', - ], - 'ResourceDirectoryId' => [ - 'description' => '资源目录ID。', - 'type' => 'string', - 'example' => 'h-ycm4rp****', - ], - 'CreateTime' => [ - 'description' => '邀请的创建时间(UTC时间)。', - 'type' => 'string', - 'example' => '2018-08-10T09:55:41Z', - ], - 'Note' => [ - 'description' => '备注。', - 'type' => 'string', - 'example' => '欢迎您加入', - ], - 'TargetEntity' => [ - 'description' => '被邀请账号ID或登录邮箱。', - 'type' => 'string', - 'example' => 'someone@example.com', - ], - 'MasterAccountId' => [ - 'description' => '资源目录管理账号ID。', - 'type' => 'string', - 'example' => '172841235500****', - ], - 'MasterAccountName' => [ - 'description' => '资源目录管理账号名称。', - 'type' => 'string', - 'example' => 'Alice', - ], - 'ModifyTime' => [ - 'description' => '邀请的修改时间(UTC时间)。', - 'type' => 'string', - 'example' => '2018-08-10T09:55:41Z', - ], - 'TargetType' => [ - 'description' => '被邀请账号类型。'."\n" - ."\n" - .'- Account:账号ID。'."\n" - .'- Email:账号登录邮箱。', - 'type' => 'string', - 'example' => 'Email', - ], - 'HandshakeId' => [ - 'description' => '邀请ID。', - 'type' => 'string', - 'example' => 'h-ycm4rp****', + 'Status' => ['description' => '成员加入状态。取值:'."\n" + ."\n" + .'- CreateSuccess:创建成功。'."\n" + .'- PromoteVerifying:升级确认中。'."\n" + .'- PromoteFailed:升级失败。'."\n" + .'- PromoteExpired:升级过期。'."\n" + .'- PromoteCancelled:升级取消。'."\n" + .'- PromoteSuccess:升级成功。'."\n" + .'- InviteSuccess:邀请成功。', 'type' => 'string', 'example' => 'CreateSuccess'], + 'Type' => ['description' => '成员类型。取值:'."\n" + ."\n" + .'- CloudAccount:云账号。'."\n" + .'- ResourceAccount:资源账号。', 'type' => 'string', 'example' => 'ResourceAccount'], + 'DisplayName' => ['description' => '成员名称。', 'type' => 'string', 'example' => 'admin'], + 'FolderId' => ['description' => '资源夹ID。', 'type' => 'string', 'example' => 'fd-bVaRIG****'], + 'ResourceDirectoryId' => ['description' => '资源目录ID。', 'type' => 'string', 'example' => 'rd-k3****'], + 'IdentityInformation' => ['description' => '实名认证信息。', 'type' => 'string', 'example' => 'aliyun-admin'], + 'JoinTime' => ['description' => '成员加入时间。', 'type' => 'string', 'example' => '2015-01-23T12:33:18Z'], + 'AccountId' => ['description' => '成员ID。', 'type' => 'string', 'example' => '181761095690****'], + 'JoinMethod' => ['description' => '成员加入方式。取值:'."\n" + ."\n" + .'- invited:邀请。'."\n" + .'- created:创建。', 'type' => 'string', 'example' => 'created'], + 'ModifyTime' => ['description' => '成员修改时间。', 'type' => 'string', 'example' => '2015-01-23T12:33:18Z'], + 'AccountName' => ['description' => '账号名称。', 'type' => 'string', 'example' => 'someone@example.com'], + 'ResourceDirectoryPath' => ['description' => '成员在资源目录中的路径ID(RDPath)。', 'type' => 'string', 'example' => 'rd-k3****/r-Wm****/fd-bVaRIG****/181761095690****'], + 'Tags' => [ + 'description' => '标签。', + 'type' => 'array', + 'items' => [ + 'description' => '标签列表。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '标签键。', 'type' => 'string', 'example' => 'tag_key'], + 'Value' => ['description' => '标签值。', 'type' => 'string', 'example' => 'tag_value'], + ], + ], ], + 'Location' => ['description' => '成员所在资源目录的位置。', 'type' => 'string', 'example' => 'root/AlRd****/Z5Aa****'], + 'EmailStatus' => ['description' => '邮箱状态。取值:'."\n" + ."\n" + .'- 空:不存在邮箱修改记录。'."\n" + .'- WAIT_MODIFY:正在修改中。'."\n" + .'- CANCELLED:修改取消。'."\n" + .'- EXPIRED:修改过期。', 'type' => 'string', 'example' => 'WAIT_MODIFY'], + 'HasSecureMobilePhone' => ['description' => '成员是否已绑定安全手机。取值:'."\n" + .'- true:成员已绑定安全手机。'."\n" + .'- false:成员未绑定安全手机。', 'type' => 'boolean', 'example' => 'true'], + 'SecureMobilePhone' => ['description' => '安全手机号码。', 'type' => 'string', 'example' => '1234567****'], ], ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'MissingParameter.HandshakeId', - 'errorMessage' => 'You must specify HandshakeId.', - ], - [ - 'errorCode' => 'InvalidParameter.HandshakeId', - 'errorMessage' => 'The HandshakeId is invalid.', - ], + ['errorCode' => 'MissingParameter.AccountId', 'errorMessage' => 'You must specify AccountId.', 'description' => 'AccountId不能为空。'], + ['errorCode' => 'InvalidParameter.AccountId', 'errorMessage' => 'The AccountId is invalid.', 'description' => '成员ID无效,请输入16位账号ID。'], ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.Handshake', - 'errorMessage' => 'The specified handshake does not exist.', - ], + ['errorCode' => 'EntityNotExists.Account', 'errorMessage' => 'This resource directory account does not exist.', 'description' => '成员不存在,请先创建成员。'], + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => '当前账号未启用资源目录,请先启用资源目录。'], ], - 409 => [ - [ - 'errorCode' => 'HandshakeStatusMismatch', - 'errorMessage' => 'The invitation is invalid.', + ], + 'title' => '查询成员信息', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetAccount'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'resourcemanager:GetAccount', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager::{#accountId}:account/{#ResourceDirectoryPath}'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\",\\n \\"Handshake\\": {\\n \\"Status\\": \\"Cancelled\\",\\n \\"ExpireTime\\": \\"2018-08-24T09:55:41Z\\",\\n \\"ResourceDirectoryId\\": \\"h-ycm4rp****\\",\\n \\"CreateTime\\": \\"2018-08-10T09:55:41Z\\",\\n \\"Note\\": \\"欢迎您加入\\",\\n \\"TargetEntity\\": \\"someone@example.com\\",\\n \\"MasterAccountId\\": \\"172841235500****\\",\\n \\"MasterAccountName\\": \\"Alice\\",\\n \\"ModifyTime\\": \\"2018-08-10T09:55:41Z\\",\\n \\"TargetType\\": \\"Email\\",\\n \\"HandshakeId\\": \\"h-ycm4rp****\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<CancelHandshakeResponse>\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\n <Handshake>\\n <HandshakeId>h-ycm4rp****</HandshakeId>\\n <ResourceDirectoryId>rd-abcdef****</ResourceDirectoryId>\\n <MasterAccountId>172841235500****</MasterAccountId>\\n <MasterAccountName>Alice</MasterAccountName>\\n <TargetEntity>someone@example.com</TargetEntity>\\n <TargetType>Email</TargetType>\\n <Note>欢迎您加入</Note>\\n <Status>Cancelled</Status>\\n <CreateTime>2018-08-10T09:55:41Z</CreateTime>\\n <ModifyTime>2018-08-10T09:55:41Z</ModifyTime>\\n <ExpireTime>2018-08-24T09:55:41Z</ExpireTime>\\n </Handshake>\\n</CancelHandshakeResponse>","errorExample":""}]', - 'title' => '取消邀请', - 'summary' => '调用CancelHandshake取消邀请。', - 'responseParamsDescription' => '关于公共请求参数的详情,请参见[公共参数](~~159973~~)。', - 'extraInfo' => ' ', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Account\\": {\\n \\"Status\\": \\"CreateSuccess\\",\\n \\"Type\\": \\"ResourceAccount\\",\\n \\"DisplayName\\": \\"admin\\",\\n \\"FolderId\\": \\"fd-bVaRIG****\\",\\n \\"ResourceDirectoryId\\": \\"rd-k3****\\",\\n \\"IdentityInformation\\": \\"aliyun-admin\\",\\n \\"JoinTime\\": \\"2015-01-23T12:33:18Z\\",\\n \\"AccountId\\": \\"181761095690****\\",\\n \\"JoinMethod\\": \\"created\\",\\n \\"ModifyTime\\": \\"2015-01-23T12:33:18Z\\",\\n \\"AccountName\\": \\"someone@example.com\\",\\n \\"ResourceDirectoryPath\\": \\"rd-k3****/r-Wm****/fd-bVaRIG****/181761095690****\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"tag_key\\",\\n \\"Value\\": \\"tag_value\\"\\n }\\n ],\\n \\"Location\\": \\"root/AlRd****/Z5Aa****\\",\\n \\"EmailStatus\\": \\"WAIT_MODIFY\\",\\n \\"HasSecureMobilePhone\\": true,\\n \\"SecureMobilePhone\\": \\"1234567****\\"\\n },\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\"\\n}","errorExample":""},{"type":"xml","example":"<GetAccountResponse>\\n <Account>\\n <Status>CreateSuccess</Status>\\n <Type>ResourceAccount</Type>\\n <DisplayName>admin</DisplayName>\\n <FolderId>fd-bVaRIG****</FolderId>\\n <ResourceDirectoryId>rd-k3****</ResourceDirectoryId>\\n <IdentityInformation>aliyun-admin</IdentityInformation>\\n <JoinTime>2015-01-23T12:33:18Z</JoinTime>\\n <AccountId>181761095690****</AccountId>\\n <JoinMethod>created</JoinMethod>\\n <ModifyTime>2015-01-23T12:33:18Z</ModifyTime>\\n <AccountName>someone@example.com</AccountName>\\n <ResourceDirectoryPath>rd-k3****/r-Wm****/fd-bVaRIG****/181761095690****</ResourceDirectoryPath>\\n <Tags>\\n <Key>tag_key</Key>\\n <Value>tag_value</Value>\\n </Tags>\\n <Location>root/AlRd****/Z5Aa****</Location>\\n <EmailStatus>WAIT_MODIFY</EmailStatus>\\n </Account>\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\n</GetAccountResponse>","errorExample":""}]', ], - 'ListHandshakesForAccount' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'GetAccountDeletionCheckResult' => [ + 'summary' => '调用GetAccountDeletionCheckResult查询成员删除检查结果。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'list', - ], + 'systemTags' => ['operationType' => 'get'], 'parameters' => [ [ - 'name' => 'PageNumber', - 'in' => 'query', - 'schema' => [ - 'description' => '页码。'."\n" - ."\n" - .'起始值:1。默认值:1。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], - ], - [ - 'name' => 'PageSize', + 'name' => 'AccountId', 'in' => 'query', - 'schema' => [ - 'description' => '分页时每页显示的数据条数。'."\n" - ."\n" - .'取值范围:1~100。默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '待删除成员的ID。', 'type' => 'string', 'required' => true, 'example' => '179855839641****'], ], ], 'responses' => [ @@ -4157,104 +2171,46 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'TotalCount' => [ - 'description' => '邀请记录总条数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE', - ], - 'PageSize' => [ - 'description' => '分页时每页显示的数据条数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'PageNumber' => [ - 'description' => '页码。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Handshakes' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '54AC391D-4F7F-5F08-B8D3-0AECDE6EC5BD'], + 'AccountDeletionCheckResultInfo' => [ + 'description' => '成员删除检查结果。', 'type' => 'object', - 'itemNode' => true, 'properties' => [ - 'Handshake' => [ - 'description' => '邀请记录。', + 'Status' => ['description' => '检查状态。取值:'."\n" + ."\n" + .'- PreCheckComplete:检查完成。'."\n" + .'- PreChecking:检查中。', 'type' => 'string', 'example' => 'PreCheckComplete'], + 'AllowDelete' => ['description' => '是否允许删除。取值:'."\n" + .'- true:允许删除。'."\n" + .'- false:不允许删除。', 'type' => 'string', 'example' => 'false'], + 'NotAllowReason' => [ + 'description' => '不允许删除的原因。'."\n" + .'> 当AllowDelete为false时,返回该参数值。', 'type' => 'array', 'items' => [ - 'description' => '邀请记录', + 'description' => '不允许删除的原因。'."\n" + .'> 当AllowDelete为false时,返回该参数值。', 'type' => 'object', 'properties' => [ - 'Status' => [ - 'description' => '邀请状态。'."\n" - ."\n" - .'- Pending:等待确认。'."\n" - .'- Accepted:已接受。'."\n" - .'- Cancelled:已取消。'."\n" - .'- Declined:已拒绝。'."\n" - .'- Expired:超时。', - 'type' => 'string', - 'example' => 'Pending', - ], - 'ExpireTime' => [ - 'description' => '邀请的过期时间(UTC时间)。', - 'type' => 'string', - 'example' => '2018-08-24T09:55:41Z', - ], - 'ResourceDirectoryId' => [ - 'description' => '资源目录ID。', - 'type' => 'string', - 'example' => 'rd-abcdef****', - ], - 'CreateTime' => [ - 'description' => '邀请的创建时间(UTC时间)。', - 'type' => 'string', - 'example' => '2018-08-10T09:55:41Z', - ], - 'Note' => [ - 'description' => '备注。', - 'type' => 'string', - 'example' => '欢迎您加入', - ], - 'TargetEntity' => [ - 'description' => '被邀请的阿里云账号ID或登录邮箱。', - 'type' => 'string', - 'example' => 'someone@example.com', - ], - 'MasterAccountId' => [ - 'description' => '资源目录管理账号ID。', - 'type' => 'string', - 'example' => '172841235500****', - ], - 'MasterAccountName' => [ - 'description' => '资源目录管理账号名称。', - 'type' => 'string', - 'example' => 'CompanyA', - ], - 'ModifyTime' => [ - 'description' => '邀请的修改时间(UTC时间)。', - 'type' => 'string', - 'example' => '2018-08-10T09:55:41Z', - ], - 'TargetType' => [ - 'description' => '被邀请的阿里云账号类型。'."\n" - ."\n" - .'- Account:账号ID。'."\n" - .'- Email:账号登录邮箱。', - 'type' => 'string', - 'example' => 'Email', - ], - 'HandshakeId' => [ - 'description' => '邀请ID。', - 'type' => 'string', - 'example' => 'h-4N57QZzCTtES****', - ], + 'Description' => ['description' => '检查项描述。', 'type' => 'string', 'example' => 'This account is an Enterprise Finance associated account. Please remove the financial association of this account before deleting it.'], + 'CheckId' => ['description' => '检查项ID。', 'type' => 'string', 'example' => 'NON_SP_efc'], + 'CheckName' => ['description' => '检查项所属的云服务名称。', 'type' => 'string', 'example' => 'Enterprise finance'], + ], + ], + ], + 'AbandonableChecks' => [ + 'description' => '您可以选择放弃并继续执行成员删除的检查项。'."\n" + ."\n" + .'> 当AllowDelete为true时,可能返回该参数值。', + 'type' => 'array', + 'items' => [ + 'description' => '您可以选择放弃并继续执行成员删除的检查项。'."\n" + .'> 当AllowDelete为true时,可能返回该参数值。', + 'type' => 'object', + 'properties' => [ + 'Description' => ['description' => '检查项描述。', 'type' => 'string', 'example' => '存在云产品实例运行,请联系客服人员提工单处理。'], + 'CheckId' => ['description' => '检查项ID。', 'type' => 'string', 'example' => 'NON_SP_cs'], + 'CheckName' => ['description' => '检查项所属的云服务名称。', 'type' => 'string', 'example' => '容器服务'], ], ], ], @@ -4264,56 +2220,43 @@ ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"TotalCount\\": 2,\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"Handshakes\\": {\\n \\"Handshake\\": [\\n {\\n \\"Status\\": \\"Pending\\",\\n \\"ExpireTime\\": \\"2018-08-24T09:55:41Z\\",\\n \\"ResourceDirectoryId\\": \\"rd-abcdef****\\",\\n \\"CreateTime\\": \\"2018-08-10T09:55:41Z\\",\\n \\"Note\\": \\"欢迎您加入\\",\\n \\"TargetEntity\\": \\"someone@example.com\\",\\n \\"MasterAccountId\\": \\"172841235500****\\",\\n \\"MasterAccountName\\": \\"CompanyA\\",\\n \\"ModifyTime\\": \\"2018-08-10T09:55:41Z\\",\\n \\"TargetType\\": \\"Email\\",\\n \\"HandshakeId\\": \\"h-4N57QZzCTtES****\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ListHandshakesForAccountResponse>\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>2</TotalCount>\\n <Handshakes>\\n <Handshake>\\n <HandshakeId>h-4N57QZzCTtES****</HandshakeId>\\n <ResourceDirectoryId>rd-abcdef****</ResourceDirectoryId>\\n <MasterAccountId>172841235500****</MasterAccountId>\\n <MasterAccountName>CompanyA</MasterAccountName>\\n <TargetEntity>someone@example.com</TargetEntity>\\n <TargetType>Email</TargetType>\\n <Note>欢迎您加入</Note>\\n <Status>Pending</Status>\\n <CreateTime>2018-08-10T09:55:41Z</CreateTime>\\n <ModifyTime>2018-08-10T09:55:41Z</ModifyTime>\\n <ExpireTime>2018-08-24T09:55:41Z</ExpireTime>\\n </Handshake>\\n <Handshake>\\n <HandshakeId>h-BeJZW63fHT4l****</HandshakeId>\\n <ResourceDirectoryId>rd-abcdef****</ResourceDirectoryId>\\n <MasterAccountId>172841235500****</MasterAccountId>\\n <MasterAccountName>CompanyA</MasterAccountName>\\n <TargetEntity>172841235500****</TargetEntity>\\n <TargetType>Account</TargetType>\\n <Note>欢迎您加入</Note>\\n <Status>Pending</Status>\\n <CreateTime>2018-08-10T09:55:41Z</CreateTime>\\n <ModifyTime>2018-08-10T09:55:41Z</ModifyTime>\\n <ExpireTime>2018-08-24T09:55:41Z</ExpireTime>\\n </Handshake>\\n </Handshakes>\\n</ListHandshakesForAccountResponse>","errorExample":""}]', - 'title' => '查询当前账号的邀请记录', - 'summary' => '调用ListHandshakesForAccount查询当前账号的邀请记录。', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'ListHandshakesForResourceDirectory' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'MissingParameter.AccountId', 'errorMessage' => 'You must specify AccountId.', 'description' => ''], + ['errorCode' => 'InvalidParameter.AccountId', 'errorMessage' => 'The AccountId is invalid.', 'description' => ''], + ], + 404 => [ + ['errorCode' => 'EntityNotExists.Account', 'errorMessage' => 'This resource directory account does not exist.', 'description' => ''], + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => ''], + ], + 409 => [ + ['errorCode' => 'AccountTypeOrStatusMismatch', 'errorMessage' => 'You cannot perform the action on the member account.', 'description' => ''], + ['errorCode' => 'EntityNotExists.CheckAccount', 'errorMessage' => 'There is no check task for this account', 'description' => ''], + ['errorCode' => 'UnknownError.Account', 'errorMessage' => 'The deletion failed. An unknown error occurred. Please try again later.', 'description' => ''], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"54AC391D-4F7F-5F08-B8D3-0AECDE6EC5BD\\",\\n \\"AccountDeletionCheckResultInfo\\": {\\n \\"Status\\": \\"PreCheckComplete\\",\\n \\"AllowDelete\\": \\"false\\",\\n \\"NotAllowReason\\": [\\n {\\n \\"Description\\": \\"This account is an Enterprise Finance associated account. Please remove the financial association of this account before deleting it.\\",\\n \\"CheckId\\": \\"NON_SP_efc\\",\\n \\"CheckName\\": \\"Enterprise finance\\"\\n }\\n ],\\n \\"AbandonableChecks\\": [\\n {\\n \\"Description\\": \\"存在云产品实例运行,请联系客服人员提工单处理。\\",\\n \\"CheckId\\": \\"NON_SP_cs\\",\\n \\"CheckName\\": \\"容器服务\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<GetAccountDeletionCheckResultResponse>\\n <AccountDeletionCheckResultInfo>\\n <Status>PreCheckComplete</Status>\\n <NotAllowReason>\\n <Description>instance number:1</Description>\\n <CheckName>eip_pre</CheckName>\\n <CheckId>SP_eip_eip_pre</CheckId>\\n </NotAllowReason>\\n <NotAllowReason>\\n <Description>This account is an Enterprise Finance associated account. Please remove the financial association of this account before deleting it.</Description>\\n <CheckName>Enterprise finance</CheckName>\\n <CheckId>NON_SP_efc</CheckId>\\n </NotAllowReason>\\n <AllowDelete>false</AllowDelete>\\n </AccountDeletionCheckResultInfo>\\n <RequestId>54AC391D-4F7F-5F08-B8D3-0AECDE6EC5BD</RequestId>\\n</GetAccountDeletionCheckResultResponse>","errorExample":""}]', + 'title' => '查询成员删除检查结果', + 'description' => '在您调用[CheckAccountDelete](~~CheckAccountDelete~~)执行了成员删除检查任务后,您可以调用[GetAccountDeletionCheckResult](~~GetAccountDeletionCheckResult~~)查询成员删除检查的结果。如果符合删除检查要求,则该成员允许删除;否则,请手动处理不符合项,直至符合要求为止。', + 'changeSet' => [], + ], + 'GetAccountDeletionStatus' => [ + 'summary' => '调用GetAccountDeletionStatus查询成员删除状态。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'list', - ], + 'systemTags' => ['operationType' => 'get'], 'parameters' => [ [ - 'name' => 'PageNumber', - 'in' => 'query', - 'schema' => [ - 'description' => '页码。'."\n" - ."\n" - .'起始值:1。默认值:1。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], - ], - [ - 'name' => 'PageSize', + 'name' => 'AccountId', 'in' => 'query', - 'schema' => [ - 'description' => '分页时每页显示的数据行数。'."\n" - ."\n" - .'取值范围:1~100。默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '成员ID。', 'type' => 'string', 'required' => true, 'example' => '169946124551****'], ], ], 'responses' => [ @@ -4322,174 +2265,82 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'TotalCount' => [ - 'description' => '数据总条数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE', - ], - 'PageSize' => [ - 'description' => '分页时每页显示的数据行数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'PageNumber' => [ - 'description' => '页码。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Handshakes' => [ + 'RdAccountDeletionStatus' => [ + 'description' => '成员删除状态。', 'type' => 'object', - 'itemNode' => true, 'properties' => [ - 'Handshake' => [ - 'description' => '邀请信息。', + 'Status' => ['description' => '状态。取值:'."\n" + ."\n" + .'- Success:删除成功。'."\n" + .'- Checking:检查中。'."\n" + .'- Deleting:删除中。'."\n" + .'- CheckFailed:检查失败。'."\n" + .'- DeleteFailed:删除失败。', 'type' => 'string', 'example' => 'Success'], + 'AccountId' => ['description' => '成员ID。', 'type' => 'string', 'example' => '169946124551****'], + 'CreateTime' => ['description' => '删除开始时间。', 'type' => 'string', 'example' => '2022-08-23T17:05:30+08:00'], + 'DeletionTime' => ['description' => '删除结束时间。', 'type' => 'string', 'required' => true, 'example' => '2022-08-23T17:06:01+08:00'], + 'FailReasonList' => [ + 'description' => '删除失败原因。', 'type' => 'array', 'items' => [ - 'description' => '邀请信息。', + 'description' => '删除失败原因。', 'type' => 'object', 'properties' => [ - 'Status' => [ - 'description' => '邀请状态。'."\n" - ."\n" - .'- Pending:等待确认。'."\n" - .'- Accepted:已接受。'."\n" - .'- Cancelled:已取消。'."\n" - .'- Declined:已拒绝。'."\n" - .'- Expired:超时。', - 'type' => 'string', - 'example' => 'Pending', - ], - 'ExpireTime' => [ - 'description' => '邀请的过期时间(UTC时间)。', - 'type' => 'string', - 'example' => '2018-08-24T09:55:41Z', - ], - 'ResourceDirectoryId' => [ - 'description' => '资源目录ID。', - 'type' => 'string', - 'example' => 'rd-abcdef****', - ], - 'CreateTime' => [ - 'description' => '邀请的创建时间(UTC时间)。', - 'type' => 'string', - 'example' => '2018-08-10T09:55:41Z', - ], - 'Note' => [ - 'description' => '备注。', - 'type' => 'string', - 'example' => '欢迎您加入', - ], - 'TargetEntity' => [ - 'description' => '被邀请账号ID或登录邮箱。', - 'type' => 'string', - 'example' => 'someone@example.com', - ], - 'MasterAccountId' => [ - 'description' => '资源目录管理账号ID。', - 'type' => 'string', - 'example' => '172841235500****', - ], - 'MasterAccountName' => [ - 'description' => '资源目录管理账号名称。', - 'type' => 'string', - 'example' => 'Alice', - ], - 'ModifyTime' => [ - 'description' => '邀请的修改时间(UTC时间)。', - 'type' => 'string', - 'example' => '2018-08-10T09:55:41Z', - ], - 'TargetType' => [ - 'description' => '被邀请账号类型。'."\n" - ."\n" - .'- Account:账号ID。'."\n" - .'- Email:账号登录邮箱。', - 'type' => 'string', - 'example' => 'Email', - ], - 'HandshakeId' => [ - 'description' => '邀请ID。', - 'type' => 'string', - 'example' => 'h-ycm4rp****', - ], + 'Name' => ['description' => '检查项所属的云服务名称。', 'type' => 'string', 'example' => 'Others'], + 'Description' => ['description' => '检查项描述。', 'type' => 'string', 'example' => 'This account has a payer account. Please release the financial relationship of this account first.'], ], ], ], + 'DeletionType' => ['description' => '删除类型。取值:'."\n" + ."\n" + .'- 0:直接删除。如果成员最近30天内不存在后付费资源,则系统会直接删除该成员。'."\n" + .'- 1:静默期删除。如果成员最近30天内存在后付费资源,则会进入静默期。等待静默期结束后,系统才会开始删除该成员。关于静默期的更多信息,请参见[什么是成员删除的静默期](~~446079~~)。', 'type' => 'string', 'example' => '0'], ], ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '8AA43293-7C8F-5730-8F2D-7F864EC092C5'], ], ], ], ], 'errorCodes' => [ 404 => [ - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], + ['errorCode' => 'EntityNotExists.Account', 'errorMessage' => 'This resource directory account does not exist.', 'description' => ''], + ], + 409 => [ + ['errorCode' => 'EntityNotExists.CheckAccount', 'errorMessage' => 'There is no check task for this account', 'description' => ''], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"TotalCount\\": 2,\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"Handshakes\\": {\\n \\"Handshake\\": [\\n {\\n \\"Status\\": \\"Pending\\",\\n \\"ExpireTime\\": \\"2018-08-24T09:55:41Z\\",\\n \\"ResourceDirectoryId\\": \\"rd-abcdef****\\",\\n \\"CreateTime\\": \\"2018-08-10T09:55:41Z\\",\\n \\"Note\\": \\"欢迎您加入\\",\\n \\"TargetEntity\\": \\"someone@example.com\\",\\n \\"MasterAccountId\\": \\"172841235500****\\",\\n \\"MasterAccountName\\": \\"Alice\\",\\n \\"ModifyTime\\": \\"2018-08-10T09:55:41Z\\",\\n \\"TargetType\\": \\"Email\\",\\n \\"HandshakeId\\": \\"h-ycm4rp****\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ListHandshakesForResourceDirectoryResponse>\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>2</TotalCount>\\n <Handshakes>\\n <Handshake>\\n <HandshakeId>h-ycm4rp****</HandshakeId>\\n <ResourceDirectoryId>rd-abcdef****</ResourceDirectoryId>\\n <MasterAccountId>172841235500****</MasterAccountId>\\n <MasterAccountName>Alice</MasterAccountName>\\n <InviteEntity>someone@example.com</InviteEntity>\\n <InviteType>Email</InviteType>\\n <Note>欢迎您加入</Note>\\n <Status>Pending</Status>\\n <CreateTime>2018-08-10T09:55:41Z</CreateTime>\\n <ModifyTime>2018-08-10T09:55:41Z</ModifyTime>\\n <ExpireTime>2018-08-24T09:55:41Z</ExpireTime>\\n </Handshake>\\n <Handshake>\\n <HandshakeId>h-ycm4rp****</HandshakeId>\\n <ResourceDirectoryId>rd-abcdef****</ResourceDirectoryId>\\n <MasterAccountId>172841235500****</MasterAccountId>\\n <MasterAccountName>Alice</MasterAccountName>\\n <TargetEntity>172841235500****</TargetEntity>\\n <TargetType>Account</TargetType>\\n <Note>欢迎您加入</Note>\\n <Status>Pending</Status>\\n <CreateTime>2018-08-10T09:55:41Z</CreateTime>\\n <ModifyTime>2018-08-10T09:55:41Z</ModifyTime>\\n <ExpireTime>2018-08-24T09:55:41Z</ExpireTime>\\n </Handshake>\\n </Handshakes>\\n</ListHandshakesForResourceDirectoryResponse>","errorExample":""}]', - 'title' => '查看资源目录下的所有邀请列表', - 'summary' => '调用ListHandshakesForResourceDirectory查看资源目录下的所有邀请列表。', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RdAccountDeletionStatus\\": {\\n \\"Status\\": \\"Success\\",\\n \\"AccountId\\": \\"169946124551****\\",\\n \\"CreateTime\\": \\"2022-08-23T17:05:30+08:00\\",\\n \\"DeletionTime\\": \\"2022-08-23T17:06:01+08:00\\",\\n \\"FailReasonList\\": [\\n {\\n \\"Name\\": \\"Others\\",\\n \\"Description\\": \\"This account has a payer account. Please release the financial relationship of this account first.\\"\\n }\\n ],\\n \\"DeletionType\\": \\"0\\"\\n },\\n \\"RequestId\\": \\"8AA43293-7C8F-5730-8F2D-7F864EC092C5\\"\\n}","errorExample":""},{"type":"xml","example":"<GetAccountDeletionStatusResponse>\\n <RequestId>8AA43293-7C8F-5730-8F2D-7F864EC092C5</RequestId>\\n <RdAccountDeletionStatus>\\n <Status>Success</Status>\\n <AccountId>169946124551****</AccountId>\\n <DeletionType>0</DeletionType>\\n <CreateTime>2022-08-23T17:05:30+08:00</CreateTime>\\n <DeletionTime>2022-08-23T17:06:01+08:00</DeletionTime>\\n </RdAccountDeletionStatus>\\n</GetAccountDeletionStatusResponse>","errorExample":""}]', + 'title' => '查询成员删除状态', + 'changeSet' => [], ], - 'SendVerificationCodeForBindSecureMobilePhone' => [ - 'summary' => '为资源账号类型的成员设置安全手机号码时,调用SendVerificationCodeForBindSecureMobilePhone向安全手机发送验证码。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'GetControlPolicy' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'none', - ], + 'systemTags' => ['operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ - 'name' => 'SecureMobilePhone', + 'name' => 'PolicyId', 'in' => 'query', - 'schema' => [ - 'description' => '安全手机号码。'."\n" - ."\n" - .'格式:<国家码>-<手机号码>。'."\n" - ."\n" - .'<props="china">'."\n" - .'> 仅支持填写`86-<手机号码>`的中国内地手机号码。</props>'."\n" - ."\n\n" - .'<props="intl">'."\n" - .'> 不支持填写`86-<手机号码>`的中国内地手机号码。</props>'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'xx-13900001234', - ], + 'schema' => ['description' => '管控策略ID。', 'type' => 'string', 'required' => true, 'example' => 'cp-SImPt8GCEwiq****'], ], [ - 'name' => 'AccountId', + 'name' => 'Language', 'in' => 'query', - 'schema' => [ - 'description' => '成员的账号ID。', - 'type' => 'string', - 'required' => true, - 'example' => '138660628348****', - ], + 'schema' => ['description' => '指定返回结果中管控策略描述的语言。取值:'."\n" + ."\n" + .'- zh-CN(默认值):中文。'."\n" + .'- en:英文。'."\n" + .'- ja:日文。'."\n" + ."\n" + .'> 该参数仅在系统管控策略时有效。', 'type' => 'string', 'required' => false, 'example' => 'zh-CN'], ], ], 'responses' => [ @@ -4498,105 +2349,79 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'DCD43660-75DD-5D15-B342-1B83FCA5B913', - ], - 'ExpirationDate' => [ - 'description' => '验证码过期时间。', - 'type' => 'string', - 'example' => '2021-12-17T07:38:41.747Z', + 'ControlPolicy' => [ + 'description' => '管控策略详情。', + 'type' => 'object', + 'properties' => [ + 'PolicyDocument' => ['description' => '管控策略内容。', 'type' => 'string', 'example' => '{\\"Version\\":\\"1\\",\\"Statement\\":[{\\"Effect\\":\\"Deny\\",\\"Action\\":[\\"ram:UpdateRole\\",\\"ram:DeleteRole\\",\\"ram:AttachPolicyToRole\\",\\"ram:DetachPolicyFromRole\\"],\\"Resource\\":\\"acs:ram:*:*:role/ResourceDirectoryAccountAccessRole\\"}]}'], + 'UpdateDate' => ['description' => '管控策略更新时间。', 'type' => 'string', 'example' => '2021-03-18T08:51:33Z'], + 'Description' => ['description' => '管控策略描述。', 'type' => 'string', 'example' => 'ExampleControlPolicy'], + 'EffectScope' => ['description' => '管控策略生效范围。取值:'."\n" + ."\n" + .'- All:表示该管控策略针对阿里云账号、RAM用户或RAM角色生效。'."\n" + .'- RAM:表示该管控策略仅针对RAM用户或RAM角色生效。', 'type' => 'string', 'example' => 'RAM'], + 'AttachmentCount' => ['description' => '管控策略被引用的次数。', 'type' => 'string', 'example' => '0'], + 'PolicyName' => ['description' => '管控策略名称。', 'type' => 'string', 'example' => 'test'], + 'PolicyId' => ['description' => '管控策略ID。', 'type' => 'string', 'example' => 'cp-SImPt8GCEwiq****'], + 'CreateDate' => ['description' => '管控策略创建时间。', 'type' => 'string', 'example' => '2021-03-18T08:51:33Z'], + 'PolicyType' => ['description' => '管控策略类型。取值:'."\n" + ."\n" + .'- System:系统管控策略。'."\n" + .'- Custom:自定义管控策略。', 'type' => 'string', 'example' => 'Custom'], + 'ControlPolicyType' => ['type' => 'string', 'example' => 'RESOURCE_CONTROL_POLICY'], + ], ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'AB769936-CDFA-4D52-8CE2-A3581800044A'], ], ], ], ], 'errorCodes' => [ - 409 => [ - [ - 'errorCode' => 'NotSupport.AccountInAnotherResourceDirectory', - 'errorMessage' => 'The specified account is an Alibaba Cloud account or already exists in another resource directory.', - ], - [ - 'errorCode' => 'EntityAlreadyExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is already enabled. We recommend that you do not enable the resource directory again.', - ], - [ - 'errorCode' => 'SendValidateCodeExceedsLimitForAccount', - 'errorMessage' => 'For the same account, the number of verification codes sent exceeds the limit.', - ], - [ - 'errorCode' => 'InvalidParameter.MobileCountryCode', - 'errorMessage' => 'The current site does not support the country code.', - ], + 404 => [ + ['errorCode' => 'EntityNotExists.ResourceControlPolicy', 'errorMessage' => 'The specified resource control policy does not exist.', 'description' => '资源管控策略不存在。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"DCD43660-75DD-5D15-B342-1B83FCA5B913\\",\\n \\"ExpirationDate\\": \\"2021-12-17T07:38:41.747Z\\"\\n}","errorExample":""},{"type":"xml","example":"<SendVerificationCodeForBindSecureMobilePhoneResponse>\\n <RequestId>DCD43660-75DD-5D15-B342-1B83FCA5B913</RequestId>\\n <ExpirationDate>2021-12-17T07:38:41.747Z</ExpirationDate>\\n</SendVerificationCodeForBindSecureMobilePhoneResponse>","errorExample":""}]', - 'title' => '向安全手机发送验证码', - 'description' => '为确保系统可以记录到管理操作的具体操作者,请使用管理账号下具有资源目录管理权限(AliyunResourceDirectoryFullAccess)的RAM用户或RAM角色调用本API。', - ], - 'BindSecureMobilePhone' => [ - 'summary' => '调用BindSecureMobilePhone为资源账号类型的成员设置安全手机号码。', - 'methods' => [ - 'post', - 'get', + 'title' => '查询管控策略的详情', + 'summary' => '调用GetControlPolicy查询管控策略的详情。', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetControlPolicy'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'resourcemanager:GetControlPolicy', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'ControlPolicy', 'arn' => 'acs:resourcemanager::{#accountId}:policy/controlpolicy/{#PolicyId}'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"ControlPolicy\\": {\\n \\"PolicyDocument\\": \\"{\\\\\\\\\\\\\\"Version\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"1\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"Statement\\\\\\\\\\\\\\":[{\\\\\\\\\\\\\\"Effect\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Deny\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"Action\\\\\\\\\\\\\\":[\\\\\\\\\\\\\\"ram:UpdateRole\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"ram:DeleteRole\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"ram:AttachPolicyToRole\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"ram:DetachPolicyFromRole\\\\\\\\\\\\\\"],\\\\\\\\\\\\\\"Resource\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"acs:ram:*:*:role/ResourceDirectoryAccountAccessRole\\\\\\\\\\\\\\"}]}\\",\\n \\"UpdateDate\\": \\"2021-03-18T08:51:33Z\\",\\n \\"Description\\": \\"ExampleControlPolicy\\",\\n \\"EffectScope\\": \\"RAM\\",\\n \\"AttachmentCount\\": \\"0\\",\\n \\"PolicyName\\": \\"test\\",\\n \\"PolicyId\\": \\"cp-SImPt8GCEwiq****\\",\\n \\"CreateDate\\": \\"2021-03-18T08:51:33Z\\",\\n \\"PolicyType\\": \\"Custom\\",\\n \\"ControlPolicyType\\": \\"RESOURCE_CONTROL_POLICY\\"\\n },\\n \\"RequestId\\": \\"AB769936-CDFA-4D52-8CE2-A3581800044A\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<GetControlPolicyResponse>\\r\\n\\t<ControlPolicy>\\r\\n\\t\\t<PolicyType>Custom</PolicyType>\\r\\n\\t\\t<UpdateDate>2021-03-18T08:51:33Z</UpdateDate>\\r\\n\\t\\t<Description>ExampleControlPolicy</Description>\\r\\n\\t\\t<AttachmentCount>0</AttachmentCount>\\r\\n\\t\\t<PolicyName>test</PolicyName>\\r\\n\\t\\t<PolicyDocument>{"Version":"1","Statement":[{"Effect":"Deny","Action":["ram:UpdateRole","ram:DeleteRole","ram:AttachPolicyToRole","ram:DetachPolicyFromRole"],"Resource":"acs:ram:*:*:role/ResourceDirectoryAccountAccessRole"}]}</PolicyDocument>\\r\\n\\t\\t<CreateDate>2021-03-18T08:51:33Z</CreateDate>\\r\\n\\t\\t<PolicyId>cp-SImPt8GCEwiq****</PolicyId>\\r\\n\\t\\t<EffectScope>RAM</EffectScope>\\r\\n\\t</ControlPolicy>\\r\\n\\t<RequestId>AB769936-CDFA-4D52-8CE2-A3581800044A</RequestId>\\r\\n</GetControlPolicyResponse>\\t\\r\\n","errorExample":""}]', + ], + 'GetControlPolicyEnablementStatus' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - ], + 'systemTags' => ['operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ - 'name' => 'VerificationCode', + 'name' => 'ControlPolicyType', 'in' => 'query', - 'schema' => [ - 'description' => '验证码。'."\n" - ."\n" - .'您可以调用[SendVerificationCodeForBindSecureMobilePhone](~~SendVerificationCodeForBindSecureMobilePhone~~)获取验证码。', - 'type' => 'string', - 'required' => true, - 'example' => '123456', - ], - ], - [ - 'name' => 'SecureMobilePhone', - 'in' => 'query', - 'schema' => [ - 'description' => '安全手机号码。'."\n" - ."\n" - .'该手机号码必须与[SendVerificationCodeForBindSecureMobilePhone](~~SendVerificationCodeForBindSecureMobilePhone~~)中获取验证码时设置的手机号码一致。'."\n" - ."\n" - .'格式:<国家码>-<手机号码>。'."\n" - ."\n" - .'<props="china">'."\n" - .'> 仅支持填写`86-<手机号码>`的中国内地手机号码。</props>'."\n" - ."\n\n" - .'<props="intl">'."\n" - .'> 不支持填写`86-<手机号码>`的中国内地手机号码。</props>', - 'type' => 'string', - 'required' => true, - 'example' => 'xx-13900001234', - ], - ], - [ - 'name' => 'AccountId', - 'in' => 'query', - 'schema' => [ - 'description' => '成员ID。', - 'type' => 'string', - 'required' => true, - 'example' => '138660628348****', - ], + 'schema' => ['type' => 'string', 'example' => 'RESOURCE_CONTROL_POLICY'], ], ], 'responses' => [ @@ -4605,95 +2430,60 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '0217AFEB-5318-56D4-B167-1933D83EDF3F', - ], + 'EnablementStatus' => ['description' => '管控策略状态。取值:'."\n" + ."\n" + .'- Enabled:已开启。'."\n" + .'- PendingEnable:开启中。'."\n" + .'- Disabled:已关闭。'."\n" + .'- PendingDisable:关闭中。', 'type' => 'string', 'example' => 'Disabled'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '1DC39A4E-3B52-4EFE-9F93-4897D7FFA0C4'], + 'ControlPolicyType' => ['type' => 'string', 'example' => 'RESOURCE_CONTROL_POLICY'], ], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'NotSupport.Site.Action', - 'errorMessage' => 'Site does not allow current action.', - ], + 'title' => '查询管控策略功能的状态', + 'summary' => '调用GetControlPolicyEnablementStatus查询管控策略功能的开启或关闭状态。', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetControlPolicyEnablementStatus'], ], - 409 => [ - [ - 'errorCode' => 'NotSupport.AccountInAnotherResourceDirectory', - 'errorMessage' => 'The specified account is an Alibaba Cloud account or already exists in another resource directory.', - ], - [ - 'errorCode' => 'Invalid.EnterpriseName', - 'errorMessage' => 'You must specify the enterprise name.', - ], - [ - 'errorCode' => 'EnterpriseRealNameVerificationError', - 'errorMessage' => 'The specified account does not pass enterprise real-name verification. We recommend you first complete enterprise real-name verification for the account.', - ], - [ - 'errorCode' => 'EntityAlreadyExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is already enabled. We recommend that you do not enable the resource directory again.', - ], - [ - 'errorCode' => 'Invalid.VerificationCode', - 'errorMessage' => 'The verification code is invalid.', - ], - [ - 'errorCode' => 'AccountTypeMismatch', - 'errorMessage' => 'The type or status of the member account cannot satisfy the current operation.', - ], - [ - 'errorCode' => 'AccountSecureMobileAlreadyExists', - 'errorMessage' => 'The secure mobile number of the member already exists.', - ], - [ - 'errorCode' => 'CallerIdentityError', - 'errorMessage' => 'Please use the RAM user or role of the Management Account.', + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'resourcemanager:GetControlPolicyEnablementStatus', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'ResourceDirectory', 'arn' => 'acs:resourcemanager::{#accountId}:policy/controlpolicy/*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"0217AFEB-5318-56D4-B167-1933D83EDF3F\\"\\n}","errorExample":""},{"type":"xml","example":"<BindSecureMobilePhoneResponse>\\n <RequestId>0217AFEB-5318-56D4-B167-1933D83EDF3F</RequestId>\\n</BindSecureMobilePhoneResponse>","errorExample":""}]', - 'title' => '设置安全手机号码', - 'description' => '本API仅用于首次设置资源账号安全手机号码,不能用于修改已有的安全手机号码。'."\n" - ."\n" - .'为确保系统可以记录到管理操作的具体操作者,请使用管理账号下具有资源目录管理权限(AliyunResourceDirectoryFullAccess)的RAM用户或RAM角色调用本API。', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EnablementStatus\\": \\"Disabled\\",\\n \\"RequestId\\": \\"1DC39A4E-3B52-4EFE-9F93-4897D7FFA0C4\\",\\n \\"ControlPolicyType\\": \\"RESOURCE_CONTROL_POLICY\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<GetControlPolicyEnablementStatusResponse>\\r\\n\\t<EnablementStatus>Disabled</EnablementStatus>\\r\\n\\t<RequestId>1DC39A4E-3B52-4EFE-9F93-4897D7FFA0C4</RequestId>\\r\\n</GetControlPolicyEnablementStatusResponse>","errorExample":""}]', ], - 'SetMemberDeletionPermission' => [ - 'summary' => '调用SetMemberDeletionPermission开启或关闭成员删除许可。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'GetFolder' => [ + 'summary' => '调用GetFolder获取资源夹信息。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - ], + 'systemTags' => ['operationType' => 'get'], 'parameters' => [ [ - 'name' => 'Status', + 'name' => 'FolderId', 'in' => 'query', - 'schema' => [ - 'description' => '开启或关闭成员删除许可。取值:'."\n" - ."\n" - .'- Enabled:开启。'."\n" - .'- Disabled:关闭。', - 'type' => 'string', - 'required' => true, - 'example' => 'Enabled', - ], + 'schema' => ['description' => '资源夹ID。', 'type' => 'string', 'required' => true, 'example' => 'fd-Jyl5U7****'], ], ], 'responses' => [ @@ -4702,28 +2492,17 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C55A4CAA-9039-1DDF-91CE-FCC134513D29', - ], - 'MemberDeletionStatus' => [ - 'description' => '成员删除许可状态。取值:'."\n" - ."\n" - .'- Enabled:已开启。'."\n" - .'- Disabled:已关闭。', - 'type' => 'string', - 'example' => 'Enabled', - ], - 'ManagementAccountId' => [ - 'description' => '资源目录的管理账号ID。', - 'type' => 'string', - 'example' => '151266687691****', - ], - 'ResourceDirectoryId' => [ - 'description' => '资源目录ID。', - 'type' => 'string', - 'example' => 'rd-3G****', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'C2CBCA30-C8DD-423E-B4AD-4FB694C9180C'], + 'Folder' => [ + 'description' => '资源夹信息。', + 'type' => 'object', + 'properties' => [ + 'FolderId' => ['description' => '资源夹ID。', 'type' => 'string', 'example' => 'fd-Jyl5U7****'], + 'CreateTime' => ['description' => '资源夹创建时间。', 'type' => 'string', 'example' => '2021-06-15T06:39:08.521Z'], + 'ParentFolderId' => ['description' => '父资源夹ID。', 'type' => 'string', 'example' => 'r-Wm****'], + 'FolderName' => ['description' => '资源夹名称。', 'type' => 'string', 'example' => 'Applications'], + 'ResourceDirectoryPath' => ['description' => '资源夹在资源目录中的路径ID(RDPath)。', 'type' => 'string', 'example' => 'rd-3G****/r-Wm****/fd-Jyl5U7****'], + ], ], ], ], @@ -4731,88 +2510,76 @@ ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.Status', - 'errorMessage' => 'The specified Status is invalid.', - ], - ], - 403 => [ - [ - 'errorCode' => 'MemberAccountAccessDenied', - 'errorMessage' => 'The member account is not allowed to perform the operation.', - ], + ['errorCode' => 'MissingParameter.FolderId', 'errorMessage' => 'You must specify FolderId.', 'description' => ''], + ['errorCode' => 'InvalidParameter.FolderId', 'errorMessage' => 'The FolderId is invalid.', 'description' => ''], ], - [ - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], + 404 => [ + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => ''], + ['errorCode' => 'EntityNotExists.Folder', 'errorMessage' => 'The resource directory folder does not exist.', 'description' => ''], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C55A4CAA-9039-1DDF-91CE-FCC134513D29\\",\\n \\"MemberDeletionStatus\\": \\"Enabled\\",\\n \\"ManagementAccountId\\": \\"151266687691****\\",\\n \\"ResourceDirectoryId\\": \\"rd-3G****\\"\\n}","errorExample":""},{"type":"xml","example":"<SetMemberDeletionPermissionResponse>\\n <ResourceDirectoryId>rd-3G****</ResourceDirectoryId>\\n <RequestId>C55A4CAA-9039-1DDF-91CE-FCC134513D29</RequestId>\\n <MemberDeletionStatus>Enabled</MemberDeletionStatus>\\n <ManagementAccountId>151266687691****</ManagementAccountId>\\n</SetMemberDeletionPermissionResponse>","errorExample":""}]', - 'title' => '开启或关闭成员删除许可', - 'description' => '当开启成员删除许可后,才能删除资源账号类型的成员。', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C2CBCA30-C8DD-423E-B4AD-4FB694C9180C\\",\\n \\"Folder\\": {\\n \\"FolderId\\": \\"fd-Jyl5U7****\\",\\n \\"CreateTime\\": \\"2021-06-15T06:39:08.521Z\\",\\n \\"ParentFolderId\\": \\"r-Wm****\\",\\n \\"FolderName\\": \\"Applications\\",\\n \\"ResourceDirectoryPath\\": \\"rd-3G****/r-Wm****/fd-Jyl5U7****\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<GetFolderResponse>\\r\\n\\t<RequestId>88EF473E-D5CD-589F-AAB3-F6E0D12AECA3</RequestId>\\r\\n\\t<Folder>\\r\\n\\t\\t<CreateTime>2021-06-15T06:39:08.521Z</CreateTime>\\r\\n\\t\\t<FolderId>fd-Jyl5U7****</FolderId>\\r\\n\\t\\t<FolderName>Applications</FolderName>\\r\\n\\t\\t<ParentFolderId>r-Wm****</ParentFolderId>\\r\\n\\t\\t<ResourceDirectoryPath>rd-3G****/r-Wm****/fd-Jyl5U7****</ResourceDirectoryPath>\\r\\n\\t</Folder>\\r\\n</GetFolderResponse>","errorExample":""}]', + 'title' => '获取资源夹信息', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], ], - 'SetMemberDisplayNameSyncStatus' => [ - 'summary' => '开启或关闭成员显示名称同步状态。', - 'path' => '', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'GetHandshake' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - 'riskType' => 'none', - 'chargeType' => 'free', - 'autoTest' => true, - 'tenantRelevance' => 'publicInformation', - ], + 'systemTags' => ['operationType' => 'get'], 'parameters' => [ [ - 'name' => 'Status', + 'name' => 'HandshakeId', 'in' => 'query', - 'schema' => [ - 'description' => '开启或关闭成员账号显示名称的同步状态。取值:'."\n" - ."\n" - .'- Enabled:开启,即管理账号为成员设置的显示名称,将更新到此成员的账号基本信息中。显示名称信息将对成员账号可见可感知,例如给成员发送的消息通知,将使用此显示名称作为成员账号的称谓。'."\n" - ."\n" - .'- Disabled:关闭,即管理账号为成员设置的显示名称,仅在资源目录有效,不更新至成员的账号基本信息中。', - 'type' => 'string', - 'required' => true, - 'enumValueTitles' => [], - 'example' => 'Enabled', - ], + 'schema' => ['description' => '邀请ID。', 'type' => 'string', 'required' => true, 'example' => 'h-ycm4rp****'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE', - ], - 'MemberAccountDisplayNameSyncStatus' => [ - 'description' => '成员账号显示名称同步状态。取值:'."\n" - ."\n" - .'- Enabled:已开启。'."\n" - .'- Disabled:已关闭。', - 'type' => 'string', - 'example' => 'Enabled', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE'], + 'Handshake' => [ + 'description' => '邀请信息。', + 'type' => 'object', + 'properties' => [ + 'Status' => ['description' => '邀请状态。'."\n" + ."\n" + .'- Pending:等待确认。'."\n" + .'- Accepted:已接受。'."\n" + .'- Cancelled:已取消。'."\n" + .'- Declined:已拒绝。'."\n" + .'- Expired:超时。', 'type' => 'string', 'example' => 'Pending'], + 'ExpireTime' => ['description' => '邀请的过期时间(UTC时间)。', 'type' => 'string', 'example' => '2018-08-24T09:55:41Z'], + 'CreateTime' => ['description' => '邀请的创建时间(UTC时间)。', 'type' => 'string', 'example' => '2018-08-10T09:55:41Z'], + 'TargetEntity' => ['description' => '被邀请账号ID或登录邮箱。', 'type' => 'string', 'example' => 'someone@example.com'], + 'MasterAccountId' => ['description' => '资源目录管理账号ID。', 'type' => 'string', 'example' => '172841235500****'], + 'HandshakeId' => ['description' => '邀请ID。', 'type' => 'string', 'example' => 'h-ycm4rp****'], + 'MasterAccountRealName' => ['description' => '资源目录管理账号实名认证信息。'."\n" + ."\n" + .'> 被邀请方调用此接口时,才能查看该参数。', 'type' => 'string', 'example' => 'company'], + 'ResourceDirectoryId' => ['description' => '资源目录ID。', 'type' => 'string', 'example' => 'rd-abcdef****'], + 'InvitedAccountRealName' => ['description' => '被邀请方实名认证信息。'."\n" + ."\n" + .'> 被邀请方调用此接口时,才能查看该参数。', 'type' => 'string', 'example' => 'Alice'], + 'Note' => ['description' => '备注。', 'type' => 'string', 'example' => '欢迎您加入'], + 'MasterAccountName' => ['description' => '资源目录管理账号名称。', 'type' => 'string', 'example' => 'company@example.com'], + 'TargetType' => ['description' => '被邀请账号类型。'."\n" + ."\n" + .'- Account:账号ID。'."\n" + .'- Email:账号登录邮箱。', 'type' => 'string', 'example' => 'Email'], + 'ModifyTime' => ['description' => '邀请的修改时间(UTC时间)。', 'type' => 'string', 'example' => '2018-08-10T09:55:41Z'], + ], ], ], ], @@ -4820,71 +2587,78 @@ ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.Status', - 'errorMessage' => 'The specified Status is invalid.', - ], + ['errorCode' => 'MissingParameter.HandshakeId', 'errorMessage' => 'You must specify HandshakeId.', 'description' => ''], + ['errorCode' => 'InvalidParameter.HandshakeId', 'errorMessage' => 'The HandshakeId is invalid.', 'description' => ''], ], - 403 => [ - [ - 'errorCode' => 'MemberAccountAccessDenied', - 'errorMessage' => 'The member account is not allowed to perform the operation.', - ], + 404 => [ + ['errorCode' => 'EntityNotExists.Handshake', 'errorMessage' => 'The specified handshake does not exist.', 'description' => ''], ], - [ - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], + 409 => [ + ['errorCode' => 'HandshakeStatusMismatch', 'errorMessage' => 'The invitation is invalid.', 'description' => ''], + ['errorCode' => 'MissingAccountRealName', 'errorMessage' => 'The name of the invited account is not specified.', 'description' => ''], + ['errorCode' => 'NoRealNameAuthentication', 'errorMessage' => 'The account invited has not passed real-name authentication.', 'description' => ''], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\",\\n \\"MemberAccountDisplayNameSyncStatus\\": \\"Enabled\\"\\n}","type":"json"}]', - 'title' => '开启或关闭成员显示名称同步状态', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\",\\n \\"Handshake\\": {\\n \\"Status\\": \\"Pending\\",\\n \\"ExpireTime\\": \\"2018-08-24T09:55:41Z\\",\\n \\"CreateTime\\": \\"2018-08-10T09:55:41Z\\",\\n \\"TargetEntity\\": \\"someone@example.com\\",\\n \\"MasterAccountId\\": \\"172841235500****\\",\\n \\"HandshakeId\\": \\"h-ycm4rp****\\",\\n \\"MasterAccountRealName\\": \\"company\\",\\n \\"ResourceDirectoryId\\": \\"rd-abcdef****\\",\\n \\"InvitedAccountRealName\\": \\"Alice\\",\\n \\"Note\\": \\"欢迎您加入\\",\\n \\"MasterAccountName\\": \\"company@example.com\\",\\n \\"TargetType\\": \\"Email\\",\\n \\"ModifyTime\\": \\"2018-08-10T09:55:41Z\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<GetHandshakeResponse>\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\n <Handshake>\\n <HandshakeId>h-ycm4rp****</HandshakeId>\\n <ResourceDirectoryId>rd-abcdef****</ResourceDirectoryId>\\n <MasterAccountId>172841235500****</MasterAccountId>\\n <MasterAccountName>company@example.com</MasterAccountName>\\n <MasterAccountRealName>company</MasterAccountRealName>\\n <InvitedAccountRealName>Alice</InvitedAccountRealName>\\n <TargetEntity>someone@example.com</TargetEntity>\\n <TargetType>Email</TargetType>\\n <Note>欢迎您加入</Note>\\n <Status>Pending</Status>\\n <CreateTime>2018-08-10T09:55:41Z</CreateTime>\\n <ModifyTime>2018-08-10T09:55:41Z</ModifyTime>\\n <ExpireTime>2018-08-24T09:55:41Z</ExpireTime>\\n </Handshake>\\n</GetHandshakeResponse>","errorExample":""}]', + 'title' => '获取邀请信息', + 'summary' => '调用GetHandshake获取邀请信息。', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], ], - 'CheckAccountDelete' => [ - 'summary' => '调用CheckAccountDelete执行成员删除检查任务。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'GetMessageContact' => [ + 'summary' => '查询联系人信息。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - ], + 'systemTags' => ['operationType' => 'get'], 'parameters' => [ [ - 'name' => 'AccountId', + 'name' => 'ContactId', 'in' => 'query', - 'schema' => [ - 'description' => '待删除的成员ID。', - 'type' => 'string', - 'required' => true, - 'example' => '179855839641****', - ], + 'schema' => ['description' => '联系人ID。', 'type' => 'string', 'required' => true, 'example' => 'c-qL4HqKONzOM7****'], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => 'Schema of Response', 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '7CDDDCEF-CDFD-0825-B7D7-217BE0897B22', + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE'], + 'Contact' => [ + 'description' => '联系人信息。', + 'type' => 'object', + 'properties' => [ + 'ContactId' => ['description' => '联系人ID。', 'type' => 'string', 'example' => 'c-qL4HqKONzOM7****'], + 'MessageTypes' => [ + 'description' => '联系人接收的消息分类。', + 'type' => 'array', + 'items' => ['description' => '联系人接收的消息分类。', 'type' => 'string', 'example' => 'AccountExpenses'], + ], + 'CreateDate' => ['description' => '联系人的创建时间。', 'type' => 'string', 'example' => '2023-03-27 17:19:21'], + 'Name' => ['description' => '联系人的名称。', 'type' => 'string', 'example' => 'tom'], + 'EmailAddress' => ['description' => '联系人的邮箱地址。', 'type' => 'string', 'example' => 'someone***@example.com'], + 'PhoneNumber' => ['description' => '联系人的手机号码。', 'type' => 'string', 'example' => '86-139****1234'], + 'Title' => ['description' => '联系人的职位。', 'type' => 'string', 'example' => 'TechnicalDirector'], + 'Members' => [ + 'description' => '绑定目标。', + 'type' => 'array', + 'items' => ['description' => '绑定目标。', 'type' => 'string', 'example' => 'fd-ZDNPiT****'], + ], + 'Status' => ['description' => '联系人状态。取值:'."\n" + ."\n" + .'- Verifying:待验证。'."\n" + .'- Active:已生效。'."\n" + .'- Deleting:删除中。', 'type' => 'string', 'example' => 'Active'], + ], ], ], ], @@ -4892,75 +2666,22 @@ ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'MissingParameter.AccountId', - 'errorMessage' => 'You must specify AccountId.', - ], - [ - 'errorCode' => 'InvalidParameter.AccountId', - 'errorMessage' => 'The AccountId is invalid.', - ], + ['errorCode' => 'InvalidParameter.ContactId', 'errorMessage' => 'The ContactId is invalid.', 'description' => ''], + ['errorCode' => 'MissingParameter.ContactId', 'errorMessage' => 'You must specify ContactId.', 'description' => ''], ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.Account', - 'errorMessage' => 'This resource directory account does not exist.', - ], - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], - ], - 409 => [ - [ - 'errorCode' => 'AccountTypeOrStatusMismatch', - 'errorMessage' => 'You cannot perform the action on the member account.', - ], - [ - 'errorCode' => 'InvalidControlPolicyEnablementStatus', - 'errorMessage' => 'The control policy enablement status is not valid to perform this operation.', - ], - [ - 'errorCode' => 'NoLicense.ResourceDirectory', - 'errorMessage' => 'The resource directory has not enabled the delete operation.', - ], - [ - 'errorCode' => 'UnknownError.Account', - 'errorMessage' => 'The deletion failed. An unknown error occurred. Please try again later.', - ], - [ - 'errorCode' => 'CallerIdentityError.DeleteAccount', - 'errorMessage' => 'Please use the RAM user or role of the management account to delete.', - ], - [ - 'errorCode' => 'RemoveConfilctAccountAsDelegatedAdministator', - 'errorMessage' => 'You attempted to remove a member that is registered as a delegated administrator. To complete this operation, you must first deregister this account as a delegated administrator.', - ], - [ - 'errorCode' => 'LegalEntityDifferent', - 'errorMessage' => 'The account legal entity is different from the one of the Management Account.', - ], - [ - 'errorCode' => 'MemberTypeError.DeleteAccount', - 'errorMessage' => 'You can only delete accounts of the resource account type created by Resource Directory.', - ], + ['errorCode' => 'EntityNotExists.Contact', 'errorMessage' => 'This Contact does not exist.', 'description' => ''], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"7CDDDCEF-CDFD-0825-B7D7-217BE0897B22\\"\\n}","errorExample":""},{"type":"xml","example":"<CheckAccountDeleteResponse>\\n <RequestId>7CDDDCEF-CDFD-0825-B7D7-217BE0897B22</RequestId>\\n</CheckAccountDeleteResponse>","errorExample":""}]', - 'title' => '成员删除检查', - 'description' => '删除成员前,您需要调用本API对目标成员进行删除前的条件检查。', - 'extraInfo' => '### 后续操作'."\n" - .'您可以调用[GetAccountDeletionCheckResult](~~GetAccountDeletionCheckResult~~)查询删除检查的结果。', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\",\\n \\"Contact\\": {\\n \\"ContactId\\": \\"c-qL4HqKONzOM7****\\",\\n \\"MessageTypes\\": [\\n \\"AccountExpenses\\"\\n ],\\n \\"CreateDate\\": \\"2023-03-27 17:19:21\\",\\n \\"Name\\": \\"tom\\",\\n \\"EmailAddress\\": \\"someone***@example.com\\",\\n \\"PhoneNumber\\": \\"86-139****1234\\",\\n \\"Title\\": \\"TechnicalDirector\\",\\n \\"Members\\": [\\n \\"fd-ZDNPiT****\\"\\n ],\\n \\"Status\\": \\"Active\\"\\n }\\n}","type":"json"}]', + 'title' => '查询联系人信息', + 'changeSet' => [], ], - 'GetAccountDeletionCheckResult' => [ - 'summary' => '调用GetAccountDeletionCheckResult查询成员删除检查结果。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'GetMessageContactDeletionStatus' => [ + 'summary' => '查询联系人删除状态。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -4968,102 +2689,42 @@ ], 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - ], + 'systemTags' => ['operationType' => 'get'], 'parameters' => [ [ - 'name' => 'AccountId', + 'name' => 'ContactId', 'in' => 'query', - 'schema' => [ - 'description' => '待删除成员的ID。', - 'type' => 'string', - 'required' => true, - 'example' => '179855839641****', - ], + 'schema' => ['description' => '联系人ID。', 'type' => 'string', 'required' => false, 'example' => 'c-qL4HqKONzOM7****'], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => 'Schema of Response', 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '54AC391D-4F7F-5F08-B8D3-0AECDE6EC5BD', - ], - 'AccountDeletionCheckResultInfo' => [ - 'description' => '成员删除检查结果。', + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => '95060F1D-6990-4645-8920-A81D1BBFE992'], + 'ContactDeletionStatus' => [ + 'description' => '联系人删除信息。', 'type' => 'object', 'properties' => [ - 'Status' => [ - 'description' => '检查状态。取值:'."\n" - ."\n" - .'- PreCheckComplete:检查完成。'."\n" - .'- PreChecking:检查中。', - 'type' => 'string', - 'example' => 'PreCheckComplete', - ], - 'AllowDelete' => [ - 'description' => '是否允许删除。取值:'."\n" - .'- true:允许删除。'."\n" - .'- false:不允许删除。', - 'type' => 'string', - 'example' => 'false', - ], - 'NotAllowReason' => [ - 'description' => '不允许删除的原因。'."\n" - .'> 当AllowDelete为false时,返回该参数值。', - 'type' => 'array', - 'items' => [ - 'description' => '不允许删除的原因。'."\n" - .'> 当AllowDelete为false时,返回该参数值。', - 'type' => 'object', - 'properties' => [ - 'Description' => [ - 'description' => '检查项描述。', - 'type' => 'string', - 'example' => 'This account is an Enterprise Finance associated account. Please remove the financial association of this account before deleting it.', - ], - 'CheckId' => [ - 'description' => '检查项ID。', - 'type' => 'string', - 'example' => 'NON_SP_efc', - ], - 'CheckName' => [ - 'description' => '检查项所属的云服务名称。', - 'type' => 'string', - 'example' => 'Enterprise finance', - ], - ], - ], - ], - 'AbandonableChecks' => [ - 'description' => '您可以选择放弃并继续执行成员删除的检查项。'."\n" - ."\n" - .'> 当AllowDelete为true时,可能返回该参数值。', + 'Status' => ['description' => '联系人删除状态。取值:'."\n" + .'- Deleting:删除中。'."\n" + .'- Failed:删除失败。', 'type' => 'string', 'example' => 'Deleting'], + 'ContactId' => ['description' => '联系人ID。', 'type' => 'string', 'example' => 'c-qL4HqKONzOM7****'], + 'FailReasonList' => [ + 'description' => '删除失败的联系人列表。', 'type' => 'array', 'items' => [ - 'description' => '您可以选择放弃并继续执行成员删除的检查项。'."\n" - .'> 当AllowDelete为true时,可能返回该参数值。', + 'description' => '删除失败的联系人列表。', 'type' => 'object', 'properties' => [ - 'Description' => [ - 'description' => '检查项描述。', - 'type' => 'string', - 'example' => '存在云产品实例运行,请联系客服人员提工单处理。', - ], - 'CheckId' => [ - 'description' => '检查项ID。', - 'type' => 'string', - 'example' => 'NON_SP_cs', - ], - 'CheckName' => [ - 'description' => '检查项所属的云服务名称。', - 'type' => 'string', - 'example' => '容器服务', + 'AccountId' => ['description' => '成员ID。', 'type' => 'string', 'example' => '199796839435****'], + 'MessageTypes' => [ + 'description' => '联系人接收的消息分类。', + 'type' => 'array', + 'items' => ['description' => '联系人接收的消息分类。', 'type' => 'string', 'example' => 'AccountExpenses'], ], ], ], @@ -5076,93 +2737,34 @@ ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'MissingParameter.AccountId', - 'errorMessage' => 'You must specify AccountId.', - ], - [ - 'errorCode' => 'InvalidParameter.AccountId', - 'errorMessage' => 'The AccountId is invalid.', - ], + ['errorCode' => 'InvalidParameter.ContactId', 'errorMessage' => 'The ContactId is invalid.', 'description' => ''], + ['errorCode' => 'MissingParameter.ContactId', 'errorMessage' => 'You must specify ContactId.', 'description' => ''], ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.Account', - 'errorMessage' => 'This resource directory account does not exist.', - ], - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], - ], - 409 => [ - [ - 'errorCode' => 'AccountTypeOrStatusMismatch', - 'errorMessage' => 'You cannot perform the action on the member account.', - ], - [ - 'errorCode' => 'EntityNotExists.CheckAccount', - 'errorMessage' => 'There is no check task for this account', - ], - [ - 'errorCode' => 'UnknownError.Account', - 'errorMessage' => 'The deletion failed. An unknown error occurred. Please try again later.', - ], + ['errorCode' => 'EntityNotExists.Contact', 'errorMessage' => 'This Contact does not exist.', 'description' => ''], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"54AC391D-4F7F-5F08-B8D3-0AECDE6EC5BD\\",\\n \\"AccountDeletionCheckResultInfo\\": {\\n \\"Status\\": \\"PreCheckComplete\\",\\n \\"AllowDelete\\": \\"false\\",\\n \\"NotAllowReason\\": [\\n {\\n \\"Description\\": \\"This account is an Enterprise Finance associated account. Please remove the financial association of this account before deleting it.\\",\\n \\"CheckId\\": \\"NON_SP_efc\\",\\n \\"CheckName\\": \\"Enterprise finance\\"\\n }\\n ],\\n \\"AbandonableChecks\\": [\\n {\\n \\"Description\\": \\"存在云产品实例运行,请联系客服人员提工单处理。\\",\\n \\"CheckId\\": \\"NON_SP_cs\\",\\n \\"CheckName\\": \\"容器服务\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<GetAccountDeletionCheckResultResponse>\\n <AccountDeletionCheckResultInfo>\\n <Status>PreCheckComplete</Status>\\n <NotAllowReason>\\n <Description>instance number:1</Description>\\n <CheckName>eip_pre</CheckName>\\n <CheckId>SP_eip_eip_pre</CheckId>\\n </NotAllowReason>\\n <NotAllowReason>\\n <Description>This account is an Enterprise Finance associated account. Please remove the financial association of this account before deleting it.</Description>\\n <CheckName>Enterprise finance</CheckName>\\n <CheckId>NON_SP_efc</CheckId>\\n </NotAllowReason>\\n <AllowDelete>false</AllowDelete>\\n </AccountDeletionCheckResultInfo>\\n <RequestId>54AC391D-4F7F-5F08-B8D3-0AECDE6EC5BD</RequestId>\\n</GetAccountDeletionCheckResultResponse>","errorExample":""}]', - 'title' => '查询成员删除检查结果', - 'description' => '在您调用[CheckAccountDelete](~~CheckAccountDelete~~)执行了成员删除检查任务后,您可以调用[GetAccountDeletionCheckResult](~~GetAccountDeletionCheckResult~~)查询成员删除检查的结果。如果符合删除检查要求,则该成员允许删除;否则,请手动处理不符合项,直至符合要求为止。', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"95060F1D-6990-4645-8920-A81D1BBFE992\\",\\n \\"ContactDeletionStatus\\": {\\n \\"Status\\": \\"Deleting\\",\\n \\"ContactId\\": \\"c-qL4HqKONzOM7****\\",\\n \\"FailReasonList\\": [\\n {\\n \\"AccountId\\": \\"199796839435****\\",\\n \\"MessageTypes\\": [\\n \\"AccountExpenses\\"\\n ]\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => '查询联系人删除状态', + 'changeSet' => [], ], - 'DeleteAccount' => [ - 'summary' => '调用DeleteAccount删除资源类型的成员。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'GetPayerForAccount' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'delete', - ], + 'systemTags' => ['operationType' => 'get'], 'parameters' => [ [ 'name' => 'AccountId', 'in' => 'query', - 'schema' => [ - 'description' => '待删除的成员ID。', - 'type' => 'string', - 'required' => true, - 'example' => '169946124551****', - ], - ], - [ - 'name' => 'AbandonableCheckId', - 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'description' => '可以选择放弃并继续执行成员删除的检查项ID。'."\n" - ."\n" - .'该ID从[GetAccountDeletionCheckResult](~~GetAccountDeletionCheckResult~~)的返回参数AbandonableChecks中获取。', - 'type' => 'array', - 'items' => [ - 'description' => '可以选择放弃并继续执行成员删除的检查项ID。'."\n" - ."\n" - .'该ID从[GetAccountDeletionCheckResult](~~GetAccountDeletionCheckResult~~)的返回参数AbandonableChecks中获取。', - 'type' => 'string', - 'required' => false, - 'example' => 'NON_SP_cs', - ], - 'required' => false, - ], + 'schema' => ['description' => '账号ID。', 'type' => 'string', 'required' => true, 'example' => '12323344****'], ], ], 'responses' => [ @@ -5171,114 +2773,31 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '009429F8-C1C0-5872-B674-A6C2333B9647', - ], - 'DeletionType' => [ - 'description' => '删除类型。取值:'."\n" - ."\n" - .'- 0:直接删除。如果成员最近30天内不存在后付费资源,则系统会直接删除该成员。'."\n" - .'- 1:静默期删除。如果成员最近30天内存在后付费资源,则会进入静默期。等待静默期结束后,系统才会开始删除该成员。关于静默期的更多信息,请参见[什么是成员删除的静默期](~~446079~~)。', - 'type' => 'string', - 'example' => '0', - ], + 'PayerAccountName' => ['description' => '结算账号名称。', 'type' => 'string', 'example' => 'Alice'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE'], + 'PayerAccountId' => ['description' => '结算账号ID。', 'type' => 'string', 'example' => '172841235500****'], ], ], ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'MissingParameter.AccountId', - 'errorMessage' => 'You must specify AccountId.', - ], - [ - 'errorCode' => 'InvalidParameter.AccountId', - 'errorMessage' => 'The AccountId is invalid.', - ], - ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.Account', - 'errorMessage' => 'This resource directory account does not exist.', - ], - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], - ], - 409 => [ - [ - 'errorCode' => 'AccountTypeOrStatusMismatch', - 'errorMessage' => 'You cannot perform the action on the member account.', - ], - [ - 'errorCode' => 'NoLicense.ResourceDirectory', - 'errorMessage' => 'The resource directory has not enabled the delete operation.', - ], - [ - 'errorCode' => 'UnknownError.Account', - 'errorMessage' => 'Delete failed. An unknown error occurred. Please try again later.', - ], - [ - 'errorCode' => 'AccountNotExist.DeleteAccount', - 'errorMessage' => 'The deletion failed. The account does not exist. Please confirm whether it has been deleted.', - ], - [ - 'errorCode' => 'ExistProcessingDeleteFlow.DeleteAccount', - 'errorMessage' => 'The request is invalid. The account is already in the process of deletion. Please do not repeat the operation.', - ], - [ - 'errorCode' => 'CreditControlBlock.DeleteAccount', - 'errorMessage' => 'The deletion failed. There are unsettled bills in the current account. Please settle them first and try again.', - ], - [ - 'errorCode' => 'SpBlock.DeleteAccount', - 'errorMessage' => 'The deletion failed. There is a specific product under the current account. Please clear it and try again.', - ], - [ - 'errorCode' => 'PeripheralError.DeleteAccount', - 'errorMessage' => 'The deletion failed. The deletion process is abnormal. Please try again later.', - ], - [ - 'errorCode' => 'MemberTypeError.DeleteAccount', - 'errorMessage' => 'Cloud account type members do not support deletion.', - ], - [ - 'errorCode' => 'CallerIdentityError.DeleteAccount', - 'errorMessage' => 'Please use the RAM user or role of the management account to delete.', - ], - [ - 'errorCode' => 'ExistPrepaidInstance.DeleteAccount', - 'errorMessage' => 'The deletion failed. There are prepaid products under the current account. Please release them and try again.', - ], - [ - 'errorCode' => 'ForbidDelete.Account', - 'errorMessage' => 'Delete is prohibited. The current account is abnormal. Please contact customer service.', - ], - [ - 'errorCode' => 'QuotaExceeded.DeleteAccount', - 'errorMessage' => 'You have exceeded delete account quota for the past 30 days.', - ], + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => ''], + ['errorCode' => 'EntityNotExists.Account', 'errorMessage' => 'This resource directory account does not exist.', 'description' => ''], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"009429F8-C1C0-5872-B674-A6C2333B9647\\",\\n \\"DeletionType\\": \\"0\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteAccountResponse>\\n <RequestId>55B22096-0D0C-542D-9A01-9B95977D3A10</RequestId>\\n <DeletionType>0</DeletionType>\\n</DeleteAccountResponse>","errorExample":""}]', - 'title' => '删除资源账号', - 'description' => '删除成员前,建议您先调用[CheckAccountDelete](~~CheckAccountDelete~~)和[GetAccountDeletionCheckResult](~~GetAccountDeletionCheckResult~~),对成员进行删除前的条件检查。只有符合删除条件的成员,才能调用DeleteAccount成功将其删除。'."\n" - ."\n" - .'成功提交成员删除申请后,您可以通过[GetAccountDeletionStatus](~~GetAccountDeletionStatus~~)查询删除状态。且成员一旦删除,成员中的所有资源及数据都会被删除,您无法再次登录和使用它,将无法找回,请您谨慎操作。关于成员删除的更多信息,请参见[删除资源账号类型的成员](~~446078~~)。', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"PayerAccountName\\": \\"Alice\\",\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\",\\n \\"PayerAccountId\\": \\"172841235500****\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<GetPayerForAccountResponse>\\r\\n\\t<RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\r\\n\\t<PayerAccountId>172841235500****</PayerAccountId>\\r\\n\\t<PayerAccountName>Alice</PayerAccountName>\\r\\n</GetPayerForAccountResponse>\\t\\r\\n","errorExample":""}]', + 'title' => '获取结算账号信息', + 'summary' => '调用GetPayerForAccount获取结算账号信息。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], ], - 'GetAccountDeletionStatus' => [ - 'summary' => '调用GetAccountDeletionStatus查询成员删除状态。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'GetResourceDirectory' => [ + 'summary' => '调用GetResourceDirectory获取资源目录信息。管理账号调用时,返回管理账号开通的资源目录详情。成员调用时,返回成员所属的资源目录详情。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -5286,123 +2805,57 @@ ], 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - ], - 'parameters' => [ - [ - 'name' => 'AccountId', - 'in' => 'query', - 'schema' => [ - 'description' => '成员ID。', - 'type' => 'string', - 'required' => true, - 'example' => '169946124551****', - ], - ], - ], + 'systemTags' => ['operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free'], + 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RdAccountDeletionStatus' => [ - 'description' => '成员删除状态。', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'CD76D376-2517-4924-92C5-DBC52262F93A'], + 'ResourceDirectory' => [ + 'description' => '资源目录信息。', 'type' => 'object', 'properties' => [ - 'Status' => [ - 'description' => '状态。取值:'."\n" - ."\n" - .'- Success:删除成功。'."\n" - .'- Checking:检查中。'."\n" - .'- Deleting:删除中。'."\n" - .'- CheckFailed:检查失败。'."\n" - .'- DeleteFailed:删除失败。', - 'type' => 'string', - 'example' => 'Success', - ], - 'AccountId' => [ - 'description' => '成员ID。', - 'type' => 'string', - 'example' => '169946124551****', - ], - 'CreateTime' => [ - 'description' => '删除开始时间。', - 'type' => 'string', - 'example' => '2022-08-23T17:05:30+08:00', - ], - 'DeletionTime' => [ - 'description' => '删除结束时间。', - 'type' => 'string', - 'required' => true, - 'example' => '2022-08-23T17:06:01+08:00', - ], - 'FailReasonList' => [ - 'description' => '删除失败原因。', - 'type' => 'array', - 'items' => [ - 'description' => '删除失败原因。', - 'type' => 'object', - 'properties' => [ - 'Name' => [ - 'description' => '检查项所属的云服务名称。', - 'type' => 'string', - 'example' => 'Others', - ], - 'Description' => [ - 'description' => '检查项描述。', - 'type' => 'string', - 'example' => 'This account has a payer account. Please release the financial relationship of this account first.', - ], - ], - ], - ], - 'DeletionType' => [ - 'description' => '删除类型。取值:'."\n" - ."\n" - .'- 0:直接删除。如果成员最近30天内不存在后付费资源,则系统会直接删除该成员。'."\n" - .'- 1:静默期删除。如果成员最近30天内存在后付费资源,则会进入静默期。等待静默期结束后,系统才会开始删除该成员。关于静默期的更多信息,请参见[什么是成员删除的静默期](~~446079~~)。', - 'type' => 'string', - 'example' => '0', - ], + 'RootFolderId' => ['description' => 'Root资源夹ID。', 'type' => 'string', 'example' => 'r-Zo****'], + 'ResourceDirectoryId' => ['description' => '资源目录ID。', 'type' => 'string', 'example' => 'rd-St****'], + 'CreateTime' => ['description' => '资源目录开通时间。', 'type' => 'string', 'example' => '2019-02-18T15:32:10.473Z'], + 'MasterAccountId' => ['description' => '管理账号ID。', 'type' => 'string', 'example' => '172845045600****'], + 'MasterAccountName' => ['description' => '管理账号名称。', 'type' => 'string', 'example' => 'aliyun-admin'], + 'ControlPolicyStatus' => ['description' => '管控策略状态。取值:'."\n" + ."\n" + .'- Enabled:已开启。'."\n" + .'- PendingEnable:开启中。'."\n" + .'- Disabled:已关闭。'."\n" + .'- PendingDisable:关闭中。', 'type' => 'string', 'example' => 'Enabled'], + 'MemberDeletionStatus' => ['description' => '是否开启了成员删除许可。取值:'."\n" + .'- Enabled:已开启。允许通过调用[DeleteAccount](~~DeleteAccount~~)删除资源账号类型的成员。'."\n" + .'- Disabled:已关闭。不允许删除资源账号类型的成员。', 'type' => 'string', 'example' => 'Enabled'], + 'IdentityInformation' => ['description' => '成员实名信息。', 'type' => 'string', 'example' => '***有限公司'], + 'MemberAccountDisplayNameSyncStatus' => ['description' => '成员账号显示名称同步状态。取值:'."\n" + .'- Enabled:已开启。'."\n" + .'- Disabled:已关闭。', 'type' => 'string', 'example' => 'Enabled'], ], ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '8AA43293-7C8F-5730-8F2D-7F864EC092C5', - ], ], ], ], ], 'errorCodes' => [ 404 => [ - [ - 'errorCode' => 'EntityNotExists.Account', - 'errorMessage' => 'This resource directory account does not exist.', - ], - ], - 409 => [ - [ - 'errorCode' => 'EntityNotExists.CheckAccount', - 'errorMessage' => 'There is no check task for this account', - ], + ['errorCode' => 'ResourceDirectoryNotInUse', 'errorMessage' => 'The specified account is not an Alibaba Cloud account or a member account of the resource directory.', 'description' => ''], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RdAccountDeletionStatus\\": {\\n \\"Status\\": \\"Success\\",\\n \\"AccountId\\": \\"169946124551****\\",\\n \\"CreateTime\\": \\"2022-08-23T17:05:30+08:00\\",\\n \\"DeletionTime\\": \\"2022-08-23T17:06:01+08:00\\",\\n \\"FailReasonList\\": [\\n {\\n \\"Name\\": \\"Others\\",\\n \\"Description\\": \\"This account has a payer account. Please release the financial relationship of this account first.\\"\\n }\\n ],\\n \\"DeletionType\\": \\"0\\"\\n },\\n \\"RequestId\\": \\"8AA43293-7C8F-5730-8F2D-7F864EC092C5\\"\\n}","errorExample":""},{"type":"xml","example":"<GetAccountDeletionStatusResponse>\\n <RequestId>8AA43293-7C8F-5730-8F2D-7F864EC092C5</RequestId>\\n <RdAccountDeletionStatus>\\n <Status>Success</Status>\\n <AccountId>169946124551****</AccountId>\\n <DeletionType>0</DeletionType>\\n <CreateTime>2022-08-23T17:05:30+08:00</CreateTime>\\n <DeletionTime>2022-08-23T17:06:01+08:00</DeletionTime>\\n </RdAccountDeletionStatus>\\n</GetAccountDeletionStatusResponse>","errorExample":""}]', - 'title' => '查询成员删除状态', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CD76D376-2517-4924-92C5-DBC52262F93A\\",\\n \\"ResourceDirectory\\": {\\n \\"RootFolderId\\": \\"r-Zo****\\",\\n \\"ResourceDirectoryId\\": \\"rd-St****\\",\\n \\"CreateTime\\": \\"2019-02-18T15:32:10.473Z\\",\\n \\"MasterAccountId\\": \\"172845045600****\\",\\n \\"MasterAccountName\\": \\"aliyun-admin\\",\\n \\"ControlPolicyStatus\\": \\"Enabled\\",\\n \\"MemberDeletionStatus\\": \\"Enabled\\",\\n \\"IdentityInformation\\": \\"***有限公司\\",\\n \\"MemberAccountDisplayNameSyncStatus\\": \\"Enabled\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<GetResourceDirectoryResponse>\\n <RequestId>CD76D376-2517-4924-92C5-DBC52262F93A</RequestId>\\n <ResourceDirectory>\\n <RootFolderId>r-Zo****</RootFolderId>\\n <ResourceDirectoryId>rd-St****</ResourceDirectoryId>\\n <CreateTime>2019-02-18T15:32:10.473Z</CreateTime>\\n <MasterAccountId>172845045600****</MasterAccountId>\\n <MasterAccountName>aliyun-admin</MasterAccountName>\\n <ControlPolicyStatus>Enabled</ControlPolicyStatus>\\n <MemberDeletionStatus>Enabled</MemberDeletionStatus>\\n <IdentityInformation>***有限公司</IdentityInformation>\\n </ResourceDirectory>\\n</GetResourceDirectoryResponse>","errorExample":""}]', + 'title' => '获取资源目录信息', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], ], - 'TagResources' => [ - 'summary' => '调用TagResources为资源目录的成员绑定标签。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'InviteAccountToResourceDirectory' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -5410,80 +2863,51 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - 'riskType' => 'none', - 'chargeType' => 'free', - ], + 'systemTags' => ['operationType' => 'create'], 'parameters' => [ [ - 'name' => 'ResourceId', + 'name' => 'TargetEntity', 'in' => 'query', - 'style' => 'flat', - 'schema' => [ - 'description' => '资源目录成员ID。'."\n" - ."\n" - .'最多可以指定50个。', - 'type' => 'array', - 'items' => [ - 'description' => '资源目录成员ID。'."\n" - ."\n" - .'最多可以指定50个。', - 'type' => 'string', - 'required' => false, - 'example' => '1524***', - ], - 'required' => true, - ], + 'schema' => ['description' => '被邀请账号ID或登录邮箱。', 'type' => 'string', 'required' => true, 'example' => 'someone@example.com'], + ], + [ + 'name' => 'TargetType', + 'in' => 'query', + 'schema' => ['description' => '被邀请账号类型。取值:'."\n" + ."\n" + .'- Account:账号ID。'."\n" + .'- Email:账号登录邮箱。', 'type' => 'string', 'required' => true, 'example' => 'Email'], + ], + [ + 'name' => 'Note', + 'in' => 'query', + 'schema' => ['description' => '备注。'."\n" + ."\n" + .'最大长度为1024个字符。', 'type' => 'string', 'required' => false, 'example' => '欢迎您加入'], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'flat', 'schema' => [ - 'description' => '标签。'."\n" - ."\n" - .'最多可以绑定20个标签。', + 'description' => '标签。', 'type' => 'array', 'items' => [ - 'description' => '标签。'."\n" - ."\n" - .'最多可以绑定20个标签。', + 'description' => '标签。', 'type' => 'object', 'properties' => [ - 'Key' => [ - 'description' => '标签键。'."\n" - ."\n" - .'最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', - 'type' => 'string', - 'required' => false, - 'example' => 'k1', - ], - 'Value' => [ - 'description' => '标签值。'."\n" - ."\n" - .'最多支持128个字符,不能以`acs:`开头,不能包含`http://`或者`https://`。', - 'type' => 'string', - 'required' => false, - 'example' => 'v1', - ], + 'Key' => ['description' => '标签键。', 'type' => 'string', 'required' => false, 'example' => 'k1'], + 'Value' => ['description' => '标签值。', 'type' => 'string', 'required' => false, 'example' => 'v1'], ], 'required' => false, ], - 'required' => true, + 'required' => false, ], ], [ - 'name' => 'ResourceType', + 'name' => 'ParentFolderId', 'in' => 'query', - 'schema' => [ - 'description' => '资源类型。取值:'."\n" - ."\n" - .'- Account:为资源目录成员绑定标签。', - 'type' => 'string', - 'required' => true, - 'example' => 'Account', - ], + 'schema' => ['description' => '父资源夹ID。', 'type' => 'string', 'required' => false, 'example' => 'r-b1****'], ], ], 'responses' => [ @@ -5492,104 +2916,142 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'E7747EDF-EDDC-5B38-9B6A-6392B9C92B1C', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE'], + 'Handshake' => [ + 'description' => '邀请信息。', + 'type' => 'object', + 'properties' => [ + 'Status' => ['description' => '邀请状态。取值:'."\n" + ."\n" + .'- Pending:等待确认。'."\n" + .'- Accepted:已接受。'."\n" + .'- Cancelled:已取消。'."\n" + .'- Declined:已拒绝。'."\n" + .'- Expired:超时。', 'type' => 'string', 'example' => 'Pending'], + 'ExpireTime' => ['description' => '邀请的过期时间(UTC时间)。', 'type' => 'string', 'example' => '2018-08-24T09:55:41Z'], + 'ResourceDirectoryId' => ['description' => '资源目录ID。', 'type' => 'string', 'example' => 'rd-abcdef****'], + 'CreateTime' => ['description' => '邀请的创建时间(UTC时间)。', 'type' => 'string', 'example' => '2018-08-10T09:55:41Z'], + 'Note' => ['description' => '备注。', 'type' => 'string', 'example' => '欢迎您加入'], + 'TargetEntity' => ['description' => '被邀请账号ID或登录邮箱。', 'type' => 'string', 'example' => 'someone@example.com'], + 'MasterAccountId' => ['description' => '资源目录管理账号ID。', 'type' => 'string', 'example' => '172841235500****'], + 'MasterAccountName' => ['description' => '资源目录管理账号名称。', 'type' => 'string', 'example' => 'Alice'], + 'ModifyTime' => ['description' => '邀请的修改时间(UTC时间)。', 'type' => 'string', 'example' => '2018-08-10T09:55:41Z'], + 'TargetType' => ['description' => '被邀请账号类型。取值:'."\n" + ."\n" + .'- Account:账号ID。'."\n" + .'- Email:账号登录邮箱。', 'type' => 'string', 'example' => 'Email'], + 'HandshakeId' => ['description' => '邀请ID。', 'type' => 'string', 'example' => 'h-ycm4rp****'], + ], ], ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"E7747EDF-EDDC-5B38-9B6A-6392B9C92B1C\\"\\n}","errorExample":""},{"type":"xml","example":"<TagResourcesResponse>\\n <RequestId>E7747EDF-EDDC-5B38-9B6A-6392B9C92B1C</RequestId>\\n</TagResourcesResponse>","errorExample":""}]', - 'title' => '绑定标签', - ], - 'UntagResources' => [ - 'summary' => '调用UntagResources解绑资源目成员的标签。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'MissingParameter.TargetEntity', 'errorMessage' => 'You must specify TargetEntity.', 'description' => ''], + ['errorCode' => 'InvalidParameter.TargetEntity', 'errorMessage' => 'The TargetEntity is invalid.', 'description' => ''], + ['errorCode' => 'MissingParameter.TargetType', 'errorMessage' => 'You must specify TargetType.', 'description' => ''], + ['errorCode' => 'InvalidParameter.TargetType', 'errorMessage' => 'The TargetType is invalid.', 'description' => ''], + ['errorCode' => 'InvalidParameter.Note.Length', 'errorMessage' => 'The length of the invitation note exceeds the limit.', 'description' => ''], + ['errorCode' => 'InvalidParameter.Note', 'errorMessage' => 'The Note is invalid.', 'description' => ''], + ['errorCode' => 'InvalidParameter.ParentFolderId', 'errorMessage' => 'The ParentFolderId is invalid.', 'description' => ''], + ['errorCode' => 'InvalidParameter.AccountId', 'errorMessage' => 'The AccountId is invalid.', 'description' => ''], + ], + 404 => [ + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => ''], + ['errorCode' => 'EntityNotExists.Folder', 'errorMessage' => 'The resource directory folder does not exist.', 'description' => ''], + ], + 409 => [ + ['errorCode' => 'LimitExceeded.Account', 'errorMessage' => 'The maximum number of member accounts in a resource directory exceeds the limit.', 'description' => ''], + ['errorCode' => 'LimitExceeded.InvitationRate', 'errorMessage' => 'The number of invitations sent exceeds the limit.', 'description' => ''], + ['errorCode' => 'EntityAlreadyExists.Handshake', 'errorMessage' => 'Handshakes with the same target entity already exist.', 'description' => ''], + ['errorCode' => 'Invalid.AccountType', 'errorMessage' => 'The specified profile type of account is invalid.', 'description' => ''], + ['errorCode' => 'EntityAlreadyExists.ResourceDir.Account', 'errorMessage' => 'This resource directory account already exists.', 'description' => ''], + ['errorCode' => 'LimitExceeded.Invitation.InvalidTarget', 'errorMessage' => 'The maximum number of invalid targets that can be invited by a single account is exceeded.', 'description' => ''], + ['errorCode' => 'NotSupport.AccountInAnotherResourceDirectory', 'errorMessage' => 'The invited account already belongs to another resource directory. To continue, remove the account from the other resource directory.', 'description' => ''], + ['errorCode' => 'LegalEntityMismatch', 'errorMessage' => 'The account does not have the same legal entity as the management account.', 'description' => ''], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\",\\n \\"Handshake\\": {\\n \\"Status\\": \\"Pending\\",\\n \\"ExpireTime\\": \\"2018-08-24T09:55:41Z\\",\\n \\"ResourceDirectoryId\\": \\"rd-abcdef****\\",\\n \\"CreateTime\\": \\"2018-08-10T09:55:41Z\\",\\n \\"Note\\": \\"欢迎您加入\\",\\n \\"TargetEntity\\": \\"someone@example.com\\",\\n \\"MasterAccountId\\": \\"172841235500****\\",\\n \\"MasterAccountName\\": \\"Alice\\",\\n \\"ModifyTime\\": \\"2018-08-10T09:55:41Z\\",\\n \\"TargetType\\": \\"Email\\",\\n \\"HandshakeId\\": \\"h-ycm4rp****\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<InviteAccountToResourceDirectoryResponse>\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\n <Handshake>\\n <HandshakeId>h-ycm4rp****</HandshakeId>\\n <ResourceDirectoryId>rd-abcdef****</ResourceDirectoryId>\\n <MasterAccountId>172841235500****</MasterAccountId>\\n <MasterAccountName>Alice</MasterAccountName>\\n <TargetEntity>someone@example.com</TargetEntity>\\n <TargetType>Email</TargetType>\\n <Note>欢迎您加入</Note>\\n <Status>Pending</Status>\\n <CreateTime>2018-08-10T09:55:41Z</CreateTime>\\n <ModifyTime>2018-08-10T09:55:41Z</ModifyTime>\\n <ExpireTime>2018-08-24T09:55:41Z</ExpireTime>\\n </Handshake>\\n</InviteAccountToResourceDirectoryResponse>","errorExample":""}]', + 'title' => '邀请外部账号加入资源目录', + 'summary' => '调用InviteAccountToResourceDirectory邀请外部账号加入资源目录。', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + ], + 'ListAccounts' => [ + 'summary' => '查询整个资源目录下的所有成员列表。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - ], + 'systemTags' => ['operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ - 'name' => 'All', + 'name' => 'PageNumber', 'in' => 'query', - 'schema' => [ - 'description' => '是否解绑指定资源目录成员的全部标签。取值:'."\n" - .'- false(默认值):否'."\n" - .'- true:是', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => '页码。'."\n" + ."\n" + .'起始值:1。默认值:1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ - 'name' => 'ResourceId', + 'name' => 'PageSize', 'in' => 'query', - 'style' => 'flat', - 'schema' => [ - 'description' => '资源目录成员ID。'."\n" - ."\n" - .'最多可以指定50个。', - 'type' => 'array', - 'items' => [ - 'description' => '资源目录成员ID。'."\n" - ."\n" - .'最多可以指定50个。', - 'type' => 'string', - 'required' => false, - 'example' => '1524****', - ], - 'required' => true, - ], + 'schema' => ['description' => '分页时每页显示的数据行数。'."\n" + ."\n" + .'取值范围:1~100。默认值:10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ - 'name' => 'TagKey', + 'name' => 'QueryKeyword', + 'in' => 'query', + 'schema' => ['description' => '查询关键字,例如:成员名称。'."\n" + ."\n" + .'支持模糊查询。', 'type' => 'string', 'required' => false, 'example' => 'Advance'], + ], + [ + 'name' => 'Tag', 'in' => 'query', 'style' => 'flat', 'schema' => [ - 'description' => '标签键。'."\n" - ."\n" - .'最多可以解绑20个标签键。'."\n" - ."\n" - .'> 当解绑全部标签的参数`All`取值为`true`时,不需要设置标签键。', + 'description' => '通过标签过滤。', 'type' => 'array', 'items' => [ - 'description' => '标签键。'."\n" - ."\n" - .'最多可以解绑20个标签键。'."\n" - .'> 当解绑全部标签的参数`All`取值为`true`时,不需要设置标签键。', - 'type' => 'string', + 'description' => '过滤的标签列表。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '标签键。', 'type' => 'string', 'required' => false, 'example' => 'tag_key'], + 'Value' => ['description' => '标签值。', 'type' => 'string', 'required' => false, 'example' => 'tag_value'], + ], 'required' => false, - 'example' => 'k1', ], 'required' => false, ], ], [ - 'name' => 'ResourceType', + 'name' => 'IncludeTags', 'in' => 'query', - 'schema' => [ - 'description' => '资源类型。取值:'."\n" - ."\n" - .'- Account:解绑资源目录成员的标签。', - 'type' => 'string', - 'required' => true, - 'example' => 'Account', - ], + 'schema' => ['description' => '是否返回标签信息。取值:'."\n" + ."\n" + .'- false(默认值):不返回。'."\n" + .'- true:返回。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + ], + [ + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => ['description' => '分页时每页显示的数据行数。设置该值后,优先使用NextToken的分页方式。'."\n" + ."\n" + .'取值范围:1~100。默认值:10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], + ], + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => ['description' => '用来标记当前开始读取的位置,置空表示从头开始。', 'type' => 'string', 'required' => false, 'example' => 'TGlzdFJlc291cm****'], ], ], 'responses' => [ @@ -5598,27 +3060,101 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'E7747EDF-EDDC-5B38-9B6A-6392B9C92B1C', + 'TotalCount' => ['description' => '数据总条数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '7B8A4E7D-6CFF-471D-84DF-195A7A241ECB'], + 'PageSize' => ['description' => '分页时每页显示的数据行数。', 'type' => 'integer', 'format' => 'int32', 'example' => '5'], + 'PageNumber' => ['description' => '页码。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'NextToken' => ['description' => '用来表示当前调用返回读取到的位置,空代表数据已经读取完毕。', 'type' => 'string', 'example' => 'TGlzdFJlc291cm****'], + 'Accounts' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Account' => [ + 'description' => '成员列表。', + 'type' => 'array', + 'items' => [ + 'description' => '成员列表。', + 'type' => 'object', + 'properties' => [ + 'Status' => ['description' => '成员加入状态。取值:'."\n" + ."\n" + .'- CreateSuccess:创建成功。'."\n" + .'- PromoteVerifying:升级确认中。'."\n" + .'- PromoteFailed:升级失败。'."\n" + .'- PromoteExpired:升级过期。'."\n" + .'- PromoteCancelled:升级取消。'."\n" + .'- PromoteSuccess:升级成功。'."\n" + .'- InviteSuccess:邀请成功。', 'type' => 'string', 'example' => 'CreateSuccess'], + 'Type' => ['description' => '成员类型。取值:'."\n" + ."\n" + .'- CloudAccount:云账号。'."\n" + .'- ResourceAccount:资源账号。', 'type' => 'string', 'example' => 'ResourceAccount'], + 'DisplayName' => ['description' => '成员名称。', 'type' => 'string', 'example' => 'test'], + 'FolderId' => ['description' => '资源夹ID。', 'type' => 'string', 'example' => 'fd-QRzuim****'], + 'ResourceDirectoryId' => ['description' => '资源目录ID。', 'type' => 'string', 'example' => 'rd-3G****'], + 'JoinTime' => ['description' => '成员加入时间(UTC时间)。', 'type' => 'string', 'example' => '2021-01-18T08:01:50.522Z'], + 'AccountId' => ['description' => '成员账号ID。', 'type' => 'string', 'example' => '181761095690****'], + 'JoinMethod' => ['description' => '成员加入方式。取值:'."\n" + ."\n" + .'- invited:邀请。'."\n" + .'- created:创建。', 'type' => 'string', 'example' => 'created'], + 'ModifyTime' => ['description' => '成员修改时间(UTC时间)。', 'type' => 'string', 'example' => '2021-01-18T08:04:37.668Z'], + 'ResourceDirectoryPath' => ['description' => '成员在资源目录中的路径ID(RDPath)。', 'type' => 'string', 'example' => 'rd-3G****/r-Wm****/fd-QRzuim****/181761095690****'], + 'AccountName' => ['description' => '账号名称。', 'type' => 'string', 'example' => 'oxy01414357@alibaba-inc.com'], + 'DeletionStatus' => ['description' => '成员删除状态。取值:'."\n" + .'- Checking:检查中。'."\n" + .'- Deleting:删除中。'."\n" + .'- CheckFailed:检查失败。'."\n" + .'- DeleteFailed:删除失败。'."\n" + ."\n" + .'> 当账号未发起删除流程时,该字段为空。', 'type' => 'string', 'example' => 'Checking'], + 'Tags' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Tag' => [ + 'description' => '成员所有的标签。', + 'type' => 'array', + 'items' => [ + 'description' => '成员所有的标签列表。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '标签键。', 'type' => 'string', 'example' => 'tag_key'], + 'Value' => ['description' => '标签值。', 'type' => 'string', 'example' => 'tag_value'], + ], + ], + ], + ], + ], + ], + ], + ], + ], ], ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"E7747EDF-EDDC-5B38-9B6A-6392B9C92B1C\\"\\n}","errorExample":""},{"type":"xml","example":"<UntagResourcesResponse>\\n <RequestId>E7747EDF-EDDC-5B38-9B6A-6392B9C92B1C</RequestId>\\n</UntagResourcesResponse>","errorExample":""}]', - 'title' => '解绑标签', - ], - 'ListTagResources' => [ - 'summary' => '调用ListTagResources查询资源目录成员绑定的标签列表。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidParameter.MaxResults', 'errorMessage' => 'The MaxResults is invalid.', 'description' => ''], + ['errorCode' => 'InvalidParameter.NextToken', 'errorMessage' => 'The NextToken is invalid.', 'description' => ''], + ['errorCode' => 'InvalidParameter.NextToken.Length', 'errorMessage' => 'The maximum length of NextToken (256 characters) is exceeded.', 'description' => ''], + ], + 404 => [ + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => ''], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"TotalCount\\": 2,\\n \\"RequestId\\": \\"7B8A4E7D-6CFF-471D-84DF-195A7A241ECB\\",\\n \\"PageSize\\": 5,\\n \\"PageNumber\\": 1,\\n \\"NextToken\\": \\"TGlzdFJlc291cm****\\",\\n \\"Accounts\\": {\\n \\"Account\\": [\\n {\\n \\"Status\\": \\"CreateSuccess\\",\\n \\"Type\\": \\"ResourceAccount\\",\\n \\"DisplayName\\": \\"test\\",\\n \\"FolderId\\": \\"fd-QRzuim****\\",\\n \\"ResourceDirectoryId\\": \\"rd-3G****\\",\\n \\"JoinTime\\": \\"2021-01-18T08:01:50.522Z\\",\\n \\"AccountId\\": \\"181761095690****\\",\\n \\"JoinMethod\\": \\"created\\",\\n \\"ModifyTime\\": \\"2021-01-18T08:04:37.668Z\\",\\n \\"ResourceDirectoryPath\\": \\"rd-3G****/r-Wm****/fd-QRzuim****/181761095690****\\",\\n \\"AccountName\\": \\"oxy01414357@alibaba-inc.com\\",\\n \\"DeletionStatus\\": \\"Checking\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"Key\\": \\"tag_key\\",\\n \\"Value\\": \\"tag_value\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ListAccountsResponse>\\n <TotalCount>2</TotalCount>\\n <RequestId>7B8A4E7D-6CFF-471D-84DF-195A7A241ECB</RequestId>\\n <PageSize>1</PageSize>\\n <PageNumber>2</PageNumber>\\n <Accounts>\\n <Status>CreateSuccess</Status>\\n <Type>ResourceAccount</Type>\\n <DisplayName>test</DisplayName>\\n <FolderId>fd-QRzuim****</FolderId>\\n <ResourceDirectoryId>rd-3G****</ResourceDirectoryId>\\n <JoinTime>2021-01-18T08:01:50.522Z</JoinTime>\\n <AccountId>181761095690****</AccountId>\\n <JoinMethod>created</JoinMethod>\\n <ModifyTime>2021-01-18T08:04:37.668Z</ModifyTime>\\n <ResourceDirectoryPath>rd-3G****/r-Wm****/fd-QRzuim****/181761095690****</ResourceDirectoryPath>\\n <Tags>\\n <Key>tag_key</Key>\\n <Value>tag_value</Value>\\n </Tags>\\n </Accounts>\\n</ListAccountsResponse>","errorExample":""}]', + 'title' => '查询整个资源目录下的所有成员列表', + 'description' => '资源目录的管理账号和可信服务的委派管理员账号可以调用该接口。', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + ], + 'ListAccountsForParent' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -5626,99 +3162,175 @@ ], 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'list', - ], + 'systemTags' => ['operationType' => 'list'], 'parameters' => [ [ - 'name' => 'NextToken', + 'name' => 'ParentFolderId', 'in' => 'query', - 'schema' => [ - 'description' => '下一个查询开始的Token。', - 'type' => 'string', - 'required' => false, - 'example' => 'caeba0bbb2be03f84eb48b699f0a****', - ], + 'schema' => ['description' => '资源夹ID。', 'type' => 'string', 'required' => false, 'example' => 'fd-bVaRIG****'], ], [ - 'name' => 'MaxResults', + 'name' => 'QueryKeyword', 'in' => 'query', - 'schema' => [ - 'description' => '分页时每页显示的数据行数。'."\n" - ."\n" - .'取值范围:1~100。默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '查询关键字,例如:成员名称。'."\n" + ."\n" + .'支持模糊查询。', 'type' => 'string', 'required' => false, 'example' => 'admin'], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => ['description' => '页码。'."\n" + ."\n" + .'起始值:1。默认值:1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => ['description' => '分页时每页显示的数据行数。'."\n" + ."\n" + .'取值范围:1~100。默认值:10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'flat', 'schema' => [ - 'description' => '标签。查询的过滤条件。'."\n" - ."\n" - .'最多可以指定20个标签。', + 'description' => '通过标签过滤。', 'type' => 'array', 'items' => [ - 'description' => '标签。查询的过滤条件。'."\n" - ."\n" - .'最多可以指定20个标签。', + 'description' => '过滤的标签列表。', 'type' => 'object', 'properties' => [ - 'Key' => [ - 'description' => '标签键。', - 'type' => 'string', - 'required' => false, - 'example' => 'k1', - ], - 'Value' => [ - 'description' => '标签值。', - 'type' => 'string', - 'required' => false, - 'example' => 'v1', - ], + 'Key' => ['description' => '标签键。', 'type' => 'string', 'required' => false, 'example' => 'tag_key'], + 'Value' => ['description' => '标签值。', 'type' => 'string', 'required' => false, 'example' => 'tag_value'], ], 'required' => false, ], 'required' => false, - 'maxItems' => 20, ], ], [ - 'name' => 'ResourceId', + 'name' => 'IncludeTags', 'in' => 'query', - 'style' => 'flat', + 'schema' => ['description' => '是否返回标签信息。取值:'."\n" + ."\n" + .'- false(默认值):不返回。'."\n" + .'- true:返回。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '资源目录成员ID。查询的过滤条件。'."\n" - ."\n" - .'> 查询资源目录成员绑定的标签列表时,必须同时指定`ResourceId`和`ResourceType`,且`ResourceType`取值为`Account`。', - 'type' => 'array', - 'items' => [ - 'description' => '资源目录成员ID。查询的过滤条件。'."\n" - ."\n" - .'> 查询资源目录成员绑定的标签列表时,必须同时指定`ResourceId`和`ResourceType`,且`ResourceType`取值为`Account`。', - 'type' => 'string', - 'required' => false, - 'example' => '1098***', + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'TotalCount' => ['description' => '数据总条数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '7B8A4E7D-6CFF-471D-84DF-195A7A241ECB'], + 'PageSize' => ['description' => '分页时每页显示的数据行数。', 'type' => 'integer', 'format' => 'int32', 'example' => '5'], + 'PageNumber' => ['description' => '页码。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'Accounts' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Account' => [ + 'description' => '成员信息。', + 'type' => 'array', + 'items' => [ + 'description' => '成员信息', + 'type' => 'object', + 'properties' => [ + 'Status' => ['description' => '成员加入状态。取值:'."\n" + ."\n" + .'- CreateSuccess:创建成功。'."\n" + .'- PromoteVerifying:升级确认中。'."\n" + .'- PromoteFailed:升级失败。'."\n" + .'- PromoteExpired:升级过期。'."\n" + .'- PromoteCancelled:升级取消。'."\n" + .'- PromoteSuccess:升级成功。'."\n" + .'- InviteSuccess:邀请成功。', 'type' => 'string', 'example' => 'CreateSuccess'], + 'Type' => ['description' => '成员类型。取值:'."\n" + ."\n" + .'- CloudAccount:云账号。'."\n" + .'- ResourceAccount:资源账号。', 'type' => 'string', 'example' => 'ResourceAccount'], + 'DisplayName' => ['description' => '成员名称。', 'type' => 'string', 'example' => 'admin'], + 'FolderId' => ['description' => '资源夹ID。', 'type' => 'string', 'example' => 'fd-bVaRIG****'], + 'ResourceDirectoryId' => ['description' => '资源目录ID。', 'type' => 'string', 'example' => 'rd-k4****'], + 'JoinTime' => ['description' => '成员加入时间(UTC时间)。', 'type' => 'string', 'example' => '2015-01-23T12:33:18Z'], + 'AccountId' => ['description' => '成员账号ID。', 'type' => 'string', 'example' => '184311716100****'], + 'JoinMethod' => ['description' => '成员加入方式。'."\n" + ."\n" + .'- invited:邀请。'."\n" + .'- created:创建。', 'type' => 'string', 'example' => 'created'], + 'ModifyTime' => ['description' => '成员修改时间(UTC时间)。', 'type' => 'string', 'example' => '2015-01-23T12:33:18Z'], + 'AccountName' => ['description' => '账号名称。', 'type' => 'string', 'example' => 'hdd01429358@alibaba-inc.com'], + 'DeletionStatus' => ['description' => '成员删除状态。取值:'."\n" + .'- Checking:检查中。'."\n" + .'- Deleting:删除中。'."\n" + .'- CheckFailed:检查失败。'."\n" + .'- DeleteFailed:删除失败。'."\n" + ."\n" + .'> 当账号未发起删除流程时,该字段为空。', 'type' => 'string', 'example' => 'Checking'], + 'Tags' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Tag' => [ + 'description' => '成员所有的标签。', + 'type' => 'array', + 'items' => [ + 'description' => '成员标签列表。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '标签键。', 'type' => 'string', 'example' => 'tag_key'], + 'Value' => ['description' => '标签值。', 'type' => 'string', 'example' => 'tag_value'], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], ], - 'required' => false, - 'maxItems' => 50, ], ], + ], + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidParameter.ParentFolderId', 'errorMessage' => 'The ParentFolderId is invalid.', 'description' => ''], + ], + 404 => [ + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => ''], + ['errorCode' => 'EntityNotExists.Folder', 'errorMessage' => 'The resource directory folder does not exist.', 'description' => ''], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"TotalCount\\": 2,\\n \\"RequestId\\": \\"7B8A4E7D-6CFF-471D-84DF-195A7A241ECB\\",\\n \\"PageSize\\": 5,\\n \\"PageNumber\\": 1,\\n \\"Accounts\\": {\\n \\"Account\\": [\\n {\\n \\"Status\\": \\"CreateSuccess\\",\\n \\"Type\\": \\"ResourceAccount\\",\\n \\"DisplayName\\": \\"admin\\",\\n \\"FolderId\\": \\"fd-bVaRIG****\\",\\n \\"ResourceDirectoryId\\": \\"rd-k4****\\",\\n \\"JoinTime\\": \\"2015-01-23T12:33:18Z\\",\\n \\"AccountId\\": \\"184311716100****\\",\\n \\"JoinMethod\\": \\"created\\",\\n \\"ModifyTime\\": \\"2015-01-23T12:33:18Z\\",\\n \\"AccountName\\": \\"hdd01429358@alibaba-inc.com\\",\\n \\"DeletionStatus\\": \\"Checking\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"Key\\": \\"tag_key\\",\\n \\"Value\\": \\"tag_value\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ListAccountsForParentResponse>\\n <TotalCount>2</TotalCount>\\n <RequestId>7B8A4E7D-6CFF-471D-84DF-195A7A241ECB</RequestId>\\n <PageSize>1</PageSize>\\n <PageNumber>2</PageNumber>\\n <Accounts>\\n <Status>CreateSuccess</Status>\\n <Type>ResourceAccount</Type>\\n <DisplayName>admin</DisplayName>\\n <FolderId>fd-bVaRIG****</FolderId>\\n <ResourceDirectoryId>rd-k4****</ResourceDirectoryId>\\n <JoinTime>2015-01-23T12:33:18Z</JoinTime>\\n <AccountId>184311716100****</AccountId>\\n <JoinMethod>created</JoinMethod>\\n <ModifyTime>2015-01-23T12:33:18Z</ModifyTime>\\n <Tags>\\n <Key>tag_key</Key>\\n <Value>tag_value</Value>\\n </Tags>\\n </Accounts>\\n</ListAccountsForParentResponse>","errorExample":""}]', + 'title' => '查询资源夹下的成员列表', + 'summary' => '调用ListAccountsForParent查询资源夹下的成员列表。', + 'requestParamsDescription' => ' 关于公共请求参数的详情,请参见[公共参数](~~159973~~)。', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + ], + 'ListAncestors' => [ + 'summary' => '调用ListAncestors查看指定资源夹的所有父资源夹信息。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'ResourceType', + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => ['operationType' => 'list'], + 'parameters' => [ + [ + 'name' => 'ChildId', 'in' => 'query', - 'schema' => [ - 'description' => '资源类型。查询的过滤条件。取值:'."\n" - ."\n" - .'- Account:查询资源目录成员的标签。', - 'type' => 'string', - 'required' => true, - 'example' => 'Account', - ], + 'schema' => ['description' => '子资源夹ID。', 'type' => 'string', 'required' => true, 'example' => 'fd-i1c9nr****'], ], ], 'responses' => [ @@ -5727,47 +3339,22 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'NextToken' => [ - 'description' => '根据`NextToken`判断是否具备下一个查询开始的`Token`。取值:'."\n" - ."\n" - .'- 如果`NextToken`为空,即`"NextToken": ""`,表示没有下一个。'."\n" - .'- 如果`NextToken`有值,则该值就是下一个查询开始的`Token`。', - 'type' => 'string', - 'example' => 'caeba0bbb2be03f84eb48b699f0a****', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '8054B059-6B36-53BF-AA45-B8C9A0ED05AB', - ], - 'TagResources' => [ - 'description' => '标签列表。', - 'type' => 'array', - 'items' => [ - 'description' => '标签列表。', - 'type' => 'object', - 'properties' => [ - 'TagValue' => [ - 'description' => '标签值。', - 'type' => 'string', - 'example' => 'k1', - ], - 'ResourceId' => [ - 'description' => '资源目录成员ID。', - 'type' => 'string', - 'example' => '1098***', - ], - 'TagKey' => [ - 'description' => '标签键。', - 'type' => 'string', - 'example' => 'k1', - ], - 'ResourceType' => [ - 'description' => '资源类型。取值:'."\n" - ."\n" - .'- Account:资源目录成员。', - 'type' => 'string', - 'example' => 'Account', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '83AFBEB6-DC03-406E-9686-867461FF6698'], + 'Folders' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Folder' => [ + 'description' => '资源夹信息。', + 'type' => 'array', + 'items' => [ + 'description' => '资源夹信息。', + 'type' => 'object', + 'properties' => [ + 'FolderId' => ['description' => '资源夹ID。', 'type' => 'string', 'example' => 'r-b1****'], + 'CreateTime' => ['description' => '资源夹创建时间。', 'type' => 'string', 'example' => '2019-01-18T10:03:35.217Z'], + 'FolderName' => ['description' => '资源夹名称。', 'type' => 'string', 'example' => 'root'], + ], ], ], ], @@ -5776,18 +3363,27 @@ ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a****\\",\\n \\"RequestId\\": \\"8054B059-6B36-53BF-AA45-B8C9A0ED05AB\\",\\n \\"TagResources\\": [\\n {\\n \\"TagValue\\": \\"k1\\",\\n \\"ResourceId\\": \\"1098***\\",\\n \\"TagKey\\": \\"k1\\",\\n \\"ResourceType\\": \\"Account\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<ListTagResourcesResponse>\\n <RequestId>8054B059-6B36-53BF-AA45-B8C9A0ED05AB</RequestId>\\n <TagResources>\\n <ResourceId>rg-aekz6bre2uq****</ResourceId>\\n <TagKey>k1</TagKey>\\n <ResourceType>resourcegroup</ResourceType>\\n <TagValue>v1</TagValue>\\n </TagResources>\\n</ListTagResourcesResponse>","errorExample":""}]', - 'title' => '查询标签列表', - ], - 'ListTagKeys' => [ - 'summary' => '调用ListTagKeys查询标签键列表。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'MissingParameter.ChildId', 'errorMessage' => 'You must specify ChildId.', 'description' => ''], + ['errorCode' => 'InvalidParameter.ChildId', 'errorMessage' => 'The ChildId is invalid.', 'description' => ''], + ], + 404 => [ + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => ''], + ['errorCode' => 'EntityNotExists.Folder', 'errorMessage' => 'The resource directory folder does not exist.', 'description' => ''], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"83AFBEB6-DC03-406E-9686-867461FF6698\\",\\n \\"Folders\\": {\\n \\"Folder\\": [\\n {\\n \\"FolderId\\": \\"r-b1****\\",\\n \\"CreateTime\\": \\"2019-01-18T10:03:35.217Z\\",\\n \\"FolderName\\": \\"root\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<ListAncestorsResponse>\\r\\n <Folders>\\r\\n <Folder>\\r\\n <FolderName>root</FolderName>\\r\\n <FolderId>r-b1****</FolderId>\\r\\n <CreateTime>2019-01-18T10:03:35.217Z</CreateTime>\\r\\n </Folder>\\r\\n <Folder>\\r\\n <FolderName>myFirstFd</FolderName>\\r\\n <FolderId>fd-0adR35****</FolderId>\\r\\n <CreateTime>2019-01-23T08:48:37.530Z</CreateTime>\\r\\n </Folder>\\r\\n </Folders>\\r\\n <RequestId>83AFBEB6-DC03-406E-9686-867461FF6698</RequestId>\\r\\n</ListAncestorsResponse>","errorExample":""}]', + 'title' => '查看指定资源夹的所有父资源夹信息', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + ], + 'ListAuthorizedAccounts' => [ + 'summary' => '调用ListAuthorizedAccounts列举有查询权限的成员列表。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -5795,55 +3391,129 @@ ], 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'list', - ], + 'systemTags' => ['operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ - 'name' => 'NextToken', + 'name' => 'PageNumber', 'in' => 'query', - 'schema' => [ - 'description' => '下一个查询开始的Token。', - 'type' => 'string', - 'required' => false, - 'example' => 'TGlzdFJlc291cm****', - ], + 'schema' => ['description' => '页码。'."\n" + ."\n" + .'起始值:1。默认值:1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ - 'name' => 'MaxResults', + 'name' => 'PageSize', 'in' => 'query', + 'schema' => ['description' => '分页时每页显示的数据行数。'."\n" + ."\n" + .'取值范围:1~100。默认值:10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '单次请求返回结果的最大条数。'."\n" - ."\n" - .'取值范围:1~100。默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'TotalCount' => ['description' => '数据总条数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '7B8A4E7D-6CFF-471D-84DF-195A7A241ECB'], + 'PageSize' => ['description' => '分页时每页显示的数据行数。', 'type' => 'integer', 'format' => 'int32', 'example' => '5'], + 'PageNumber' => ['description' => '页码。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'Accounts' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Account' => [ + 'description' => '成员信息。', + 'type' => 'array', + 'items' => [ + 'description' => '成员信息。', + 'type' => 'object', + 'properties' => [ + 'Status' => ['description' => '成员加入状态。取值:'."\n" + .'- CreateSuccess:创建成功。'."\n" + .'- PromoteVerifying:升级确认中。'."\n" + .'- PromoteFailed:升级失败。'."\n" + .'- PromoteExpired:升级过期。'."\n" + .'- PromoteCancelled:升级取消。'."\n" + .'- PromoteSuccess:升级成功。'."\n" + .'- InviteSuccess:邀请成功。', 'type' => 'string', 'example' => 'CreateSuccess'], + 'Type' => ['description' => '成员类型。取值:'."\n" + ."\n" + .'- CloudAccount:云账号。'."\n" + .'- ResourceAccount:资源账号。', 'type' => 'string', 'example' => 'ResourceAccount'], + 'DisplayName' => ['description' => '成员名称。', 'type' => 'string', 'example' => 'admin'], + 'FolderId' => ['description' => '资源夹ID。', 'type' => 'string', 'example' => 'fd-bVaRIG****'], + 'ResourceDirectoryId' => ['description' => '资源目录ID。', 'type' => 'string', 'example' => 'rd-k4****'], + 'JoinTime' => ['description' => '成员加入时间(UTC时间)。', 'type' => 'string', 'example' => '2015-01-23T12:33:18Z'], + 'AccountId' => ['description' => '成员账号ID。', 'type' => 'string', 'example' => '184311716100****'], + 'JoinMethod' => ['description' => '成员加入方式。'."\n" + ."\n" + .'- invited:邀请。'."\n" + .'- created:创建。', 'type' => 'string', 'example' => 'created'], + 'ModifyTime' => ['description' => '成员修改时间(UTC时间)。', 'type' => 'string', 'example' => '2015-01-23T12:33:18Z'], + 'ResourceDirectoryPath' => ['description' => '成员在资源目录中的路径ID(RDPath)。', 'type' => 'string', 'example' => 'rd-k4****/r-Wm****/fd-bVaRIG****/184311716100****'], + 'AccountName' => ['description' => '成员名称。', 'type' => 'string', 'example' => 'someone@example.com'], + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 404 => [ + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => '当前账号未启用资源目录,请先启用资源目录。'], + ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => '列举有查询权限的成员列表', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'resourcemanager:ListAuthorizedAccounts', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TotalCount\\": 2,\\n \\"RequestId\\": \\"7B8A4E7D-6CFF-471D-84DF-195A7A241ECB\\",\\n \\"PageSize\\": 5,\\n \\"PageNumber\\": 1,\\n \\"Accounts\\": {\\n \\"Account\\": [\\n {\\n \\"Status\\": \\"CreateSuccess\\",\\n \\"Type\\": \\"ResourceAccount\\",\\n \\"DisplayName\\": \\"admin\\",\\n \\"FolderId\\": \\"fd-bVaRIG****\\",\\n \\"ResourceDirectoryId\\": \\"rd-k4****\\",\\n \\"JoinTime\\": \\"2015-01-23T12:33:18Z\\",\\n \\"AccountId\\": \\"184311716100****\\",\\n \\"JoinMethod\\": \\"created\\",\\n \\"ModifyTime\\": \\"2015-01-23T12:33:18Z\\",\\n \\"ResourceDirectoryPath\\": \\"rd-k4****/r-Wm****/fd-bVaRIG****/184311716100****\\",\\n \\"AccountName\\": \\"someone@example.com\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'ListAuthorizedFolders' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'ResourceType', + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => ['operationType' => 'list'], + 'parameters' => [ + [ + 'name' => 'PageNumber', 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'description' => '资源类型。'."\n" - ."\n" - .'取值:Account,表示资源目录的成员。', - 'type' => 'string', - 'required' => true, - 'example' => 'Account', - ], + 'schema' => ['description' => '页码。'."\n" + ."\n" + .'起始值:1。默认值:1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ - 'name' => 'KeyFilter', + 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'description' => '模糊查询的标签键。', - 'type' => 'string', - 'required' => false, - 'example' => 'team', - ], + 'schema' => ['description' => '分页时每页显示的数据行数。'."\n" + ."\n" + .'取值范围:1~100。默认值:10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], ], 'responses' => [ @@ -5852,50 +3522,60 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'NextToken' => [ - 'description' => '根据NextToken判断是否具备下一个查询开始的Token。取值:'."\n" - ."\n" - .'- 如果NextToken为空,即`"NextToken": ""`,表示没有下一个。'."\n" - .'- 如果NextToken有值,则该值就是下一个查询开始的Token。', - 'type' => 'string', - 'example' => 'TGlzdFJlc291cm****', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'DC09A6AA-2713-4E10-A2E9-E6C5C43A8842', - ], - 'Tags' => [ - 'description' => '标签键信息。', - 'type' => 'array', - 'items' => [ - 'description' => '标签键信息。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '标签键。', - 'type' => 'string', - 'example' => 'team', + 'TotalCount' => ['description' => '数据总条数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '7B8A4E7D-6CFF-471D-84DF-195A7A241ECB'], + 'PageSize' => ['description' => '分页时每页显示的数据行数。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'PageNumber' => ['description' => '页码。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'Folders' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Folder' => [ + 'description' => '资源夹列表。', + 'type' => 'array', + 'items' => [ + 'description' => '资源夹列表。', + 'type' => 'object', + 'properties' => [ + 'FolderId' => ['description' => '资源夹ID。', 'type' => 'string', 'example' => 'fd-bVaRIG****'], + 'ResourceDirectoryPath' => ['description' => '资源夹在资源目录中的路径ID(RDPath)。', 'type' => 'string', 'example' => 'rd-k3****/r-Wm****/fd-bVaRIG****'], + 'FolderName' => ['description' => '资源夹名称。', 'type' => 'string', 'example' => 'project-1'], + ], ], ], ], + 'description' => '', ], ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"NextToken\\": \\"TGlzdFJlc291cm****\\",\\n \\"RequestId\\": \\"DC09A6AA-2713-4E10-A2E9-E6C5C43A8842\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"team\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<ListTagKeysResponse>\\n <NextToken>caeba0bbb2be03f84eb48b699f0a****</NextToken>\\n <RequestId>DC09A6AA-2713-4E10-A2E9-E6C5C43A8842</RequestId>\\n <Tags>\\n <Key>team</Key>\\n </Tags>\\n</ListTagKeysResponse>","errorExample":""}]', - 'title' => '查询标签键列表', - ], - 'ListTagValues' => [ - 'summary' => '调用ListTagValues查询指定标签键对应的标签值。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => '列举有查询权限的资源夹列表', + 'summary' => '调用ListAuthorizedFolders列举有查询权限的资源夹列表。', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'resourcemanager:ListAuthorizedFolders', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TotalCount\\": 2,\\n \\"RequestId\\": \\"7B8A4E7D-6CFF-471D-84DF-195A7A241ECB\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"Folders\\": {\\n \\"Folder\\": [\\n {\\n \\"FolderId\\": \\"fd-bVaRIG****\\",\\n \\"ResourceDirectoryPath\\": \\"rd-k3****/r-Wm****/fd-bVaRIG****\\",\\n \\"FolderName\\": \\"project-1\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'ListControlPolicies' => [ + 'summary' => '调用ListControlPolicies查询管控策略列表。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -5903,66 +3583,65 @@ ], 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'list', - ], + 'systemTags' => ['operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ - 'name' => 'NextToken', + 'name' => 'PolicyType', 'in' => 'query', - 'schema' => [ - 'description' => '下一个查询开始的Token。', - 'type' => 'string', - 'required' => false, - 'example' => 'TGlzdFJlc291cm****', - ], + 'schema' => ['description' => '管控策略类型。取值:'."\n" + ."\n" + .'- System:系统管控策略。'."\n" + .'- Custom:自定义管控策略。', 'type' => 'string', 'required' => false, 'example' => 'System'], ], [ - 'name' => 'MaxResults', + 'name' => 'PageNumber', 'in' => 'query', - 'schema' => [ - 'description' => '单次请求返回结果的最大条数。'."\n" - ."\n" - .'取值范围:1~100。默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '页码。'."\n" + ."\n" + .'起始值:1。默认值:1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '200000', 'minimum' => '1', 'example' => '1', 'default' => '1'], ], [ - 'name' => 'ResourceType', + 'name' => 'PageSize', 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'description' => '资源类型。'."\n" - ."\n" - .'取值:Account,表示资源目录的成员。', - 'type' => 'string', - 'required' => true, - 'example' => 'Account', - ], + 'schema' => ['description' => '分页时每页显示的数据条数。'."\n" + ."\n" + .'取值范围:1~100。默认值:10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'example' => '10', 'default' => '10'], ], [ - 'name' => 'TagKey', + 'name' => 'Language', 'in' => 'query', - 'schema' => [ - 'description' => '标签键,用于查询的过滤条件。', - 'type' => 'string', - 'required' => true, - 'example' => 'k1', - ], + 'schema' => ['description' => '指定返回结果中管控策略描述的语言。取值:'."\n" + ."\n" + .'- zh-CN(默认值):中文。'."\n" + .'- en:英文。'."\n" + .'- ja:日文。'."\n" + ."\n" + .'> 该参数仅在系统管控策略时有效。', 'type' => 'string', 'required' => false, 'example' => 'zh-CN'], ], [ - 'name' => 'ValueFilter', + 'name' => 'Tag', 'in' => 'query', + 'style' => 'flat', 'schema' => [ - 'description' => '模糊查询的标签值。', - 'type' => 'string', + 'description' => '标签。', + 'type' => 'array', + 'items' => [ + 'description' => '标签。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '标签键。', 'type' => 'string', 'required' => false, 'example' => 'tag_key'], + 'Value' => ['description' => '标签值。', 'type' => 'string', 'required' => false, 'example' => 'tag_value'], + ], + 'required' => false, + ], 'required' => false, - 'example' => 'v1', ], ], + [ + 'name' => 'ControlPolicyType', + 'in' => 'query', + 'schema' => ['title' => '管控策略的类型,取值: ● CONTROL_POLICY:管控策略 ● RESOURCE_CONTROL_POLICY:资源管控策略 默认值为:CONTROL_POLICY', 'type' => 'string', 'example' => 'RESOURCE_CONTROL_POLICY'], + ], ], 'responses' => [ 200 => [ @@ -5970,153 +3649,232 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'NextToken' => [ - 'description' => '根据NextToken判断是否具备下一个查询开始的Token。取值:'."\n" - ."\n" - .'- 如果NextToken为空,即`"NextToken": ""`,表示没有下一个。'."\n" - .'- 如果NextToken有值,则该值就是下一个查询开始的Token。', - 'type' => 'string', - 'example' => 'TGlzdFJlc291cm****', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'DC09A6AA-2713-4E10-A2E9-E6C5C43A8842', - ], - 'Tags' => [ - 'description' => '标签值信息。', - 'type' => 'array', - 'items' => [ - 'description' => '标签值信息。', - 'type' => 'object', - 'properties' => [ - 'Value' => [ - 'description' => '标签值。', - 'type' => 'string', - 'example' => 'v1', + 'TotalCount' => ['description' => '管控策略数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '9424A34C-3471-45AD-B6AB-924BBDFE42F9'], + 'PageSize' => ['description' => '分页时每页显示的数据条数。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'PageNumber' => ['description' => '页码。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'ControlPolicies' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'ControlPolicy' => [ + 'description' => '管控策略列表。', + 'type' => 'array', + 'items' => [ + 'description' => '管控策略列表。', + 'type' => 'object', + 'properties' => [ + 'UpdateDate' => ['description' => '管控策略更新时间。', 'type' => 'string', 'example' => '2020-08-05T06:32:24Z'], + 'Description' => ['description' => '管控策略描述。', 'type' => 'string', 'example' => '支持阿里云所有操作的系统管控策略'], + 'EffectScope' => ['description' => '管控策略生效范围。取值:'."\n" + ."\n" + .'- All:表示该管控策略针对阿里云账号、RAM用户或RAM角色生效。'."\n" + .'- RAM:表示该管控策略仅针对RAM用户或RAM角色生效。'."\n", 'type' => 'string', 'example' => 'All'], + 'AttachmentCount' => ['description' => '管控策略被引用的次数。', 'type' => 'string', 'example' => '44'], + 'PolicyName' => ['description' => '管控策略名称。', 'type' => 'string', 'example' => 'FullAliyunAccess'], + 'PolicyId' => ['description' => '管控策略ID。', 'type' => 'string', 'example' => 'cp-FullAliyunAccess'], + 'CreateDate' => ['description' => '管控策略创建时间。', 'type' => 'string', 'example' => '2020-08-05T06:32:24Z'], + 'PolicyType' => ['description' => '管控策略类型。取值:'."\n" + ."\n" + .'- System:系统管控策略。'."\n" + .'- Custom:自定义管控策略。', 'type' => 'string', 'example' => 'System'], + 'Tags' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Tag' => [ + 'description' => '标签。', + 'type' => 'array', + 'items' => [ + 'description' => '标签。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '标签键。', 'type' => 'string', 'example' => 'tag_key'], + 'Value' => ['description' => '标签值。', 'type' => 'string', 'example' => 'tag_value'], + ], + ], + ], + ], + 'description' => '', + ], + 'ControlPolicyType' => ['title' => '管控策略的类型,取值: ● CONTROL_POLICY:管控策略 ● RESOURCE_CONTROL_POLICY:资源管控策略', 'type' => 'string', 'example' => 'RESOURCE_CONTROL_POLICY'], + ], ], ], ], + 'description' => '', ], ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"NextToken\\": \\"TGlzdFJlc291cm****\\",\\n \\"RequestId\\": \\"DC09A6AA-2713-4E10-A2E9-E6C5C43A8842\\",\\n \\"Tags\\": [\\n {\\n \\"Value\\": \\"v1\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<ListTagValuesResponse>\\n <NextToken>TGlzdFJlc291cm****</NextToken>\\n <RequestId>DC09A6AA-2713-4E10-A2E9-E6C5C43A8842</RequestId>\\n <Tags>\\n <Value>v1</Value>\\n </Tags>\\n</ListTagValuesResponse>","errorExample":""}]', - 'title' => '查询指定标签键对应的标签值', - ], - 'ChangeAccountEmail' => [ - 'summary' => '调用ChangeAccountEmail修改成员邮箱。', - 'methods' => [ - 'post', - 'get', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => '查询管控策略列表', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListControlPolicies'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'resourcemanager:ListControlPolicies', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"TotalCount\\": 1,\\n \\"RequestId\\": \\"9424A34C-3471-45AD-B6AB-924BBDFE42F9\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"ControlPolicies\\": {\\n \\"ControlPolicy\\": [\\n {\\n \\"UpdateDate\\": \\"2020-08-05T06:32:24Z\\",\\n \\"Description\\": \\"支持阿里云所有操作的系统管控策略\\",\\n \\"EffectScope\\": \\"All\\",\\n \\"AttachmentCount\\": \\"44\\",\\n \\"PolicyName\\": \\"FullAliyunAccess\\",\\n \\"PolicyId\\": \\"cp-FullAliyunAccess\\",\\n \\"CreateDate\\": \\"2020-08-05T06:32:24Z\\",\\n \\"PolicyType\\": \\"System\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"Key\\": \\"tag_key\\",\\n \\"Value\\": \\"tag_value\\"\\n }\\n ]\\n },\\n \\"ControlPolicyType\\": \\"RESOURCE_CONTROL_POLICY\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<ListControlPoliciesResponse>\\r\\n\\t<TotalCount>1</TotalCount>\\r\\n\\t<RequestId>9424A34C-3471-45AD-B6AB-924BBDFE42F9</RequestId>\\r\\n\\t<PageSize>10</PageSize>\\r\\n\\t<PageNumber>1</PageNumber>\\r\\n\\t<ControlPolicies>\\r\\n\\t\\t<ControlPolicy>\\r\\n\\t\\t\\t<PolicyType>System</PolicyType>\\r\\n\\t\\t\\t<UpdateDate>2020-08-05T06:32:24Z</UpdateDate>\\r\\n\\t\\t\\t<Description>支持阿里云所有操作的系统管控策略</Description>\\r\\n\\t\\t\\t<AttachmentCount>44</AttachmentCount>\\r\\n\\t\\t\\t<PolicyName>FullAliyunAccess</PolicyName>\\r\\n\\t\\t\\t<CreateDate>2020-08-05T06:32:24Z</CreateDate>\\r\\n\\t\\t\\t<PolicyId>cp-FullAliyunAccess</PolicyId>\\r\\n\\t\\t\\t<EffectScope>All</EffectScope>\\r\\n\\t\\t</ControlPolicy>\\r\\n\\t</ControlPolicies>\\r\\n</ListControlPoliciesResponse>\\t\\r\\n","errorExample":""}]', + ], + 'ListControlPolicyAttachmentsForTarget' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - ], + 'systemTags' => ['operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ - 'name' => 'AccountId', + 'name' => 'TargetId', 'in' => 'query', - 'schema' => [ - 'description' => '成员ID。', - 'type' => 'string', - 'required' => true, - 'example' => '181761095690****', - ], + 'schema' => ['description' => '目标节点。取值:'."\n" + ."\n" + .'- Root ID:查询Root节点绑定的管控策略。'."\n" + .'- 资源夹ID:查询资源夹绑定的管控策略。'."\n" + .'- 成员ID:查询成员绑定的管控策略。', 'type' => 'string', 'required' => true, 'example' => 'fd-ZDNPiT****'], ], [ - 'name' => 'Email', + 'name' => 'Language', 'in' => 'query', - 'schema' => [ - 'description' => '成员邮箱。'."\n" - ."\n" - .'> 系统将自动发送验证邮件到所填邮箱,通过验证后修改才会生效,验证通过后系统会同步修改该账号的邮箱和安全邮箱。', - 'type' => 'string', - 'required' => true, - 'example' => 'someone@example.com', - ], + 'schema' => ['description' => '指定返回结果中管控策略描述的语言。取值:'."\n" + ."\n" + .'- zh-CN(默认值):中文。'."\n" + .'- en:英文。'."\n" + .'- ja:日文。'."\n" + ."\n" + .'> 该参数仅在系统管控策略时有效。', 'type' => 'string', 'required' => false, 'example' => 'zh-CN'], + ], + [ + 'name' => 'ControlPolicyType', + 'in' => 'query', + 'schema' => ['type' => 'string', 'example' => 'RESOURCE_CONTROL_POLICY'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回结果。', + 'description' => '返回参数。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'C276B600-7B7A-49E8-938C-E16CFA955A82'], + 'ControlPolicyAttachments' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'ControlPolicyAttachment' => [ + 'description' => '已绑定的管控策略列表。', + 'type' => 'array', + 'items' => [ + 'description' => '已绑定的管控策略列表。', + 'type' => 'object', + 'properties' => [ + 'Description' => ['description' => '管控策略描述。', 'type' => 'string', 'example' => 'ExampleControlPolicy'], + 'EffectScope' => ['description' => '管控策略生效范围。取值:'."\n" + ."\n" + .'- All:表示该管控策略针对阿里云账号、RAM用户或RAM角色生效。'."\n" + .'- RAM:表示该管控策略仅针对RAM用户或RAM角色生效。', 'type' => 'string', 'example' => 'RAM'], + 'PolicyName' => ['description' => '管控策略名称。', 'type' => 'string', 'example' => 'ExampleControlPolicy'], + 'PolicyId' => ['description' => '管控策略ID。', 'type' => 'string', 'example' => 'cp-jExXAqIYkwHN****'], + 'AttachDate' => ['description' => '绑定管控策略的时间。', 'type' => 'string', 'example' => '2021-03-19T02:56:24Z'], + 'PolicyType' => ['description' => '管控策略类型。取值:'."\n" + ."\n" + .'- System:系统管控策略。'."\n" + .'- Custom:自定义管控策略。', 'type' => 'string', 'example' => 'Custom'], + 'ControlPolicyType' => ['type' => 'string', 'example' => 'RESOURCE_CONTROL_POLICY'], + ], + ], + ], + ], + 'description' => '', ], ], ], ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'NotSupportedOperation.Account.EmailModify', - 'errorMessage' => 'The operation is not supported because the account email is being modifying.', - ], - [ - 'errorCode' => 'NotSupport.InvitedAccount', - 'errorMessage' => 'The current operation is not supported for accounts invited to join the resource directory.', - ], - ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], - [ - 'errorCode' => 'EntityNotExists.Account', - 'errorMessage' => 'This resource directory account does not exist.', - ], + ['errorCode' => 'EntityNotExists.Target', 'errorMessage' => 'The specified target does not exist in the resource directory.', 'description' => '关联目标在资源目录中不存在。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\"\\n}","errorExample":""},{"type":"xml","example":"<ChangeAccountEmailResponse>\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\n</ChangeAccountEmailResponse>","errorExample":""}]', - 'title' => '修改成员邮箱', - ], - 'RetryChangeAccountEmail' => [ - 'summary' => '调用RetryChangeAccountEmail重新发送修改成员邮箱的确认邮件。', - 'methods' => [ - 'post', - 'get', + 'title' => '查询资源夹或成员绑定的管控策略列表', + 'summary' => '调用ListControlPolicyAttachmentsForTarget查询资源夹或成员绑定的管控策略列表。', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListControlPolicyAttachmentsForTarget'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'resourcemanager:ListControlPolicyAttachmentsForTarget', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C276B600-7B7A-49E8-938C-E16CFA955A82\\",\\n \\"ControlPolicyAttachments\\": {\\n \\"ControlPolicyAttachment\\": [\\n {\\n \\"Description\\": \\"ExampleControlPolicy\\",\\n \\"EffectScope\\": \\"RAM\\",\\n \\"PolicyName\\": \\"ExampleControlPolicy\\",\\n \\"PolicyId\\": \\"cp-jExXAqIYkwHN****\\",\\n \\"AttachDate\\": \\"2021-03-19T02:56:24Z\\",\\n \\"PolicyType\\": \\"Custom\\",\\n \\"ControlPolicyType\\": \\"RESOURCE_CONTROL_POLICY\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<ListControlPolicyAttachmentsForTargetResponse>\\r\\n\\t<RequestId>C276B600-7B7A-49E8-938C-E16CFA955A82</RequestId>\\r\\n\\t<ControlPolicyAttachments>\\r\\n\\t\\t<ControlPolicyAttachment>\\r\\n\\t\\t\\t<PolicyType>System</PolicyType>\\r\\n\\t\\t\\t<Description>支持阿里云所有操作的系统管控策略</Description>\\r\\n\\t\\t\\t<AttachDate>2021-03-18T07:27:59Z</AttachDate>\\r\\n\\t\\t\\t<PolicyName>FullAliyunAccess</PolicyName>\\r\\n\\t\\t\\t<PolicyId>cp-FullAliyunAccess</PolicyId>\\r\\n\\t\\t</ControlPolicyAttachment>\\r\\n\\t\\t<ControlPolicyAttachment>\\r\\n\\t\\t\\t<PolicyType>Custom</PolicyType>\\r\\n\\t\\t\\t<Description>ExampleControlPolicy</Description>\\r\\n\\t\\t\\t<AttachDate>2021-03-19T02:56:24Z</AttachDate>\\r\\n\\t\\t\\t<PolicyName>ExampleControlPolicy</PolicyName>\\r\\n\\t\\t\\t<PolicyId>cp-jExXAqIYkwHN****</PolicyId>\\r\\n\\t\\t</ControlPolicyAttachment>\\r\\n\\t</ControlPolicyAttachments>\\r\\n</ListControlPolicyAttachmentsForTargetResponse>\\t\\r\\n","errorExample":""}]', + ], + 'ListDelegatedAdministrators' => [ + 'summary' => '调用ListDelegatedAdministrators查询可信服务的委派管理员账号列表。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - ], + 'systemTags' => ['operationType' => 'list'], 'parameters' => [ [ - 'name' => 'AccountId', + 'name' => 'ServicePrincipal', 'in' => 'query', - 'schema' => [ - 'description' => '成员ID。', - 'type' => 'string', - 'required' => true, - 'example' => '181761095690****', - ], + 'schema' => ['description' => '可信服务的标识。'."\n" + ."\n" + .'具体信息,请参见[支持的可信服务](~~208133~~)中的`可信服务标识`列。', 'type' => 'string', 'required' => false, 'example' => 'cloudfw.aliyuncs.com'], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => ['description' => '页码。'."\n" + ."\n" + .'起始值:1。默认值:1。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1'], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => ['description' => '分页时每页显示的数据行数。'."\n" + ."\n" + .'取值范围:1~100。默认值:10。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10'], ], ], 'responses' => [ @@ -6125,63 +3883,71 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '009C3A02-7D4B-416C-9CE7-548C91508F1E'], + 'TotalCount' => ['description' => '数据总条数。', 'type' => 'integer', 'format' => 'int64', 'example' => '2'], + 'PageSize' => ['description' => '分页时每页显示的数据行数。', 'type' => 'integer', 'format' => 'int64', 'example' => '10'], + 'PageNumber' => ['description' => '页码。', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], + 'Accounts' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Account' => [ + 'description' => '委派管理员账号信息。', + 'type' => 'array', + 'items' => [ + 'description' => '账号信息', + 'type' => 'object', + 'properties' => [ + 'AccountId' => ['description' => '成员ID。', 'type' => 'string', 'example' => '138660628348****'], + 'DisplayName' => ['description' => '成员名称。', 'type' => 'string', 'example' => 'abc'], + 'JoinMethod' => ['description' => '成员加入方式。取值:'."\n" + ."\n" + .'- invited:邀请。'."\n" + .'- created:创建。', 'type' => 'string', 'example' => 'created'], + 'ServicePrincipal' => ['description' => '可信服务的标识。', 'type' => 'string', 'example' => 'cloudfw.aliyuncs.com'], + 'DelegationEnabledTime' => ['description' => '设置为委派管理员账号的时间戳。', 'type' => 'string', 'example' => '1616652684164'], + ], + ], + ], + ], ], ], ], ], ], - 'errorCodes' => [ - 404 => [ - [ - 'errorCode' => 'EntityNotExists.EmailModifyRecord', - 'errorMessage' => 'This email modification record of the account does not exist.', - ], - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], - [ - 'errorCode' => 'EntityNotExists.Account', - 'errorMessage' => 'This resource directory account does not exist.', - ], - ], - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\"\\n}","errorExample":""},{"type":"xml","example":"<RetryChangeAccountEmailResponse>\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\n</RetryChangeAccountEmailResponse>","errorExample":""}]', - 'title' => '重新发送修改成员邮箱的确认邮件', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"009C3A02-7D4B-416C-9CE7-548C91508F1E\\",\\n \\"TotalCount\\": 2,\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"Accounts\\": {\\n \\"Account\\": [\\n {\\n \\"AccountId\\": \\"138660628348****\\",\\n \\"DisplayName\\": \\"abc\\",\\n \\"JoinMethod\\": \\"created\\",\\n \\"ServicePrincipal\\": \\"cloudfw.aliyuncs.com\\",\\n \\"DelegationEnabledTime\\": \\"1616652684164\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<ListDelegatedAdministratorsResponse>\\r\\n\\t<RequestId>009C3A02-7D4B-416C-9CE7-548C91508F1E</RequestId>\\r\\n\\t<TotalCount>2</TotalCount>\\r\\n\\t<PageSize>10</PageSize>\\r\\n\\t<PageNumber>1</PageNumber>\\r\\n\\t<Accounts>\\r\\n\\t\\t<Account>\\r\\n\\t\\t\\t<DelegationEnabledTime>1616652684164</DelegationEnabledTime>\\r\\n\\t\\t\\t<JoinMethod>created</JoinMethod>\\r\\n\\t\\t\\t<AccountId>138660628348****</AccountId>\\r\\n\\t\\t\\t<ServicePrincipal>cloudfw.aliyuncs.com</ServicePrincipal>\\r\\n\\t\\t\\t<DisplayName>abc</DisplayName>\\r\\n\\t\\t</Account>\\r\\n\\t\\t<Account>\\r\\n\\t\\t\\t<DelegationEnabledTime>1616489836069</DelegationEnabledTime>\\r\\n\\t\\t\\t<JoinMethod>invited</JoinMethod>\\r\\n\\t\\t\\t<AccountId>177242285274****</AccountId>\\r\\n\\t\\t\\t<ServicePrincipal>cloudfw.aliyuncs.com</ServicePrincipal>\\r\\n\\t\\t\\t<DisplayName>test</DisplayName>\\r\\n\\t\\t</Account>\\r\\n\\t</Accounts>\\r\\n</ListDelegatedAdministratorsResponse>\\t\\r\\n","errorExample":""}]', + 'title' => '查询可信服务的委派管理员账号列表', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], ], - 'CancelChangeAccountEmail' => [ - 'summary' => '调用CancelChangeAccountEmail取消修改成员邮箱。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'ListDelegatedServicesForAccount' => [ + 'summary' => '查询指定成员被设置为哪些可信服务的委派管理员账号。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - ], + 'systemTags' => ['operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ 'name' => 'AccountId', 'in' => 'query', - 'schema' => [ - 'description' => '成员ID。', - 'type' => 'string', - 'required' => true, - 'example' => '181761095690****', - ], + 'schema' => ['description' => '成员ID。', 'type' => 'string', 'required' => true, 'example' => '138660628348****'], + ], + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => ['title' => '当请求的返回结果被截断时,您可以使用NextToken再次发起请求,获取从当前截断位置之后的内容。', 'description' => '当请求的返回结果被截断时,您可以使用NextToken再次发起请求,获取从当前截断位置之后的内容。', 'type' => 'string', 'required' => false, 'example' => 'TGlzdFJlc291cm****'], + ], + [ + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => ['title' => '单次请求返回结果的最大条数。取值范围:1~100。默认值:10。', 'description' => '单次请求返回结果的最大条数。取值范围:1~100。默认值:10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'], ], ], 'responses' => [ @@ -6190,257 +3956,197 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'D9C03B94-9396-4794-A74B-13DC437556A6'], + 'DelegatedServices' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DelegatedService' => [ + 'description' => '可信服务列表。'."\n" + ."\n" + .'> 如果返回为空,则表示查询的成员不是委派管理员账号。', + 'type' => 'array', + 'items' => [ + 'description' => '可信服务信列表。'."\n" + ."\n" + .'> 如果返回为空,则表示查询的成员不是委派管理员账号。', + 'type' => 'object', + 'properties' => [ + 'DelegationEnabledTime' => ['description' => '设置为委派管理员账号的时间戳。', 'type' => 'string', 'example' => '1616652684164'], + 'ServicePrincipal' => ['description' => '可信服务的标识。', 'type' => 'string', 'example' => 'cloudfw.aliyuncs.com'], + 'Status' => ['description' => '可信服务的启用状态。取值:'."\n" + ."\n" + .'- ENABLED:已启用。'."\n" + .'- DISABLED:未启用。', 'type' => 'string', 'example' => 'ENABLED'], + ], + ], + ], + ], + 'description' => '', ], + 'NextToken' => ['title' => '当请求的返回结果被截断时,您可以使用NextToken再次发起请求,获取从当前截断位置之后的内容。', 'description' => '当请求的返回结果被截断时,您可以使用NextToken再次发起请求,获取从当前截断位置之后的内容。', 'type' => 'string', 'example' => 'TGlzdFJlc291cm****'], + 'MaxResults' => ['title' => '单次请求返回结果的最大条数。', 'description' => '单次请求返回结果的最大条数。', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], ], ], ], ], - 'errorCodes' => [ - 404 => [ - [ - 'errorCode' => 'EntityNotExists.EmailModifyRecord', - 'errorMessage' => 'This email modification record of the account does not exist.', - ], - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], - [ - 'errorCode' => 'EntityNotExists.Account', - 'errorMessage' => 'This resource directory account does not exist.', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"D9C03B94-9396-4794-A74B-13DC437556A6\\",\\n \\"DelegatedServices\\": {\\n \\"DelegatedService\\": [\\n {\\n \\"DelegationEnabledTime\\": \\"1616652684164\\",\\n \\"ServicePrincipal\\": \\"cloudfw.aliyuncs.com\\",\\n \\"Status\\": \\"ENABLED\\"\\n }\\n ]\\n },\\n \\"NextToken\\": \\"TGlzdFJlc291cm****\\",\\n \\"MaxResults\\": 20\\n}","errorExample":""},{"type":"xml","example":"<ListDelegatedServicesForAccountResponse>\\n <RequestId>D9C03B94-9396-4794-A74B-13DC437556A6</RequestId>\\n <DelegatedServices>\\n <DelegatedService>\\n <Status>ENABLED</Status>\\n <DelegationEnabledTime>1616652684164</DelegationEnabledTime>\\n <ServicePrincipal>cloudfw.aliyuncs.com</ServicePrincipal>\\n </DelegatedService>\\n </DelegatedServices>\\n</ListDelegatedServicesForAccountResponse>","errorExample":""}]', + 'title' => '查询指定成员被设置为哪些可信服务的委派管理员账号', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListDelegatedServicesForAccount'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'resourcemanager:ListDelegatedServicesForAccount', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager::{#accountId}:account/{#ResourceDirectoryPath}'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\"\\n}","errorExample":""},{"type":"xml","example":"<CancelChangeAccountEmailResponse>\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\n</CancelChangeAccountEmailResponse>","errorExample":""}]', - 'title' => '取消修改成员邮箱', ], - 'AddMessageContact' => [ - 'summary' => '添加消息通知联系人。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'ListFoldersForParent' => [ + 'summary' => '调用ListFoldersForParent查询指定资源夹的子资源夹列表。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'create', - ], + 'systemTags' => ['operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ - 'name' => 'Name', + 'name' => 'ParentFolderId', 'in' => 'query', - 'schema' => [ - 'description' => '联系人的名称。'."\n" - ."\n" - .'联系人的名称在资源目录内必须唯一。'."\n" - ."\n" - .'格式:2~12个英文字母或汉字。', - 'type' => 'string', - 'required' => true, - 'example' => 'tom', - ], + 'schema' => ['description' => '父资源夹ID。'."\n" + ."\n" + .'当该参数置空时,查询的是Root资源夹下的下一级子资源夹。', 'type' => 'string', 'required' => false, 'example' => 'r-b1****'], ], [ - 'name' => 'EmailAddress', + 'name' => 'QueryKeyword', 'in' => 'query', - 'schema' => [ - 'description' => '联系人的邮箱地址。'."\n" - ."\n" - .'添加邮箱地址后,您需要继续调用[SendEmailVerificationForMessageContact](~~SendEmailVerificationForMessageContact~~)向该邮箱地址发送验证信息,通过验证后,该联系人的邮箱地址才能生效。', - 'type' => 'string', - 'required' => true, - 'example' => 'someone***@example.com', - ], + 'schema' => ['description' => '查询关键字,例如:资源夹名称。'."\n" + ."\n" + .'支持模糊查询。', 'type' => 'string', 'required' => false, 'example' => 'rdFolder'], ], [ - 'name' => 'PhoneNumber', + 'name' => 'PageNumber', 'in' => 'query', - 'schema' => [ - 'description' => '联系人的手机号码。'."\n" - ."\n" - .'格式:`<国家码>-<手机号码>`。'."\n" - ."\n" - .'> 仅支持填写`86-<手机号码>`的中国内地手机号码。'."\n" - ."\n" - .'添加手机号码后,您需要继续调用[SendPhoneVerificationForMessageContact](~~SendPhoneVerificationForMessageContact~~)向该手机号码发送验证信息,通过验证后,该联系人的手机号码才能生效。', - 'type' => 'string', - 'required' => false, - 'example' => '86-139****1234', - ], + 'schema' => ['description' => '页码。'."\n" + ."\n" + .'起始值:1。默认值:1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ - 'name' => 'Title', + 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'description' => '联系人的职位。', - 'type' => 'string', - 'required' => true, - 'enumValueTitles' => [ - 'FinanceDirector' => '财务负责人', - 'TechnicalDirector' => '技术负责人', - 'MaintenanceDirector' => '运维负责人', - 'CEO' => 'CEO', - 'ProjectDirector' => '项目负责人', - 'Other' => '其它', - ], - 'example' => 'TechnicalDirector', - ], + 'schema' => ['description' => '分页时每页显示的数据行数。'."\n" + ."\n" + .'取值范围:1~100。默认值:10。'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ - 'name' => 'MessageTypes', + 'name' => 'Tag', 'in' => 'query', 'style' => 'flat', 'schema' => [ - 'description' => '联系人接收的消息分类。', + 'description' => '通过标签过滤。', 'type' => 'array', 'items' => [ - 'description' => '联系人接收的消息分类。', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'ServiceMessage' => '服务消息', - 'FaultMessage' => '故障消息', - 'AccountExpenses' => '账号资金消息', - 'SecurityMessage' => '安全消息', - 'ActivityMessage' => '活动消息', - 'ProductMessage' => '产品消息', + 'description' => '过滤的标签列表。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '标签键。', 'type' => 'string', 'required' => false, 'example' => 'k1'], + 'Value' => ['description' => '标签值。', 'type' => 'string', 'required' => false, 'example' => 'v1'], ], - 'example' => 'AccountExpenses', + 'required' => false, ], - 'required' => true, + 'required' => false, ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '2DFCE4C9-04A9-4C83-BB14-FE791275EC53', - ], - 'Contact' => [ - 'description' => '联系人信息。', + 'Folders' => [ 'type' => 'object', + 'itemNode' => true, 'properties' => [ - 'ContactId' => [ - 'description' => '联系人ID。', - 'type' => 'string', - 'example' => 'c-qL4HqKONzOM7****', - ], - 'CreateDate' => [ - 'description' => '联系人创建时间。', - 'type' => 'string', - 'example' => '2023-03-27 17:19:21', + 'Folder' => [ + 'description' => '资源夹列表。', + 'type' => 'array', + 'items' => [ + 'description' => '资源夹列表。', + 'type' => 'object', + 'properties' => [ + 'CreateTime' => ['description' => '资源夹创建时间。', 'type' => 'string', 'example' => '2015-01-23T12:33:18Z'], + 'FolderId' => ['description' => '资源夹ID。', 'type' => 'string', 'example' => 'rd-evic31****'], + 'FolderName' => ['description' => '资源夹名称。', 'type' => 'string', 'example' => 'project-1'], + 'Tags' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Tag' => [ + 'description' => '资源夹所有的标签。', + 'type' => 'array', + 'items' => [ + 'description' => '资源夹所有的标签。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '标签键。', 'type' => 'string', 'example' => 'k1'], + 'Value' => ['description' => '标签值。', 'type' => 'string', 'example' => 'v1'], + ], + ], + ], + ], + ], + ], + ], ], ], ], + 'PageNumber' => ['description' => '页码。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'PageSize' => ['description' => '分页时每页显示的数据行数。', 'type' => 'integer', 'format' => 'int32', 'example' => '5'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '7B8A4E7D-6CFF-471D-84DF-195A7A241ECB'], + 'TotalCount' => ['description' => '数据总条数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'MissingParameter.Name', - 'errorMessage' => 'You must specify Name.', - ], - [ - 'errorCode' => 'InvalidParameter.Name', - 'errorMessage' => 'The Name is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Name.Length', - 'errorMessage' => 'The Name exceeds the length limit.', - ], - [ - 'errorCode' => 'InvalidParameter.Name.AlreadyUsed', - 'errorMessage' => 'The Name already exists. Please change to another name.', - ], - [ - 'errorCode' => 'MissingParameter.EmailAddress', - 'errorMessage' => 'You must specify EmailAddress.', - ], - [ - 'errorCode' => 'InvalidParameter.EmailAddress', - 'errorMessage' => 'The EmailAddress is invalid.', - ], - [ - 'errorCode' => 'MissingParameter.PhoneNumber', - 'errorMessage' => 'You must specify PhoneNumber.', - ], - [ - 'errorCode' => 'InvalidParameter.PhoneNumber', - 'errorMessage' => 'The PhoneNumber is invalid.', - ], - [ - 'errorCode' => 'MissingParameter.Title', - 'errorMessage' => 'You must specify Title.', - ], - [ - 'errorCode' => 'InvalidParameter.Title', - 'errorMessage' => 'The Title is invalid.', - ], - [ - 'errorCode' => 'MissingParameter.MessageTypes', - 'errorMessage' => 'You must specify MessageTypes.', - ], - [ - 'errorCode' => 'InvalidParameter.MessageTypes', - 'errorMessage' => 'The MessageTypes is invalid.', - ], - [ - 'errorCode' => 'LimitExceeded.Contacts', - 'errorMessage' => 'The maximum number of contacts in a resource directory exceeds the limit.', - ], - [ - 'errorCode' => 'InvalidParameter.MobileCountryCode', - 'errorMessage' => 'The current site does not support the country code.', - ], - [ - 'errorCode' => 'InvalidParameter.EmailAddress.Length', - 'errorMessage' => 'The EmailAddress exceeds the length limit.', - ], + ['errorCode' => 'InvalidParameter.ParentFolderId', 'errorMessage' => 'The ParentFolderId is invalid.', 'description' => ''], ], - 429 => [ - [ - 'errorCode' => 'ConcurrentCallNotSupported', - 'errorMessage' => 'The operation conflicts with other operations. Please try again later.', - ], + 404 => [ + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => ''], + ['errorCode' => 'EntityNotExists.Folder', 'errorMessage' => 'The resource directory folder does not exist.', 'description' => ''], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2DFCE4C9-04A9-4C83-BB14-FE791275EC53\\",\\n \\"Contact\\": {\\n \\"ContactId\\": \\"c-qL4HqKONzOM7****\\",\\n \\"CreateDate\\": \\"2023-03-27 17:19:21\\"\\n }\\n}","type":"json"}]', - 'title' => '添加联系人', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Folders\\": {\\n \\"Folder\\": [\\n {\\n \\"CreateTime\\": \\"2015-01-23T12:33:18Z\\",\\n \\"FolderId\\": \\"rd-evic31****\\",\\n \\"FolderName\\": \\"project-1\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"Key\\": \\"k1\\",\\n \\"Value\\": \\"v1\\"\\n }\\n ]\\n }\\n }\\n ]\\n },\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 5,\\n \\"RequestId\\": \\"7B8A4E7D-6CFF-471D-84DF-195A7A241ECB\\",\\n \\"TotalCount\\": 2\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<ListFoldersForParentResponse>\\r\\n <RequestId>7B8A4E7D-6CFF-471D-84DF-195A7A241ECB</RequestId>\\r\\n <PageNumber>1</PageNumber>\\r\\n <PageSize>5</PageSize>\\r\\n <TotalCount>2</TotalCount>\\r\\n <Folders>\\r\\n <Folder>\\r\\n <FolderId>rd-evic31****</FolderId>\\r\\n <FolderName>project-1</FolderName>\\r\\n <CreateTime>2015-01-23T12:33:18Z</CreateTime>\\r\\n </Folder>\\r\\n <Folder>\\r\\n <FolderId>fd-evic31****</FolderId>\\r\\n <FolderName>project-2</FolderName>\\r\\n <CreateTime>2015-01-23T12:33:18Z</CreateTime>\\r\\n </Folder>\\r\\n </Folders>\\r\\n</ListFoldersForParentResponse>","errorExample":""}]', + 'title' => '查询指定资源夹的子资源夹列表', + 'description' => '您只能查看指定资源夹下一级的子资源夹列表,无法查看更深层级的资源夹列表。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], ], - 'SendEmailVerificationForMessageContact' => [ - 'summary' => '向联系人的邮箱发送验证信息。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'ListHandshakesForAccount' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -6448,101 +4154,83 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'none', - ], + 'systemTags' => ['operationType' => 'list'], 'parameters' => [ [ - 'name' => 'ContactId', + 'name' => 'PageNumber', 'in' => 'query', - 'schema' => [ - 'description' => '联系人ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'c-5gsZAGt***PGduDF', - ], + 'schema' => ['description' => '页码。'."\n" + ."\n" + .'起始值:1。默认值:1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ - 'name' => 'EmailAddress', + 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'description' => '联系人的邮箱地址。'."\n" - ."\n" - .'该邮箱地址为您在[AddMessageContact](~~AddMessageContact~~)中设置的邮箱地址。', - 'type' => 'string', - 'required' => false, - 'example' => 'someone***@example.com', - ], + 'schema' => ['description' => '分页时每页显示的数据条数。'."\n" + ."\n" + .'取值范围:1~100。默认值:10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '7B8A4E7D-6CFF-471D-84DF-195A7A241ECB', + 'TotalCount' => ['description' => '邀请记录总条数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE'], + 'PageSize' => ['description' => '分页时每页显示的数据条数。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'PageNumber' => ['description' => '页码。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'Handshakes' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Handshake' => [ + 'description' => '邀请记录。', + 'type' => 'array', + 'items' => [ + 'description' => '邀请记录', + 'type' => 'object', + 'properties' => [ + 'Status' => ['description' => '邀请状态。'."\n" + ."\n" + .'- Pending:等待确认。'."\n" + .'- Accepted:已接受。'."\n" + .'- Cancelled:已取消。'."\n" + .'- Declined:已拒绝。'."\n" + .'- Expired:超时。', 'type' => 'string', 'example' => 'Pending'], + 'ExpireTime' => ['description' => '邀请的过期时间(UTC时间)。', 'type' => 'string', 'example' => '2018-08-24T09:55:41Z'], + 'ResourceDirectoryId' => ['description' => '资源目录ID。', 'type' => 'string', 'example' => 'rd-abcdef****'], + 'CreateTime' => ['description' => '邀请的创建时间(UTC时间)。', 'type' => 'string', 'example' => '2018-08-10T09:55:41Z'], + 'Note' => ['description' => '备注。', 'type' => 'string', 'example' => '欢迎您加入'], + 'TargetEntity' => ['description' => '被邀请的阿里云账号ID或登录邮箱。', 'type' => 'string', 'example' => 'someone@example.com'], + 'MasterAccountId' => ['description' => '资源目录管理账号ID。', 'type' => 'string', 'example' => '172841235500****'], + 'MasterAccountName' => ['description' => '资源目录管理账号名称。', 'type' => 'string', 'example' => 'CompanyA'], + 'ModifyTime' => ['description' => '邀请的修改时间(UTC时间)。', 'type' => 'string', 'example' => '2018-08-10T09:55:41Z'], + 'TargetType' => ['description' => '被邀请的阿里云账号类型。'."\n" + ."\n" + .'- Account:账号ID。'."\n" + .'- Email:账号登录邮箱。', 'type' => 'string', 'example' => 'Email'], + 'HandshakeId' => ['description' => '邀请ID。', 'type' => 'string', 'example' => 'h-4N57QZzCTtES****'], + ], + ], + ], + ], ], ], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'MissingParameter.ContactId', - 'errorMessage' => 'You must specify ContactId.', - ], - [ - 'errorCode' => 'InvalidParameter.ContactId', - 'errorMessage' => 'The ContactId is invalid.', - ], - [ - 'errorCode' => 'MissingParameter.EmailAddress', - 'errorMessage' => 'You must specify EmailAddress.', - ], - [ - 'errorCode' => 'InvalidParameter.EmailAddress', - 'errorMessage' => 'The EmailAddress is invalid.', - ], - ], - 404 => [ - [ - 'errorCode' => 'EntityNotExists.Contact', - 'errorMessage' => 'This Contact does not exist.', - ], - [ - 'errorCode' => 'EntityNotExists.Contact.Verification', - 'errorMessage' => 'This contact verification does not exist.', - ], - ], - 409 => [ - [ - 'errorCode' => 'SendValidateCodeExceedsLimitForAccount', - 'errorMessage' => 'For the same account, the number of verification codes sent exceeds the limit.', - ], - ], - ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7B8A4E7D-6CFF-471D-84DF-195A7A241ECB\\"\\n}","type":"json"}]', - 'title' => '向联系人邮箱发送验证信息', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"TotalCount\\": 2,\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"Handshakes\\": {\\n \\"Handshake\\": [\\n {\\n \\"Status\\": \\"Pending\\",\\n \\"ExpireTime\\": \\"2018-08-24T09:55:41Z\\",\\n \\"ResourceDirectoryId\\": \\"rd-abcdef****\\",\\n \\"CreateTime\\": \\"2018-08-10T09:55:41Z\\",\\n \\"Note\\": \\"欢迎您加入\\",\\n \\"TargetEntity\\": \\"someone@example.com\\",\\n \\"MasterAccountId\\": \\"172841235500****\\",\\n \\"MasterAccountName\\": \\"CompanyA\\",\\n \\"ModifyTime\\": \\"2018-08-10T09:55:41Z\\",\\n \\"TargetType\\": \\"Email\\",\\n \\"HandshakeId\\": \\"h-4N57QZzCTtES****\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ListHandshakesForAccountResponse>\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>2</TotalCount>\\n <Handshakes>\\n <Handshake>\\n <HandshakeId>h-4N57QZzCTtES****</HandshakeId>\\n <ResourceDirectoryId>rd-abcdef****</ResourceDirectoryId>\\n <MasterAccountId>172841235500****</MasterAccountId>\\n <MasterAccountName>CompanyA</MasterAccountName>\\n <TargetEntity>someone@example.com</TargetEntity>\\n <TargetType>Email</TargetType>\\n <Note>欢迎您加入</Note>\\n <Status>Pending</Status>\\n <CreateTime>2018-08-10T09:55:41Z</CreateTime>\\n <ModifyTime>2018-08-10T09:55:41Z</ModifyTime>\\n <ExpireTime>2018-08-24T09:55:41Z</ExpireTime>\\n </Handshake>\\n <Handshake>\\n <HandshakeId>h-BeJZW63fHT4l****</HandshakeId>\\n <ResourceDirectoryId>rd-abcdef****</ResourceDirectoryId>\\n <MasterAccountId>172841235500****</MasterAccountId>\\n <MasterAccountName>CompanyA</MasterAccountName>\\n <TargetEntity>172841235500****</TargetEntity>\\n <TargetType>Account</TargetType>\\n <Note>欢迎您加入</Note>\\n <Status>Pending</Status>\\n <CreateTime>2018-08-10T09:55:41Z</CreateTime>\\n <ModifyTime>2018-08-10T09:55:41Z</ModifyTime>\\n <ExpireTime>2018-08-24T09:55:41Z</ExpireTime>\\n </Handshake>\\n </Handshakes>\\n</ListHandshakesForAccountResponse>","errorExample":""}]', + 'title' => '查询当前账号的邀请记录', + 'summary' => '调用ListHandshakesForAccount查询当前账号的邀请记录。', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], ], - 'SendPhoneVerificationForMessageContact' => [ - 'summary' => '向联系人的手机号码发送验证信息。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'ListHandshakesForResourceDirectory' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -6550,107 +4238,89 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'none', - ], + 'systemTags' => ['operationType' => 'list'], 'parameters' => [ [ - 'name' => 'ContactId', + 'name' => 'PageNumber', 'in' => 'query', - 'schema' => [ - 'description' => '联系人ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'c-qL4HqKONzOM7****', - ], + 'schema' => ['description' => '页码。'."\n" + ."\n" + .'起始值:1。默认值:1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ - 'name' => 'PhoneNumber', + 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'description' => '联系人的手机号码。'."\n" - ."\n" - .'格式:`<国家码>-<手机号码>`'."\n" - ."\n" - .'该手机号码为您在[AddMessageContact](~~AddMessageContact~~)中设置的手机号码。', - 'type' => 'string', - 'required' => false, - 'example' => '86-139****1234', - ], + 'schema' => ['description' => '分页时每页显示的数据行数。'."\n" + ."\n" + .'取值范围:1~100。默认值:10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'CD76D376-2517-4924-92C5-DBC52262F93A', + 'TotalCount' => ['description' => '数据总条数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE'], + 'PageSize' => ['description' => '分页时每页显示的数据行数。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'PageNumber' => ['description' => '页码。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'Handshakes' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Handshake' => [ + 'description' => '邀请信息。', + 'type' => 'array', + 'items' => [ + 'description' => '邀请信息。', + 'type' => 'object', + 'properties' => [ + 'Status' => ['description' => '邀请状态。'."\n" + ."\n" + .'- Pending:等待确认。'."\n" + .'- Accepted:已接受。'."\n" + .'- Cancelled:已取消。'."\n" + .'- Declined:已拒绝。'."\n" + .'- Expired:超时。', 'type' => 'string', 'example' => 'Pending'], + 'ExpireTime' => ['description' => '邀请的过期时间(UTC时间)。', 'type' => 'string', 'example' => '2018-08-24T09:55:41Z'], + 'ResourceDirectoryId' => ['description' => '资源目录ID。', 'type' => 'string', 'example' => 'rd-abcdef****'], + 'CreateTime' => ['description' => '邀请的创建时间(UTC时间)。', 'type' => 'string', 'example' => '2018-08-10T09:55:41Z'], + 'Note' => ['description' => '备注。', 'type' => 'string', 'example' => '欢迎您加入'], + 'TargetEntity' => ['description' => '被邀请账号ID或登录邮箱。', 'type' => 'string', 'example' => 'someone@example.com'], + 'MasterAccountId' => ['description' => '资源目录管理账号ID。', 'type' => 'string', 'example' => '172841235500****'], + 'MasterAccountName' => ['description' => '资源目录管理账号名称。', 'type' => 'string', 'example' => 'Alice'], + 'ModifyTime' => ['description' => '邀请的修改时间(UTC时间)。', 'type' => 'string', 'example' => '2018-08-10T09:55:41Z'], + 'TargetType' => ['description' => '被邀请账号类型。'."\n" + ."\n" + .'- Account:账号ID。'."\n" + .'- Email:账号登录邮箱。', 'type' => 'string', 'example' => 'Email'], + 'HandshakeId' => ['description' => '邀请ID。', 'type' => 'string', 'example' => 'h-ycm4rp****'], + ], + ], + ], + ], ], ], ], ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'MissingParameter.ContactId', - 'errorMessage' => 'You must specify ContactId.', - ], - [ - 'errorCode' => 'InvalidParameter.ContactId', - 'errorMessage' => 'The ContactId is invalid.', - ], - [ - 'errorCode' => 'MissingParameter.PhoneNumber', - 'errorMessage' => 'You must specify PhoneNumber.', - ], - [ - 'errorCode' => 'InvalidParameter.PhoneNumber', - 'errorMessage' => 'The PhoneNumber is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.MobileCountryCode', - 'errorMessage' => 'The current site does not support the country code.', - ], - ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.Contact', - 'errorMessage' => 'This Contact does not exist.', - ], - [ - 'errorCode' => 'EntityNotExists.Contact.Verification', - 'errorMessage' => 'This contact verification does not exist.', - ], - ], - 409 => [ - [ - 'errorCode' => 'SendValidateCodeExceedsLimitForAccount', - 'errorMessage' => 'For the same account, the number of verification codes sent exceeds the limit.', - ], + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => ''], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CD76D376-2517-4924-92C5-DBC52262F93A\\"\\n}","type":"json"}]', - 'title' => '向联系人手机发送验证信息', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"TotalCount\\": 2,\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"Handshakes\\": {\\n \\"Handshake\\": [\\n {\\n \\"Status\\": \\"Pending\\",\\n \\"ExpireTime\\": \\"2018-08-24T09:55:41Z\\",\\n \\"ResourceDirectoryId\\": \\"rd-abcdef****\\",\\n \\"CreateTime\\": \\"2018-08-10T09:55:41Z\\",\\n \\"Note\\": \\"欢迎您加入\\",\\n \\"TargetEntity\\": \\"someone@example.com\\",\\n \\"MasterAccountId\\": \\"172841235500****\\",\\n \\"MasterAccountName\\": \\"Alice\\",\\n \\"ModifyTime\\": \\"2018-08-10T09:55:41Z\\",\\n \\"TargetType\\": \\"Email\\",\\n \\"HandshakeId\\": \\"h-ycm4rp****\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ListHandshakesForResourceDirectoryResponse>\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>2</TotalCount>\\n <Handshakes>\\n <Handshake>\\n <HandshakeId>h-ycm4rp****</HandshakeId>\\n <ResourceDirectoryId>rd-abcdef****</ResourceDirectoryId>\\n <MasterAccountId>172841235500****</MasterAccountId>\\n <MasterAccountName>Alice</MasterAccountName>\\n <InviteEntity>someone@example.com</InviteEntity>\\n <InviteType>Email</InviteType>\\n <Note>欢迎您加入</Note>\\n <Status>Pending</Status>\\n <CreateTime>2018-08-10T09:55:41Z</CreateTime>\\n <ModifyTime>2018-08-10T09:55:41Z</ModifyTime>\\n <ExpireTime>2018-08-24T09:55:41Z</ExpireTime>\\n </Handshake>\\n <Handshake>\\n <HandshakeId>h-ycm4rp****</HandshakeId>\\n <ResourceDirectoryId>rd-abcdef****</ResourceDirectoryId>\\n <MasterAccountId>172841235500****</MasterAccountId>\\n <MasterAccountName>Alice</MasterAccountName>\\n <TargetEntity>172841235500****</TargetEntity>\\n <TargetType>Account</TargetType>\\n <Note>欢迎您加入</Note>\\n <Status>Pending</Status>\\n <CreateTime>2018-08-10T09:55:41Z</CreateTime>\\n <ModifyTime>2018-08-10T09:55:41Z</ModifyTime>\\n <ExpireTime>2018-08-24T09:55:41Z</ExpireTime>\\n </Handshake>\\n </Handshakes>\\n</ListHandshakesForResourceDirectoryResponse>","errorExample":""}]', + 'title' => '查看资源目录下的所有邀请列表', + 'summary' => '调用ListHandshakesForResourceDirectory查看资源目录下的所有邀请列表。', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], ], 'ListMessageContactVerifications' => [ 'summary' => '查询联系人的手机或邮箱的待验证记录。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -6658,41 +4328,22 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'list', - ], + 'systemTags' => ['operationType' => 'list'], 'parameters' => [ [ 'name' => 'ContactId', 'in' => 'query', - 'schema' => [ - 'description' => '联系人ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'c-qL4HqKONzOM7****', - ], + 'schema' => ['description' => '联系人ID。', 'type' => 'string', 'required' => false, 'example' => 'c-qL4HqKONzOM7****'], ], [ 'name' => 'PageNumber', 'in' => 'query', - 'schema' => [ - 'description' => '页码。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => '页码。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'description' => '分页时每页显示的数据条数。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '分页时每页显示的数据条数。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], ], 'responses' => [ @@ -6702,30 +4353,10 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'CD76D376-2517-4924-92C5-DBC52262F93A', - ], - 'TotalCount' => [ - 'description' => '数据总条数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '48', - ], - 'PageSize' => [ - 'description' => '分页时每页显示的数据行数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'PageNumber' => [ - 'description' => '页码。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => 'CD76D376-2517-4924-92C5-DBC52262F93A'], + 'TotalCount' => ['description' => '数据总条数。', 'type' => 'integer', 'format' => 'int32', 'example' => '48'], + 'PageSize' => ['description' => '分页时每页显示的数据行数。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'PageNumber' => ['description' => '页码。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'ContactVerifications' => [ 'description' => '联系人待验证记录。', 'type' => 'array', @@ -6733,19 +4364,11 @@ 'description' => '联系人待验证记录。', 'type' => 'object', 'properties' => [ - 'ContactId' => [ - 'description' => '联系人ID。', - 'type' => 'string', - 'example' => 'c-qL4HqKONzOM7****', - ], - 'Target' => [ - 'description' => '验证目标。取值:'."\n" - ."\n" - .'- 手机号码。'."\n" - .'- 邮箱。', - 'type' => 'string', - 'example' => 'someone***@example.com', - ], + 'ContactId' => ['description' => '联系人ID。', 'type' => 'string', 'example' => 'c-qL4HqKONzOM7****'], + 'Target' => ['description' => '验证目标。取值:'."\n" + ."\n" + .'- 手机号码。'."\n" + .'- 邮箱。', 'type' => 'string', 'example' => 'someone***@example.com'], ], ], ], @@ -6755,37 +4378,22 @@ ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.ContactId', - 'errorMessage' => 'The ContactId is invalid.', - ], - [ - 'errorCode' => 'MissingParameter.ContactId', - 'errorMessage' => 'You must specify ContactId.', - ], + ['errorCode' => 'InvalidParameter.ContactId', 'errorMessage' => 'The ContactId is invalid.', 'description' => ''], + ['errorCode' => 'MissingParameter.ContactId', 'errorMessage' => 'You must specify ContactId.', 'description' => ''], ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.Contact', - 'errorMessage' => 'This Contact does not exist.', - ], + ['errorCode' => 'EntityNotExists.Contact', 'errorMessage' => 'This Contact does not exist.', 'description' => ''], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], + 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CD76D376-2517-4924-92C5-DBC52262F93A\\",\\n \\"TotalCount\\": 48,\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"ContactVerifications\\": [\\n {\\n \\"ContactId\\": \\"c-qL4HqKONzOM7****\\",\\n \\"Target\\": \\"someone***@example.com\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => '查询联系人待验证记录', + 'changeSet' => [], ], - 'AssociateMembers' => [ - 'summary' => '为资源目录、资源夹或成员绑定联系人。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'ListMessageContacts' => [ + 'summary' => '查询联系人列表。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -6793,41 +4401,31 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - ], + 'systemTags' => ['operationType' => 'list'], 'parameters' => [ [ 'name' => 'ContactId', 'in' => 'query', - 'schema' => [ - 'description' => '联系人ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'c-qL4HqKONzOM7****', - ], + 'schema' => ['description' => '联系人ID。', 'type' => 'string', 'required' => false, 'example' => 'c-qL4HqKONzOM7****'], ], [ - 'name' => 'Members', + 'name' => 'Member', 'in' => 'query', - 'style' => 'flat', - 'schema' => [ - 'description' => '绑定目标。', - 'type' => 'array', - 'items' => [ - 'description' => '绑定目标。取值:'."\n" - ."\n" - .'- 资源目录ID:为整个资源目录绑定联系人。'."\n" - .'- 资源夹ID:为指定资源夹绑定联系人。'."\n" - .'- 成员ID:为指定成员绑定联系人。'."\n" - ."\n" - .'N的取值范围:1~5,即每次最多添加5个绑定目标。', - 'type' => 'string', - 'required' => false, - 'example' => 'fd-ZDNPiT****', - ], - 'required' => false, - ], + 'schema' => ['description' => '绑定目标ID。取值:'."\n" + ."\n" + .'- 资源目录ID。'."\n" + .'- 资源夹ID。'."\n" + .'- 成员ID。', 'type' => 'string', 'required' => false, 'example' => 'fd-ZDNPiT****'], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => ['description' => '页码。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => ['description' => '分页时每页显示的数据条数。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], ], 'responses' => [ @@ -6837,38 +4435,39 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '95060F1D-6990-4645-8920-A81D1BBFE992', - ], - 'Members' => [ - 'description' => '绑定目标。', + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => '95060F1D-6990-4645-8920-A81D1BBFE992'], + 'TotalCount' => ['description' => '数据总条数。', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], + 'PageSize' => ['description' => '分页时每页显示的数据条数。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'PageNumber' => ['description' => '页码。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'Contacts' => [ + 'description' => '消息联系人列表。', 'type' => 'array', 'items' => [ - 'description' => '绑定目标。', + 'description' => '消息联系人列表。', 'type' => 'object', 'properties' => [ - 'ContactId' => [ - 'description' => '联系人ID。', - 'type' => 'string', - 'example' => 'c-qL4HqKONzOM7****', - ], - 'MemberId' => [ - 'description' => '绑定目标ID。取值:'."\n" - ."\n" - .'- 资源目录ID。'."\n" - .'- 资源夹ID。'."\n" - .'- 成员ID。', - 'type' => 'string', - 'example' => 'fd-ZDNPiT****', + 'ContactId' => ['description' => '联系人ID。', 'type' => 'string', 'example' => 'c-qL4HqKONzOM7****'], + 'Name' => ['description' => '联系人的名称。', 'type' => 'string', 'example' => 'tom'], + 'EmailAddress' => ['description' => '联系人的邮箱地址。', 'type' => 'string', 'example' => 'someone***@example.com'], + 'PhoneNumber' => ['description' => '联系人的手机号码。', 'type' => 'string', 'example' => '86-139****1234'], + 'Title' => ['description' => '联系人的职位。', 'type' => 'string', 'example' => 'TechnicalDirector'], + 'MessageTypes' => [ + 'description' => '联系人接收的消息分类。', + 'type' => 'array', + 'items' => ['description' => '联系人接收的消息分类。', 'type' => 'string', 'example' => 'AccountExpenses'], ], - 'ModifyDate' => [ - 'description' => '绑定时间。', - 'type' => 'string', - 'example' => '2023-03-27 17:19:21', + 'Members' => [ + 'description' => '绑定目标。', + 'type' => 'array', + 'items' => ['description' => '绑定目标。', 'type' => 'string', 'example' => 'fd-ZDNPiT****'], ], + 'Status' => ['description' => '联系人状态。取值:'."\n" + ."\n" + .'- Verifying:待验证。'."\n" + .'- Active:生效。'."\n" + .'- Deleting:删除中。', 'type' => 'string', 'example' => 'Active'], + 'CreateDate' => ['description' => '添加联系人的时间。', 'type' => 'string', 'example' => '2023-03-27 17:19:21'], + 'AssociatedDate' => ['description' => '绑定联系人的时间。', 'type' => 'string', 'example' => '2023-03-27 17:19:21'], ], ], ], @@ -6878,146 +4477,185 @@ ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.ContactId', - 'errorMessage' => 'The ContactId is invalid.', - ], - [ - 'errorCode' => 'MissingParameter.ContactId', - 'errorMessage' => 'You must specify ContactId.', - ], - [ - 'errorCode' => 'InvalidParameter.Members', - 'errorMessage' => 'The Members is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Members.Duplicate', - 'errorMessage' => 'The Members contains duplicate values.', - ], - [ - 'errorCode' => 'LimitExceeded.ContactMembers', - 'errorMessage' => 'The maximum number of contact members exceeds the limit.', - ], - [ - 'errorCode' => 'InvalidMember', - 'errorMessage' => 'The member does not exist in the resource directory.', - ], - [ - 'errorCode' => 'ContactStatusMismatchAction', - 'errorMessage' => 'The status of the contact does not allow the specified operation.', - ], + ['errorCode' => 'InvalidParameter.ContactId', 'errorMessage' => 'The ContactId is invalid.', 'description' => ''], + ['errorCode' => 'InvalidParameter.Member', 'errorMessage' => 'The Member is invalid.', 'description' => ''], ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.Contact', - 'errorMessage' => 'This Contact does not exist.', - ], - ], - 429 => [ - [ - 'errorCode' => 'ConcurrentCallNotSupported', - 'errorMessage' => 'The operation conflicts with other operations. Please try again later.', - ], + ['errorCode' => 'EntityNotExists.Contact', 'errorMessage' => 'This Contact does not exist.', 'description' => ''], + ['errorCode' => 'EntityNotExists.Member', 'errorMessage' => 'This Member does not exist.', 'description' => ''], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"95060F1D-6990-4645-8920-A81D1BBFE992\\",\\n \\"Members\\": [\\n {\\n \\"ContactId\\": \\"c-qL4HqKONzOM7****\\",\\n \\"MemberId\\": \\"fd-ZDNPiT****\\",\\n \\"ModifyDate\\": \\"2023-03-27 17:19:21\\"\\n }\\n ]\\n}","type":"json"}]', - 'title' => '绑定联系人', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"95060F1D-6990-4645-8920-A81D1BBFE992\\",\\n \\"TotalCount\\": 20,\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"Contacts\\": [\\n {\\n \\"ContactId\\": \\"c-qL4HqKONzOM7****\\",\\n \\"Name\\": \\"tom\\",\\n \\"EmailAddress\\": \\"someone***@example.com\\",\\n \\"PhoneNumber\\": \\"86-139****1234\\",\\n \\"Title\\": \\"TechnicalDirector\\",\\n \\"MessageTypes\\": [\\n \\"AccountExpenses\\"\\n ],\\n \\"Members\\": [\\n \\"fd-ZDNPiT****\\"\\n ],\\n \\"Status\\": \\"Active\\",\\n \\"CreateDate\\": \\"2023-03-27 17:19:21\\",\\n \\"AssociatedDate\\": \\"2023-03-27 17:19:21\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => '查询联系人列表', + 'changeSet' => [], ], - 'DisassociateMembers' => [ - 'summary' => '为资源目录、资源夹或成员解绑联系人。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'ListTagKeys' => [ + 'summary' => '调用ListTagKeys查询标签键列表。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - ], + 'systemTags' => ['operationType' => 'list'], 'parameters' => [ [ - 'name' => 'ContactId', + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => ['description' => '下一个查询开始的Token。', 'type' => 'string', 'required' => false, 'example' => 'TGlzdFJlc291cm****'], + ], + [ + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => ['description' => '单次请求返回结果的最大条数。'."\n" + ."\n" + .'取值范围:1~100。默认值:10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], + ], + [ + 'name' => 'ResourceType', 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => ['description' => '资源类型。'."\n" + ."\n" + .'取值:Account,表示资源目录的成员。', 'type' => 'string', 'required' => true, 'example' => 'Account'], + ], + [ + 'name' => 'KeyFilter', + 'in' => 'query', + 'schema' => ['description' => '模糊查询的标签键。', 'type' => 'string', 'required' => false, 'example' => 'team'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '联系人ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'c-qL4HqKONzOM7****', + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'NextToken' => ['description' => '根据NextToken判断是否具备下一个查询开始的Token。取值:'."\n" + ."\n" + .'- 如果NextToken为空,即`"NextToken": ""`,表示没有下一个。'."\n" + .'- 如果NextToken有值,则该值就是下一个查询开始的Token。', 'type' => 'string', 'example' => 'TGlzdFJlc291cm****'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'DC09A6AA-2713-4E10-A2E9-E6C5C43A8842'], + 'Tags' => [ + 'description' => '标签键信息。', + 'type' => 'array', + 'items' => [ + 'description' => '标签键信息。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '标签键。', 'type' => 'string', 'example' => 'team'], + ], + ], + ], + ], ], ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"NextToken\\": \\"TGlzdFJlc291cm****\\",\\n \\"RequestId\\": \\"DC09A6AA-2713-4E10-A2E9-E6C5C43A8842\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"team\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<ListTagKeysResponse>\\n <NextToken>caeba0bbb2be03f84eb48b699f0a****</NextToken>\\n <RequestId>DC09A6AA-2713-4E10-A2E9-E6C5C43A8842</RequestId>\\n <Tags>\\n <Key>team</Key>\\n </Tags>\\n</ListTagKeysResponse>","errorExample":""}]', + 'title' => '查询标签键列表', + 'changeSet' => [], + ], + 'ListTagResources' => [ + 'summary' => '调用ListTagResources查询资源目录成员绑定的标签列表。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'Members', + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => ['operationType' => 'list'], + 'parameters' => [ + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => ['description' => '下一个查询开始的Token。', 'type' => 'string', 'required' => false, 'example' => 'caeba0bbb2be03f84eb48b699f0a****'], + ], + [ + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => ['description' => '分页时每页显示的数据行数。'."\n" + ."\n" + .'取值范围:1~100。默认值:10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], + ], + [ + 'name' => 'Tag', 'in' => 'query', 'style' => 'flat', 'schema' => [ - 'description' => '解绑目标。', + 'description' => '标签。查询的过滤条件。'."\n" + ."\n" + .'最多可以指定20个标签。', 'type' => 'array', 'items' => [ - 'description' => '解绑目标。取值:'."\n" - ."\n" - .'- 资源目录ID:为整个资源目录解绑联系人。'."\n" - .'- 资源夹ID:为指定资源夹解绑联系人。'."\n" - .'- 成员ID:为指定成员解绑联系人。'."\n" + 'description' => '标签。查询的过滤条件。'."\n" ."\n" - .'N的取值范围:1~5,即每次最多解绑5个目标。', - 'type' => 'string', + .'最多可以指定20个标签。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '标签键。', 'type' => 'string', 'required' => false, 'example' => 'k1'], + 'Value' => ['description' => '标签值。', 'type' => 'string', 'required' => false, 'example' => 'v1'], + ], 'required' => false, - 'example' => 'fd-ZDNPiT****', ], - 'required' => true, + 'required' => false, + 'maxItems' => 20, + ], + ], + [ + 'name' => 'ResourceId', + 'in' => 'query', + 'style' => 'flat', + 'schema' => [ + 'description' => '资源目录成员ID。查询的过滤条件。'."\n" + ."\n" + .'> 查询资源目录成员绑定的标签列表时,必须同时指定`ResourceId`和`ResourceType`,且`ResourceType`取值为`Account`。', + 'type' => 'array', + 'items' => ['description' => '资源目录成员ID。查询的过滤条件。'."\n" + ."\n" + .'> 查询资源目录成员绑定的标签列表时,必须同时指定`ResourceId`和`ResourceType`,且`ResourceType`取值为`Account`。', 'type' => 'string', 'required' => false, 'example' => '1098***'], + 'required' => false, + 'maxItems' => 50, ], ], + [ + 'name' => 'ResourceType', + 'in' => 'query', + 'schema' => ['description' => '资源类型。查询的过滤条件。取值:'."\n" + ."\n" + .'- Account:查询资源目录成员的标签。', 'type' => 'string', 'required' => true, 'example' => 'Account'], + ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '95060F1D-6990-4645-8920-A81D1BBFE992', - ], - 'Members' => [ - 'description' => '解绑目标。', + 'NextToken' => ['description' => '根据`NextToken`判断是否具备下一个查询开始的`Token`。取值:'."\n" + ."\n" + .'- 如果`NextToken`为空,即`"NextToken": ""`,表示没有下一个。'."\n" + .'- 如果`NextToken`有值,则该值就是下一个查询开始的`Token`。', 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0a****'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '8054B059-6B36-53BF-AA45-B8C9A0ED05AB'], + 'TagResources' => [ + 'description' => '标签列表。', 'type' => 'array', 'items' => [ - 'description' => '解绑目标。', + 'description' => '标签列表。', 'type' => 'object', 'properties' => [ - 'ContactId' => [ - 'description' => '联系人ID。', - 'type' => 'string', - 'example' => 'c-qL4HqKONzOM7****', - ], - 'MemberId' => [ - 'description' => '解绑目标ID。取值:'."\n" - ."\n" - .'- 资源目录ID。'."\n" - .'- 资源夹ID。'."\n" - .'- 成员ID。', - 'type' => 'string', - 'example' => 'fd-ZDNPiT****', - ], - 'ModifyDate' => [ - 'description' => '解绑时间。', - 'type' => 'string', - 'example' => '2023-03-27 17:19:21', - ], + 'TagValue' => ['description' => '标签值。', 'type' => 'string', 'example' => 'k1'], + 'ResourceId' => ['description' => '资源目录成员ID。', 'type' => 'string', 'example' => '1098***'], + 'TagKey' => ['description' => '标签键。', 'type' => 'string', 'example' => 'k1'], + 'ResourceType' => ['description' => '资源类型。取值:'."\n" + ."\n" + .'- Account:资源目录成员。', 'type' => 'string', 'example' => 'Account'], ], ], ], @@ -7025,63 +4663,87 @@ ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter.ContactId', - 'errorMessage' => 'The ContactId is invalid.', - ], - [ - 'errorCode' => 'MissingParameter.ContactId', - 'errorMessage' => 'You must specify ContactId.', - ], - [ - 'errorCode' => 'InvalidParameter.Members', - 'errorMessage' => 'The Members is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Members.Duplicate', - 'errorMessage' => 'The Members contains duplicate values.', - ], - [ - 'errorCode' => 'InvalidParameter.Members.Length', - 'errorMessage' => 'The maximum number of Members exceeds the limit.', - ], - [ - 'errorCode' => 'QuotaExceeded.Members', - 'errorMessage' => 'The maximum number of Members exceeds the limit.', - ], - [ - 'errorCode' => 'InvalidMember', - 'errorMessage' => 'The member does not exist in the resource directory.', - ], - [ - 'errorCode' => 'ContactStatusMismatchAction', - 'errorMessage' => 'The status of the contact does not allow the specified operation.', - ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a****\\",\\n \\"RequestId\\": \\"8054B059-6B36-53BF-AA45-B8C9A0ED05AB\\",\\n \\"TagResources\\": [\\n {\\n \\"TagValue\\": \\"k1\\",\\n \\"ResourceId\\": \\"1098***\\",\\n \\"TagKey\\": \\"k1\\",\\n \\"ResourceType\\": \\"Account\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<ListTagResourcesResponse>\\n <RequestId>8054B059-6B36-53BF-AA45-B8C9A0ED05AB</RequestId>\\n <TagResources>\\n <ResourceId>rg-aekz6bre2uq****</ResourceId>\\n <TagKey>k1</TagKey>\\n <ResourceType>resourcegroup</ResourceType>\\n <TagValue>v1</TagValue>\\n </TagResources>\\n</ListTagResourcesResponse>","errorExample":""}]', + 'title' => '查询标签列表', + 'changeSet' => [], + ], + 'ListTagValues' => [ + 'summary' => '调用ListTagValues查询指定标签键对应的标签值。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ + [ + 'AK' => [], ], - 404 => [ - [ - 'errorCode' => 'EntityNotExists.Contact', - 'errorMessage' => 'This Contact does not exist.', - ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => ['operationType' => 'list'], + 'parameters' => [ + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => ['description' => '下一个查询开始的Token。', 'type' => 'string', 'required' => false, 'example' => 'TGlzdFJlc291cm****'], + ], + [ + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => ['description' => '单次请求返回结果的最大条数。'."\n" + ."\n" + .'取值范围:1~100。默认值:10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], + ], + [ + 'name' => 'ResourceType', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => ['description' => '资源类型。'."\n" + ."\n" + .'取值:Account,表示资源目录的成员。', 'type' => 'string', 'required' => true, 'example' => 'Account'], + ], + [ + 'name' => 'TagKey', + 'in' => 'query', + 'schema' => ['description' => '标签键,用于查询的过滤条件。', 'type' => 'string', 'required' => true, 'example' => 'k1'], + ], + [ + 'name' => 'ValueFilter', + 'in' => 'query', + 'schema' => ['description' => '模糊查询的标签值。', 'type' => 'string', 'required' => false, 'example' => 'v1'], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'NextToken' => ['description' => '根据NextToken判断是否具备下一个查询开始的Token。取值:'."\n" + ."\n" + .'- 如果NextToken为空,即`"NextToken": ""`,表示没有下一个。'."\n" + .'- 如果NextToken有值,则该值就是下一个查询开始的Token。', 'type' => 'string', 'example' => 'TGlzdFJlc291cm****'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'DC09A6AA-2713-4E10-A2E9-E6C5C43A8842'], + 'Tags' => [ + 'description' => '标签值信息。', + 'type' => 'array', + 'items' => [ + 'description' => '标签值信息。', + 'type' => 'object', + 'properties' => [ + 'Value' => ['description' => '标签值。', 'type' => 'string', 'example' => 'v1'], + ], + ], + ], + ], + ], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"95060F1D-6990-4645-8920-A81D1BBFE992\\",\\n \\"Members\\": [\\n {\\n \\"ContactId\\": \\"c-qL4HqKONzOM7****\\",\\n \\"MemberId\\": \\"fd-ZDNPiT****\\",\\n \\"ModifyDate\\": \\"2023-03-27 17:19:21\\"\\n }\\n ]\\n}","type":"json"}]', - 'title' => '解绑联系人', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"NextToken\\": \\"TGlzdFJlc291cm****\\",\\n \\"RequestId\\": \\"DC09A6AA-2713-4E10-A2E9-E6C5C43A8842\\",\\n \\"Tags\\": [\\n {\\n \\"Value\\": \\"v1\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<ListTagValuesResponse>\\n <NextToken>TGlzdFJlc291cm****</NextToken>\\n <RequestId>DC09A6AA-2713-4E10-A2E9-E6C5C43A8842</RequestId>\\n <Tags>\\n <Value>v1</Value>\\n </Tags>\\n</ListTagValuesResponse>","errorExample":""}]', + 'title' => '查询指定标签键对应的标签值', + 'changeSet' => [], ], - 'GetMessageContact' => [ - 'summary' => '查询联系人信息。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'ListTargetAttachmentsForControlPolicy' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -7089,292 +4751,134 @@ ], 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - ], + 'systemTags' => ['operationType' => 'list'], 'parameters' => [ [ - 'name' => 'ContactId', + 'name' => 'PolicyId', 'in' => 'query', - 'schema' => [ - 'description' => '联系人ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'c-qL4HqKONzOM7****', - ], + 'schema' => ['description' => '管控策略ID。', 'type' => 'string', 'required' => true, 'example' => 'cp-jExXAqIYkwHN****'], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => ['description' => '页码。'."\n" + ."\n" + .'起始值:1。默认值:1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '200000', 'minimum' => '1', 'example' => '1', 'default' => '1'], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => ['description' => '分页时每页显示的数据条数。'."\n" + ."\n" + .'取值范围:1~100。默认值:10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'example' => '10', 'default' => '10'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE', - ], - 'Contact' => [ - 'description' => '联系人信息。', + 'TotalCount' => ['description' => '绑定的目标节点数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'B32BD3D6-1089-41F3-8E70-E0079BC7D760'], + 'PageSize' => ['description' => '分页时每页显示的数据条数。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'PageNumber' => ['description' => '页码。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'TargetAttachments' => [ 'type' => 'object', + 'itemNode' => true, 'properties' => [ - 'ContactId' => [ - 'description' => '联系人ID。', - 'type' => 'string', - 'example' => 'c-qL4HqKONzOM7****', - ], - 'MessageTypes' => [ - 'description' => '联系人接收的消息分类。', - 'type' => 'array', - 'items' => [ - 'description' => '联系人接收的消息分类。', - 'type' => 'string', - 'example' => 'AccountExpenses', - ], - ], - 'CreateDate' => [ - 'description' => '联系人的创建时间。', - 'type' => 'string', - 'example' => '2023-03-27 17:19:21', - ], - 'Name' => [ - 'description' => '联系人的名称。', - 'type' => 'string', - 'example' => 'tom', - ], - 'EmailAddress' => [ - 'description' => '联系人的邮箱地址。', - 'type' => 'string', - 'example' => 'someone***@example.com', - ], - 'PhoneNumber' => [ - 'description' => '联系人的手机号码。', - 'type' => 'string', - 'example' => '86-139****1234', - ], - 'Title' => [ - 'description' => '联系人的职位。', - 'type' => 'string', - 'example' => 'TechnicalDirector', - ], - 'Members' => [ - 'description' => '绑定目标。', + 'TargetAttachment' => [ + 'description' => '绑定的目标节点列表。', 'type' => 'array', 'items' => [ - 'description' => '绑定目标。', - 'type' => 'string', - 'example' => 'fd-ZDNPiT****', + 'description' => '绑定的目标节点列表。', + 'type' => 'object', + 'properties' => [ + 'TargetId' => ['description' => '绑定的目标节点ID。', 'type' => 'string', 'example' => 'fd-ZDNPiT****'], + 'TargetName' => ['description' => '绑定的目标节点名称。', 'type' => 'string', 'example' => 'Dev_Department'], + 'AttachDate' => ['description' => '管控策略绑定时间。', 'type' => 'string', 'example' => '2021-03-19T02:56:24Z'], + 'TargetType' => ['description' => '绑定的目标节点类型。取值:'."\n" + ."\n" + .'- Root:Root节点。'."\n" + .'- Folder:资源夹。'."\n" + .'- Account:成员账号。', 'type' => 'string', 'example' => 'Folder'], + ], ], ], - 'Status' => [ - 'description' => '联系人状态。取值:'."\n" - ."\n" - .'- Verifying:待验证。'."\n" - .'- Active:已生效。'."\n" - .'- Deleting:删除中。', - 'type' => 'string', - 'example' => 'Active', - ], ], ], ], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter.ContactId', - 'errorMessage' => 'The ContactId is invalid.', - ], - [ - 'errorCode' => 'MissingParameter.ContactId', - 'errorMessage' => 'You must specify ContactId.', - ], - ], - 404 => [ - [ - 'errorCode' => 'EntityNotExists.Contact', - 'errorMessage' => 'This Contact does not exist.', - ], - ], - ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\",\\n \\"Contact\\": {\\n \\"ContactId\\": \\"c-qL4HqKONzOM7****\\",\\n \\"MessageTypes\\": [\\n \\"AccountExpenses\\"\\n ],\\n \\"CreateDate\\": \\"2023-03-27 17:19:21\\",\\n \\"Name\\": \\"tom\\",\\n \\"EmailAddress\\": \\"someone***@example.com\\",\\n \\"PhoneNumber\\": \\"86-139****1234\\",\\n \\"Title\\": \\"TechnicalDirector\\",\\n \\"Members\\": [\\n \\"fd-ZDNPiT****\\"\\n ],\\n \\"Status\\": \\"Active\\"\\n }\\n}","type":"json"}]', - 'title' => '查询联系人信息', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"TotalCount\\": 1,\\n \\"RequestId\\": \\"B32BD3D6-1089-41F3-8E70-E0079BC7D760\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"TargetAttachments\\": {\\n \\"TargetAttachment\\": [\\n {\\n \\"TargetId\\": \\"fd-ZDNPiT****\\",\\n \\"TargetName\\": \\"Dev_Department\\",\\n \\"AttachDate\\": \\"2021-03-19T02:56:24Z\\",\\n \\"TargetType\\": \\"Folder\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<ListTargetAttachmentsForControlPolicyResponse>\\r\\n\\t<TotalCount>1</TotalCount>\\r\\n\\t<RequestId>B32BD3D6-1089-41F3-8E70-E0079BC7D760</RequestId>\\r\\n\\t<PageSize>10</PageSize>\\r\\n\\t<PageNumber>1</PageNumber>\\r\\n\\t<TargetAttachments>\\r\\n\\t\\t<TargetAttachment>\\r\\n\\t\\t\\t<AttachDate>2021-03-19T02:56:24Z</AttachDate>\\r\\n\\t\\t\\t<TargetType>Folder</TargetType>\\r\\n\\t\\t\\t<TargetName>Dev_Department</TargetName>\\r\\n\\t\\t\\t<TargetId>fd-ZDNPiT****</TargetId>\\r\\n\\t\\t</TargetAttachment>\\r\\n\\t</TargetAttachments>\\r\\n</ListTargetAttachmentsForControlPolicyResponse>\\t\\r\\n\\r\\n\\t\\r\\n","errorExample":""}]', + 'title' => '查询管控策略绑定的目标节点', + 'summary' => '调用ListTargetAttachmentsForControlPolicy查询管控策略绑定的目标节点。', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], ], - 'ListMessageContacts' => [ - 'summary' => '查询联系人列表。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'ListTrustedServiceStatus' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'list', - ], + 'systemTags' => ['operationType' => 'list'], 'parameters' => [ [ - 'name' => 'ContactId', - 'in' => 'query', - 'schema' => [ - 'description' => '联系人ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'c-qL4HqKONzOM7****', - ], - ], - [ - 'name' => 'Member', + 'name' => 'PageNumber', 'in' => 'query', - 'schema' => [ - 'description' => '绑定目标ID。取值:'."\n" - ."\n" - .'- 资源目录ID。'."\n" - .'- 资源夹ID。'."\n" - .'- 成员ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'fd-ZDNPiT****', - ], + 'schema' => ['description' => '页码。'."\n" + ."\n" + .'起始值:1。默认值:1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ - 'name' => 'PageNumber', + 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'description' => '页码。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => '分页时每页显示的数据行数。'."\n" + ."\n" + .'取值范围:1~100。默认值:10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ - 'name' => 'PageSize', + 'name' => 'AdminAccountId', 'in' => 'query', - 'schema' => [ - 'description' => '分页时每页显示的数据条数。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '企业管理账号或委派管理员账号。取值:'."\n" + .'- 企业管理账号(默认值):查询企业管理账号已启用的可信服务列表。'."\n" + .'- 委派管理员账号:查询委派管理员账号已启用的可信服务列表。'."\n" + ."\n" + .'关于可信服务和委派管理员的更多信息,请参见[可信服务概述](~~208133~~)和[管理委派管理员账号](~~208117~~)。', 'type' => 'string', 'required' => false, 'example' => '177242285274****'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '95060F1D-6990-4645-8920-A81D1BBFE992', - ], - 'TotalCount' => [ - 'description' => '数据总条数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '20', - ], - 'PageSize' => [ - 'description' => '分页时每页显示的数据条数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'PageNumber' => [ - 'description' => '页码。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Contacts' => [ - 'description' => '消息联系人列表。', - 'type' => 'array', - 'items' => [ - 'description' => '消息联系人列表。', - 'type' => 'object', - 'properties' => [ - 'ContactId' => [ - 'description' => '联系人ID。', - 'type' => 'string', - 'example' => 'c-qL4HqKONzOM7****', - ], - 'Name' => [ - 'description' => '联系人的名称。', - 'type' => 'string', - 'example' => 'tom', - ], - 'EmailAddress' => [ - 'description' => '联系人的邮箱地址。', - 'type' => 'string', - 'example' => 'someone***@example.com', - ], - 'PhoneNumber' => [ - 'description' => '联系人的手机号码。', - 'type' => 'string', - 'example' => '86-139****1234', - ], - 'Title' => [ - 'description' => '联系人的职位。', - 'type' => 'string', - 'example' => 'TechnicalDirector', - ], - 'MessageTypes' => [ - 'description' => '联系人接收的消息分类。', - 'type' => 'array', - 'items' => [ - 'description' => '联系人接收的消息分类。', - 'type' => 'string', - 'example' => 'AccountExpenses', - ], - ], - 'Members' => [ - 'description' => '绑定目标。', - 'type' => 'array', - 'items' => [ - 'description' => '绑定目标。', - 'type' => 'string', - 'example' => 'fd-ZDNPiT****', + 'TotalCount' => ['description' => '数据总条数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'CD76D376-2517-4924-92C5-DBC52262F93A'], + 'PageSize' => ['description' => '分页时每页显示的数据行数。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'PageNumber' => ['description' => '页码。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'EnabledServicePrincipals' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'EnabledServicePrincipal' => [ + 'description' => '已启用的可信服务列表。', + 'type' => 'array', + 'items' => [ + 'description' => '已启用的可信服务列表。', + 'type' => 'object', + 'properties' => [ + 'ServicePrincipal' => ['description' => '可信服务标识。', 'type' => 'string', 'example' => 'config.aliyuncs.com'], + 'EnableTime' => ['description' => '启用可信服务的时间。', 'type' => 'string', 'example' => '2019-02-18T15:32:10.473Z'], ], ], - 'Status' => [ - 'description' => '联系人状态。取值:'."\n" - ."\n" - .'- Verifying:待验证。'."\n" - .'- Active:生效。'."\n" - .'- Deleting:删除中。', - 'type' => 'string', - 'example' => 'Active', - ], - 'CreateDate' => [ - 'description' => '添加联系人的时间。', - 'type' => 'string', - 'example' => '2023-03-27 17:19:21', - ], - 'AssociatedDate' => [ - 'description' => '绑定联系人的时间。', - 'type' => 'string', - 'example' => '2023-03-27 17:19:21', - ], ], ], ], @@ -7383,42 +4887,21 @@ ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter.ContactId', - 'errorMessage' => 'The ContactId is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Member', - 'errorMessage' => 'The Member is invalid.', - ], - ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.Contact', - 'errorMessage' => 'This Contact does not exist.', - ], - [ - 'errorCode' => 'EntityNotExists.Member', - 'errorMessage' => 'This Member does not exist.', - ], + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => ''], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"95060F1D-6990-4645-8920-A81D1BBFE992\\",\\n \\"TotalCount\\": 20,\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"Contacts\\": [\\n {\\n \\"ContactId\\": \\"c-qL4HqKONzOM7****\\",\\n \\"Name\\": \\"tom\\",\\n \\"EmailAddress\\": \\"someone***@example.com\\",\\n \\"PhoneNumber\\": \\"86-139****1234\\",\\n \\"Title\\": \\"TechnicalDirector\\",\\n \\"MessageTypes\\": [\\n \\"AccountExpenses\\"\\n ],\\n \\"Members\\": [\\n \\"fd-ZDNPiT****\\"\\n ],\\n \\"Status\\": \\"Active\\",\\n \\"CreateDate\\": \\"2023-03-27 17:19:21\\",\\n \\"AssociatedDate\\": \\"2023-03-27 17:19:21\\"\\n }\\n ]\\n}","type":"json"}]', - 'title' => '查询联系人列表', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"TotalCount\\": 2,\\n \\"RequestId\\": \\"CD76D376-2517-4924-92C5-DBC52262F93A\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"EnabledServicePrincipals\\": {\\n \\"EnabledServicePrincipal\\": [\\n {\\n \\"ServicePrincipal\\": \\"config.aliyuncs.com\\",\\n \\"EnableTime\\": \\"2019-02-18T15:32:10.473Z\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<ListTrustedServiceStatusResponse>\\r\\n <EnabledServicePrincipal>\\r\\n <ServicePrincipal>config.aliyuncs.com</ServicePrincipal>\\r\\n <EnableTime>2019-02-18T15:32:10.473Z</EnableTime>\\r\\n </EnabledServicePrincipal>\\r\\n <EnabledServicePrincipal>\\r\\n <ServicePrincipal>actiontrail.aliyuncs.com</ServicePrincipal>\\r\\n <EnableTime>2019-02-16T15:32:10.473Z</EnableTime>\\r\\n </EnabledServicePrincipal>\\r\\n <RequestId>CD76D376-2517-4924-92C5-DBC52262F93A</RequestId>\\r\\n</ListTrustedServiceStatusResponse>","errorExample":""}]', + 'title' => '查询企业管理账号或委派管理员账号已启用的可信服务列表', + 'summary' => '调用ListTrustedServiceStatus查询企业管理账号或委派管理员账号已启用的可信服务列表。', + 'description' => '该接口仅限企业管理账号或委派管理员账号使用。', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], ], - 'DeleteMessageContact' => [ - 'summary' => '删除联系人。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'MoveAccount' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -7426,96 +4909,57 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'delete', - ], + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ - 'name' => 'ContactId', + 'name' => 'AccountId', 'in' => 'query', - 'schema' => [ - 'description' => '联系人ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'c-qL4HqKONzOM7****', - ], + 'schema' => ['description' => '需要移动的账号ID。', 'type' => 'string', 'required' => true, 'example' => '12323344****'], ], [ - 'name' => 'RetainContactInMembers', + 'name' => 'DestinationFolderId', 'in' => 'query', - 'schema' => [ - 'description' => '是否保留成员中的联系人。取值:'."\n" - .'- true(默认值):保留。保留成员中的此联系人,联系人仍可以接收成员的消息。'."\n" - .'- false:不保留。将此联系人从成员中移除,此联系人不再接收成员的消息。当选择False时此接口结果异步返回,您可以通过[GetMessageContactDeletionStatus](~~GetMessageContactDeletionStatus~~)获取删除结果。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '目标资源夹ID。', 'type' => 'string', 'required' => true, 'example' => 'fd-bVaRIG****'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE', - ], - 'Status' => [ - 'description' => '联系人删除状态。取值:'."\n" - .'- Deleting:删除中。'."\n" - .'- Deleted:已删除。', - 'type' => 'string', - 'example' => 'Deleting', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.ContactId', - 'errorMessage' => 'The ContactId is invalid.', - ], - [ - 'errorCode' => 'MissingParameter.ContactId', - 'errorMessage' => 'You must specify ContactId.', - ], + ['errorCode' => 'MissingParameter.AccountId', 'errorMessage' => 'You must specify AccountId.', 'description' => ''], + ['errorCode' => 'InvalidParameter.AccountId', 'errorMessage' => 'The AccountId is invalid.', 'description' => ''], + ['errorCode' => 'MissingParameter.DestinationFolderId', 'errorMessage' => 'You must specify DestinationFolderId.', 'description' => ''], + ['errorCode' => 'InvalidParameter.DestinationFolderId', 'errorMessage' => 'The DestinationFolderId is invalid.', 'description' => ''], ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.Contact', - 'errorMessage' => 'This Contact does not exist.', - ], + ['errorCode' => 'EntityNotExists.Account', 'errorMessage' => 'This resource directory account does not exist.', 'description' => ''], + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => ''], + ['errorCode' => 'EntityNotExists.Folder', 'errorMessage' => 'The resource directory folder does not exist.', 'description' => ''], ], - 429 => [ - [ - 'errorCode' => 'ConcurrentCallNotSupported', - 'errorMessage' => 'The operation conflicts with other operations. Please try again later.', - ], + 409 => [ + ['errorCode' => 'AccountTypeOrStatusMismatch', 'errorMessage' => 'You cannot perform the action on the member account.', 'description' => ''], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\",\\n \\"Status\\": \\"Deleting\\"\\n}","type":"json"}]', - 'title' => '删除联系人', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<MoveAccountResponse>\\r\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\r\\n</MoveAccountResponse>","errorExample":""}]', + 'title' => '移动成员', + 'summary' => '调用MoveAccount将成员移动到另一个资源夹。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], ], - 'GetMessageContactDeletionStatus' => [ - 'summary' => '查询联系人删除状态。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'PrecheckForConsolidatedBillingAccount' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -7523,113 +4967,58 @@ ], 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - ], + 'systemTags' => ['operationType' => 'get'], 'parameters' => [ [ - 'name' => 'ContactId', + 'name' => 'BillingAccountId', 'in' => 'query', - 'schema' => [ - 'description' => '联系人ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'c-qL4HqKONzOM7****', - ], + 'schema' => ['description' => '管理账号ID或成员ID,该账号将作为财务托管主账号。', 'type' => 'string', 'required' => true, 'example' => '111***089'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => '返回结果。', + 'description' => '返回参数。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '95060F1D-6990-4645-8920-A81D1BBFE992', - ], - 'ContactDeletionStatus' => [ - 'description' => '联系人删除信息。', - 'type' => 'object', - 'properties' => [ - 'Status' => [ - 'description' => '联系人删除状态。取值:'."\n" - .'- Deleting:删除中。'."\n" - .'- Failed:删除失败。', - 'type' => 'string', - 'example' => 'Deleting', - ], - 'ContactId' => [ - 'description' => '联系人ID。', - 'type' => 'string', - 'example' => 'c-qL4HqKONzOM7****', - ], - 'FailReasonList' => [ - 'description' => '删除失败的联系人列表。', - 'type' => 'array', - 'items' => [ - 'description' => '删除失败的联系人列表。', - 'type' => 'object', - 'properties' => [ - 'AccountId' => [ - 'description' => '成员ID。', - 'type' => 'string', - 'example' => '199796839435****', - ], - 'MessageTypes' => [ - 'description' => '联系人接收的消息分类。', - 'type' => 'array', - 'items' => [ - 'description' => '联系人接收的消息分类。', - 'type' => 'string', - 'example' => 'AccountExpenses', - ], - ], - ], - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '9E6B6CA8-9E7A-521F-A743-AA582714727E'], + 'Reasons' => [ + 'description' => '检查失败原因。', + 'type' => 'array', + 'items' => [ + 'description' => '检查失败原因。', + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => '检查失败错误码。', 'type' => 'string', 'example' => 'PaymentAccountEnterpriseInvoiceError'], + 'Message' => ['description' => '检查失败错误描述。', 'type' => 'string', 'example' => 'No enterprise invoice header information is set for the payment account.'], ], ], ], + 'Result' => ['description' => '检查结果。取值:'."\n" + ."\n" + .'- true:检查成功。'."\n" + .'- false:检查失败。', 'type' => 'boolean', 'example' => 'false'], ], ], ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter.ContactId', - 'errorMessage' => 'The ContactId is invalid.', - ], - [ - 'errorCode' => 'MissingParameter.ContactId', - 'errorMessage' => 'You must specify ContactId.', - ], + 403 => [ + ['errorCode' => 'MemberAccountOperationNotAllowed', 'errorMessage' => 'The member account is not allowed to perform the operation.', 'description' => ''], ], - 404 => [ - [ - 'errorCode' => 'EntityNotExists.Contact', - 'errorMessage' => 'This Contact does not exist.', - ], + [ + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => ''], + ['errorCode' => 'EntityNotExists.Account', 'errorMessage' => 'This resource directory account does not exist.', 'description' => ''], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"95060F1D-6990-4645-8920-A81D1BBFE992\\",\\n \\"ContactDeletionStatus\\": {\\n \\"Status\\": \\"Deleting\\",\\n \\"ContactId\\": \\"c-qL4HqKONzOM7****\\",\\n \\"FailReasonList\\": [\\n {\\n \\"AccountId\\": \\"199796839435****\\",\\n \\"MessageTypes\\": [\\n \\"AccountExpenses\\"\\n ]\\n }\\n ]\\n }\\n}","type":"json"}]', - 'title' => '查询联系人删除状态', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9E6B6CA8-9E7A-521F-A743-AA582714727E\\",\\n \\"Reasons\\": [\\n {\\n \\"Code\\": \\"PaymentAccountEnterpriseInvoiceError\\",\\n \\"Message\\": \\"No enterprise invoice header information is set for the payment account.\\"\\n }\\n ],\\n \\"Result\\": false\\n}","type":"json"}]', + 'title' => '检查账号是否可以作为财务托管主账号', + 'summary' => '检查管理账号或者成员是否可以作为财务托管主账号。', + 'changeSet' => [], ], - 'UpdateMessageContact' => [ - 'summary' => '更新联系人信息。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'RegisterDelegatedAdministrator' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -7637,198 +5026,106 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - ], + 'systemTags' => ['operationType' => 'create'], 'parameters' => [ [ - 'name' => 'ContactId', + 'name' => 'AccountId', 'in' => 'query', - 'schema' => [ - 'description' => '联系人ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'c-qL4HqKONzOM7****', - ], + 'schema' => ['description' => '资源目录中的成员ID。', 'type' => 'string', 'required' => true, 'example' => '181761095690****'], ], [ - 'name' => 'Name', + 'name' => 'ServicePrincipal', 'in' => 'query', - 'schema' => [ - 'description' => '联系人的名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'tom', - ], + 'schema' => ['description' => '可信服务的标识。'."\n" + ."\n" + .'具体信息,请参见[支持的可信服务](~~208133~~)中的`可信服务标识`列。', 'type' => 'string', 'required' => true, 'example' => 'cloudfw.aliyuncs.com'], ], - [ - 'name' => 'EmailAddress', - 'in' => 'query', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '联系人的邮箱地址。'."\n" - ."\n" - .'添加邮箱地址后,您需要继续调用[SendEmailVerificationForMessageContact](~~SendEmailVerificationForMessageContact~~)向该邮箱地址发送验证信息,通过验证后,该联系人的邮箱地址才能生效。', - 'type' => 'string', - 'required' => false, - 'example' => 'someone***@example.com', + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '0A45FC8F-54D2-4A65-8338-25E5DEBDA304'], + ], ], ], - [ - 'name' => 'PhoneNumber', - 'in' => 'query', - 'schema' => [ - 'description' => '联系人的手机号码。'."\n" - ."\n" - .'格式:`<国家码>-<手机号码>`。'."\n" - ."\n" - .'<props="china">'."\n" - .'> 仅支持填写`86-<手机号码>`的中国内地手机号码。</props>'."\n" - ."\n" - .'添加手机号码后,您需要继续调用[SendPhoneVerificationForMessageContact](~~SendPhoneVerificationForMessageContact~~)向该手机号码发送验证信息,通过验证后,该联系人的手机号码才能生效。', - 'type' => 'string', - 'required' => false, - 'example' => '86-139****1234', - ], + ], + 'errorCodes' => [ + 409 => [ + ['errorCode' => 'InvalidParameter.ServicePrincipal', 'errorMessage' => 'The specified ServicePrincipal is invalid.', 'description' => ''], + ['errorCode' => 'AccountAlreadyRegistered', 'errorMessage' => 'The specified account is already a delegated administrator for this service.', 'description' => ''], + ['errorCode' => 'DelegatedAccountNumberExceeded', 'errorMessage' => 'The maximum number of delegated administrators for the service principal is exceeded.', 'description' => ''], + ['errorCode' => 'CannotRegisterMasterAsDelegatedAdministrator', 'errorMessage' => 'You attempted to register the enterprise management account as a delegated administrator for the service. You can designate only a member account as a delegated administrator.', 'description' => ''], ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"0A45FC8F-54D2-4A65-8338-25E5DEBDA304\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<RegisterDelegatedAdministratorResponse>\\r\\n\\t<RequestId>0A45FC8F-54D2-4A65-8338-25E5DEBDA304</RequestId>\\r\\n</RegisterDelegatedAdministratorResponse>\\t\\r\\n","errorExample":""}]', + 'title' => '将资源目录的成员设置为可信服务的委派管理员账号', + 'summary' => '调用RegisterDelegatedAdministrator将资源目录的成员设置为可信服务的委派管理员账号。', + 'description' => '设置完成后,委派管理员账号将获得访问资源目录组织信息的授权,从而具有了对组织成员和结构的可见性。委派管理员账号在指定可信服务中将代表企业管理账号执行服务相关管理操作。'."\n" + .'使用限制:'."\n" + .'- 只有部分可信服务支持委派管理员功能。更多信息,请参见[支持的可信服务](~~208133~~)。'."\n" + .'- 只有资源目录的企业管理账号及其下被授权的RAM用户和RAM角色才能调用该API。'."\n" + .'- 可信服务允许添加的委派管理员账号数量由各可信服务定义。', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + ], + 'RemoveCloudAccount' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'Title', - 'in' => 'query', - 'schema' => [ - 'description' => '联系人的职位。', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'FinanceDirector' => '财务负责人', - 'TechnicalDirector' => '技术负责人', - 'MaintenanceDirector' => '运维负责人', - 'CEO' => 'CEO', - 'ProjectDirector' => '项目负责人', - 'Other' => '其它', - ], - 'example' => 'TechnicalDirector', - ], + 'AK' => [], ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => ['operationType' => 'delete'], + 'parameters' => [ [ - 'name' => 'MessageTypes', + 'name' => 'AccountId', 'in' => 'query', - 'style' => 'flat', - 'schema' => [ - 'description' => '联系人接收的消息分类。', - 'type' => 'array', - 'items' => [ - 'description' => '联系人接收的消息分类。', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'ServiceMessage' => '服务消息', - 'FaultMessage' => '故障消息', - 'AccountExpenses' => '账号资金消息', - 'SecurityMessage' => '安全消息', - 'ActivityMessage' => '活动消息', - 'ProductMessage' => '产品消息', - ], - 'example' => 'AccountExpenses', - ], - 'required' => false, - ], + 'schema' => ['description' => '成员ID。', 'type' => 'string', 'required' => true, 'example' => '177242285274****'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.Name', - 'errorMessage' => 'The Name is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Name.Length', - 'errorMessage' => 'The Name exceeds the length limit.', - ], - [ - 'errorCode' => 'InvalidParameter.Name.AlreadyUsed', - 'errorMessage' => 'The Name already exists. Please change to another name.', - ], - [ - 'errorCode' => 'InvalidParameter.EmailAddress', - 'errorMessage' => 'The EmailAddress is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.PhoneNumber', - 'errorMessage' => 'The PhoneNumber is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Title', - 'errorMessage' => 'The Title is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.MessageTypes', - 'errorMessage' => 'The MessageTypes is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.MobileCountryCode', - 'errorMessage' => 'The current site does not support the country code.', - ], - [ - 'errorCode' => 'InvalidParameter.ContactId', - 'errorMessage' => 'The ContactId is invalid.', - ], - [ - 'errorCode' => 'MissingParameter.ContactId', - 'errorMessage' => 'You must specify ContactId.', - ], - [ - 'errorCode' => 'InvalidParameter.EmailAddress.Length', - 'errorMessage' => 'The EmailAddress exceeds the length limit.', - ], - [ - 'errorCode' => 'ContactStatusMismatchAction', - 'errorMessage' => 'The status of the contact does not allow the specified operation.', - ], + ['errorCode' => 'MissingParameter.AccountId', 'errorMessage' => 'You must specify AccountId.', 'description' => ''], + ['errorCode' => 'InvalidParameter.AccountId', 'errorMessage' => 'The AccountId is invalid.', 'description' => ''], ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.Contact', - 'errorMessage' => 'This Contact does not exist.', - ], + ['errorCode' => 'EntityNotExists.Account', 'errorMessage' => 'This resource directory account does not exist.', 'description' => ''], + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => ''], ], - 429 => [ - [ - 'errorCode' => 'ConcurrentCallNotSupported', - 'errorMessage' => 'The operation conflicts with other operations. Please try again later.', - ], + 409 => [ + ['errorCode' => 'AccountTypeOrStatusMismatch', 'errorMessage' => 'You cannot perform the action on the member account.', 'description' => ''], + ['errorCode' => 'Deny.TrustedService', 'errorMessage' => 'You attempted to remove an account that is used in %s. To complete this operation, you must first remove this account from the Trusted Service.', 'description' => ''], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\"\\n}","type":"json"}]', - 'title' => '更新联系人信息', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<RemoveCloudAccountResponse>\\r\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\r\\n</RemoveCloudAccountResponse>","errorExample":""}]', + 'title' => '移除云账号类型的成员', + 'summary' => '调用RemoveCloudAccount移除云账号类型的成员。', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], ], - 'CancelMessageContactUpdate' => [ - 'summary' => '取消更新联系人手机或邮箱。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'RetryChangeAccountEmail' => [ + 'summary' => '调用RetryChangeAccountEmail重新发送修改成员邮箱的确认邮件。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -7836,387 +5133,159 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - ], + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ - 'name' => 'ContactId', - 'in' => 'query', - 'schema' => [ - 'description' => '联系人ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'c-qL4HqKONzOM7****', - ], - ], - [ - 'name' => 'PhoneNumber', - 'in' => 'query', - 'schema' => [ - 'description' => '联系人的手机号码。'."\n" - ."\n" - .'格式:`<国家码>-<手机号码>`。'."\n" - ."\n" - .'<props="china">'."\n" - .'> 仅支持填写`86-<手机号码>`的中国内地手机号码。</props>', - 'type' => 'string', - 'required' => false, - 'example' => '86-139****1234', - ], - ], - [ - 'name' => 'EmailAddress', + 'name' => 'AccountId', 'in' => 'query', - 'schema' => [ - 'description' => '联系人的邮箱地址。', - 'type' => 'string', - 'required' => false, - 'example' => 'someone***@example.com', - ], + 'schema' => ['description' => '成员ID。', 'type' => 'string', 'required' => true, 'example' => '181761095690****'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE'], ], ], ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'MissingParameter.ContactId', - 'errorMessage' => 'You must specify ContactId.', - ], - [ - 'errorCode' => 'InvalidParameter.ContactId', - 'errorMessage' => 'The ContactId is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.PhoneNumber', - 'errorMessage' => 'The PhoneNumber is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.MobileCountryCode', - 'errorMessage' => 'The current site does not support the country code.', - ], - [ - 'errorCode' => 'InvalidParameter.EmailAddress', - 'errorMessage' => 'The EmailAddress is invalid.', - ], - [ - 'errorCode' => 'ContactStatusMismatchAction', - 'errorMessage' => 'The status of the contact does not allow the specified operation.', - ], - ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.Contact', - 'errorMessage' => 'This Contact does not exist.', - ], + ['errorCode' => 'EntityNotExists.EmailModifyRecord', 'errorMessage' => 'This email modification record of the account does not exist.', 'description' => ''], + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => ''], + ['errorCode' => 'EntityNotExists.Account', 'errorMessage' => 'This resource directory account does not exist.', 'description' => ''], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\"\\n}","type":"json"}]', - 'title' => '取消更新联系人手机或邮箱', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\"\\n}","errorExample":""},{"type":"xml","example":"<RetryChangeAccountEmailResponse>\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\n</RetryChangeAccountEmailResponse>","errorExample":""}]', + 'title' => '重新发送修改成员邮箱的确认邮件', + 'changeSet' => [], ], - 'PrecheckForConsolidatedBillingAccount' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'SendEmailVerificationForMessageContact' => [ + 'summary' => '向联系人的邮箱发送验证信息。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - ], + 'systemTags' => ['operationType' => 'none'], 'parameters' => [ [ - 'name' => 'BillingAccountId', + 'name' => 'ContactId', 'in' => 'query', - 'schema' => [ - 'description' => '管理账号ID或成员ID,该账号将作为财务托管主账号。', - 'type' => 'string', - 'required' => true, - 'example' => '111***089', - ], + 'schema' => ['description' => '联系人ID。', 'type' => 'string', 'required' => false, 'example' => 'c-5gsZAGt***PGduDF'], + ], + [ + 'name' => 'EmailAddress', + 'in' => 'query', + 'schema' => ['description' => '联系人的邮箱地址。'."\n" + ."\n" + .'该邮箱地址为您在[AddMessageContact](~~AddMessageContact~~)中设置的邮箱地址。', 'type' => 'string', 'required' => false, 'example' => 'someone***@example.com'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回参数。', + 'title' => 'Schema of Response', + 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9E6B6CA8-9E7A-521F-A743-AA582714727E', - ], - 'Reasons' => [ - 'description' => '检查失败原因。', - 'type' => 'array', - 'items' => [ - 'description' => '检查失败原因。', - 'type' => 'object', - 'properties' => [ - 'Code' => [ - 'description' => '检查失败错误码。', - 'type' => 'string', - 'example' => 'PaymentAccountEnterpriseInvoiceError', - ], - 'Message' => [ - 'description' => '检查失败错误描述。', - 'type' => 'string', - 'example' => 'No enterprise invoice header information is set for the payment account.', - ], - ], - ], - ], - 'Result' => [ - 'description' => '检查结果。取值:'."\n" - ."\n" - .'- true:检查成功。'."\n" - .'- false:检查失败。', - 'type' => 'boolean', - 'example' => 'false', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => '7B8A4E7D-6CFF-471D-84DF-195A7A241ECB'], ], ], ], ], 'errorCodes' => [ - 403 => [ - [ - 'errorCode' => 'MemberAccountOperationNotAllowed', - 'errorMessage' => 'The member account is not allowed to perform the operation.', - ], + 400 => [ + ['errorCode' => 'MissingParameter.ContactId', 'errorMessage' => 'You must specify ContactId.', 'description' => ''], + ['errorCode' => 'InvalidParameter.ContactId', 'errorMessage' => 'The ContactId is invalid.', 'description' => ''], + ['errorCode' => 'MissingParameter.EmailAddress', 'errorMessage' => 'You must specify EmailAddress.', 'description' => ''], + ['errorCode' => 'InvalidParameter.EmailAddress', 'errorMessage' => 'The EmailAddress is invalid.', 'description' => ''], ], - [ - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], - [ - 'errorCode' => 'EntityNotExists.Account', - 'errorMessage' => 'This resource directory account does not exist.', - ], + 404 => [ + ['errorCode' => 'EntityNotExists.Contact', 'errorMessage' => 'This Contact does not exist.', 'description' => ''], + ['errorCode' => 'EntityNotExists.Contact.Verification', 'errorMessage' => 'This contact verification does not exist.', 'description' => ''], + ], + 409 => [ + ['errorCode' => 'SendValidateCodeExceedsLimitForAccount', 'errorMessage' => 'For the same account, the number of verification codes sent exceeds the limit.', 'description' => ''], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9E6B6CA8-9E7A-521F-A743-AA582714727E\\",\\n \\"Reasons\\": [\\n {\\n \\"Code\\": \\"PaymentAccountEnterpriseInvoiceError\\",\\n \\"Message\\": \\"No enterprise invoice header information is set for the payment account.\\"\\n }\\n ],\\n \\"Result\\": false\\n}","type":"json"}]', - 'title' => '检查账号是否可以作为财务托管主账号', - 'summary' => '检查管理账号或者成员是否可以作为财务托管主账号。', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7B8A4E7D-6CFF-471D-84DF-195A7A241ECB\\"\\n}","type":"json"}]', + 'title' => '向联系人邮箱发送验证信息', + 'changeSet' => [], ], - 'ListAuthorizedAccounts' => [ - 'summary' => '列举有查询权限的成员列表。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'SendPhoneVerificationForMessageContact' => [ + 'summary' => '向联系人的手机号码发送验证信息。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'list', - 'riskType' => 'none', - 'chargeType' => 'free', - ], + 'systemTags' => ['operationType' => 'none'], 'parameters' => [ [ - 'name' => 'PageNumber', + 'name' => 'ContactId', 'in' => 'query', - 'schema' => [ - 'description' => '页码。'."\n" - ."\n" - .'起始值:1。默认值:1。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => '联系人ID。', 'type' => 'string', 'required' => false, 'example' => 'c-qL4HqKONzOM7****'], ], [ - 'name' => 'PageSize', + 'name' => 'PhoneNumber', 'in' => 'query', - 'schema' => [ - 'description' => '分页时每页显示的数据行数。'."\n" - ."\n" - .'取值范围:1~100。默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '5', - ], + 'schema' => ['description' => '联系人的手机号码。'."\n" + ."\n" + .'格式:`<国家码>-<手机号码>`'."\n" + ."\n" + .'该手机号码为您在[AddMessageContact](~~AddMessageContact~~)中设置的手机号码。', 'type' => 'string', 'required' => false, 'example' => '86-139****1234'], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => 'Schema of Response', 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'TotalCount' => [ - 'description' => '数据总条数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '7B8A4E7D-6CFF-471D-84DF-195A7A241ECB', - ], - 'PageSize' => [ - 'description' => '分页时每页显示的数据行数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '5', - ], - 'PageNumber' => [ - 'description' => '页码。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Accounts' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'Account' => [ - 'description' => '成员信息。', - 'type' => 'array', - 'items' => [ - 'description' => '成员信息。', - 'type' => 'object', - 'properties' => [ - 'Status' => [ - 'description' => '成员加入状态。取值:'."\n" - .'- CreateSuccess:创建成功。'."\n" - .'- PromoteVerifying:升级确认中。'."\n" - .'- PromoteFailed:升级失败。'."\n" - .'- PromoteExpired:升级过期。'."\n" - .'- PromoteCancelled:升级取消。'."\n" - .'- PromoteSuccess:升级成功。'."\n" - .'- InviteSuccess:邀请成功。', - 'type' => 'string', - 'example' => 'CreateSuccess', - ], - 'Type' => [ - 'description' => '成员类型。取值:'."\n" - ."\n" - .'- CloudAccount:云账号。'."\n" - .'- ResourceAccount:资源账号。', - 'type' => 'string', - 'example' => 'ResourceAccount', - ], - 'DisplayName' => [ - 'description' => '成员名称。', - 'type' => 'string', - 'example' => 'admin', - ], - 'FolderId' => [ - 'description' => '资源夹ID。', - 'type' => 'string', - 'example' => 'fd-bVaRIG****', - ], - 'ResourceDirectoryId' => [ - 'description' => '资源目录ID。', - 'type' => 'string', - 'example' => 'rd-k4****', - ], - 'JoinTime' => [ - 'description' => '成员加入时间(UTC时间)。', - 'type' => 'string', - 'example' => '2015-01-23T12:33:18Z', - ], - 'AccountId' => [ - 'description' => '成员账号ID。', - 'type' => 'string', - 'example' => '184311716100****', - ], - 'JoinMethod' => [ - 'description' => '成员加入方式。'."\n" - ."\n" - .'- invited:邀请。'."\n" - .'- created:创建。', - 'type' => 'string', - 'example' => 'created', - ], - 'ModifyTime' => [ - 'description' => '成员修改时间(UTC时间)。', - 'type' => 'string', - 'example' => '2015-01-23T12:33:18Z', - ], - 'ResourceDirectoryPath' => [ - 'description' => '成员在资源目录中的路径ID(RDPath)。', - 'type' => 'string', - 'example' => 'rd-k4****/r-Wm****/fd-bVaRIG****/184311716100****', - ], - 'AccountName' => [ - 'description' => '成员名称。', - 'type' => 'string', - 'example' => 'someone@example.com', - ], - ], - ], - ], - ], - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => 'CD76D376-2517-4924-92C5-DBC52262F93A'], ], ], ], ], 'errorCodes' => [ + 400 => [ + ['errorCode' => 'MissingParameter.ContactId', 'errorMessage' => 'You must specify ContactId.', 'description' => ''], + ['errorCode' => 'InvalidParameter.ContactId', 'errorMessage' => 'The ContactId is invalid.', 'description' => ''], + ['errorCode' => 'MissingParameter.PhoneNumber', 'errorMessage' => 'You must specify PhoneNumber.', 'description' => ''], + ['errorCode' => 'InvalidParameter.PhoneNumber', 'errorMessage' => 'The PhoneNumber is invalid.', 'description' => ''], + ['errorCode' => 'InvalidParameter.MobileCountryCode', 'errorMessage' => 'The current site does not support the country code.', 'description' => ''], + ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', - ], + ['errorCode' => 'EntityNotExists.Contact', 'errorMessage' => 'This Contact does not exist.', 'description' => ''], + ['errorCode' => 'EntityNotExists.Contact.Verification', 'errorMessage' => 'This contact verification does not exist.', 'description' => ''], + ], + 409 => [ + ['errorCode' => 'SendValidateCodeExceedsLimitForAccount', 'errorMessage' => 'For the same account, the number of verification codes sent exceeds the limit.', 'description' => ''], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TotalCount\\": 2,\\n \\"RequestId\\": \\"7B8A4E7D-6CFF-471D-84DF-195A7A241ECB\\",\\n \\"PageSize\\": 5,\\n \\"PageNumber\\": 1,\\n \\"Accounts\\": {\\n \\"Account\\": [\\n {\\n \\"Status\\": \\"CreateSuccess\\",\\n \\"Type\\": \\"ResourceAccount\\",\\n \\"DisplayName\\": \\"admin\\",\\n \\"FolderId\\": \\"fd-bVaRIG****\\",\\n \\"ResourceDirectoryId\\": \\"rd-k4****\\",\\n \\"JoinTime\\": \\"2015-01-23T12:33:18Z\\",\\n \\"AccountId\\": \\"184311716100****\\",\\n \\"JoinMethod\\": \\"created\\",\\n \\"ModifyTime\\": \\"2015-01-23T12:33:18Z\\",\\n \\"ResourceDirectoryPath\\": \\"rd-k4****/r-Wm****/fd-bVaRIG****/184311716100****\\",\\n \\"AccountName\\": \\"someone@example.com\\"\\n }\\n ]\\n }\\n}","type":"json"}]', - 'title' => '列举有查询权限的成员列表', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CD76D376-2517-4924-92C5-DBC52262F93A\\"\\n}","type":"json"}]', + 'title' => '向联系人手机发送验证信息', + 'changeSet' => [], ], - 'EnableControlPolicy' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'SendVerificationCodeForBindSecureMobilePhone' => [ + 'summary' => '为资源账号类型的成员设置安全手机号码时,调用SendVerificationCodeForBindSecureMobilePhone向安全手机发送验证码。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -8224,58 +5293,55 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', + 'systemTags' => ['operationType' => 'none'], + 'parameters' => [ + [ + 'name' => 'SecureMobilePhone', + 'in' => 'query', + 'schema' => ['description' => '安全手机号码。'."\n" + ."\n" + .'格式:<国家码>-<手机号码>。'."\n" + ."\n" + .'<props="china">'."\n" + .'> 仅支持填写`86-<手机号码>`的中国内地手机号码。</props>'."\n" + ."\n\n" + .'<props="intl">'."\n" + .'> 不支持填写`86-<手机号码>`的中国内地手机号码。</props>'."\n", 'type' => 'string', 'required' => true, 'example' => 'xx-13900001234'], + ], + [ + 'name' => 'AccountId', + 'in' => 'query', + 'schema' => ['description' => '成员的账号ID。', 'type' => 'string', 'required' => true, 'example' => '138660628348****'], + ], ], - 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'EnablementStatus' => [ - 'description' => '管控策略状态。取值:'."\n" - ."\n" - .'- Enabled:已开启。'."\n" - .'- PendingEnable:开启中。'."\n" - .'- Disabled:已关闭。'."\n" - .'- PendingDisable:关闭中。', - 'type' => 'string', - 'example' => 'PendingEnable', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '8CE7BD95-EFFA-4911-A1E0-BD4412697FEB', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'DCD43660-75DD-5D15-B342-1B83FCA5B913'], + 'ExpirationDate' => ['description' => '验证码过期时间。', 'type' => 'string', 'example' => '2021-12-17T07:38:41.747Z'], ], ], ], ], 'errorCodes' => [ 409 => [ - [ - 'errorCode' => 'Throttling.EnableControlPolicy', - 'errorMessage' => 'The enable operation is too frequent. Please try again in %s minute(s).', - ], + ['errorCode' => 'NotSupport.AccountInAnotherResourceDirectory', 'errorMessage' => 'The specified account is an Alibaba Cloud account or already exists in another resource directory.', 'description' => ''], + ['errorCode' => 'EntityAlreadyExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is already enabled. We recommend that you do not enable the resource directory again.', 'description' => ''], + ['errorCode' => 'SendValidateCodeExceedsLimitForAccount', 'errorMessage' => 'For the same account, the number of verification codes sent exceeds the limit.', 'description' => ''], + ['errorCode' => 'InvalidParameter.MobileCountryCode', 'errorMessage' => 'The current site does not support the country code.', 'description' => ''], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"EnablementStatus\\": \\"PendingEnable\\",\\n \\"RequestId\\": \\"8CE7BD95-EFFA-4911-A1E0-BD4412697FEB\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<EnableControlPolicyResponse>\\r\\n\\t<EnablementStatus>PendingEnable</EnablementStatus>\\r\\n\\t<RequestId>8CE7BD95-EFFA-4911-A1E0-BD4412697FEB</RequestId>\\r\\n</EnableControlPolicyResponse>","errorExample":""}]', - 'title' => '开启管控策略', - 'summary' => '调用EnableControlPolicy开启管控策略功能。', - 'description' => '资源目录管控策略是一种基于资源结构(资源夹或成员账号)的访问控制策略,可以统一管理资源目录各层级内资源访问的权限边界,建立企业整体访问控制原则或局部专用原则。管控策略只定义权限边界,并不真正授予权限,您还需要在某个成员账号中使用访问控制(RAM)设置权限后,相应身份才具备对资源的访问权限。更多信息,请参见[管控策略概述](~~178671~~)。', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"DCD43660-75DD-5D15-B342-1B83FCA5B913\\",\\n \\"ExpirationDate\\": \\"2021-12-17T07:38:41.747Z\\"\\n}","errorExample":""},{"type":"xml","example":"<SendVerificationCodeForBindSecureMobilePhoneResponse>\\n <RequestId>DCD43660-75DD-5D15-B342-1B83FCA5B913</RequestId>\\n <ExpirationDate>2021-12-17T07:38:41.747Z</ExpirationDate>\\n</SendVerificationCodeForBindSecureMobilePhoneResponse>","errorExample":""}]', + 'title' => '向安全手机发送验证码', + 'description' => '为确保系统可以记录到管理操作的具体操作者,请使用管理账号下具有资源目录管理权限(AliyunResourceDirectoryFullAccess)的RAM用户或RAM角色调用本API。', + 'changeSet' => [], ], - 'DisableControlPolicy' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'SendVerificationCodeForEnableRD' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -8283,102 +5349,127 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', + 'systemTags' => ['operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'tenantRelevance' => 'publicInformation'], + 'parameters' => [ + [ + 'name' => 'SecureMobilePhone', + 'in' => 'query', + 'schema' => ['description' => '新创建的管理账号的安全手机号码。置空表示采用当前登录账号的安全手机号码。'."\n" + ."\n" + .'格式:`<国家码>-<手机号码>`。'."\n" + ."\n" + .'<props="intl">'."\n" + .'> 不支持填写`86-<手机号码>`的中国内地手机号码。'."\n" + .'</props>'."\n" + ."\n" + .'<props="china">'."\n" + .'> 仅支持填写`86-<手机号码>`的中国内地手机号码。'."\n" + .'</props>', 'type' => 'string', 'required' => false, 'example' => 'xx-13900001234'], + ], ], - 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'EnablementStatus' => [ - 'description' => '管控策略状态。取值:'."\n" - ."\n" - .'- Enabled:已开启。'."\n" - .'- PendingEnable:开启中。'."\n" - .'- Disabled:已关闭。'."\n" - .'- PendingDisable:关闭中。', - 'type' => 'string', - 'example' => 'PendingDisable', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '7C709979-451D-4C92-835D-7DDCCAA562E9', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'EC2FE94D-A4A2-51A1-A493-5C273A36C46A'], ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"EnablementStatus\\": \\"PendingDisable\\",\\n \\"RequestId\\": \\"7C709979-451D-4C92-835D-7DDCCAA562E9\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<DisableControlPolicyResponse>\\r\\n\\t<EnablementStatus>PendingDisable</EnablementStatus>\\r\\n\\t<RequestId>7C709979-451D-4C92-835D-7DDCCAA562E9</RequestId>\\r\\n</DisableControlPolicyResponse>\\t\\r\\n","errorExample":""}]', - 'title' => '关闭管控策略', - 'summary' => '调用DisableControlPolicy关闭管控策略功能。', - 'description' => '关闭管控策略功能后,您绑定到资源夹和成员账号上的管控策略会全部自动解绑。但管控策略本身不会被删除,只是不能再绑定到任何目标节点上。'."\n" - ."\n" - .'> 关闭管控策略将会影响整个资源目录内资源夹和成员账号的权限,请谨慎操作。', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'GetControlPolicyEnablementStatus' => [ - 'methods' => [ - 'post', - 'get', + 'errorCodes' => [ + 409 => [ + ['errorCode' => 'NotSupport.AccountInAnotherResourceDirectory', 'errorMessage' => 'The specified account is an Alibaba Cloud account or already exists in another resource directory.', 'description' => '您的账号是另一个资源目录的管理账号或是另一个资源目录内的成员。'], + ['errorCode' => 'EntityAlreadyExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is already enabled. We recommend that you do not enable the resource directory again.', 'description' => '账号已开通资源目录,请勿重复开通。'], + ['errorCode' => 'SendValidateCodeExceedsLimitForAccount', 'errorMessage' => 'For the same account, the number of verification codes sent exceeds the limit.', 'description' => '当前账号发送的验证码每日数量超限。'], + ['errorCode' => 'InvalidParameter.MobileCountryCode', 'errorMessage' => 'The current site does not support the country code.', 'description' => '当前站点不支持您输入的国家码。'], + ], ], - 'schemes' => [ - 'https', + 'title' => '向新管理账号的安全手机发送验证码', + 'summary' => '通过新创建的管理账号开通资源目录时,调用SendVerificationCodeForEnableRD向新管理账号的安全手机发送验证码。', + 'description' => '每个阿里云账号每天最多发送100次验证码。', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SendVerificationCodeForEnableRD'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'resourcemanager:SendVerificationCodeForEnableRD', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"EC2FE94D-A4A2-51A1-A493-5C273A36C46A\\"\\n}","errorExample":""},{"type":"xml","example":"<SendVerificationCodeForEnableRDResponse>\\n <RequestId>EC2FE94D-A4A2-51A1-A493-5C273A36C46A</RequestId>\\n</SendVerificationCodeForEnableRDResponse>","errorExample":""}]', + ], + 'SetMemberDeletionPermission' => [ + 'summary' => '调用SetMemberDeletionPermission开启或关闭成员删除许可。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', + 'systemTags' => ['operationType' => 'update'], + 'parameters' => [ + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => ['description' => '开启或关闭成员删除许可。取值:'."\n" + ."\n" + .'- Enabled:开启。'."\n" + .'- Disabled:关闭。', 'type' => 'string', 'required' => true, 'example' => 'Enabled'], + ], ], - 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'EnablementStatus' => [ - 'description' => '管控策略状态。取值:'."\n" - ."\n" - .'- Enabled:已开启。'."\n" - .'- PendingEnable:开启中。'."\n" - .'- Disabled:已关闭。'."\n" - .'- PendingDisable:关闭中。', - 'type' => 'string', - 'example' => 'Disabled', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '1DC39A4E-3B52-4EFE-9F93-4897D7FFA0C4', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'C55A4CAA-9039-1DDF-91CE-FCC134513D29'], + 'MemberDeletionStatus' => ['description' => '成员删除许可状态。取值:'."\n" + ."\n" + .'- Enabled:已开启。'."\n" + .'- Disabled:已关闭。', 'type' => 'string', 'example' => 'Enabled'], + 'ManagementAccountId' => ['description' => '资源目录的管理账号ID。', 'type' => 'string', 'example' => '151266687691****'], + 'ResourceDirectoryId' => ['description' => '资源目录ID。', 'type' => 'string', 'example' => 'rd-3G****'], ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"EnablementStatus\\": \\"Disabled\\",\\n \\"RequestId\\": \\"1DC39A4E-3B52-4EFE-9F93-4897D7FFA0C4\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<GetControlPolicyEnablementStatusResponse>\\r\\n\\t<EnablementStatus>Disabled</EnablementStatus>\\r\\n\\t<RequestId>1DC39A4E-3B52-4EFE-9F93-4897D7FFA0C4</RequestId>\\r\\n</GetControlPolicyEnablementStatusResponse>","errorExample":""}]', - 'title' => '查询管控策略功能的状态', - 'summary' => '调用GetControlPolicyEnablementStatus查询管控策略功能的开启或关闭状态。', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'CreateControlPolicy' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidParameter.Status', 'errorMessage' => 'The specified Status is invalid.', 'description' => ''], + ], + 403 => [ + ['errorCode' => 'MemberAccountAccessDenied', 'errorMessage' => 'The member account is not allowed to perform the operation.', 'description' => ''], + ], + [ + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => ''], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C55A4CAA-9039-1DDF-91CE-FCC134513D29\\",\\n \\"MemberDeletionStatus\\": \\"Enabled\\",\\n \\"ManagementAccountId\\": \\"151266687691****\\",\\n \\"ResourceDirectoryId\\": \\"rd-3G****\\"\\n}","errorExample":""},{"type":"xml","example":"<SetMemberDeletionPermissionResponse>\\n <ResourceDirectoryId>rd-3G****</ResourceDirectoryId>\\n <RequestId>C55A4CAA-9039-1DDF-91CE-FCC134513D29</RequestId>\\n <MemberDeletionStatus>Enabled</MemberDeletionStatus>\\n <ManagementAccountId>151266687691****</ManagementAccountId>\\n</SetMemberDeletionPermissionResponse>","errorExample":""}]', + 'title' => '开启或关闭成员删除许可', + 'description' => '当开启成员删除许可后,才能删除资源账号类型的成员。', + 'changeSet' => [], + ], + 'SetMemberDisplayNameSyncStatus' => [ + 'summary' => '开启或关闭成员显示名称同步状态。', + 'path' => '', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -8386,63 +5477,81 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'create', - 'riskType' => 'none', - 'chargeType' => 'free', - ], + 'systemTags' => ['operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'autoTest' => true, 'tenantRelevance' => 'publicInformation'], 'parameters' => [ [ - 'name' => 'PolicyName', + 'name' => 'Status', 'in' => 'query', 'schema' => [ - 'description' => '管控策略名称。'."\n" + 'description' => '开启或关闭成员账号显示名称的同步状态。取值:'."\n" + ."\n" + .'- Enabled:开启,即管理账号为成员设置的显示名称,将更新到此成员的账号基本信息中。显示名称信息将对成员账号可见可感知,例如给成员发送的消息通知,将使用此显示名称作为成员账号的称谓。'."\n" ."\n" - .'长度为1~128个字符,必须以英文字母开头,可以包含英文字母、数字和短划线(-)。', + .'- Disabled:关闭,即管理账号为成员设置的显示名称,仅在资源目录有效,不更新至成员的账号基本信息中。', 'type' => 'string', 'required' => true, - 'example' => 'ExampleControlPolicy', + 'enumValueTitles' => [], + 'example' => 'Enabled', ], ], - [ - 'name' => 'Description', - 'in' => 'query', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '管控策略描述。'."\n" - ."\n" - .'长度为1~1024个字符,必须以英文字母开头,可以包含英文字母、数字、下划线(_)和短划线(-)。', - 'type' => 'string', - 'required' => false, - 'example' => 'ExampleControlPolicy', + 'title' => 'Schema of Response', + 'description' => '返回结果。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE'], + 'MemberAccountDisplayNameSyncStatus' => ['description' => '成员账号显示名称同步状态。取值:'."\n" + ."\n" + .'- Enabled:已开启。'."\n" + .'- Disabled:已关闭。', 'type' => 'string', 'example' => 'Enabled'], + ], ], ], + ], + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidParameter.Status', 'errorMessage' => 'The specified Status is invalid.', 'description' => ''], + ], + 403 => [ + ['errorCode' => 'MemberAccountAccessDenied', 'errorMessage' => 'The member account is not allowed to perform the operation.', 'description' => ''], + ], [ - 'name' => 'EffectScope', - 'in' => 'query', - 'schema' => [ - 'description' => '管控策略的生效范围。'."\n" - ."\n" - .'取值:RAM,表示该管控策略仅针对RAM用户或RAM角色生效。'."\n" - ."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'RAM', - ], + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => ''], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\",\\n \\"MemberAccountDisplayNameSyncStatus\\": \\"Enabled\\"\\n}","type":"json"}]', + 'title' => '开启或关闭成员显示名称同步状态', + 'changeSet' => [], + ], + 'TagResources' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'PolicyDocument', + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => ['operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free'], + 'parameters' => [ + [ + 'name' => 'ResourceId', 'in' => 'query', + 'style' => 'flat', 'schema' => [ - 'description' => '管控策略内容。'."\n" - ."\n" - .'最大长度为4096个字符。'."\n" + 'description' => '资源目录成员ID。'."\n" ."\n" - .'管控策略语言,请参见[管控策略语言](~~179096~~)。'."\n" + .'最多可以指定50个。', + 'type' => 'array', + 'items' => ['description' => '资源目录成员ID。'."\n" ."\n" - .'管控策略示例,请参见[自定义管控策略示例](~~181474~~)。', - 'type' => 'string', + .'最多可以指定50个。', 'type' => 'string', 'required' => false, 'example' => '1524***'], 'required' => true, - 'example' => '{"Version":"1","Statement":[{"Effect":"Deny","Action":["ram:UpdateRole","ram:DeleteRole","ram:AttachPolicyToRole","ram:DetachPolicyFromRole"],"Resource":"acs:ram:*:*:role/ResourceDirectoryAccountAccessRole"}]}', ], ], [ @@ -8450,30 +5559,35 @@ 'in' => 'query', 'style' => 'flat', 'schema' => [ - 'description' => '管控策略的标签。', + 'description' => '标签。'."\n" + ."\n" + .'最多可以绑定20个标签。', 'type' => 'array', 'items' => [ - 'description' => '管控策略的标签。', + 'description' => '标签。'."\n" + ."\n" + .'最多可以绑定20个标签。', 'type' => 'object', 'properties' => [ - 'Key' => [ - 'description' => '标签键。', - 'type' => 'string', - 'required' => false, - 'example' => 'k1', - ], - 'Value' => [ - 'description' => '标签值。', - 'type' => 'string', - 'required' => false, - 'example' => 'v1', - ], + 'Key' => ['description' => '标签键。'."\n" + ."\n" + .'最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', 'type' => 'string', 'required' => false, 'example' => 'k1'], + 'Value' => ['description' => '标签值。'."\n" + ."\n" + .'最多支持128个字符,不能以`acs:`开头,不能包含`http://`或者`https://`。', 'type' => 'string', 'required' => false, 'example' => 'v1'], ], 'required' => false, ], - 'required' => false, + 'required' => true, ], ], + [ + 'name' => 'ResourceType', + 'in' => 'query', + 'schema' => ['description' => '资源类型。取值:'."\n" + ."\n" + .'- Account:为资源目录成员绑定标签。', 'type' => 'string', 'required' => true, 'example' => 'Account'], + ], ], 'responses' => [ 200 => [ @@ -8481,125 +5595,94 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'ControlPolicy' => [ - 'description' => '管控策略详情。', - 'type' => 'object', - 'properties' => [ - 'AttachmentCount' => [ - 'description' => '管控策略被引用的次数。', - 'type' => 'string', - 'example' => '0', - ], - 'CreateDate' => [ - 'description' => '管控策略创建时间。', - 'type' => 'string', - 'example' => '2021-03-18T09:24:19Z', - ], - 'Description' => [ - 'description' => '管控策略描述。', - 'type' => 'string', - 'example' => 'ExampleControlPolicy', - ], - 'EffectScope' => [ - 'description' => '管控策略生效范围。'."\n" - ."\n\n" - .'取值:RAM,表示该管控策略仅针对RAM用户或RAM角色生效。', - 'type' => 'string', - 'example' => 'RAM', - ], - 'PolicyId' => [ - 'description' => '管控策略ID。', - 'type' => 'string', - 'example' => 'cp-jExXAqIYkwHN****', - ], - 'PolicyName' => [ - 'description' => '管控策略名称。', - 'type' => 'string', - 'example' => 'ExampleControlPolicy', - ], - 'PolicyType' => [ - 'description' => '管控策略类型。取值:'."\n" - ."\n" - .'- System:系统管控策略。'."\n" - .'- Custom:自定义管控策略。', - 'type' => 'string', - 'example' => 'Custom', - ], - 'UpdateDate' => [ - 'description' => '管控策略更新时间。', - 'type' => 'string', - 'example' => '2021-03-18T09:24:19Z', - ], - ], - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '776B05B3-A0B0-464B-A191-F4E1119A94B2', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'E7747EDF-EDDC-5B38-9B6A-6392B9C92B1C'], ], ], ], ], - 'errorCodes' => [ - 409 => [ - [ - 'errorCode' => 'InvalidParameter.PolicyDocument.Length', - 'errorMessage' => 'The maximum length of the policy document is exceeded. It must not exceed 4096 characters.', + 'title' => '绑定标签', + 'summary' => '调用TagResources为资源目录的成员绑定标签。', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'TagResources'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:TagResources', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"ControlPolicy\\": {\\n \\"AttachmentCount\\": \\"0\\",\\n \\"CreateDate\\": \\"2021-03-18T09:24:19Z\\",\\n \\"Description\\": \\"ExampleControlPolicy\\",\\n \\"EffectScope\\": \\"RAM\\",\\n \\"PolicyId\\": \\"cp-jExXAqIYkwHN****\\",\\n \\"PolicyName\\": \\"ExampleControlPolicy\\",\\n \\"PolicyType\\": \\"Custom\\",\\n \\"UpdateDate\\": \\"2021-03-18T09:24:19Z\\"\\n },\\n \\"RequestId\\": \\"776B05B3-A0B0-464B-A191-F4E1119A94B2\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<CreateControlPolicyResponse>\\r\\n\\t<ControlPolicy>\\r\\n\\t\\t<PolicyType>Custom</PolicyType>\\r\\n\\t\\t<UpdateDate>2021-03-18T09:24:19Z</UpdateDate>\\r\\n\\t\\t<Description>ExampleControlPolicy</Description>\\r\\n\\t\\t<AttachmentCount>0</AttachmentCount>\\r\\n\\t\\t<PolicyName>ExampleControlPolicy</PolicyName>\\r\\n\\t\\t<CreateDate>2021-03-18T09:24:19Z</CreateDate>\\r\\n\\t\\t<PolicyId>cp-jExXAqIYkwHN****</PolicyId>\\r\\n\\t\\t<EffectScope>RAM</EffectScope>\\r\\n\\t</ControlPolicy>\\r\\n\\t<RequestId>776B05B3-A0B0-464B-A191-F4E1119A94B2</RequestId>\\r\\n</CreateControlPolicyResponse>\\t\\r\\n","errorExample":""}]', - 'title' => '创建管控策略', - 'summary' => '调用CreateControlPolicy创建自定义管控策略。', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"E7747EDF-EDDC-5B38-9B6A-6392B9C92B1C\\"\\n}","errorExample":""},{"type":"xml","example":"<TagResourcesResponse>\\n <RequestId>E7747EDF-EDDC-5B38-9B6A-6392B9C92B1C</RequestId>\\n</TagResourcesResponse>","errorExample":""}]', ], - 'GetControlPolicy' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'UntagResources' => [ + 'summary' => '调用UntagResources解绑资源目成员的标签。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - ], + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ - 'name' => 'PolicyId', + 'name' => 'All', 'in' => 'query', + 'schema' => ['description' => '是否解绑指定资源目录成员的全部标签。取值:'."\n" + .'- false(默认值):否'."\n" + .'- true:是', 'type' => 'boolean', 'required' => false, 'example' => 'false'], + ], + [ + 'name' => 'ResourceId', + 'in' => 'query', + 'style' => 'flat', 'schema' => [ - 'description' => '管控策略ID。', - 'type' => 'string', + 'description' => '资源目录成员ID。'."\n" + ."\n" + .'最多可以指定50个。', + 'type' => 'array', + 'items' => ['description' => '资源目录成员ID。'."\n" + ."\n" + .'最多可以指定50个。', 'type' => 'string', 'required' => false, 'example' => '1524****'], 'required' => true, - 'example' => 'cp-SImPt8GCEwiq****', ], ], [ - 'name' => 'Language', + 'name' => 'TagKey', 'in' => 'query', + 'style' => 'flat', 'schema' => [ - 'description' => '指定返回结果中管控策略描述的语言。取值:'."\n" + 'description' => '标签键。'."\n" ."\n" - .'- zh-CN(默认值):中文。'."\n" - .'- en:英文。'."\n" - .'- ja:日文。'."\n" + .'最多可以解绑20个标签键。'."\n" ."\n" - .'> 该参数仅在系统管控策略时有效。', - 'type' => 'string', + .'> 当解绑全部标签的参数`All`取值为`true`时,不需要设置标签键。', + 'type' => 'array', + 'items' => ['description' => '标签键。'."\n" + ."\n" + .'最多可以解绑20个标签键。'."\n" + .'> 当解绑全部标签的参数`All`取值为`true`时,不需要设置标签键。', 'type' => 'string', 'required' => false, 'example' => 'k1'], 'required' => false, - 'example' => 'zh-CN', ], ], + [ + 'name' => 'ResourceType', + 'in' => 'query', + 'schema' => ['description' => '资源类型。取值:'."\n" + ."\n" + .'- Account:解绑资源目录成员的标签。', 'type' => 'string', 'required' => true, 'example' => 'Account'], + ], ], 'responses' => [ 200 => [ @@ -8607,328 +5690,125 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'ControlPolicy' => [ - 'description' => '管控策略详情。', - 'type' => 'object', - 'properties' => [ - 'PolicyDocument' => [ - 'description' => '管控策略内容。', - 'type' => 'string', - 'example' => '{\\"Version\\":\\"1\\",\\"Statement\\":[{\\"Effect\\":\\"Deny\\",\\"Action\\":[\\"ram:UpdateRole\\",\\"ram:DeleteRole\\",\\"ram:AttachPolicyToRole\\",\\"ram:DetachPolicyFromRole\\"],\\"Resource\\":\\"acs:ram:*:*:role/ResourceDirectoryAccountAccessRole\\"}]}', - ], - 'UpdateDate' => [ - 'description' => '管控策略更新时间。', - 'type' => 'string', - 'example' => '2021-03-18T08:51:33Z', - ], - 'Description' => [ - 'description' => '管控策略描述。', - 'type' => 'string', - 'example' => 'ExampleControlPolicy', - ], - 'EffectScope' => [ - 'description' => '管控策略生效范围。取值:'."\n" - ."\n" - .'- All:表示该管控策略针对阿里云账号、RAM用户或RAM角色生效。'."\n" - .'- RAM:表示该管控策略仅针对RAM用户或RAM角色生效。', - 'type' => 'string', - 'example' => 'RAM', - ], - 'AttachmentCount' => [ - 'description' => '管控策略被引用的次数。', - 'type' => 'string', - 'example' => '0', - ], - 'PolicyName' => [ - 'description' => '管控策略名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'PolicyId' => [ - 'description' => '管控策略ID。', - 'type' => 'string', - 'example' => 'cp-SImPt8GCEwiq****', - ], - 'CreateDate' => [ - 'description' => '管控策略创建时间。', - 'type' => 'string', - 'example' => '2021-03-18T08:51:33Z', - ], - 'PolicyType' => [ - 'description' => '管控策略类型。取值:'."\n" - ."\n" - .'- System:系统管控策略。'."\n" - .'- Custom:自定义管控策略。', - 'type' => 'string', - 'example' => 'Custom', - ], - ], - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'AB769936-CDFA-4D52-8CE2-A3581800044A', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'E7747EDF-EDDC-5B38-9B6A-6392B9C92B1C'], ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"ControlPolicy\\": {\\n \\"PolicyDocument\\": \\"{\\\\\\\\\\\\\\"Version\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"1\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"Statement\\\\\\\\\\\\\\":[{\\\\\\\\\\\\\\"Effect\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Deny\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"Action\\\\\\\\\\\\\\":[\\\\\\\\\\\\\\"ram:UpdateRole\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"ram:DeleteRole\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"ram:AttachPolicyToRole\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"ram:DetachPolicyFromRole\\\\\\\\\\\\\\"],\\\\\\\\\\\\\\"Resource\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"acs:ram:*:*:role/ResourceDirectoryAccountAccessRole\\\\\\\\\\\\\\"}]}\\",\\n \\"UpdateDate\\": \\"2021-03-18T08:51:33Z\\",\\n \\"Description\\": \\"ExampleControlPolicy\\",\\n \\"EffectScope\\": \\"RAM\\",\\n \\"AttachmentCount\\": \\"0\\",\\n \\"PolicyName\\": \\"test\\",\\n \\"PolicyId\\": \\"cp-SImPt8GCEwiq****\\",\\n \\"CreateDate\\": \\"2021-03-18T08:51:33Z\\",\\n \\"PolicyType\\": \\"Custom\\"\\n },\\n \\"RequestId\\": \\"AB769936-CDFA-4D52-8CE2-A3581800044A\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<GetControlPolicyResponse>\\r\\n\\t<ControlPolicy>\\r\\n\\t\\t<PolicyType>Custom</PolicyType>\\r\\n\\t\\t<UpdateDate>2021-03-18T08:51:33Z</UpdateDate>\\r\\n\\t\\t<Description>ExampleControlPolicy</Description>\\r\\n\\t\\t<AttachmentCount>0</AttachmentCount>\\r\\n\\t\\t<PolicyName>test</PolicyName>\\r\\n\\t\\t<PolicyDocument>{"Version":"1","Statement":[{"Effect":"Deny","Action":["ram:UpdateRole","ram:DeleteRole","ram:AttachPolicyToRole","ram:DetachPolicyFromRole"],"Resource":"acs:ram:*:*:role/ResourceDirectoryAccountAccessRole"}]}</PolicyDocument>\\r\\n\\t\\t<CreateDate>2021-03-18T08:51:33Z</CreateDate>\\r\\n\\t\\t<PolicyId>cp-SImPt8GCEwiq****</PolicyId>\\r\\n\\t\\t<EffectScope>RAM</EffectScope>\\r\\n\\t</ControlPolicy>\\r\\n\\t<RequestId>AB769936-CDFA-4D52-8CE2-A3581800044A</RequestId>\\r\\n</GetControlPolicyResponse>\\t\\r\\n","errorExample":""}]', - 'title' => '查询管控策略的详情', - 'summary' => '调用GetControlPolicy查询管控策略的详情。', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"E7747EDF-EDDC-5B38-9B6A-6392B9C92B1C\\"\\n}","errorExample":""},{"type":"xml","example":"<UntagResourcesResponse>\\n <RequestId>E7747EDF-EDDC-5B38-9B6A-6392B9C92B1C</RequestId>\\n</UntagResourcesResponse>","errorExample":""}]', + 'title' => '解绑标签', + 'changeSet' => [], ], - 'ListControlPolicies' => [ - 'summary' => '调用ListControlPolicies查询管控策略列表。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'UpdateAccount' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'list', - 'riskType' => 'none', - 'chargeType' => 'free', - ], + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ - 'name' => 'PolicyType', - 'in' => 'query', - 'schema' => [ - 'description' => '管控策略类型。取值:'."\n" - ."\n" - .'- System:系统管控策略。'."\n" - .'- Custom:自定义管控策略。', - 'type' => 'string', - 'required' => false, - 'example' => 'System', - ], - ], - [ - 'name' => 'PageNumber', + 'name' => 'NewDisplayName', 'in' => 'query', - 'schema' => [ - 'description' => '页码。'."\n" - ."\n" - .'起始值:1。默认值:1。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '200000', - 'minimum' => '1', - 'example' => '1', - 'default' => '1', - ], + 'schema' => ['description' => '新的成员名称。'."\n" + .'> `NewDisplayName`与`NewAccountType`任选其一设置,不能同时设置。', 'type' => 'string', 'required' => false, 'example' => 'admin'], ], [ - 'name' => 'PageSize', + 'name' => 'NewAccountType', 'in' => 'query', - 'schema' => [ - 'description' => '分页时每页显示的数据条数。'."\n" - ."\n" - .'取值范围:1~100。默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '100', - 'minimum' => '1', - 'example' => '10', - 'default' => '10', - ], + 'schema' => ['description' => '新的成员类型。取值:'."\n" + ."\n" + .'- ResourceAccount:将指定的云账号切换为资源账号。'."\n" + .'- CloudAccount:将指定的资源账号切换为云账号。'."\n" + ."\n" + .'> `NewDisplayName`与`NewAccountType`任选其一设置,不能同时设置。', 'type' => 'string', 'required' => false, 'example' => 'ResourceAccount'], ], [ - 'name' => 'Language', + 'name' => 'AccountId', 'in' => 'query', - 'schema' => [ - 'description' => '指定返回结果中管控策略描述的语言。取值:'."\n" - ."\n" - .'- zh-CN(默认值):中文。'."\n" - .'- en:英文。'."\n" - .'- ja:日文。'."\n" - ."\n" - .'> 该参数仅在系统管控策略时有效。', - 'type' => 'string', - 'required' => false, - 'example' => 'zh-CN', - ], + 'schema' => ['description' => '成员ID。', 'type' => 'string', 'required' => true, 'example' => '12323344****'], ], [ - 'name' => 'Tag', + 'name' => 'DryRun', 'in' => 'query', - 'style' => 'flat', - 'schema' => [ - 'description' => '标签。', - 'type' => 'array', - 'items' => [ - 'description' => '标签。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '标签键。', - 'type' => 'string', - 'required' => false, - 'example' => 'tag_key', - ], - 'Value' => [ - 'description' => '标签值。', - 'type' => 'string', - 'required' => false, - 'example' => 'tag_value', - ], - ], - 'required' => false, - ], - 'required' => false, - ], + 'schema' => ['description' => '是否只预检此次请求。取值:'."\n" + .'- true:发送检查请求,不会修改成员信息。检查项包括成员状态是否可以修改、成员是否具有安全信息等。如果检查不通过,则返回对应错误码。'."\n" + .'- false(默认):发送正常请求,通过检查后直接修改成员。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '返回结果。', + 'description' => '返回参数。', 'type' => 'object', 'properties' => [ - 'TotalCount' => [ - 'description' => '管控策略数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9424A34C-3471-45AD-B6AB-924BBDFE42F9', - ], - 'PageSize' => [ - 'description' => '分页时每页显示的数据条数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'PageNumber' => [ - 'description' => '页码。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'ControlPolicies' => [ + 'Account' => [ + 'description' => '成员信息。', 'type' => 'object', - 'itemNode' => true, 'properties' => [ - 'ControlPolicy' => [ - 'description' => '管控策略列表。', - 'type' => 'array', - 'items' => [ - 'description' => '管控策略列表。', - 'type' => 'object', - 'properties' => [ - 'UpdateDate' => [ - 'description' => '管控策略更新时间。', - 'type' => 'string', - 'example' => '2020-08-05T06:32:24Z', - ], - 'Description' => [ - 'description' => '管控策略描述。', - 'type' => 'string', - 'example' => '支持阿里云所有操作的系统管控策略', - ], - 'EffectScope' => [ - 'description' => '管控策略生效范围。取值:'."\n" - ."\n" - .'- All:表示该管控策略针对阿里云账号、RAM用户或RAM角色生效。'."\n" - .'- RAM:表示该管控策略仅针对RAM用户或RAM角色生效。'."\n", - 'type' => 'string', - 'example' => 'All', - ], - 'AttachmentCount' => [ - 'description' => '管控策略被引用的次数。', - 'type' => 'string', - 'example' => '44', - ], - 'PolicyName' => [ - 'description' => '管控策略名称。', - 'type' => 'string', - 'example' => 'FullAliyunAccess', - ], - 'PolicyId' => [ - 'description' => '管控策略ID。', - 'type' => 'string', - 'example' => 'cp-FullAliyunAccess', - ], - 'CreateDate' => [ - 'description' => '管控策略创建时间。', - 'type' => 'string', - 'example' => '2020-08-05T06:32:24Z', - ], - 'PolicyType' => [ - 'description' => '管控策略类型。取值:'."\n" - ."\n" - .'- System:系统管控策略。'."\n" - .'- Custom:自定义管控策略。', - 'type' => 'string', - 'example' => 'System', - ], - 'Tags' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'Tag' => [ - 'description' => '标签。', - 'type' => 'array', - 'items' => [ - 'description' => '标签。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '标签键。', - 'type' => 'string', - 'example' => 'tag_key', - ], - 'Value' => [ - 'description' => '标签值。', - 'type' => 'string', - 'example' => 'tag_value', - ], - ], - ], - ], - ], - ], - ], - ], - ], + 'Status' => ['description' => '成员加入状态。取值:'."\n" + ."\n" + .'- CreateSuccess:创建成功。'."\n" + .'- InviteSuccess:邀请成功。'."\n" + .'- Removed:已移除。'."\n" + .'- SwitchSuccess:切换成功。', 'type' => 'string', 'example' => 'CreateSuccess'], + 'Type' => ['description' => '成员类型。取值:'."\n" + ."\n" + .'- CloudAccount:云账号。'."\n" + .'- ResourceAccount:资源账号。', 'type' => 'string', 'example' => 'ResourceAccount'], + 'DisplayName' => ['description' => '成员名称。', 'type' => 'string', 'example' => 'admin'], + 'FolderId' => ['description' => '资源夹ID。', 'type' => 'string', 'example' => 'fd-bVaRIG****'], + 'ResourceDirectoryId' => ['description' => '资源目录ID。', 'type' => 'string', 'example' => 'rd-k3****'], + 'JoinTime' => ['description' => '成员加入时间(UTC时间)。', 'type' => 'string', 'example' => '2015-01-23T12:33:18Z'], + 'AccountId' => ['description' => '成员ID。', 'type' => 'string', 'example' => '12323344****'], + 'JoinMethod' => ['description' => '成员加入方式。取值:'."\n" + ."\n" + .'- invited:邀请。'."\n" + .'- created:创建。', 'type' => 'string', 'example' => 'created'], + 'ModifyTime' => ['description' => '成员修改时间(UTC时间)。', 'type' => 'string', 'example' => '2015-01-23T12:33:18Z'], + 'AccountName' => ['description' => '阿里云账号名称。', 'type' => 'string', 'example' => 'ecs-manager@aliyun.com'], ], ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE'], ], ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'errorCodes' => [ + 404 => [ + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => ''], + ['errorCode' => 'EntityNotExists.Account', 'errorMessage' => 'This resource directory account does not exist.', 'description' => ''], + ], + 409 => [ + ['errorCode' => 'InvalidParameter.Account.DisplayName.AlreadyUsed', 'errorMessage' => 'The displayname of account has been used.', 'description' => ''], + ['errorCode' => 'MissingDisplayNameOrAccountType', 'errorMessage' => 'Either display name or account type must be specified.', 'description' => ''], + ['errorCode' => 'AccountTypeMismatch', 'errorMessage' => 'The type or status of the member account cannot satisfy the current operation.', 'description' => ''], + ['errorCode' => 'PrimaryAkInUse', 'errorMessage' => 'The account has the primary AK in use.', 'description' => ''], + ['errorCode' => 'MissingSecurityInfo', 'errorMessage' => 'Security information is missing.', 'description' => ''], + ['errorCode' => 'LegalEntityDifferent', 'errorMessage' => 'The account legal entity is different from the one of the Management Account.', 'description' => ''], + ['errorCode' => 'CallerIdentityError', 'errorMessage' => 'Please use the RAM user or role of the Management Account.', 'description' => ''], + ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"TotalCount\\": 1,\\n \\"RequestId\\": \\"9424A34C-3471-45AD-B6AB-924BBDFE42F9\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"ControlPolicies\\": {\\n \\"ControlPolicy\\": [\\n {\\n \\"UpdateDate\\": \\"2020-08-05T06:32:24Z\\",\\n \\"Description\\": \\"支持阿里云所有操作的系统管控策略\\",\\n \\"EffectScope\\": \\"All\\",\\n \\"AttachmentCount\\": \\"44\\",\\n \\"PolicyName\\": \\"FullAliyunAccess\\",\\n \\"PolicyId\\": \\"cp-FullAliyunAccess\\",\\n \\"CreateDate\\": \\"2020-08-05T06:32:24Z\\",\\n \\"PolicyType\\": \\"System\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"Key\\": \\"tag_key\\",\\n \\"Value\\": \\"tag_value\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<ListControlPoliciesResponse>\\r\\n\\t<TotalCount>1</TotalCount>\\r\\n\\t<RequestId>9424A34C-3471-45AD-B6AB-924BBDFE42F9</RequestId>\\r\\n\\t<PageSize>10</PageSize>\\r\\n\\t<PageNumber>1</PageNumber>\\r\\n\\t<ControlPolicies>\\r\\n\\t\\t<ControlPolicy>\\r\\n\\t\\t\\t<PolicyType>System</PolicyType>\\r\\n\\t\\t\\t<UpdateDate>2020-08-05T06:32:24Z</UpdateDate>\\r\\n\\t\\t\\t<Description>支持阿里云所有操作的系统管控策略</Description>\\r\\n\\t\\t\\t<AttachmentCount>44</AttachmentCount>\\r\\n\\t\\t\\t<PolicyName>FullAliyunAccess</PolicyName>\\r\\n\\t\\t\\t<CreateDate>2020-08-05T06:32:24Z</CreateDate>\\r\\n\\t\\t\\t<PolicyId>cp-FullAliyunAccess</PolicyId>\\r\\n\\t\\t\\t<EffectScope>All</EffectScope>\\r\\n\\t\\t</ControlPolicy>\\r\\n\\t</ControlPolicies>\\r\\n</ListControlPoliciesResponse>\\t\\r\\n","errorExample":""}]', - 'title' => '查询管控策略列表', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Account\\": {\\n \\"Status\\": \\"CreateSuccess\\",\\n \\"Type\\": \\"ResourceAccount\\",\\n \\"DisplayName\\": \\"admin\\",\\n \\"FolderId\\": \\"fd-bVaRIG****\\",\\n \\"ResourceDirectoryId\\": \\"rd-k3****\\",\\n \\"JoinTime\\": \\"2015-01-23T12:33:18Z\\",\\n \\"AccountId\\": \\"12323344****\\",\\n \\"JoinMethod\\": \\"created\\",\\n \\"ModifyTime\\": \\"2015-01-23T12:33:18Z\\",\\n \\"AccountName\\": \\"ecs-manager@aliyun.com\\"\\n },\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<UpdateAccountResponse>\\r\\n <RequestId>9B34724D-54B0-4A51-B34D-4512372FE1BE</RequestId>\\r\\n <Account>\\r\\n <ResourceDirectoryId>rd-k3****</ResourceDirectoryId>\\r\\n <AccountId>12323344****</AccountId>\\r\\n <DisplayName>admin</DisplayName>\\r\\n <FolderId>fd-bVaRIG****</FolderId>\\r\\n <JoinMethod>created</JoinMethod>\\r\\n <JoinTime>2015-01-23T12:33:18Z</JoinTime>\\r\\n <Type>ResourceAccount</Type>\\r\\n <Status>CreateSuccess</Status>\\r\\n <RecordId>06950264-3f0d-4ca9-82dd-6ee7a3d33d6b</RecordId>\\r\\n <ModifyTime>2015-01-23T12:33:18Z</ModifyTime>\\r\\n </Account>\\r\\n</UpdateAccountResponse>","errorExample":""}]', + 'title' => '修改成员', + 'summary' => '调用UpdateAccount修改成员名称或切换成员类型。', + 'description' => '### 前提条件'."\n" + ."\n" + .'- 为确保系统可以记录到管理操作的具体操作者,请使用管理账号下具有资源目录管理权限(AliyunResourceDirectoryFullAccess)的RAM用户或RAM角色调用本API。'."\n" + .'- 资源账号切换为云账号时需要满足的条件,请参见[资源账号切换为云账号](~~111233~~)。'."\n" + .'- 云账号切换为资源账号时需要满足的条件,请参见[云账号切换为资源账号](~~209980~~)。', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', + 'changeSet' => [], ], 'UpdateControlPolicy' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'summary' => '调用UpdateControlPolicy修改自定义管控策略。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -8936,59 +5816,37 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - ], + 'systemTags' => ['operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ 'name' => 'PolicyId', 'in' => 'query', - 'schema' => [ - 'description' => '管控策略ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cp-jExXAqIYkwHN****', - ], + 'schema' => ['description' => '管控策略ID。', 'type' => 'string', 'required' => true, 'example' => 'cp-jExXAqIYkwHN****'], ], [ 'name' => 'NewPolicyName', 'in' => 'query', - 'schema' => [ - 'description' => '新的管控策略名称。'."\n" - ."\n" - .'长度为1~128个字符,必须以英文字母开头,可以包含英文字母、数字和短划线(-)。', - 'type' => 'string', - 'required' => false, - 'example' => 'NewControlPolicy', - ], + 'schema' => ['description' => '新的管控策略名称。'."\n" + ."\n" + .'长度为1~128个字符,必须以英文字母开头,可以包含英文字母、数字和短划线(-)。', 'type' => 'string', 'required' => false, 'example' => 'NewControlPolicy'], ], [ 'name' => 'NewDescription', 'in' => 'query', - 'schema' => [ - 'description' => '新的管控策略描述。'."\n" - ."\n" - .'长度为1~1024个字符,必须以英文字母开头,可以包含英文字母、数字、下划线(_)和短划线(-)。', - 'type' => 'string', - 'required' => false, - 'example' => 'ExampleControlPolicy', - ], + 'schema' => ['description' => '新的管控策略描述。'."\n" + ."\n" + .'长度为1~1024个字符,必须以英文字母开头,可以包含英文字母、数字、下划线(_)和短划线(-)。', 'type' => 'string', 'required' => false, 'example' => 'ExampleControlPolicy'], ], [ 'name' => 'NewPolicyDocument', 'in' => 'query', - 'schema' => [ - 'description' => '新的管控策略内容。'."\n" - ."\n" - .'最大长度为4096个字符。'."\n" - ."\n" - .'管控策略语言,请参见[管控策略语言](~~179096~~)。'."\n" - ."\n" - .'管控策略示例,请参见[自定义管控策略示例](~~181474~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '{"Version":"1","Statement":[{"Effect":"Deny","Action":["ram:UpdateRole","ram:DeleteRole","ram:AttachPolicyToRole","ram:DetachPolicyFromRole"],"Resource":"acs:ram:*:*:role/ResourceDirectoryAccountAccessRole"}]}', - ], + 'schema' => ['description' => '新的管控策略内容。'."\n" + ."\n" + .'最大长度为4096个字符。'."\n" + ."\n" + .'管控策略语言,请参见[管控策略语言](~~179096~~)。'."\n" + ."\n" + .'管控策略示例,请参见[自定义管控策略示例](~~181474~~)。', 'type' => 'string', 'required' => false, 'example' => '{"Version":"1","Statement":[{"Effect":"Deny","Action":["ram:UpdateRole","ram:DeleteRole","ram:AttachPolicyToRole","ram:DetachPolicyFromRole"],"Resource":"acs:ram:*:*:role/ResourceDirectoryAccountAccessRole"}]}'], ], ], 'responses' => [ @@ -9001,85 +5859,68 @@ 'description' => '管控策略详情。', 'type' => 'object', 'properties' => [ - 'UpdateDate' => [ - 'description' => '管控策略更新时间。', - 'type' => 'string', - 'example' => '2021-03-18T10:04:55Z', - ], - 'Description' => [ - 'description' => '管控策略描述。', - 'type' => 'string', - 'example' => 'ExampleControlPolicy', - ], - 'EffectScope' => [ - 'description' => '管控策略生效范围。取值:'."\n" - ."\n" - .'- All:表示该管控策略针对阿里云账号、RAM用户或RAM角色生效。'."\n" - .'- RAM:表示该管控策略仅针对RAM用户或RAM角色生效。', - 'type' => 'string', - 'example' => 'RAM', - ], - 'AttachmentCount' => [ - 'description' => '管控策略被引用的次数。', - 'type' => 'string', - 'example' => '0', - ], - 'PolicyName' => [ - 'description' => '管控策略名称。', - 'type' => 'string', - 'example' => 'NewControlPolicy', - ], - 'PolicyId' => [ - 'description' => '管控策略ID。', - 'type' => 'string', - 'example' => 'cp-jExXAqIYkwHN****', - ], - 'CreateDate' => [ - 'description' => '管控策略创建时间。', - 'type' => 'string', - 'example' => '2021-03-18T09:24:19Z', - ], - 'PolicyType' => [ - 'description' => '管控策略类型。取值:'."\n" - ."\n" - .'- System:系统管控策略。'."\n" - .'- Custom:自定义管控策略。', - 'type' => 'string', - 'example' => 'Custom', - ], + 'UpdateDate' => ['description' => '管控策略更新时间。', 'type' => 'string', 'example' => '2021-03-18T10:04:55Z'], + 'Description' => ['description' => '管控策略描述。', 'type' => 'string', 'example' => 'ExampleControlPolicy'], + 'EffectScope' => ['description' => '管控策略生效范围。取值:'."\n" + ."\n" + .'- All:表示该管控策略针对阿里云账号、RAM用户或RAM角色生效。'."\n" + .'- RAM:表示该管控策略仅针对RAM用户或RAM角色生效。', 'type' => 'string', 'example' => 'RAM'], + 'AttachmentCount' => ['description' => '管控策略被引用的次数。', 'type' => 'string', 'example' => '0'], + 'PolicyName' => ['description' => '管控策略名称。', 'type' => 'string', 'example' => 'NewControlPolicy'], + 'PolicyId' => ['description' => '管控策略ID。', 'type' => 'string', 'example' => 'cp-jExXAqIYkwHN****'], + 'CreateDate' => ['description' => '管控策略创建时间。', 'type' => 'string', 'example' => '2021-03-18T09:24:19Z'], + 'PolicyType' => ['description' => '管控策略类型。取值:'."\n" + ."\n" + .'- System:系统管控策略。'."\n" + .'- Custom:自定义管控策略。', 'type' => 'string', 'example' => 'Custom'], + 'ControlPolicyType' => ['title' => '管控策略的类型,取值: ● CONTROL_POLICY:管控策略 ● RESOURCE_CONTROL_POLICY:资源管控策略', 'type' => 'string', 'example' => 'RESOURCE_CONTROL_POLICY'], ], ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '2DFCE4C9-04A9-4C83-BB14-FE791275EC53', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '2DFCE4C9-04A9-4C83-BB14-FE791275EC53'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter.NewPolicyDocument.Length', - 'errorMessage' => 'Unable to save your policy. A policy contains a maximum of 4096 characters.', - ], + ['errorCode' => 'InvalidParameter.NewPolicyDocument.Length', 'errorMessage' => 'Unable to save your policy. A policy contains a maximum of 4096 characters.', 'description' => '无法保存您的策略。策略长度不能超过4096个字符。'], + ], + 404 => [ + ['errorCode' => 'EntityNotExists.ResourceControlPolicy', 'errorMessage' => 'The specified resource control policy does not exist.', 'description' => '资源管控策略不存在。'], + ], + 409 => [ + ['errorCode' => 'DeleteConflict.SystemResourceControlPolicy', 'errorMessage' => 'The system resource control policy cannot be deleted.', 'description' => '系统资源管控策略无法删除。'], + ['errorCode' => 'InvalidResourceControlPolicyEnablementStatus', 'errorMessage' => 'The resource control policy enablement status is not valid to perform this operation.', 'description' => '在当前的资源管控策略启用状态下,无法进行此操作。 '], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"ControlPolicy\\": {\\n \\"UpdateDate\\": \\"2021-03-18T10:04:55Z\\",\\n \\"Description\\": \\"ExampleControlPolicy\\",\\n \\"EffectScope\\": \\"RAM\\",\\n \\"AttachmentCount\\": \\"0\\",\\n \\"PolicyName\\": \\"NewControlPolicy\\",\\n \\"PolicyId\\": \\"cp-jExXAqIYkwHN****\\",\\n \\"CreateDate\\": \\"2021-03-18T09:24:19Z\\",\\n \\"PolicyType\\": \\"Custom\\"\\n },\\n \\"RequestId\\": \\"2DFCE4C9-04A9-4C83-BB14-FE791275EC53\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<UpdateControlPolicyResponse>\\r\\n\\t<ControlPolicy>\\r\\n\\t\\t<PolicyType>Custom</PolicyType>\\r\\n\\t\\t<UpdateDate>2021-03-18T10:04:55Z</UpdateDate>\\r\\n\\t\\t<Description>ExampleControlPolicy</Description>\\r\\n\\t\\t<AttachmentCount>0</AttachmentCount>\\r\\n\\t\\t<PolicyName>NewControlPolicy</PolicyName>\\r\\n\\t\\t<CreateDate>2021-03-18T09:24:19Z</CreateDate>\\r\\n\\t\\t<PolicyId>cp-jExXAqIYkwHN****</PolicyId>\\r\\n\\t\\t<EffectScope>RAM</EffectScope>\\r\\n\\t</ControlPolicy>\\r\\n\\t<RequestId>2DFCE4C9-04A9-4C83-BB14-FE791275EC53</RequestId>\\r\\n</UpdateControlPolicyResponse>\\t\\r\\n","errorExample":""}]', 'title' => '修改自定义管控策略', - 'summary' => '调用UpdateControlPolicy修改自定义管控策略。', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', - ], - 'DeleteControlPolicy' => [ - 'methods' => [ - 'post', - 'get', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateControlPolicy'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:UpdateControlPolicy', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'ControlPolicy', 'arn' => 'acs:resourcemanager::{#accountId}:policy/controlpolicy/{#PolicyId}'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"ControlPolicy\\": {\\n \\"UpdateDate\\": \\"2021-03-18T10:04:55Z\\",\\n \\"Description\\": \\"ExampleControlPolicy\\",\\n \\"EffectScope\\": \\"RAM\\",\\n \\"AttachmentCount\\": \\"0\\",\\n \\"PolicyName\\": \\"NewControlPolicy\\",\\n \\"PolicyId\\": \\"cp-jExXAqIYkwHN****\\",\\n \\"CreateDate\\": \\"2021-03-18T09:24:19Z\\",\\n \\"PolicyType\\": \\"Custom\\",\\n \\"ControlPolicyType\\": \\"RESOURCE_CONTROL_POLICY\\"\\n },\\n \\"RequestId\\": \\"2DFCE4C9-04A9-4C83-BB14-FE791275EC53\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<UpdateControlPolicyResponse>\\r\\n\\t<ControlPolicy>\\r\\n\\t\\t<PolicyType>Custom</PolicyType>\\r\\n\\t\\t<UpdateDate>2021-03-18T10:04:55Z</UpdateDate>\\r\\n\\t\\t<Description>ExampleControlPolicy</Description>\\r\\n\\t\\t<AttachmentCount>0</AttachmentCount>\\r\\n\\t\\t<PolicyName>NewControlPolicy</PolicyName>\\r\\n\\t\\t<CreateDate>2021-03-18T09:24:19Z</CreateDate>\\r\\n\\t\\t<PolicyId>cp-jExXAqIYkwHN****</PolicyId>\\r\\n\\t\\t<EffectScope>RAM</EffectScope>\\r\\n\\t</ControlPolicy>\\r\\n\\t<RequestId>2DFCE4C9-04A9-4C83-BB14-FE791275EC53</RequestId>\\r\\n</UpdateControlPolicyResponse>\\t\\r\\n","errorExample":""}]', + ], + 'UpdateFolder' => [ + 'summary' => '调用UpdateFolder修改资源夹名称。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -9087,19 +5928,19 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'delete', - ], + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ - 'name' => 'PolicyId', + 'name' => 'FolderId', 'in' => 'query', - 'schema' => [ - 'description' => '管控策略ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cp-SImPt8GCEwiq****', - ], + 'schema' => ['description' => '资源夹ID。', 'type' => 'string', 'required' => true, 'example' => 'fd-u8B321****'], + ], + [ + 'name' => 'NewFolderName', + 'in' => 'query', + 'schema' => ['description' => '新资源夹名称。'."\n" + ."\n" + .'长度为1~24个字符或汉字,可包含汉字、英文字母、数字、下划线(_)、点号(.)和短横线(-)。', 'type' => 'string', 'required' => true, 'example' => 'rdFolder'], ], ], 'responses' => [ @@ -9108,31 +5949,49 @@ 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C8541E06-B207-46BF-92C9-DC8DE4609D75', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'C2CBCA30-C8DD-423E-B4AD-4FB694C9180C'], + 'Folder' => [ + 'description' => '资源夹信息。', + 'type' => 'object', + 'properties' => [ + 'FolderId' => ['description' => '资源夹ID。', 'type' => 'string', 'example' => 'fd-u8B321****'], + 'CreateTime' => ['description' => '资源夹创建时间。', 'type' => 'string', 'example' => '2019-02-19T09:34:50.757Z'], + 'ParentFolderId' => ['description' => '父资源夹ID。', 'type' => 'string', 'example' => 'r-b1****'], + 'FolderName' => ['description' => '资源夹名称。', 'type' => 'string', 'example' => 'rdFolder'], + ], ], ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C8541E06-B207-46BF-92C9-DC8DE4609D75\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<DeleteControlPolicyResponse>\\r\\n\\t<RequestId>C8541E06-B207-46BF-92C9-DC8DE4609D75</RequestId>\\r\\n</DeleteControlPolicyResponse>\\t\\r\\n","errorExample":""}]', - 'title' => '删除管控策略', - 'summary' => '调用DeleteControlPolicy删除自定义管控策略。', - 'description' => '对于已绑定了资源夹或成员账号的自定义管控策略,需要先调用[DetachControlPolicy](~~DetachControlPolicy~~)解绑,然后才能删除。', + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'MissingParameter.Folder.Name', 'errorMessage' => 'You must specify the resource folder name.', 'description' => ''], + ['errorCode' => 'InvalidParameter.Folder.Name', 'errorMessage' => 'The Name of folder is invalid.', 'description' => ''], + ['errorCode' => 'InvalidParameter.Folder.Name.Length', 'errorMessage' => 'The Name of folder exceeds the length limit.', 'description' => ''], + ['errorCode' => 'MissingParameter.FolderId', 'errorMessage' => 'You must specify FolderId.', 'description' => ''], + ['errorCode' => 'InvalidParameter.FolderId', 'errorMessage' => 'The FolderId is invalid.', 'description' => ''], + ['errorCode' => 'InvalidParameter.Folder.Name.AlreadyUsed', 'errorMessage' => 'The name already exists under the same parent. Please change to another name.', 'description' => ''], + ], + 404 => [ + ['errorCode' => 'EntityNotExists.ResourceDirectory', 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'description' => ''], + ['errorCode' => 'EntityNotExists.Folder', 'errorMessage' => 'The resource directory folder does not exist.', 'description' => ''], + ], + 409 => [ + ['errorCode' => 'LimitExceeded.Folder.Depth', 'errorMessage' => 'The folder depth exceeds the limit of 5.', 'description' => ''], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C2CBCA30-C8DD-423E-B4AD-4FB694C9180C\\",\\n \\"Folder\\": {\\n \\"FolderId\\": \\"fd-u8B321****\\",\\n \\"CreateTime\\": \\"2019-02-19T09:34:50.757Z\\",\\n \\"ParentFolderId\\": \\"r-b1****\\",\\n \\"FolderName\\": \\"rdFolder\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<UpdateFolderResponse>\\r\\n <Folder>\\r\\n <FolderName>rdFolder</FolderName>\\r\\n <ParentFolderId>r-b1****</ParentFolderId>\\r\\n <FolderId>fd-u8B321****</FolderId>\\r\\n <CreateTime>2019-02-19T09:34:50.757Z</CreateTime>\\r\\n </Folder>\\r\\n <RequestId>C2CBCA30-C8DD-423E-B4AD-4FB694C9180C</RequestId>\\r\\n</UpdateFolderResponse>","errorExample":""}]', + 'title' => '修改资源夹', + 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', + 'changeSet' => [], ], - 'AttachControlPolicy' => [ - 'summary' => '调用AttachControlPolicy绑定管控策略。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'UpdateMessageContact' => [ + 'summary' => '更新联系人信息。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -9140,78 +5999,110 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - ], + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ - 'name' => 'PolicyId', + 'name' => 'ContactId', + 'in' => 'query', + 'schema' => ['description' => '联系人ID。', 'type' => 'string', 'required' => false, 'example' => 'c-qL4HqKONzOM7****'], + ], + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => ['description' => '联系人的名称。', 'type' => 'string', 'required' => false, 'example' => 'tom'], + ], + [ + 'name' => 'EmailAddress', + 'in' => 'query', + 'schema' => ['description' => '联系人的邮箱地址。'."\n" + ."\n" + .'添加邮箱地址后,您需要继续调用[SendEmailVerificationForMessageContact](~~SendEmailVerificationForMessageContact~~)向该邮箱地址发送验证信息,通过验证后,该联系人的邮箱地址才能生效。', 'type' => 'string', 'required' => false, 'example' => 'someone***@example.com'], + ], + [ + 'name' => 'PhoneNumber', + 'in' => 'query', + 'schema' => ['description' => '联系人的手机号码。'."\n" + ."\n" + .'格式:`<国家码>-<手机号码>`。'."\n" + ."\n" + .'<props="china">'."\n" + .'> 仅支持填写`86-<手机号码>`的中国内地手机号码。</props>'."\n" + ."\n" + .'添加手机号码后,您需要继续调用[SendPhoneVerificationForMessageContact](~~SendPhoneVerificationForMessageContact~~)向该手机号码发送验证信息,通过验证后,该联系人的手机号码才能生效。', 'type' => 'string', 'required' => false, 'example' => '86-139****1234'], + ], + [ + 'name' => 'Title', 'in' => 'query', 'schema' => [ - 'description' => '管控策略ID。', + 'description' => '联系人的职位。', 'type' => 'string', - 'required' => true, - 'example' => 'cp-jExXAqIYkwHN****', + 'required' => false, + 'enumValueTitles' => ['FinanceDirector' => '财务负责人', 'TechnicalDirector' => '技术负责人', 'MaintenanceDirector' => '运维负责人', 'CEO' => 'CEO', 'ProjectDirector' => '项目负责人', 'Other' => '其它'], + 'example' => 'TechnicalDirector', ], ], [ - 'name' => 'TargetId', + 'name' => 'MessageTypes', 'in' => 'query', + 'style' => 'flat', 'schema' => [ - 'description' => '目标节点。取值:'."\n" - ."\n" - .'- Root ID:为Root资源夹绑定管控策略。'."\n" - .'- 资源夹ID:为资源夹绑定管控策略。'."\n" - .'- 成员ID:为成员绑定管控策略。', - 'type' => 'string', - 'required' => true, - 'example' => 'fd-ZDNPiT****', + 'description' => '联系人接收的消息分类。', + 'type' => 'array', + 'items' => [ + 'description' => '联系人接收的消息分类。', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => ['ServiceMessage' => '服务消息', 'FaultMessage' => '故障消息', 'AccountExpenses' => '账号资金消息', 'SecurityMessage' => '安全消息', 'ActivityMessage' => '活动消息', 'ProductMessage' => '产品消息'], + 'example' => 'AccountExpenses', + ], + 'required' => false, ], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => 'Schema of Response', 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '95060F1D-6990-4645-8920-A81D1BBFE992', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE'], ], ], ], ], 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidParameter.Name', 'errorMessage' => 'The Name is invalid.', 'description' => ''], + ['errorCode' => 'InvalidParameter.Name.Length', 'errorMessage' => 'The Name exceeds the length limit.', 'description' => ''], + ['errorCode' => 'InvalidParameter.Name.AlreadyUsed', 'errorMessage' => 'The Name already exists. Please change to another name.', 'description' => ''], + ['errorCode' => 'InvalidParameter.EmailAddress', 'errorMessage' => 'The EmailAddress is invalid.', 'description' => ''], + ['errorCode' => 'InvalidParameter.PhoneNumber', 'errorMessage' => 'The PhoneNumber is invalid.', 'description' => ''], + ['errorCode' => 'InvalidParameter.Title', 'errorMessage' => 'The Title is invalid.', 'description' => ''], + ['errorCode' => 'InvalidParameter.MessageTypes', 'errorMessage' => 'The MessageTypes is invalid.', 'description' => ''], + ['errorCode' => 'InvalidParameter.MobileCountryCode', 'errorMessage' => 'The current site does not support the country code.', 'description' => ''], + ['errorCode' => 'InvalidParameter.ContactId', 'errorMessage' => 'The ContactId is invalid.', 'description' => ''], + ['errorCode' => 'MissingParameter.ContactId', 'errorMessage' => 'You must specify ContactId.', 'description' => ''], + ['errorCode' => 'InvalidParameter.EmailAddress.Length', 'errorMessage' => 'The EmailAddress exceeds the length limit.', 'description' => ''], + ['errorCode' => 'ContactStatusMismatchAction', 'errorMessage' => 'The status of the contact does not allow the specified operation.', 'description' => ''], + ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.Target', - 'errorMessage' => 'The specified target does not exist in the resource directory.', - ], + ['errorCode' => 'EntityNotExists.Contact', 'errorMessage' => 'This Contact does not exist.', 'description' => ''], + ], + 429 => [ + ['errorCode' => 'ConcurrentCallNotSupported', 'errorMessage' => 'The operation conflicts with other operations. Please try again later.', 'description' => ''], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"95060F1D-6990-4645-8920-A81D1BBFE992\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<AttachControlPolicyResponse>\\r\\n\\t<RequestId>95060F1D-6990-4645-8920-A81D1BBFE992</RequestId>\\r\\n</AttachControlPolicyResponse>","errorExample":""}]', - 'title' => '绑定管控策略', - 'description' => '绑定成功后,资源夹或成员将会立即受到管控策略的管控。请务必确定绑定操作的结果是符合预期的,以免影响您的业务正常运行。'."\n" - ."\n" - .'系统会默认为资源夹和成员绑定系统策略FullAliyunAccess。'."\n" - ."\n" - .'管控策略在绑定节点下整体生效,即父资源夹绑定的管控策略,会在其子资源夹及其成员上生效。'."\n" - ."\n" - .'每个节点(资源夹、成员)最多允许绑定10条管控策略。', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\"\\n}","type":"json"}]', + 'title' => '更新联系人信息', + 'changeSet' => [], ], - 'DetachControlPolicy' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'UpdatePayerForAccount' => [ + 'summary' => '更新成员的结算账号。', + 'path' => '', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -9219,922 +6110,1487 @@ ], 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - ], + 'systemTags' => ['operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'autoTest' => true, 'tenantRelevance' => 'tenant'], 'parameters' => [ [ - 'name' => 'PolicyId', + 'name' => 'AccountId', 'in' => 'query', - 'schema' => [ - 'description' => '管控策略ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cp-jExXAqIYkwHN****', - ], + 'schema' => ['description' => '成员账号ID。', 'type' => 'string', 'required' => true, 'example' => '138660628348****'], ], [ - 'name' => 'TargetId', + 'name' => 'PayerAccountId', 'in' => 'query', - 'schema' => [ - 'description' => '目标节点。取值:'."\n" - ."\n" - .'- Root ID:为Root资源夹解绑管控策略。'."\n" - .'- 资源夹ID:为资源夹解绑管控策略。'."\n" - .'- 成员ID:为成员解绑管控策略。', - 'type' => 'string', - 'required' => true, - 'example' => 'fd-ZDNPiT****', - ], + 'schema' => ['description' => '结算账号ID。', 'type' => 'string', 'required' => true, 'example' => '12323344****'], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => 'Schema of Response', 'description' => '返回结果。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '9EA4F962-1A2E-4AFE-BE0C-B14736FC46CC', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '9B34724D-54B0-4A51-B34D-4512372FE1BE'], ], ], ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'NotSupport.DetachLastControlPolicy', - 'errorMessage' => 'It is not detach the last control policy on the target node.', - ], - ], 404 => [ - [ - 'errorCode' => 'EntityNotExists.Target', - 'errorMessage' => 'The specified target does not exist in the resource directory.', - ], + ['errorCode' => 'EntityNotExists.Account', 'errorMessage' => 'This resource directory account does not exist.', 'description' => ''], + ], + 409 => [ + ['errorCode' => 'AccountTypeMismatch', 'errorMessage' => 'The type or status of the member account cannot satisfy the current operation.', 'description' => ''], + ['errorCode' => 'InconsistentEnterpriseNameError', 'errorMessage' => 'The enterprise name of the payment account and the member must be consistent.', 'description' => ''], + ['errorCode' => 'NotSupport.PayerAccountInAnotherResourceDirectory', 'errorMessage' => 'The specified payment account does not exist in the resource directory. You must specify a valid payment account.', 'description' => ''], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9EA4F962-1A2E-4AFE-BE0C-B14736FC46CC\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<DetachControlPolicyResponse>\\r\\n\\t<RequestId>9EA4F962-1A2E-4AFE-BE0C-B14736FC46CC</RequestId>\\r\\n</DetachControlPolicyResponse>\\t\\r\\n","errorExample":""}]', - 'title' => '解绑管控策略', - 'summary' => '调用DetachControlPolicy解绑管控策略。', - 'description' => '解绑成功后,原绑定的资源夹或成员将会立即失去管控策略的管控。请务必确定解绑操作的结果是符合预期的,以免影响您的业务正常运行。'."\n" - ."\n" - .'系统策略和自定义管控策略都可以解绑,但资源夹或成员上绑定的最后一条管控策略不允许解绑。', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9B34724D-54B0-4A51-B34D-4512372FE1BE\\"\\n}","type":"json"}]', + 'title' => '更新成员的结算账号', + 'changeSet' => [], ], - 'ListControlPolicyAttachmentsForTarget' => [ - 'methods' => [ - 'post', - 'get', + ], + 'endpoints' => [ + ['regionId' => 'ap-southeast-1', 'regionName' => '新加坡', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'resourcedirectory-intl.aliyuncs.com', 'endpoint' => 'resourcedirectory-intl.aliyuncs.com', 'vpc' => 'resourcedirectory.vpc-proxy.aliyuncs.com'], + ['regionId' => 'cn-shanghai', 'regionName' => '华东2(上海)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'resourcedirectory.aliyuncs.com', 'endpoint' => 'resourcedirectory.aliyuncs.com', 'vpc' => 'resourcedirectory.vpc-proxy.aliyuncs.com'], + ], + 'errorCodes' => [ + ['code' => 'AccountInAnotherResourceDir', 'message' => 'This account is a master account or a member account in another resource directory.', 'http_code' => 409, 'description' => '当前账号是主账号或已经在另一个资源目录内。'], + ['code' => 'AccountNotExist.DeleteAccount', 'message' => 'The deletion failed. The account does not exist. Please confirm whether it has been deleted.', 'http_code' => 409, 'description' => '删除失败。账号不存在,请确认是否已经删除。'], + ['code' => 'AccountNotInResourceDirectory', 'message' => 'The account is not a master or a member of a resource directory.', 'http_code' => 409, 'description' => '共享者不在资源目录内'], + ['code' => 'AccountSecureMobileAlreadyExists', 'message' => 'The secure mobile number of the member already exists.', 'http_code' => 409, 'description' => '成员的安全手机号已经存在。'], + ['code' => 'AccountTypeMismatch', 'message' => 'The type or status of the member account cannot satisfy the current operation.', 'http_code' => 409, 'description' => '账号类型或状态无法满足当前操作。'], + ['code' => 'AccountTypeOrStatusMismatch', 'message' => 'You cannot perform the action on the member account.', 'http_code' => 409, 'description' => '成员类型或状态不匹配。'], + ['code' => 'AssociateConflict', 'message' => 'You cannot perform the operation while disassociation operation is being performed.', 'http_code' => 409, 'description' => '取消关联中,不能操作关联'], + ['code' => 'BusinessRestricted', 'message' => 'Business is restricted. Please contact your customer service manager.', 'http_code' => 409, 'description' => '业务受限,请联系您的客户经理处理。'], + ['code' => 'CallerIdentityError', 'message' => 'Please use the RAM user or role of the Management Account.', 'http_code' => 409, 'description' => '请使用管理账号的RAM用户或角色进行操作。'], + ['code' => 'CallerIdentityError.DeleteAccount', 'message' => 'Delete operation is not supported for caller identity.', 'http_code' => 409, 'description' => '调用方身份不支持。'], + ['code' => 'CallerIdentityError.DeleteAccount', 'message' => 'Please use the RAM user or role of the management account to delete.', 'http_code' => 409, 'description' => '请使用管理账号的RAM用户或角色进行删除操作。'], + ['code' => 'CanNotBeDetached.FullAliyunAccess', 'message' => 'The system policy FullAliyunAccess cannot be detached.', 'http_code' => 409, 'description' => '系统策略FullAliyunAccess不允许被解除关联。'], + ['code' => 'CannotRegisterMasterAsDelegatedAdministrator', 'message' => 'You attempted to register the management account as a delegated administrator for the service. You can designate only a member as a delegated administrator.', 'http_code' => 409, 'description' => '您试图将管理账号注册为服务的委派管理员, 您只能将成员指定为委派管理员。'], + ['code' => 'ConcurrentCallNotSupported', 'message' => 'The operation conflicts with other operations. Please try again later.', 'http_code' => 429, 'description' => '当前操作与其他操作冲突,请稍后再试。'], + ['code' => 'ConflictedAssociationType', 'message' => 'The specified ResourceId or Target conflicts with AssociationType.', 'http_code' => 400, 'description' => '参数组合冲突:传入参数与AssociationType选定项不符'], + ['code' => 'ContactStatusMismatchAction', 'message' => 'The status of the contact does not allow the specified operation.', 'http_code' => 400, 'description' => '联系人的状态不支持当前操作。'], + ['code' => 'ControlPolicyNotDisabled', 'message' => 'You should disable Control Policy before performing this operation.', 'http_code' => 409, 'description' => '管控策略状态未关闭。'], + ['code' => 'ControlPolicyNotEnabled', 'message' => 'The control policy has not been enabled.', 'http_code' => 409, 'description' => '管控策略未处于Enabled状态下。'], + ['code' => 'CreditControlBlock.DeleteAccount', 'message' => 'The deletion failed. The current account has a credit limit. Please handle the deletion and try again.', 'http_code' => 409, 'description' => '删除失败。当前账号存在资金限制,请处理后重试删除。'], + ['code' => 'DeleteConflict.AttachedPolicy', 'message' => 'The control policy has been attached and cannot be deleted.', 'http_code' => 409, 'description' => '无法删除已被关联的管控策略。'], + ['code' => 'DeleteConflict.Folder.Account', 'message' => 'This folder has accounts.', 'http_code' => 409, 'description' => '资源夹下存在成员,请先移除成员。'], + ['code' => 'DeleteConflict.Folder.SubFolder', 'message' => 'This folder has sub folders.', 'http_code' => 409, 'description' => '资源夹下存在子资源夹,请先删除子资源夹。'], + ['code' => 'DeleteConflict.Policy.Group', 'message' => 'The policy cannot be attached to any group when you delete it.', 'http_code' => 409, 'description' => '删除权限策略前,此权限策略不能被授予任何组。'], + ['code' => 'DeleteConflict.Policy.Role', 'message' => 'The policy cannot be attached to any role when you delete it.', 'http_code' => 409, 'description' => '删除权限策略前,此权限策略不能被授予任何角色。'], + ['code' => 'DeleteConflict.Policy.User', 'message' => 'Before deleting the policy, it may not be attached to any user.', 'http_code' => 409, 'description' => '删除权限策略前,此权限策略不能被授予任何用户。'], + ['code' => 'DeleteConflict.Policy.Version', 'message' => 'You must delete all non-default versions before you delete the policy.', 'http_code' => 409, 'description' => '删除权限策略前,必须删除此权限策略上的所有非默认版本。'], + ['code' => 'DeleteConflict.Policy.Version.Default', 'message' => 'You cannot delete the default policy version.', 'http_code' => 409, 'description' => '无法删除正在使用的权限策略版本。'], + ['code' => 'DeleteConflict.ResourceDir.Account', 'message' => 'This resource directory has accounts.', 'http_code' => 409, 'description' => '资源目录内存在成员,请先移除成员。'], + ['code' => 'DeleteConflict.ResourceDirectory.Account', 'message' => 'Failed to delete the resource directory because one or more member accounts exist. We recommend that you first remove these member accounts.', 'http_code' => 409, 'description' => '资源目录内存在成员,请先移除成员。'], + ['code' => 'DeleteConflict.Role.Policy', 'message' => 'The role cannot have any attached policies when you delete it.', 'http_code' => 409, 'description' => '删除角色前,角色不能有任何权限策略。'], + ['code' => 'DeleteConflict.SystemControlPolicy', 'message' => 'The control policy is a system policy and cannot be deleted.', 'http_code' => 409, 'description' => '系统管控策略无法删除。'], + ['code' => 'DeleteResourceShareConflict', 'message' => 'You cannot delete resource sharing while there are unfinished tasks.', 'http_code' => 409, 'description' => '有任务未处理完成,不能删除资源共享'], + ['code' => 'Deny.TrustedService', 'message' => 'You attempted to remove an account that is used in %s. To complete this operation, you must first remove this account from the Trusted Service.', 'http_code' => 409, 'description' => '当前账号被用于%s可信服务中,请先将此账号从可信服务中解除使用。'], + ['code' => 'DeregisterDA.Deny.TrustedService', 'message' => 'To complete this operation, you need to first remove the member account from being managed in the trusted service.', 'http_code' => 409, 'description' => '要完成此操作,您需要先解除该账号在可信服务中纳管的成员。'], + ['code' => 'DeregisterDeny.TrustedService', 'message' => 'You attempted to deregister an account that is used as a delegated adminstrator in %s. To complete this operation, you must first remove this account from the Trusted Service.', 'http_code' => 409, 'description' => '当前账号是 %s 可信服务的委派管理员账号,请先将此账号从此可信服务中解除使用。'], + ['code' => 'DisassociateConflict', 'message' => 'You cannot perform an associate operation while it is being perfomed.', 'http_code' => 409, 'description' => '关联中,不能操作关联'], + ['code' => 'DisassociateInvalid', 'message' => 'You can not disassociate unassociated resource or target.', 'http_code' => 400, 'description' => '取消关联对象还未关联'], + ['code' => 'EcoRelationCheckFailed', 'message' => 'Accounts associated with partners are not allowed to set up agency payment relationships.', 'http_code' => 409, 'description' => '生态伙伴关联的账号,不允许设置代付关系。'], + ['code' => 'EmailSendingExceedsLimit', 'message' => 'The daily number of messages sent to the same email exceeds the limit.', 'http_code' => 409, 'description' => '向同一个邮箱发送邮件的每日数量超出限制。'], + ['code' => 'EnterpriseCertifyAuthenticationError', 'message' => 'Your account has not passed the enterprise real-name authentication yet.', 'http_code' => 404, 'description' => '当前账号未经过企业实名认证。请您先完成企业实名认证。'], + ['code' => 'EnterpriseInvoiceAuthenticationError', 'message' => 'Your account has not set the enterprise invoice yet.', 'http_code' => 404, 'description' => '账号无企业发票抬头,请完善企业发票抬头信息。'], + ['code' => 'EnterpriseInvoiceTitleError', 'message' => 'The invoice title of the specified account is invalid. You must specify a valid invoice title.', 'http_code' => 409, 'description' => '账号无企业发票抬头,请完善企业发票抬头信息。'], + ['code' => 'EnterpriseNameMismatch', 'message' => 'Your account does not have the same enterpriseName as the master account.', 'http_code' => 409, 'description' => '当前账号的企业名称与主账号的企业名称不一致。'], + ['code' => 'EnterpriseRealNameVerificationError', 'message' => 'The specified account does not pass enterprise real-name verification. We recommend you first complete enterprise real-name verification for the account.', 'http_code' => 409, 'description' => '当前账号未经过企业实名认证。请您先完成企业实名认证。'], + ['code' => 'EntityAlreadyExists.ControlPolicy', 'message' => 'The control policy already exists.', 'http_code' => 409, 'description' => '管控策略已存在。'], + ['code' => 'EntityAlreadyExists.ControlPolicyAttachment', 'message' => 'The specified control policy has already been attached to the specified target.', 'http_code' => 409, 'description' => '指定目标已关联该管控策略。'], + ['code' => 'EntityAlreadyExists.Policy', 'message' => 'The policy already exists.', 'http_code' => 409, 'description' => '权限策略已存在。'], + ['code' => 'EntityAlreadyExists.ResourceDir', 'message' => 'The caller has already initialized resource directory.', 'http_code' => 409, 'description' => '账号已开通资源目录,请勿重复开通。'], + ['code' => 'EntityAlreadyExists.ResourceDir.Account', 'message' => 'This resource directory account already exists.', 'http_code' => 409, 'description' => '创建成员时系统生成的邮箱已被占用,请重试。'], + ['code' => 'EntityAlreadyExists.ResourceDirectory', 'message' => 'The resource directory for the account is already enabled. We recommend that you do not enable the resource directory again.', 'http_code' => 409, 'description' => '账号已开通资源目录,请勿重复开通。'], + ['code' => 'EntityAlreadyExists.ResourceDirectory.Account', 'message' => 'The email address that the system generates when you create a member account already exists. Try again later.', 'http_code' => 409, 'description' => '创建成员时系统生成的邮箱已被占用,请重试。'], + ['code' => 'EntityAlreadyExists.ResourceShare', 'message' => 'The specified resource share ID already exists.', 'http_code' => 409, 'description' => '资源共享ID已存在'], + ['code' => 'EntityAlreadyExists.Role', 'message' => 'The role already exists.', 'http_code' => 409, 'description' => '角色已存在。'], + ['code' => 'EntityAlreadyExists.Role.Policy', 'message' => 'This policy is already attached to the role.', 'http_code' => 409, 'description' => '指定角色已被授予此权限策略。'], + ['code' => 'EntityAlreadyExists.User.Policy', 'message' => 'This policy is already attached to the user.', 'http_code' => 409, 'description' => '指定用户已被授予此权限策略。'], + ['code' => 'EntityNotExist.Group.Policy', 'message' => 'This policy is not attached to the group.', 'http_code' => 404, 'description' => '组未被授予此权限策略。'], + ['code' => 'EntityNotExist.Policy', 'message' => 'The policy does not exist.', 'http_code' => 404, 'description' => '权限策略不存在。'], + ['code' => 'EntityNotExist.Policy.Version', 'message' => 'The policy version does not exist.', 'http_code' => 404, 'description' => '权限策略版本不存在。'], + ['code' => 'EntityNotExist.Role', 'message' => 'The role does not exist.', 'http_code' => 404, 'description' => '角色不存在。'], + ['code' => 'EntityNotExist.Role.Policy', 'message' => 'This policy is not attached to the role.', 'http_code' => 404, 'description' => '角色未被授予此权限策略。'], + ['code' => 'EntityNotExist.Service', 'message' => 'The service does not exist.', 'http_code' => 404, 'description' => '该服务不存在。'], + ['code' => 'EntityNotExist.ServiceLinkedRole', 'message' => 'This role exists but is not a Service Linked Role.', 'http_code' => 404, 'description' => '该角色存在,但不是服务关联角色。'], + ['code' => 'EntityNotExist.ServiceLinkedRole.DeletionTask', 'message' => 'The deletion task for the given ID does not exist.', 'http_code' => 404, 'description' => '该服务相关角色的删除任务不存在。'], + ['code' => 'EntityNotExist.ServiceLinkedRoleTemplate', 'message' => 'The Service Linked Role template does not exist.', 'http_code' => 404, 'description' => '该服务相关角色模板不存在。'], + ['code' => 'EntityNotExist.User.Policy', 'message' => 'This policy is not attached to the user.', 'http_code' => 404, 'description' => '用户未被授予此权限策略。'], + ['code' => 'EntityNotExists.Account', 'message' => 'This resource directory account does not exist.', 'http_code' => 404, 'description' => '成员不存在,请先创建成员。'], + ['code' => 'EntityNotExists.AccountRecord', 'message' => 'This resource directory account recordId does not exist.', 'http_code' => 404, 'description' => '记录ID不存在或已被删除。'], + ['code' => 'EntityNotExists.AgAccount', 'message' => 'The account does not exist.', 'http_code' => 409, 'description' => '账号不存在。'], + ['code' => 'EntityNotExists.Contact', 'message' => 'This Contact does not exist.', 'http_code' => 404, 'description' => 'Contact不存在。'], + ['code' => 'EntityNotExists.Contact.Verification', 'message' => 'This contact verification does not exist.', 'http_code' => 404, 'description' => '联系人验证码不存在。'], + ['code' => 'EntityNotExists.ControlPolicy', 'message' => 'The specified control policy does not exist.', 'http_code' => 404, 'description' => '管控策略不存在。'], + ['code' => 'EntityNotExists.ControlPolicyAttachment', 'message' => 'The specified control policy on the specified target does not exist.', 'http_code' => 404, 'description' => '指定目标上的指定管控策略不存在。'], + ['code' => 'EntityNotExists.EmailModifyRecord', 'message' => 'This email modification record of the account does not exist.', 'http_code' => 404, 'description' => '账号邮箱修改记录不存在。'], + ['code' => 'EntityNotExists.Folder', 'message' => 'The resource directory folder does not exist.', 'http_code' => 404, 'description' => '资源夹不存在,请先创建资源夹。'], + ['code' => 'EntityNotExists.Member', 'message' => 'This Member does not exist.', 'http_code' => 404, 'description' => '成员对象不存在。'], + ['code' => 'EntityNotExists.ResourceDir', 'message' => 'The account has not initialized resource directory.', 'http_code' => 404, 'description' => '当前账号未启用资源目录,请先启用资源目录。'], + ['code' => 'EntityNotExists.ResourceDirectory', 'message' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', 'http_code' => 404, 'description' => '当前账号未启用资源目录,请先启用资源目录。'], + ['code' => 'EntityNotExists.ResourceShare', 'message' => 'Resource sharing does not exist in the current account.', 'http_code' => 404, 'description' => '资源共享不在当前账号内'], + ['code' => 'EntityNotExists.Target', 'message' => 'The specified target does not exist in the resource directory.', 'http_code' => 404, 'description' => '关联目标在资源目录中不存在。'], + ['code' => 'ExistPrepaidInstance.DeleteAccount', 'message' => 'The deletion failed. There are prepaid products under the current account. Please release them and try again.', 'http_code' => 409, 'description' => '删除失败。当前账号下存在预付费产品,请释放后重试删除。'], + ['code' => 'ExistProcessingDeleteFlow.DeleteAccount', 'message' => 'The request is invalid. The account is already in the process of deletion. Please do not repeat the operation.', 'http_code' => 409, 'description' => '请求无效。账号已在删除流程中,请勿重复操作。'], + ['code' => 'ExistUnreleaseInstance.DeleteAccount', 'message' => 'The deletion failed. Certain cloud resources under the current account and you need to delete them.', 'http_code' => 409, 'description' => '删除失败。当前账号存在特定云资源,请先将其删除。'], + ['code' => 'ExistUnsettledBill.DeleteAccount', 'message' => 'The deletion failed. There are unsettled bills in the current account, please settle and try again.', 'http_code' => 409, 'description' => '删除失败。当前账号存在未结算的账单,请结算后重试删除。'], + ['code' => 'ForbidDelete.Account', 'message' => 'Delete is prohibited. The current account is abnormal. Please contact customer service.', 'http_code' => 409, 'description' => '禁止删除。当前账号异常,请联系客服咨询。'], + ['code' => 'FundAccountHasArrearsAmount', 'message' => 'There are arrears in the current payment account. You cannot change the payment account. Please settle the arrears and try again.', 'http_code' => 409, 'description' => '当前付款账户存在欠费,您不可变更付款账户,请结清欠费后重试。'], + ['code' => 'FundAccountOwnerPayedByOthers', 'message' => 'If the payment has been made by another account, it is not allowed to be used as the main payment account.', 'http_code' => 409, 'description' => '已经由其他账号代付的,不允许再作为代付主账号。'], + ['code' => 'HandshakeStatusMismatch', 'message' => 'The invitation is invalid.', 'http_code' => 409, 'description' => '握手状态不匹配或邀请已失效。'], + ['code' => 'IllegalParameter.Account.AccountName', 'message' => 'The account name is illegal.', 'http_code' => 409, 'description' => '账号名称非法。'], + ['code' => 'Inactive', 'message' => 'Resource Management or Resource Access Management is not activated under the account. We recommend that you first activate the two services.', 'http_code' => 404, 'description' => '账号未开通资源组或访问控制服务,请先开通这两个服务。'], + ['code' => 'InconsistentEnterpriseNameError', 'message' => 'The enterprise name of the payment account and the member must be consistent.', 'http_code' => 409, 'description' => '结算账号与成员企业名称不一致。'], + ['code' => 'Invalid.AccountType', 'message' => 'The specified profile type of account is invalid.', 'http_code' => 409, 'description' => '账号类型无效,请您使用企业类型账号。'], + ['code' => 'Invalid.EnterpriseName', 'message' => 'You must specify the enterprise name.', 'http_code' => 409, 'description' => '账号未设置企业名称,请您先完成企业名称设置。'], + ['code' => 'Invalid.payRelation', 'message' => 'Failed to create a member. The specified billing account is unavailable. Please try again.', 'http_code' => 400, 'description' => '成员创建失败。您选择的结算账号不可用,请更换后重新尝试。'], + ['code' => 'Invalid.PayRelation', 'message' => 'Failed to create a member. The specified billing account is unavailable. Please change to another billing account and try again.', 'http_code' => 409, 'description' => '成员创建失败。您选择的结算账号不可用,请更换后重新尝试。'], + ['code' => 'Invalid.VerificationCode', 'message' => 'The verification code is invalid.', 'http_code' => 409, 'description' => '验证码无效。'], + ['code' => 'InvalidControlPolicyEnablementStatus', 'message' => 'The control policy enablement status is not valid to perform this operation.', 'http_code' => 409, 'description' => '在当前的管控策略启用状态下,无法进行此操作。'], + ['code' => 'InvalidMember', 'message' => 'The member does not exist in the resource directory.', 'http_code' => 400, 'description' => '成员对象不在资源目录内。'], + ['code' => 'InvalidParameter', 'message' => 'The specified parameter is invalid.', 'http_code' => 400, 'description' => '参数无效'], + ['code' => 'InvalidParameter.Account.AccountNamePrefix.Length', 'message' => 'The account name prefix exceeds the length limit.', 'http_code' => 400, 'description' => '账号名称前缀长度超出限制。'], + ['code' => 'InvalidParameter.Account.DisplayName', 'message' => 'The DisplayName of account is invalid.', 'http_code' => 400, 'description' => '显示名无效,请输入字符或汉字,可包含汉字、英文字母、数字、下划线(_)、半角句号(.)和短划线(-)。'], + ['code' => 'InvalidParameter.Account.DisplayName.AlreadyUsed', 'message' => 'The display name of account has been used. You must specify a valid display name.', 'http_code' => 409, 'description' => '显示名已被占用,请更换其他名称。'], + ['code' => 'InvalidParameter.Account.DisplayName.AlreadyUsed', 'message' => 'The displayname of account has been used.', 'http_code' => 409, 'description' => '显示名已被占用,请更换其他名称。'], + ['code' => 'InvalidParameter.Account.DisplayName.Length', 'message' => 'The DisplayName of the account exceeds the length limit.', 'http_code' => 400, 'description' => '显示名长度超出限制,长度为2~50个字符或汉字。'], + ['code' => 'InvalidParameter.AccountId', 'message' => 'The AccountId is invalid.', 'http_code' => 400, 'description' => '成员ID无效,请输入16位账号ID。'], + ['code' => 'InvalidParameter.AdminAccountId', 'message' => 'The specified account is not management account or delegated administrator account.', 'http_code' => 409, 'description' => '当前账号不是企业管理账号或委派管理员账号。'], + ['code' => 'InvalidParameter.AssociationStatus', 'message' => 'The AssociationStatus is invalid.', 'http_code' => 400, 'description' => 'AssociationStatus参数错误'], + ['code' => 'InvalidParameter.AssociationType', 'message' => 'The AssociationType is invalid.', 'http_code' => 400, 'description' => 'AssociationType参数错误'], + ['code' => 'InvalidParameter.AssumeRolePolicyDocument.Length', 'message' => 'The maximum length of the trust policy document of the role is exceeded.', 'http_code' => 400, 'description' => '角色信任策略长度超出限制。'], + ['code' => 'InvalidParameter.ChildId', 'message' => 'The ChildId is invalid.', 'http_code' => 400, 'description' => '子资源夹ID无效,资源夹ID应以“r-”开头+6位数字或英文字母或以“fd-”开头+10位数字或英文字母。'], + ['code' => 'InvalidParameter.Comments.Length', 'message' => 'The maximum length of Note is exceeded.', 'http_code' => 400, 'description' => '备注长度超出限制。'], + ['code' => 'InvalidParameter.ContactId', 'message' => 'The ContactId is invalid.', 'http_code' => 400, 'description' => 'ContactId无效。'], + ['code' => 'InvalidParameter.CustomSuffix.InvalidChars', 'message' => 'The parameter CustomSuffix contains invalid characters.', 'http_code' => 400, 'description' => '参数CustomSuffix包含无效字符。'], + ['code' => 'InvalidParameter.CustomSuffix.Length', 'message' => 'The maximum length of the parameter CustomSuffix is exceeded.', 'http_code' => 400, 'description' => '参数CustomSuffix长度超限。'], + ['code' => 'InvalidParameter.CustomSuffix.NotAllowed', 'message' => 'Custom suffix is not allowed for this Service Linked Role.', 'http_code' => 400, 'description' => '该服务关联角色不支持自定义后缀。'], + ['code' => 'InvalidParameter.DeletionTaskId', 'message' => 'The DeletionTaskId is invalid.', 'http_code' => 400, 'description' => '参数DeletionTaskId无效。'], + ['code' => 'InvalidParameter.DeletionTaskId.Length', 'message' => 'The length of DeletionTaskId must be between 26 and 255 characters.', 'http_code' => 400, 'description' => '参数DeletionTaskId长度超限。'], + ['code' => 'InvalidParameter.Description.Length', 'message' => 'The maximum length of the description is exceeded. It must not exceed 1024 characters.', 'http_code' => 400, 'description' => '描述长度超限。最大不得超过1024个字符。'], + ['code' => 'InvalidParameter.Description.NotAllowed', 'message' => 'Custom description is not allowed for this Service Linked Role.', 'http_code' => 400, 'description' => '该服务关联角色不支持自定义描述。'], + ['code' => 'InvalidParameter.DestinationFolderId', 'message' => 'The DestinationFolderId is invalid.', 'http_code' => 400, 'description' => '目标资源夹ID无效,资源夹ID应以“r-”开头+6位数字或英文字母或以“fd-”开头+10位数字或英文字母。'], + ['code' => 'InvalidParameter.DisplayName', 'message' => 'The DisplayName is invalid.', 'http_code' => 400, 'description' => '参数DisplayName无效。'], + ['code' => 'InvalidParameter.DisplayName.Length', 'message' => 'The maximum length of DisplayName is exceeded.', 'http_code' => 400, 'description' => '参数DisplayName长度超出范围。'], + ['code' => 'InvalidParameter.EffectScope', 'message' => 'The parameter EffectScope is invalid.', 'http_code' => 400, 'description' => '参数EffectScope不合法。'], + ['code' => 'InvalidParameter.Email', 'message' => 'The Email is invalid.', 'http_code' => 400, 'description' => '邮箱格式错误。'], + ['code' => 'InvalidParameter.Email.AlreadyUsed', 'message' => 'The email has been used.', 'http_code' => 409, 'description' => '邮箱已被占用,请更换其他邮箱。'], + ['code' => 'InvalidParameter.EmailAddress', 'message' => 'The EmailAddress is invalid.', 'http_code' => 400, 'description' => '邮箱格式无效。'], + ['code' => 'InvalidParameter.EmailAddress.Length', 'message' => 'The EmailAddress exceeds the length limit.', 'http_code' => 400, 'description' => 'EmailAddress长度超限。'], + ['code' => 'InvalidParameter.Folder.Name', 'message' => 'The Name of folder is invalid.', 'http_code' => 400, 'description' => '资源夹名称无效。请输入字符或汉字,可包含英文字母、“_”、“.”、“-”或数字。'], + ['code' => 'InvalidParameter.Folder.Name.AlreadyUsed', 'message' => 'The name already exists under the same parent. Please change to another name.', 'http_code' => 400, 'description' => '相同父级下已存在该名称,请更换。'], + ['code' => 'InvalidParameter.Folder.Name.Length', 'message' => 'The Name of folder exceeds the length limit.', 'http_code' => 400, 'description' => '资源夹名称长度超出限制,长度为1~24个字符或汉字。'], + ['code' => 'InvalidParameter.FolderId', 'message' => 'The FolderId is invalid.', 'http_code' => 400, 'description' => '资源夹ID无效,资源夹ID应以“r-”开头+6位数字或英文字母或以“fd-”开头+10位数字或英文字母。'], + ['code' => 'InvalidParameter.HandshakeId', 'message' => 'The HandshakeId is invalid.', 'http_code' => 400, 'description' => '邀请ID无效,邀请ID应以“h-”开头+16位数字或英文字母。'], + ['code' => 'InvalidParameter.Language', 'message' => 'The parameter Language is invalid.', 'http_code' => 400, 'description' => '参数Language不合法。'], + ['code' => 'InvalidParameter.ManagementAccountName', 'message' => 'The management account name is in the wrong format.', 'http_code' => 409, 'description' => '管理账号名称格式错误。'], + ['code' => 'InvalidParameter.ManagementAccountName.AlreadyUsed', 'message' => 'The ManagementAccountName has been used.', 'http_code' => 409, 'description' => '管理账号名称已被占用,请更换其他名称。'], + ['code' => 'InvalidParameter.ManagementAccountName.Length', 'message' => 'The Parameter ManagementAccountName beyond the length limit.', 'http_code' => 400, 'description' => '资源目录管理账号名称长度超出限制。'], + ['code' => 'InvalidParameter.ManagementAccountSecurityInfo', 'message' => 'The parameter management account secure mobile phone is invalid.', 'http_code' => 409, 'description' => '安全手机号码格式不正确。'], + ['code' => 'InvalidParameter.MaxResults', 'message' => 'The MaxResults is invalid.', 'http_code' => 400, 'description' => 'MaxResults参数错误'], + ['code' => 'InvalidParameter.MaxSessionDuration', 'message' => 'The parameter MaxSessionDuration is invalid.', 'http_code' => 400, 'description' => '参数MaxSessionDuration无效。'], + ['code' => 'InvalidParameter.Member', 'message' => 'The Member is invalid.', 'http_code' => 400, 'description' => 'Member参数无效。'], + ['code' => 'InvalidParameter.Members', 'message' => 'The Members is invalid.', 'http_code' => 400, 'description' => 'Members参数无效。'], + ['code' => 'InvalidParameter.Members.Duplicate', 'message' => 'The Members contains duplicate values.', 'http_code' => 400, 'description' => '生效成员范围有重复项。'], + ['code' => 'InvalidParameter.Members.Length', 'message' => 'The maximum number of Members exceeds the limit.', 'http_code' => 400, 'description' => '成员生效范围数量超限。'], + ['code' => 'InvalidParameter.MessageTypes', 'message' => 'The MessageTypes is invalid.', 'http_code' => 400, 'description' => '消息分类参数无效。'], + ['code' => 'InvalidParameter.MobileCountryCode', 'message' => 'The current site does not support the country code.', 'http_code' => 409, 'description' => '当前站点不支持您输入的国家码。'], + ['code' => 'InvalidParameter.Name', 'message' => 'The Name is invalid.', 'http_code' => 400, 'description' => 'Name参数非法,可以包含汉字、英文。'], + ['code' => 'InvalidParameter.Name.AlreadyUsed', 'message' => 'The Name already exists. Please change to another name.', 'http_code' => 400, 'description' => '资源目录中已存在该联系人名称,请更换。'], + ['code' => 'InvalidParameter.Name.InvalidChars', 'message' => 'The Name is invalid.', 'http_code' => 400, 'description' => '参数Name无效。'], + ['code' => 'InvalidParameter.Name.Length', 'message' => 'The maximum length of Name is exceeded.', 'http_code' => 400, 'description' => '参数Name长度超出范围。'], + ['code' => 'InvalidParameter.Name.Length', 'message' => 'The Name exceeds the length limit.', 'http_code' => 400, 'description' => 'Name长度超限,必须为2~12字符,可以包含汉字、英文。'], + ['code' => 'InvalidParameter.NewAssumeRolePolicyDocument.Length', 'message' => 'The maximum length of the new trust policy document of the role is exceeded.', 'http_code' => 400, 'description' => '新角色信任策略长度超出限制。'], + ['code' => 'InvalidParameter.NewComments.Length', 'message' => 'The maximum length of Note is exceeded.', 'http_code' => 400, 'description' => '备注长度超出限制。'], + ['code' => 'InvalidParameter.NewDescription.Length', 'message' => 'The maximum length of the parameter NewDescription is exceeded.', 'http_code' => 400, 'description' => '参数NewDescription超出限定长度。'], + ['code' => 'InvalidParameter.NewDisplayName.Length', 'message' => 'The maximum length of NewDisplayName is exceeded.', 'http_code' => 400, 'description' => '参数NewDisplayName长度超出范围。'], + ['code' => 'InvalidParameter.NewMaxSessionDuration', 'message' => 'The NewMaxSessionDuration is invalid.', 'http_code' => 400, 'description' => '参数NewMaxSessionDuration无效。'], + ['code' => 'InvalidParameter.NewPolicyDocument.Length', 'message' => 'Unable to save your policy. A policy contains a maximum of 4096 characters.', 'http_code' => 400, 'description' => '无法保存您的策略。策略长度不能超过4096个字符。'], + ['code' => 'InvalidParameter.NewPolicyName.InvalidChars', 'message' => 'The parameter NewPolicyName contains invalid characters.', 'http_code' => 400, 'description' => '参数NewPolicyName包含不合法字符。'], + ['code' => 'InvalidParameter.NewPolicyName.Length', 'message' => 'The maximum length of the parameter NewPolicyName is exceeded.', 'http_code' => 400, 'description' => '参数NewPolicyName超出限定长度。'], + ['code' => 'InvalidParameter.NextToken', 'message' => 'The NextToken is invalid.', 'http_code' => 400, 'description' => 'NextToken参数错误'], + ['code' => 'InvalidParameter.NextToken.Length', 'message' => 'The maximum length of NextToken (256 characters) is exceeded.', 'http_code' => 400, 'description' => 'NextToken长度超限(最大256个字符)'], + ['code' => 'InvalidParameter.ParentFolderId', 'message' => 'The ParentFolderId is invalid.', 'http_code' => 400, 'description' => '父资源夹ID无效,资源夹ID应以“r-”开头+6位数字或英文字母或以“fd-”开头+10位数字或英文字母。'], + ['code' => 'InvalidParameter.Payer', 'message' => 'The specified Payer is invalid.', 'http_code' => 400, 'description' => '结算账号无效,请更换结算账号。'], + ['code' => 'InvalidParameter.PhoneNumber', 'message' => 'The PhoneNumber is invalid.', 'http_code' => 400, 'description' => '手机号格式无效。'], + ['code' => 'InvalidParameter.PolicyDocument.Action', 'message' => 'The specified Action is invalid.', 'http_code' => 400, 'description' => 'Action参数无效。'], + ['code' => 'InvalidParameter.PolicyDocument.Effect', 'message' => 'The specified Effect is invalid.', 'http_code' => 400, 'description' => 'Effect参数无效。'], + ['code' => 'InvalidParameter.PolicyDocument.Length', 'message' => 'Unable to save your policy. A policy contains a maximum of 4096 characters.', 'http_code' => 409, 'description' => '无法保存您的策略。策略长度不能超过4096个字符。'], + ['code' => 'InvalidParameter.PolicyDocument.Length', 'message' => 'The policy document size is limited to %s bytes', 'http_code' => 400, 'description' => '权限策略内容长度超限。权限策略长度不得长于%s个字符。'], + ['code' => 'InvalidParameter.PolicyDocument.PrincipalARNValue', 'message' => 'The condition value of PrincipalARN is invalid.', 'http_code' => 400, 'description' => 'PrincipalARNValue参数无效。'], + ['code' => 'InvalidParameter.PolicyId', 'message' => 'The parameter PolicyId is invalid.', 'http_code' => 400, 'description' => '参数PolicyId不合法。'], + ['code' => 'InvalidParameter.PolicyName.InvalidChars', 'message' => 'The policy name contains invalid characters. It must only contain upper or lower case letters, numbers, and dash (-).', 'http_code' => 400, 'description' => '策略名称包含非法字符。策略名称仅可包含大小写字母、数字以及中划线(-)。'], + ['code' => 'InvalidParameter.PolicyName.Length', 'message' => 'The length of the policy name is invalid. It must be 1 to 128 characters in length.', 'http_code' => 400, 'description' => '策略名称长度不符合要求。策略名称长度必须在1~128个字符之间。'], + ['code' => 'InvalidParameter.PolicyType', 'message' => 'The specified policy type is invalid.', 'http_code' => 400, 'description' => '无效的权限策略类型。'], + ['code' => 'InvalidParameter.PrincipalName.Empty', 'message' => 'You must specify PrincipalName.', 'http_code' => 400, 'description' => '参数PrincipalName不能为空。'], + ['code' => 'InvalidParameter.ResourceGroupId', 'message' => 'The ResourceGroupId is invalid.', 'http_code' => 400, 'description' => '资源组ID无效。'], + ['code' => 'InvalidParameter.ResourceId', 'message' => 'The ResourceId is invalid.', 'http_code' => 400, 'description' => 'ResourceId参数错误'], + ['code' => 'InvalidParameter.ResourceIds', 'message' => 'The ResourceIds is invalid.', 'http_code' => 400, 'description' => '参数ResourceIds无效。'], + ['code' => 'InvalidParameter.ResourceIds', 'message' => 'The specified ResourceIds is invalid.', 'http_code' => 400, 'description' => '传入的资源ID错误'], + ['code' => 'InvalidParameter.ResourceIds.Duplicate', 'message' => 'The specified ResourceId contains duplicate values.', 'http_code' => 400, 'description' => '传入的资源ID有重复项'], + ['code' => 'InvalidParameter.ResourceIds.Length', 'message' => 'The maximum number of ResourceIds (5) is exceeded.', 'http_code' => 400, 'description' => '传入的资源ID数量超限(最大5个)'], + ['code' => 'InvalidParameter.ResourceOwner', 'message' => 'The ResourceOwner is invalid.', 'http_code' => 400, 'description' => 'ResourceOwner参数错误'], + ['code' => 'InvalidParameter.Resources', 'message' => 'The Resources is invalid.', 'http_code' => 400, 'description' => '选定的共享资源无效'], + ['code' => 'InvalidParameter.Resources.Duplicate', 'message' => 'The Resources contains duplicate values.', 'http_code' => 400, 'description' => '选定的共享资源有重复项'], + ['code' => 'InvalidParameter.Resources.Length', 'message' => 'The maximum number of Resources (5) is exceeded.', 'http_code' => 400, 'description' => '选定的共享资源数量超出(最大5个)'], + ['code' => 'InvalidParameter.ResourceShareId', 'message' => 'The ResourceShareId is invalid.', 'http_code' => 400, 'description' => 'ResourceShareId参数错误'], + ['code' => 'InvalidParameter.ResourceShareName', 'message' => 'The ResourceShareName is invalid.', 'http_code' => 400, 'description' => '资源共享名称无效'], + ['code' => 'InvalidParameter.ResourceShareName.Length', 'message' => 'The maximum length of ResourceShareName is exceeded.', 'http_code' => 400, 'description' => '资源共享名称字数超长(最大50字符,一个汉字两个字符)'], + ['code' => 'InvalidParameter.ResourceType', 'message' => 'The ResourceType is invalid.', 'http_code' => 400, 'description' => '传入的资源类型错误'], + ['code' => 'InvalidParameter.RoleName.InvalidChars', 'message' => 'The specified role name contains invalid characters.', 'http_code' => 400, 'description' => '角色名称包含无效字符。'], + ['code' => 'InvalidParameter.RoleName.Length', 'message' => 'The maximum length of the role name is exceeded.', 'http_code' => 400, 'description' => '角色名称长度超出限制。'], + ['code' => 'InvalidParameter.RoleName.Prefix', 'message' => 'Role name prefix AliyunServiceRoleFor can only be used for Service Linked Roles.', 'http_code' => 400, 'description' => 'AliyunServiceRoleFor角色名前缀只能用于服务关联角色。'], + ['code' => 'InvalidParameter.Status', 'message' => 'The specified Status is invalid.', 'http_code' => 400, 'description' => '参数Status无效。'], + ['code' => 'InvalidParameter.Tag.ResourceType', 'message' => 'The Parameter ResourceType is invalid.', 'http_code' => 409, 'description' => '标签资源类型无效。'], + ['code' => 'InvalidParameter.Target', 'message' => 'The Target is invalid.', 'http_code' => 400, 'description' => '共享目标传参错误'], + ['code' => 'InvalidParameter.TargetId', 'message' => 'The parameter TargetId is invalid.', 'http_code' => 400, 'description' => '参数TargetId不合法。'], + ['code' => 'InvalidParameter.Targets', 'message' => 'The Targets is invalid.', 'http_code' => 400, 'description' => '共享目标的参数不符合规则'], + ['code' => 'InvalidParameter.Targets.Duplicate', 'message' => 'The Targets contains duplicate values.', 'http_code' => 400, 'description' => '共享目标有重复项'], + ['code' => 'InvalidParameter.Targets.Length', 'message' => 'The maximum number of Targets (5) is exceeded.', 'http_code' => 400, 'description' => '共享目标数量超限(最大5个)'], + ['code' => 'InvalidParameter.Title', 'message' => 'The Title is invalid.', 'http_code' => 400, 'description' => '职位参数无效。'], + ['code' => 'InvalidParameter.VersionId.Format', 'message' => 'The specified version ID is invalid.', 'http_code' => 400, 'description' => '权限策略版本ID格式错误。'], + ['code' => 'InvalidTarget', 'message' => 'The target you are sharing does not exist in your resource directory.', 'http_code' => 400, 'description' => '共享目标不在共享者的资源目录内'], + ['code' => 'InvoiceBlock.DeleteAccount', 'message' => 'The deletion failed. The invoice status of the current account is abnormal, please contact customer service.', 'http_code' => 409, 'description' => '删除失败。当前账号存在发票状态异常,请联系客服咨询。'], + ['code' => 'LastControlPolicyOnTarget', 'message' => 'The last control policy on a target cannot be detached.', 'http_code' => 409, 'description' => '目标的最后一个管控策略不能被解除关联。'], + ['code' => 'LatestActionNotFinished', 'message' => 'The request is being processed.', 'http_code' => 409, 'description' => '请求正在执行中…'], + ['code' => 'LegalEntityDifferent', 'message' => 'The account legal entity is different from the one of the Management Account.', 'http_code' => 409, 'description' => '账号的法律实体与管理账号不一致。'], + ['code' => 'LegalEntityMismatch', 'message' => 'The account does not have the same legal entity as the management account.', 'http_code' => 409, 'description' => '被邀请账号与资源目录管理账号的实名信息不一致。'], + ['code' => 'LengthLimit.Email', 'message' => 'The maximum length of the email is exceeded.', 'http_code' => 409, 'description' => '邮箱长度超过限制。'], + ['code' => 'LimitExceeded.Account', 'message' => 'The maximum number of member accounts in a resource directory exceeds the limit.', 'http_code' => 409, 'description' => '资源目录中的成员数量超出限制。'], + ['code' => 'LimitExceeded.ContactMembers', 'message' => 'The maximum number of contact members exceeds the limit.', 'http_code' => 400, 'description' => '成员生效范围数量超限。'], + ['code' => 'LimitExceeded.Contacts', 'message' => 'The maximum number of contacts in a resource directory exceeds the limit.', 'http_code' => 400, 'description' => '联系人数量超出最大限额。'], + ['code' => 'LimitExceeded.ControlPolicy', 'message' => 'The maximum number of policies is exceeded.', 'http_code' => 409, 'description' => '管控策略数量超出限制。'], + ['code' => 'LimitExceeded.ControlPolicyAttachment', 'message' => 'The maximum number of control policies on the specified target is exceeded.', 'http_code' => 409, 'description' => '管控策略绑定数量超出限制。'], + ['code' => 'LimitExceeded.Folder.Depth', 'message' => 'The folder depth exceeds the limit of 5.', 'http_code' => 409, 'description' => '资源夹层级超出限制,除了根资源夹最多只能创建5个层级。'], + ['code' => 'LimitExceeded.Frequency', 'message' => 'The frequency of request exceeds limit.', 'http_code' => 409, 'description' => '请求频率过高,请稍后重试。'], + ['code' => 'LimitExceeded.Group.Policy', 'message' => 'The maximum number of policies attached to this group is exceeded.', 'http_code' => 409, 'description' => '用户组授予的权限策略数超出限制。'], + ['code' => 'LimitExceeded.Invitation.InvalidTarget', 'message' => 'The maximum number of invalid targets that can be invited by a single account is exceeded.', 'http_code' => 409, 'description' => '同一账号邀请无效目标数量超过限制。'], + ['code' => 'LimitExceeded.PageSize', 'message' => 'The pagesize exceeds limit of 10.', 'http_code' => 409, 'description' => '分页大小超出限制,最多只能为10页。'], + ['code' => 'LimitExceeded.Policy', 'message' => 'The maximum number of policies is exceeded.', 'http_code' => 409, 'description' => '权限策略数超出限制。'], + ['code' => 'LimitExceeded.Policy.Version', 'message' => 'The maximum number of policy versions is exceeded.', 'http_code' => 409, 'description' => '权限策略版本数超出限制。'], + ['code' => 'LimitExceeded.ResourceIds', 'message' => 'The maximum number of ResourceId is exceeded.', 'http_code' => 400, 'description' => 'ResourceId数量超出限制。'], + ['code' => 'LimitExceeded.Role', 'message' => 'The maximum number of roles is exceeded.', 'http_code' => 409, 'description' => '角色数量超出限制。'], + ['code' => 'LimitExceeded.Role.Policy', 'message' => 'The maximum number of policies attached to this role is exceeded.', 'http_code' => 409, 'description' => '角色授予的权限策略数超出限制。'], + ['code' => 'LimitExceeded.SameTargetInvitationRate', 'message' => 'The number of invitations sent to the same account exceeds the limit.', 'http_code' => 409, 'description' => '针对同一账号的邀请次数超出限制。'], + ['code' => 'LimitExceeded.User.Policy', 'message' => 'The maximum number of policies attached to this user is exceeded.', 'http_code' => 409, 'description' => '用户授予的权限策略数超出限制。'], + ['code' => 'MalformedPolicyDocument', 'message' => 'The policy format is invalid.', 'http_code' => 409, 'description' => '策略格式错误。'], + ['code' => 'MasterUidCanNotOpenTrusteeshipError', 'message' => 'Trusteeship is only available for alibaba directselling accounts and alibaba channel partner (except Agency) enduser', 'http_code' => 409, 'description' => '财务托管目前支持阿里云直客与Reseller伙伴关联客户,您的客户身份暂不支持开通财务托管。'], + ['code' => 'MasterUidCustomerRelationNotExistedError', 'message' => 'Trusteeship cannot be created because the relevant accounts are not belonging to the same channel partner.', 'http_code' => 409, 'description' => '管理账号和成员未关联分销伙伴或关联的分销伙伴不一致,不允许建立财务托管。'], + ['code' => 'MemberAccountAccessDenied', 'message' => 'The member account is not allowed to perform the operation.', 'http_code' => 403, 'description' => '成员账号不允许执行该操作。'], + ['code' => 'MemberAccountOperationNotAllowed', 'message' => 'The member is not allowed to perform the operation.', 'http_code' => 403, 'description' => '成员不能执行此操作。'], + ['code' => 'MemberAccountOperationNotAllowed', 'message' => 'The member account is not allowed to perform the operation.', 'http_code' => 403, 'description' => '成员账号不支持该操作。'], + ['code' => 'MemberAccountResellerVerifyError', 'message' => 'The type of the member must not be reseller.', 'http_code' => 409, 'description' => '成员不能是分销商类型。'], + ['code' => 'MemberAccountVirtualCloudOperatorVerifyError', 'message' => 'The type of the member must not be virtual operator.', 'http_code' => 409, 'description' => '成员不能是虚拟运营商类型。'], + ['code' => 'MemberTypeError.DeleteAccount', 'message' => 'Cloud account type members do not support deletion.', 'http_code' => 409, 'description' => '云账号类型成员不支持删除。'], + ['code' => 'MissingAccountRealName', 'message' => 'The name of the invited account is not specified.', 'http_code' => 409, 'description' => '该邀请账号没有名称信息。'], + ['code' => 'MissingDisplayNameOrAccountType', 'message' => 'Either display name or account type must be specified.', 'http_code' => 409, 'description' => '显示名或账号类型必须存在一个。'], + ['code' => 'MissingParameter.Account.DisplayName', 'message' => 'You must specify DisplayName.', 'http_code' => 400, 'description' => '显示名缺失,请指定显示名。'], + ['code' => 'MissingParameter.AccountId', 'message' => 'You must specify AccountId.', 'http_code' => 400, 'description' => 'AccountId不能为空。'], + ['code' => 'MissingParameter.AssociationType', 'message' => 'You must specify Association Type.', 'http_code' => 400, 'description' => 'AssociationType参数缺失'], + ['code' => 'MissingParameter.ChildId', 'message' => 'You must specify ChildId.', 'http_code' => 400, 'description' => '子资源夹ID缺失,请指定目标ID。'], + ['code' => 'MissingParameter.ContactId', 'message' => 'You must specify ContactId.', 'http_code' => 400, 'description' => 'ContactId不能为空。'], + ['code' => 'MissingParameter.DestinationFolderId', 'message' => 'You must specify DestinationFolderId.', 'http_code' => 400, 'description' => '目标资源夹ID缺失,请指定目标ID。'], + ['code' => 'MissingParameter.DisplayName', 'message' => 'You must specify DisplayName.', 'http_code' => 400, 'description' => '参数DisplayName缺失。'], + ['code' => 'MissingParameter.EffectScope', 'message' => 'You must specify EffectScope.', 'http_code' => 400, 'description' => '参数EffectScope缺失。'], + ['code' => 'MissingParameter.Email', 'message' => 'You must specify Email.', 'http_code' => 400, 'description' => '邮箱缺失,请指定邮箱。'], + ['code' => 'MissingParameter.EmailAddress', 'message' => 'You must specify EmailAddress.', 'http_code' => 400, 'description' => 'EmailAddress参数缺失。'], + ['code' => 'MissingParameter.Folder.Name', 'message' => 'You must specify the resource folder name.', 'http_code' => 400, 'description' => '资源夹名称缺失,请指定资源夹名称。'], + ['code' => 'MissingParameter.FolderId', 'message' => 'You must specify FolderId.', 'http_code' => 400, 'description' => '资源夹ID缺失,请指定目标ID。'], + ['code' => 'MissingParameter.MessageTypes', 'message' => 'You must specify MessageTypes.', 'http_code' => 400, 'description' => 'MessageTypes参数缺失。'], + ['code' => 'MissingParameter.Name', 'message' => 'You must specify Name.', 'http_code' => 400, 'description' => '参数Name为必填参数。'], + ['code' => 'MissingParameter.PhoneNumber', 'message' => 'You must specify PhoneNumber.', 'http_code' => 400, 'description' => 'PhoneNumber参数缺失。'], + ['code' => 'MissingParameter.PolicyDocument', 'message' => 'You must specify PolicyDocument.', 'http_code' => 400, 'description' => '参数PolicyDocument缺失。'], + ['code' => 'MissingParameter.PolicyId', 'message' => 'You must specify PolicyId.', 'http_code' => 400, 'description' => '参数PolicyId缺失。'], + ['code' => 'MissingParameter.PolicyName', 'message' => 'You must specify PolicyName.', 'http_code' => 400, 'description' => '参数PolicyName缺失。'], + ['code' => 'MissingParameter.RecordId', 'message' => 'You must specify RecordId.', 'http_code' => 400, 'description' => '记录ID缺失,请指定目标ID。'], + ['code' => 'MissingParameter.ResourceIdOrTag', 'message' => 'Parameter ResourceId or Tag is required.', 'http_code' => 409, 'description' => '资源ID或标签参数缺失。'], + ['code' => 'MissingParameter.ResourceOwner', 'message' => 'You must specify ResourceOwner.', 'http_code' => 400, 'description' => 'ResourceOwner参数缺失'], + ['code' => 'MissingParameter.ResourceShareId', 'message' => 'You must specify ResourceShareId.', 'http_code' => 400, 'description' => 'ResourceShareId参数缺失'], + ['code' => 'MissingParameter.ResourceShareName', 'message' => 'You must specify ResourceShareName.', 'http_code' => 400, 'description' => '资源共享名称缺失'], + ['code' => 'MissingParameter.TargetId', 'message' => 'You must specify TargetId.', 'http_code' => 400, 'description' => '参数TargetId缺失。'], + ['code' => 'MissingParameter.Title', 'message' => 'You must specify Title.', 'http_code' => 400, 'description' => 'Title参数缺失。'], + ['code' => 'MissingSecureMobilePhone', 'message' => 'Secure mobile phone is missing.', 'http_code' => 409, 'description' => '缺少安全手机号码。'], + ['code' => 'MissingSecurityInfo', 'message' => 'Security info is missing.', 'http_code' => 409, 'description' => '缺少安全信息。'], + ['code' => 'NoLicense.ResourceDirectory', 'message' => 'The resource directory has not enabled the delete operation.', 'http_code' => 409, 'description' => '资源目录未开启删除许可。'], + ['code' => 'NoPermission', 'message' => 'You are not authorized to perform the operation.', 'http_code' => 403, 'description' => '没有权限进行这个操作。'], + ['code' => 'NoRealNameAuthentication', 'message' => 'The account invited has not passed real-name authentication.', 'http_code' => 409, 'description' => '被邀请账号无实名认证。'], + ['code' => 'NotSupport.Account', 'message' => 'You can only perform this operation for a sub-user.', 'http_code' => 409, 'description' => '只支持子用户访问。'], + ['code' => 'NotSupport.Account.RealNameType', 'message' => 'Your account is not a real-name of enterprise type, so you cannot accept the invitation.', 'http_code' => 409, 'description' => '您的账号非企业类型实名,无法接受邀请。'], + ['code' => 'NotSupport.Account.Site', 'message' => 'The caller is not a China site account, which is not supported.', 'http_code' => 409, 'description' => '当前账号所属站点错误,请更换为中国站账号。'], + ['code' => 'NotSupport.AccountInAnotherResourceDirectory', 'message' => 'The invited account already belongs to another resource directory. To continue, remove the account from the other resource directory.', 'http_code' => 409, 'description' => '被邀请账号已归属其他资源目录,如需继续请先将此账号从其他资源目录中移除。'], + ['code' => 'NotSupport.AccountInAnotherResourceDirectory', 'message' => 'The specified account is an Alibaba Cloud account or already exists in another resource directory.', 'http_code' => 409, 'description' => '您的账号是另一个资源目录的管理账号或是另一个资源目录内的成员。'], + ['code' => 'NotSupport.Bid', 'message' => 'End users from the International site cannot visit the BID.', 'http_code' => 409, 'description' => 'Bid不支持国际站用户访问。'], + ['code' => 'NotSupport.CallerType', 'message' => 'Your account type does not support the operation.', 'http_code' => 409, 'description' => '无法访问,账号类型不支持。'], + ['code' => 'NotSupport.DetachLastControlPolicy', 'message' => 'It is not detach the last control policy on the target node.', 'http_code' => 400, 'description' => '不允许解绑目标节点上的最后一个管控策略。'], + ['code' => 'NotSupport.InvitedAccount', 'message' => 'The current operation is not supported for accounts invited to join the resource directory.', 'http_code' => 400, 'description' => '不支持对邀请加入资源目录的账号做当前操作。'], + ['code' => 'NotSupport.PayerAccountInAnotherResourceDir', 'message' => 'This payer account is a master account or a member account in another resource directory.', 'http_code' => 400, 'description' => '结算账号不在当前资源目录内,请更换结算账号。'], + ['code' => 'NotSupport.PayerAccountInAnotherResourceDirectory', 'message' => 'The specified payment account does not exist in the resource directory. You must specify a valid payment account.', 'http_code' => 409, 'description' => '结算账号不在当前资源目录内,请更换结算账号。'], + ['code' => 'NotSupport.Policy', 'message' => 'The policy can only be attached to a Service Linked Role.', 'http_code' => 400, 'description' => '该授权策略只能授给服务关联角色。'], + ['code' => 'NotSupport.PolicyDocument.NotAction', 'message' => 'The specified NotAction is not supported.', 'http_code' => 400, 'description' => '不支持NotAction参数。'], + ['code' => 'NotSupport.ServiceLinkedRole', 'message' => 'Cannot perform the operation on this service linked role.', 'http_code' => 400, 'description' => '无法操作该服务关联角色'], + ['code' => 'NotSupport.SettingResellAccountType', 'message' => 'The current account does not support setting the resellAccountType for members.', 'http_code' => 409, 'description' => '当前账号不支持设置成员的身份类型。'], + ['code' => 'NotSupport.Site', 'message' => 'Site does not allow current user access.', 'http_code' => 400, 'description' => '该操作不支持当前站点。'], + ['code' => 'NotSupport.Site.Action', 'message' => 'Site does not allow current action.', 'http_code' => 400, 'description' => '该操作不支持当前站点。'], + ['code' => 'NotSupportedOperation.Account.EmailModify', 'message' => 'The operation is not supported because the account email is being modifying.', 'http_code' => 400, 'description' => '正在邮箱修改的账号不支持当前操作。'], + ['code' => 'NotSupportedOperation.DeletingAccount', 'message' => 'The operation is not supported because the account email is being modifying.', 'http_code' => 400, 'description' => '不支持正在修改邮箱中的账号执行当前操作。'], + ['code' => 'OperationUnsupported.AccountTypeOrStatusMismatch.MoveAccount', 'message' => 'The account type or status does not match when moving an account.', 'http_code' => 409, 'description' => '成员类型或状态不匹配。'], + ['code' => 'PatternNotMatch.Param.Mobile', 'message' => 'Incorrect mobile format.', 'http_code' => 409, 'description' => '手机号格式无效。'], + ['code' => 'PaymentAccountCreditIdentityTypeError', 'message' => 'Non-credit identity type or insufficient credit limit, cannot be used as payment account.', 'http_code' => 409, 'description' => '非信用身份类型或信用额度不足,不能作为付款账号。'], + ['code' => 'PaymentAccountEnterpriseInvoiceError', 'message' => 'No enterprise invoice header information is set for the payment account.', 'http_code' => 409, 'description' => '结算账号的企业发票抬头信息未设置。'], + ['code' => 'PaymentAccountEnterpriseTypeError', 'message' => 'The type of the payment account is not enterprise.', 'http_code' => 409, 'description' => '结算账号不是企业类型。'], + ['code' => 'PaymentAccountEnterpriseVerifyError', 'message' => 'The type of the payment account is not enterprise verified.', 'http_code' => 409, 'description' => '结算账号不是企业实名类型。'], + ['code' => 'PaymentAccountFinancialRelationshipsChangeFrequencyVerifyError', 'message' => 'The financial relationship of payment account changes too frequently. Please try again later.', 'http_code' => 409, 'description' => '结算账号的财务关系变更太频繁。请稍后重试。'], + ['code' => 'PaymentAccountFinancialRelationshipVerifyError', 'message' => 'The payment account must not be the beneficiary account from other financial relationships.', 'http_code' => 409, 'description' => '结算账号不能是其他财务关系的财务子账号。'], + ['code' => 'PaymentAccountManagementVerifyError', 'message' => 'You can use the management account for settlement because the account type of the new member account is resell.', 'http_code' => 409, 'description' => '新成员账号身份是分销账号,只能选择管理账号结算'], + ['code' => 'PaymentAccountResellerVerifyError', 'message' => 'The type of the payment account must not be reseller.', 'http_code' => 409, 'description' => '结算账号不能是分销商类型。'], + ['code' => 'PaymentAccountVirtualCloudOperatorVerifyError', 'message' => 'The type of the payment account must not be virtual operator.', 'http_code' => 409, 'description' => '结算账号不能是虚拟运营商类型。'], + ['code' => 'PeripheralError.DeleteAccount', 'message' => 'The deletion failed. The deletion process is abnormal. Please try again later.', 'http_code' => 409, 'description' => '删除失败。删除流程异常,请稍后重试。'], + ['code' => 'PrimaryAkInUse', 'message' => 'The root user has an AccessKey pair in use.', 'http_code' => 409, 'description' => '账号存在正在使用的根用户AK。'], + ['code' => 'QuotaExceeded.Account.Count', 'message' => 'The number of resource directory accounts exceeds the quota.', 'http_code' => 409, 'description' => '资源目录中的成员数量超出限制,最多只能创建20个成员。'], + ['code' => 'QuotaExceeded.Contacts', 'message' => 'The maximum number of contacts in a resource directory exceeds the limit.', 'http_code' => 400, 'description' => '联系人数量超出最大限额。'], + ['code' => 'QuotaExceeded.CreateAccount.Count', 'message' => 'The number of accounts that a master account can create exceeds the quota.', 'http_code' => 404, 'description' => '主账号创建的成员数量超出限制,最多只能创建20个成员。'], + ['code' => 'QuotaExceeded.DeleteAccount', 'message' => 'You have exceeded delete account quota for the past 30 days.', 'http_code' => 409, 'description' => '删除成员数量超出最大限额。'], + ['code' => 'QuotaExceeded.Folder.Count', 'message' => 'The number of folders exceeds the quota.', 'http_code' => 409, 'description' => '资源夹数量超出限制。'], + ['code' => 'QuotaExceeded.Members', 'message' => 'The maximum number of Members exceeds the limit.', 'http_code' => 400, 'description' => '成员生效范围数量超限。'], + ['code' => 'QuotaExceeded.ResourceShare.Count', 'message' => 'The maximum number of shared resources (20) is exceeded.', 'http_code' => 409, 'description' => '资源共享数量超出限制(最大20个)'], + ['code' => 'QuotaExceeded.SharedResource.Count', 'message' => 'The maximum number of shared resources per account (50) is exceeded.', 'http_code' => 409, 'description' => '共享的资源超出单个账号最大限制(最大50个)'], + ['code' => 'RemoveConfilctAccountAsDelegatedAdministator', 'message' => 'You attempted to remove a member that is registered as a delegated administrator. To complete this operation, you must first deregister this account as a delegated administrator.', 'http_code' => 409, 'description' => '当前成员是可信服务的委派管理员,请先到可信服务列表解除委派管理员身份后再操作。'], + ['code' => 'ResourceAndTargetBothEmpty', 'message' => 'Either a resource or a target must be specified.', 'http_code' => 400, 'description' => '必须指定一个资源或一个目标'], + ['code' => 'ResourceDirectoryNotInUse', 'message' => 'The specified account is not an Alibaba Cloud account or a member account of the resource directory.', 'http_code' => 404, 'description' => '当前账号不是主账号或不是资源目录的成员。'], + ['code' => 'ResourceDirNotInUse', 'message' => 'The account is not a master or a member of a resource directory.', 'http_code' => 404, 'description' => '当前账号不是主账号或不是资源目录的成员。'], + ['code' => 'ResourceShareStatusMismatchAction', 'message' => 'The status of resource sharing does not allow the specified operation.', 'http_code' => 409, 'description' => '资源共享的状态不支持当前操作'], + ['code' => 'SecureMobileNotExists.InheritFrom', 'message' => 'The inherited secure mobile is missing.', 'http_code' => 409, 'description' => '继承的安全手机号不存在。'], + ['code' => 'SecurityMobileOverLimit', 'message' => 'The number of secure phone numbers exceeds the limit.', 'http_code' => 409, 'description' => '安全手机号绑定账号数量超出限制。'], + ['code' => 'SendValidateCodeExceedsLimitForAccount', 'message' => 'For the same account, the number of verification codes sent exceeds the limit.', 'http_code' => 409, 'description' => '当前账号发送的验证码每日数量超限。'], + ['code' => 'ShareWithYourself', 'message' => 'You cannot share with yourself.', 'http_code' => 409, 'description' => '共享目标不能是自己'], + ['code' => 'SmsSendingExceedsLimitForMember', 'message' => 'For the same member, the number of SMS messages sent exceeds the limit.', 'http_code' => 409, 'description' => '对于相同的成员,发送的短信的数量已经超过了限制。'], + ['code' => 'SmsSendingExceedsLimitForMobile', 'message' => 'For the same mobile number, the number of SMS messages sent exceeds the limit.', 'http_code' => 409, 'description' => '对于相同的手机号码,发送的短信的数量已经超过了限制。'], + ['code' => 'SmsVerificationFailed', 'message' => 'The verification code is incorrect or has expired.', 'http_code' => 409, 'description' => '验证码错误或者已过期。'], + ['code' => 'SpBlock.DeleteAccount', 'message' => 'The deletion failed. There are prepaid products under the current account. Please release them and try again.', 'http_code' => 409, 'description' => '删除失败。当前账号下存在预付费产品,请释放后重试删除。'], + ['code' => 'SpecifiedResourceDirectoryNotExists', 'message' => 'The specified resource directory does not exist. You must specify a valid resource directory.', 'http_code' => 404, 'description' => '资源目录不存在,请指定正确的资源目录。'], + ['code' => 'SubAndMasterUidNotSameCompanyNameError', 'message' => 'Trusteeship is only available for the UIDs from same entity. The entity names of the current accounts are invalid or different.', 'http_code' => 409, 'description' => '同一公司的账号支持开通财务托管,当前管理账号和成员维护的企业名称不一致或未维护企业名称,不允许建立财务托管。'], + ['code' => 'Throttling.EnableControlPolicy', 'message' => 'The operation is too frequent. Please try again later.', 'http_code' => 409, 'description' => '启用管控策略操作过于频繁,请稍后再试。'], + ['code' => 'Throttling.EnableControlPolicy', 'message' => 'The enable operation is too frequent. Please try again in %s minute(s).', 'http_code' => 409, 'description' => '启用管控策略操作过于频繁。请在 %s 分钟后再开启。'], + ['code' => 'UnknownError.Account', 'message' => 'The deletion failed. An unknown error occurred. Please try again later.', 'http_code' => 409, 'description' => '删除失败。未知错误,请稍后重试。'], + ['code' => 'UnknownFinancialError', 'message' => 'An unknown financial error occurred.', 'http_code' => 409, 'description' => '未知的财资错误。'], + ['code' => 'UnsupportedOperation.RemoveAdminSelf', 'message' => 'If the logon account is not an Alibaba Cloud account or not granted administrator permissions, you cannot remove permissions for the account.', 'http_code' => 409, 'description' => '当前账号不是主账号或没有管理员权限时,无法移除自身的权限。'], + ['code' => 'UserOwnFundAccountPayForOthers', 'message' => 'If the account has been used as the main payment account, it is not allowed to set up payment by others.', 'http_code' => 409, 'description' => '已经作为代付主账号的,不允许再设置由他人代付。'], + ['code' => 'NotSupport.DetachLastResourceControlPolicy', 'message' => 'It is not supported to detach the last resource control policy.', 'http_code' => 400, 'description' => '不允许解绑目标节点上的最后一个资源管控策略。 '], + ['code' => 'Throttling.EnableResourceControlPolicy', 'message' => 'The operation is too frequent. Please try again later.', 'http_code' => 409, 'description' => '启用资源管控策略操作过于频繁,请稍后再试。'], + ['code' => 'InvalidResourceControlPolicyEnablementStatus', 'message' => 'The resource control policy enablement status is not valid to perform this operation.', 'http_code' => 409, 'description' => '在当前的资源管控策略启用状态下,无法进行此操作。 '], + ['code' => 'NotSupport.DetachSystemResourceControlPolicy', 'message' => 'It is not supported to detach system resource control policy.', 'http_code' => 400, 'description' => '不允许解绑目标节点上的系统资源管控策略。 '], + ['code' => 'ResourceControlPolicyNotEnabled', 'message' => 'Resource control policy has not been enabled.', 'http_code' => 409, 'description' => '资源管控策略未处于Enabled状态下。'], + ['code' => 'ResourceControlPolicyNotDisabled', 'message' => 'You should disable Resource Control Policy before performing this operation.', 'http_code' => 409, 'description' => '资源管控策略状态未关闭。 '], + ['code' => 'DeleteConflict.SystemResourceControlPolicy', 'message' => 'The system resource control policy cannot be deleted.', 'http_code' => 409, 'description' => '系统资源管控策略无法删除。'], + ['code' => 'LimitExceeded.ResourceControlPolicyAttachment', 'message' => 'The resource control policy attachment number exceeds the limit.', 'http_code' => 409, 'description' => '资源管控策略绑定数量超出限制。'], + ['code' => 'LimitExceeded.ResourceControlPolicy', 'message' => 'The resource control policy number exceeds the limit.', 'http_code' => 409, 'description' => '资源管控策略数量超出限制。 '], + ['code' => 'EntityAlreadyExists.ResourceControlPolicyAttachment', 'message' => 'The resource control policy attachment already exists.', 'http_code' => 409, 'description' => '指定目标已关联该资源管控策略。 '], + ['code' => 'EntityAlreadyExists.ResourceControlPolicy', 'message' => 'The resource control policy already exists.', 'http_code' => 409, 'description' => '资源管控策略已存在。'], + ['code' => 'EntityNotExists.ResourceControlPolicyAttachment', 'message' => 'The specified resource control policy attachment does not exist.', 'http_code' => 404, 'description' => '指定目标上的指定资源管控策略不存在。'], + ['code' => 'EntityNotExists.ResourceControlPolicy', 'message' => 'The specified resource control policy does not exist.', 'http_code' => 404, 'description' => '资源管控策略不存在。'], + ['code' => 'Throttling.EnableResourceControlPolicy', 'message' => 'The enable operation is too frequent. Please try again in %s minute(s).', 'http_code' => 409, 'description' => '启用资源管控策略操作过于频繁。请在 %s 分钟后再开启。'], + ], + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CheckAccountDelete'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateControlPolicy'], + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListTagResources'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UntagResources'], + ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetResourceDirectory'], + ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetHandshake'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'BindSecureMobilePhone'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DetachControlPolicy'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'AcceptHandshake'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SendPhoneVerificationForMessageContact'], + ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListControlPolicies'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteFolder'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DisableControlPolicy'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListDelegatedAdministrators'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'AddMessageContact'], + ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetAccountDeletionStatus'], + ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListHandshakesForResourceDirectory'], + ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetFolder'], + ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetControlPolicy'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CancelHandshake'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DestroyResourceDirectory'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DisassociateMembers'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListAccountsForParent'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SendEmailVerificationForMessageContact'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'InviteAccountToResourceDirectory'], + ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListAncestors'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteControlPolicy'], + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListTagKeys'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateMessageContact'], + ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SetMemberDisplayNameSyncStatus'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'EnableControlPolicy'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetAccountDeletionCheckResult'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'AssociateMembers'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'EnableResourceDirectory'], + ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetControlPolicyEnablementStatus'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteMessageContact'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetMessageContact'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListAccounts'], + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListTagValues'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'PrecheckForConsolidatedBillingAccount'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'RetryChangeAccountEmail'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CancelMessageContactUpdate'], + ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListTargetAttachmentsForControlPolicy'], + ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdatePayerForAccount'], + ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListControlPolicyAttachmentsForTarget'], + ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListTrustedServiceStatus'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateAccount'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ChangeAccountEmail'], + ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SetMemberDeletionPermission'], + ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListHandshakesForAccount'], + ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SendVerificationCodeForEnableRD'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetMessageContactDeletionStatus'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListMessageContactVerifications'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateControlPolicy'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteAccount'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateResourceAccount'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeclineHandshake'], + ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetPayerForAccount'], + ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListFoldersForParent'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CancelChangeAccountEmail'], + ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetAccount'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListMessageContacts'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeregisterDelegatedAdministrator'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'RegisterDelegatedAdministrator'], + ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SendVerificationCodeForBindSecureMobilePhone'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'AttachControlPolicy'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'MoveAccount'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListDelegatedServicesForAccount'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'TagResources'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateFolder'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'RemoveCloudAccount'], + ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateFolder'], + ], + ], + 'ram' => [ + 'productCode' => 'ResourceManager', + 'productName' => '资源管理', + 'ramCodes' => ['resourcecenter', 'resourcemanager', 'tag', 'resourcesharing'], + 'ramLevel' => '资源级', + 'ramConditions' => [ + [ + 'name' => 'resourcesharing:ResourceArn', + 'schema' => ['type' => 'String', 'description' => '资源ARN。取值示例:acs:vpc:cn-shanghai:131993166204****:vswitch/vsw-7xv4sfwo86u2etl64****。'], + ], + [ + 'name' => 'resourcesharing:RequestedAllowExternalTargets', + 'schema' => [ + 'type' => 'Boolean', + 'description' => '是否允许共享给资源目录外的账号。取值示例:false。', + 'enums' => ['true', 'false'], + ], + ], + [ + 'name' => 'ram:ServiceName', + 'schema' => ['type' => 'String', 'description' => '服务关联角色可信的云服务标识,取值示例:actiontrail.aliyuncs.com服务关联角色可信的云服务标识,取值示例:actiontrail.aliyuncs.com'], + ], + [ + 'name' => 'resourcesharing:Target', + 'schema' => ['type' => 'String', 'description' => '取值示例:资源目录ID、资源夹的RDPath或账号的RDPath(组织内账号)或账号ID(组织外账号)。'], + ], + [ + 'name' => 'resourcesharing:RequestedResourceType', + 'schema' => ['type' => 'String', 'description' => '资源类型。取值示例:VSwitch。'], ], - 'schemes' => [ - 'https', + ], + 'ramActions' => [ + [ + 'apiName' => 'DetachControlPolicy', + 'description' => '解绑管控策略', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:DetachControlPolicy', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager::{#accountId}:account/{#ResourceDirectoryPath}'], + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'ControlPolicy', 'arn' => 'acs:resourcemanager::{#accountId}:policy/controlpolicy/{#PolicyId}'], + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Folder', 'arn' => 'acs:resourcemanager::{#accountId}:folder/{#ResourceDirectoryPath}'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'ListDelegatedAdministrators', + 'description' => '查询可信服务的委派管理员账号列表', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'resourcemanager:ListDelegatedAdministrators', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ + [ + 'apiName' => 'DisassociateMembers', + 'description' => '解绑联系人', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:DisassociateMembers', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'GetAccountDeletionCheckResult', + 'description' => '查询成员删除检查结果', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'resourcemanager:GetAccountDeletionCheckResult', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager::{#accountId}:account/{#ResourceDirectoryPath}'], + ], + ], + ], + [ + 'apiName' => 'ListHandshakesForAccount', + 'description' => '查询当前账号的邀请记录', 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'resourcemanager:ListHandshakesForAccount', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], ], - 'parameters' => [ - [ - 'name' => 'TargetId', - 'in' => 'query', - 'schema' => [ - 'description' => '目标节点。取值:'."\n" - ."\n" - .'- Root ID:查询Root节点绑定的管控策略。'."\n" - .'- 资源夹ID:查询资源夹绑定的管控策略。'."\n" - .'- 成员ID:查询成员绑定的管控策略。', - 'type' => 'string', - 'required' => true, - 'example' => 'fd-ZDNPiT****', + [ + 'apiName' => 'GetAccount', + 'description' => '查询成员信息', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'resourcemanager:GetAccount', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager::{#accountId}:account/{#ResourceDirectoryPath}'], ], ], - [ - 'name' => 'Language', - 'in' => 'query', - 'schema' => [ - 'description' => '指定返回结果中管控策略描述的语言。取值:'."\n" - ."\n" - .'- zh-CN(默认值):中文。'."\n" - .'- en:英文。'."\n" - .'- ja:日文。'."\n" - ."\n" - .'> 该参数仅在系统管控策略时有效。', - 'type' => 'string', - 'required' => false, - 'example' => 'zh-CN', + ], + [ + 'apiName' => 'BindSecureMobilePhone', + 'description' => '设置安全手机号码', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:BindSecureMobilePhone', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager::{#accountId}:account/{#ResourceDirectoryPath}'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '返回参数。', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C276B600-7B7A-49E8-938C-E16CFA955A82', - ], - 'ControlPolicyAttachments' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'ControlPolicyAttachment' => [ - 'description' => '已绑定的管控策略列表。', - 'type' => 'array', - 'items' => [ - 'description' => '已绑定的管控策略列表。', - 'type' => 'object', - 'properties' => [ - 'Description' => [ - 'description' => '管控策略描述。', - 'type' => 'string', - 'example' => 'ExampleControlPolicy', - ], - 'EffectScope' => [ - 'description' => '管控策略生效范围。取值:'."\n" - ."\n" - .'- All:表示该管控策略针对阿里云账号、RAM用户或RAM角色生效。'."\n" - .'- RAM:表示该管控策略仅针对RAM用户或RAM角色生效。', - 'type' => 'string', - 'example' => 'RAM', - ], - 'PolicyName' => [ - 'description' => '管控策略名称。', - 'type' => 'string', - 'example' => 'ExampleControlPolicy', - ], - 'PolicyId' => [ - 'description' => '管控策略ID。', - 'type' => 'string', - 'example' => 'cp-jExXAqIYkwHN****', - ], - 'AttachDate' => [ - 'description' => '绑定管控策略的时间。', - 'type' => 'string', - 'example' => '2021-03-19T02:56:24Z', - ], - 'PolicyType' => [ - 'description' => '管控策略类型。取值:'."\n" - ."\n" - .'- System:系统管控策略。'."\n" - .'- Custom:自定义管控策略。', - 'type' => 'string', - 'example' => 'Custom', - ], - ], - ], - ], - ], - ], - ], + [ + 'apiName' => 'MoveAccount', + 'description' => '移动成员', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:MoveAccount', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager::{#accountId}:account/{#ResourceDirectoryPath}'], + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Folder', 'arn' => 'acs:resourcemanager::{#accountId}:folder/{#ResourceDirectoryPath}'], ], ], ], - 'errorCodes' => [ - 404 => [ - [ - 'errorCode' => 'EntityNotExists.Target', - 'errorMessage' => 'The specified target does not exist in the resource directory.', + [ + 'apiName' => 'EnableControlPolicy', + 'description' => '开启管控策略', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:EnableControlPolicy', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'ResourceDirectory', 'arn' => 'acs:resourcemanager::{#accountId}:policy/controlpolicy/*'], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C276B600-7B7A-49E8-938C-E16CFA955A82\\",\\n \\"ControlPolicyAttachments\\": {\\n \\"ControlPolicyAttachment\\": [\\n {\\n \\"Description\\": \\"ExampleControlPolicy\\",\\n \\"EffectScope\\": \\"RAM\\",\\n \\"PolicyName\\": \\"ExampleControlPolicy\\",\\n \\"PolicyId\\": \\"cp-jExXAqIYkwHN****\\",\\n \\"AttachDate\\": \\"2021-03-19T02:56:24Z\\",\\n \\"PolicyType\\": \\"Custom\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<ListControlPolicyAttachmentsForTargetResponse>\\r\\n\\t<RequestId>C276B600-7B7A-49E8-938C-E16CFA955A82</RequestId>\\r\\n\\t<ControlPolicyAttachments>\\r\\n\\t\\t<ControlPolicyAttachment>\\r\\n\\t\\t\\t<PolicyType>System</PolicyType>\\r\\n\\t\\t\\t<Description>支持阿里云所有操作的系统管控策略</Description>\\r\\n\\t\\t\\t<AttachDate>2021-03-18T07:27:59Z</AttachDate>\\r\\n\\t\\t\\t<PolicyName>FullAliyunAccess</PolicyName>\\r\\n\\t\\t\\t<PolicyId>cp-FullAliyunAccess</PolicyId>\\r\\n\\t\\t</ControlPolicyAttachment>\\r\\n\\t\\t<ControlPolicyAttachment>\\r\\n\\t\\t\\t<PolicyType>Custom</PolicyType>\\r\\n\\t\\t\\t<Description>ExampleControlPolicy</Description>\\r\\n\\t\\t\\t<AttachDate>2021-03-19T02:56:24Z</AttachDate>\\r\\n\\t\\t\\t<PolicyName>ExampleControlPolicy</PolicyName>\\r\\n\\t\\t\\t<PolicyId>cp-jExXAqIYkwHN****</PolicyId>\\r\\n\\t\\t</ControlPolicyAttachment>\\r\\n\\t</ControlPolicyAttachments>\\r\\n</ListControlPolicyAttachmentsForTargetResponse>\\t\\r\\n","errorExample":""}]', - 'title' => '查询资源夹或成员绑定的管控策略列表', - 'summary' => '调用ListControlPolicyAttachmentsForTarget查询资源夹或成员绑定的管控策略列表。', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'ListTargetAttachmentsForControlPolicy' => [ - 'methods' => [ - 'post', - 'get', + [ + 'apiName' => 'CancelChangeAccountEmail', + 'description' => '取消修改成员邮箱', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:CancelChangeAccountEmail', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], ], - 'schemes' => [ - 'https', + [ + 'apiName' => 'CheckAccountDelete', + 'description' => '成员删除检查', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'resourcemanager:CheckAccountDelete', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager::{#accountId}:account/{#ResourceDirectoryPath}'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'CreateControlPolicy', + 'description' => '创建管控策略', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'resourcemanager:CreateControlPolicy', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ + [ + 'apiName' => 'ListTagKeys', + 'description' => '查询标签键列表', 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'resourcemanager:ListTagKeys', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], ], - 'parameters' => [ - [ - 'name' => 'PolicyId', - 'in' => 'query', - 'schema' => [ - 'description' => '管控策略ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cp-jExXAqIYkwHN****', + [ + 'apiName' => 'ListFoldersForParent', + 'description' => '查询指定资源夹的子资源夹列表', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'resourcemanager:ListFoldersForParent', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Folder', 'arn' => 'acs:resourcemanager::{#accountId}:folder/{#ResourceDirectoryPath}'], ], ], - [ - 'name' => 'PageNumber', - 'in' => 'query', - 'schema' => [ - 'description' => '页码。'."\n" - ."\n" - .'起始值:1。默认值:1。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '200000', - 'minimum' => '1', - 'example' => '1', - 'default' => '1', + ], + [ + 'apiName' => 'SendVerificationCodeForBindSecureMobilePhone', + 'description' => '向安全手机发送验证码', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'resourcemanager:SendVerificationCodeForBindSecureMobilePhone', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'PageSize', - 'in' => 'query', - 'schema' => [ - 'description' => '分页时每页显示的数据条数。'."\n" - ."\n" - .'取值范围:1~100。默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '100', - 'minimum' => '1', - 'example' => '10', - 'default' => '10', + ], + [ + 'apiName' => 'DeleteControlPolicy', + 'description' => '删除管控策略', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'resourcemanager:DeleteControlPolicy', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'ControlPolicy', 'arn' => 'acs:resourcemanager::{#accountId}:policy/controlpolicy/{#PolicyId}'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'TotalCount' => [ - 'description' => '绑定的目标节点数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'B32BD3D6-1089-41F3-8E70-E0079BC7D760', - ], - 'PageSize' => [ - 'description' => '分页时每页显示的数据条数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'PageNumber' => [ - 'description' => '页码。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'TargetAttachments' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'TargetAttachment' => [ - 'description' => '绑定的目标节点列表。', - 'type' => 'array', - 'items' => [ - 'description' => '绑定的目标节点列表。', - 'type' => 'object', - 'properties' => [ - 'TargetId' => [ - 'description' => '绑定的目标节点ID。', - 'type' => 'string', - 'example' => 'fd-ZDNPiT****', - ], - 'TargetName' => [ - 'description' => '绑定的目标节点名称。', - 'type' => 'string', - 'example' => 'Dev_Department', - ], - 'AttachDate' => [ - 'description' => '管控策略绑定时间。', - 'type' => 'string', - 'example' => '2021-03-19T02:56:24Z', - ], - 'TargetType' => [ - 'description' => '绑定的目标节点类型。取值:'."\n" - ."\n" - .'- Root:Root节点。'."\n" - .'- Folder:资源夹。'."\n" - .'- Account:成员账号。', - 'type' => 'string', - 'example' => 'Folder', - ], - ], - ], - ], - ], - ], - ], + [ + 'apiName' => 'AssociateMembers', + 'description' => '绑定联系人', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:AssociateMembers', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"TotalCount\\": 1,\\n \\"RequestId\\": \\"B32BD3D6-1089-41F3-8E70-E0079BC7D760\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"TargetAttachments\\": {\\n \\"TargetAttachment\\": [\\n {\\n \\"TargetId\\": \\"fd-ZDNPiT****\\",\\n \\"TargetName\\": \\"Dev_Department\\",\\n \\"AttachDate\\": \\"2021-03-19T02:56:24Z\\",\\n \\"TargetType\\": \\"Folder\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<ListTargetAttachmentsForControlPolicyResponse>\\r\\n\\t<TotalCount>1</TotalCount>\\r\\n\\t<RequestId>B32BD3D6-1089-41F3-8E70-E0079BC7D760</RequestId>\\r\\n\\t<PageSize>10</PageSize>\\r\\n\\t<PageNumber>1</PageNumber>\\r\\n\\t<TargetAttachments>\\r\\n\\t\\t<TargetAttachment>\\r\\n\\t\\t\\t<AttachDate>2021-03-19T02:56:24Z</AttachDate>\\r\\n\\t\\t\\t<TargetType>Folder</TargetType>\\r\\n\\t\\t\\t<TargetName>Dev_Department</TargetName>\\r\\n\\t\\t\\t<TargetId>fd-ZDNPiT****</TargetId>\\r\\n\\t\\t</TargetAttachment>\\r\\n\\t</TargetAttachments>\\r\\n</ListTargetAttachmentsForControlPolicyResponse>\\t\\r\\n\\r\\n\\t\\r\\n","errorExample":""}]', - 'title' => '查询管控策略绑定的目标节点', - 'summary' => '调用ListTargetAttachmentsForControlPolicy查询管控策略绑定的目标节点。', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'ListTrustedServiceStatus' => [ - 'methods' => [ - 'post', - 'get', + [ + 'apiName' => 'GetAccountDeletionStatus', + 'description' => '查询成员删除状态', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'resourcemanager:GetAccountDeletionStatus', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager::{#accountId}:account/{#ResourceDirectoryPath}'], + ], + ], ], - 'schemes' => [ - 'https', + [ + 'apiName' => 'RetryChangeAccountEmail', + 'description' => '重新发送修改成员邮箱的确认邮件', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:RetryChangeAccountEmail', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager::{#accountId}:account/{#ResourceDirectoryPath}'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'PrecheckForConsolidatedBillingAccount', + 'description' => '检查账号是否可以作为财务托管主账号', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'resourcemanager:PrecheckForConsolidatedBillingAccount', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager::{#accountId}:account/{#ResourceDirectoryPath}'], + ], ], ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ + [ + 'apiName' => 'ListDelegatedServicesForAccount', + 'description' => '查询指定成员被设置为哪些可信服务的委派管理员账号', 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'resourcemanager:ListDelegatedServicesForAccount', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager::{#accountId}:account/{#ResourceDirectoryPath}'], + ], + ], ], - 'parameters' => [ - [ - 'name' => 'PageNumber', - 'in' => 'query', - 'schema' => [ - 'description' => '页码。'."\n" - ."\n" - .'起始值:1。默认值:1。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', + [ + 'apiName' => 'AddMessageContact', + 'description' => '添加联系人', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'resourcemanager:AddMessageContact', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'MessageContact', 'arn' => 'acs:resourcemanager:*:{#accountId}:messagecontact/*'], ], ], - [ - 'name' => 'PageSize', - 'in' => 'query', - 'schema' => [ - 'description' => '分页时每页显示的数据行数。'."\n" - ."\n" - .'取值范围:1~100。默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', + ], + [ + 'apiName' => 'GetMessageContact', + 'description' => '查询联系人信息', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'resourcemanager:GetMessageContact', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'MessageContact', 'arn' => 'acs:resourcemanager:*:{#accountId}:messagecontact/{#MessageContactId}'], ], ], - [ - 'name' => 'AdminAccountId', - 'in' => 'query', - 'schema' => [ - 'description' => '企业管理账号或委派管理员账号。取值:'."\n" - .'- 企业管理账号(默认值):查询企业管理账号已启用的可信服务列表。'."\n" - .'- 委派管理员账号:查询委派管理员账号已启用的可信服务列表。'."\n" - ."\n" - .'关于可信服务和委派管理员的更多信息,请参见[可信服务概述](~~208133~~)和[管理委派管理员账号](~~208117~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '177242285274****', + ], + [ + 'apiName' => 'TagResources', + 'description' => '绑定标签', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:TagResources', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'TotalCount' => [ - 'description' => '数据总条数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'CD76D376-2517-4924-92C5-DBC52262F93A', - ], - 'PageSize' => [ - 'description' => '分页时每页显示的数据行数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'PageNumber' => [ - 'description' => '页码。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'EnabledServicePrincipals' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'EnabledServicePrincipal' => [ - 'description' => '已启用的可信服务列表。', - 'type' => 'array', - 'items' => [ - 'description' => '已启用的可信服务列表。', - 'type' => 'object', - 'properties' => [ - 'ServicePrincipal' => [ - 'description' => '可信服务标识。', - 'type' => 'string', - 'example' => 'config.aliyuncs.com', - ], - 'EnableTime' => [ - 'description' => '启用可信服务的时间。', - 'type' => 'string', - 'example' => '2019-02-18T15:32:10.473Z', - ], - ], - ], - ], - ], - ], - ], + [ + 'apiName' => 'UntagResources', + 'description' => '解绑标签', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:UntagResources', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'errorCodes' => [ - 404 => [ - [ - 'errorCode' => 'EntityNotExists.ResourceDirectory', - 'errorMessage' => 'The resource directory for the account is not enabled. We recommend that you first enable the resource directory for the account.', + [ + 'apiName' => 'UpdateControlPolicy', + 'description' => '修改自定义管控策略', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:UpdateControlPolicy', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'ControlPolicy', 'arn' => 'acs:resourcemanager::{#accountId}:policy/controlpolicy/{#PolicyId}'], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"TotalCount\\": 2,\\n \\"RequestId\\": \\"CD76D376-2517-4924-92C5-DBC52262F93A\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"EnabledServicePrincipals\\": {\\n \\"EnabledServicePrincipal\\": [\\n {\\n \\"ServicePrincipal\\": \\"config.aliyuncs.com\\",\\n \\"EnableTime\\": \\"2019-02-18T15:32:10.473Z\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<ListTrustedServiceStatusResponse>\\r\\n <EnabledServicePrincipal>\\r\\n <ServicePrincipal>config.aliyuncs.com</ServicePrincipal>\\r\\n <EnableTime>2019-02-18T15:32:10.473Z</EnableTime>\\r\\n </EnabledServicePrincipal>\\r\\n <EnabledServicePrincipal>\\r\\n <ServicePrincipal>actiontrail.aliyuncs.com</ServicePrincipal>\\r\\n <EnableTime>2019-02-16T15:32:10.473Z</EnableTime>\\r\\n </EnabledServicePrincipal>\\r\\n <RequestId>CD76D376-2517-4924-92C5-DBC52262F93A</RequestId>\\r\\n</ListTrustedServiceStatusResponse>","errorExample":""}]', - 'title' => '查询企业管理账号或委派管理员账号已启用的可信服务列表', - 'summary' => '调用ListTrustedServiceStatus查询企业管理账号或委派管理员账号已启用的可信服务列表。', - 'description' => '该接口仅限企业管理账号或委派管理员账号使用。', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'RegisterDelegatedAdministrator' => [ - 'methods' => [ - 'post', - 'get', + [ + 'apiName' => 'GetFolder', + 'description' => '获取资源夹信息', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'resourcemanager:GetFolder', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Folder', 'arn' => 'acs:resourcemanager::{#accountId}:folder/{#ResourceDirectoryPath}'], + ], + ], ], - 'schemes' => [ - 'http', - 'https', + [ + 'apiName' => 'DestroyResourceDirectory', + 'description' => '关闭资源目录', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'resourcemanager:DestroyResourceDirectory', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'GetResourceDirectory', + 'description' => '获取资源目录信息', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'resourcemanager:GetResourceDirectory', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ + [ + 'apiName' => 'DeregisterDelegatedAdministrator', + 'description' => '移除可信服务的委派管理员账号', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'resourcemanager:DeregisterDelegatedAdministrator', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager::{#accountId}:account/{#ResourceDirectoryPath}'], + ], + ], + ], + [ + 'apiName' => 'EnableResourceDirectory', + 'description' => '开通资源目录', 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'resourcemanager:EnableResourceDirectory', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], ], - 'parameters' => [ - [ - 'name' => 'AccountId', - 'in' => 'query', - 'schema' => [ - 'description' => '资源目录中的成员ID。', - 'type' => 'string', - 'required' => true, - 'example' => '181761095690****', + [ + 'apiName' => 'ListAccounts', + 'description' => '查询整个资源目录下的所有成员列表', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'resourcemanager:ListAccounts', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager::{#accountId}:account/*'], ], ], - [ - 'name' => 'ServicePrincipal', - 'in' => 'query', - 'schema' => [ - 'description' => '可信服务的标识。'."\n" - ."\n" - .'具体信息,请参见[支持的可信服务](~~208133~~)中的`可信服务标识`列。', - 'type' => 'string', - 'required' => true, - 'example' => 'cloudfw.aliyuncs.com', + ], + [ + 'apiName' => 'ListTargetAttachmentsForControlPolicy', + 'description' => '查询管控策略绑定的目标节点', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'resourcemanager:ListTargetAttachmentsForControlPolicy', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '0A45FC8F-54D2-4A65-8338-25E5DEBDA304', - ], - ], + [ + 'apiName' => 'GetControlPolicy', + 'description' => '查询管控策略的详情', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'resourcemanager:GetControlPolicy', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'ControlPolicy', 'arn' => 'acs:resourcemanager::{#accountId}:policy/controlpolicy/{#PolicyId}'], ], ], ], - 'errorCodes' => [ - 409 => [ - [ - 'errorCode' => 'InvalidParameter.ServicePrincipal', - 'errorMessage' => 'The specified ServicePrincipal is invalid.', + [ + 'apiName' => 'UpdateAccount', + 'description' => '修改成员', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:UpdateAccount', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager::{#accountId}:account/{#ResourceDirectoryPath}'], ], - [ - 'errorCode' => 'AccountAlreadyRegistered', - 'errorMessage' => 'The specified account is already a delegated administrator for this service.', + ], + ], + [ + 'apiName' => 'CreateFolder', + 'description' => '创建资源夹', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'resourcemanager:CreateFolder', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Folder', 'arn' => 'acs:resourcemanager::{#accountId}:folder/{#ResourceDirectoryPath}'], ], - [ - 'errorCode' => 'DelegatedAccountNumberExceeded', - 'errorMessage' => 'The maximum number of delegated administrators for the service principal is exceeded.', + ], + ], + [ + 'apiName' => 'AttachControlPolicy', + 'description' => '绑定管控策略', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:AttachControlPolicy', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager::{#accountId}:account/{#ResourceDirectoryPath}'], + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Folder', 'arn' => 'acs:resourcemanager::{#accountId}:folder/{#ResourceDirectoryPath}'], + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'ControlPolicy', 'arn' => 'acs:resourcemanager::{#accountId}:policy/controlpolicy/{#PolicyId}'], ], - [ - 'errorCode' => 'CannotRegisterMasterAsDelegatedAdministrator', - 'errorMessage' => 'You attempted to register the enterprise management account as a delegated administrator for the service. You can designate only a member account as a delegated administrator.', + ], + ], + [ + 'apiName' => 'RemoveCloudAccount', + 'description' => '移除云账号类型的成员', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'resourcemanager:RemoveCloudAccount', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager::{#accountId}:account/{#ResourceDirectoryPath}'], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"0A45FC8F-54D2-4A65-8338-25E5DEBDA304\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<RegisterDelegatedAdministratorResponse>\\r\\n\\t<RequestId>0A45FC8F-54D2-4A65-8338-25E5DEBDA304</RequestId>\\r\\n</RegisterDelegatedAdministratorResponse>\\t\\r\\n","errorExample":""}]', - 'title' => '将资源目录的成员设置为可信服务的委派管理员账号', - 'summary' => '调用RegisterDelegatedAdministrator将资源目录的成员设置为可信服务的委派管理员账号。', - 'description' => '设置完成后,委派管理员账号将获得访问资源目录组织信息的授权,从而具有了对组织成员和结构的可见性。委派管理员账号在指定可信服务中将代表企业管理账号执行服务相关管理操作。'."\n" - .'使用限制:'."\n" - .'- 只有部分可信服务支持委派管理员功能。更多信息,请参见[支持的可信服务](~~208133~~)。'."\n" - .'- 只有资源目录的企业管理账号及其下被授权的RAM用户和RAM角色才能调用该API。'."\n" - .'- 可信服务允许添加的委派管理员账号数量由各可信服务定义。', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'DeregisterDelegatedAdministrator' => [ - 'summary' => '调用DeregisterDelegatedAdministrator移除可信服务的委派管理员账号。', - 'methods' => [ - 'post', - 'get', + [ + 'apiName' => 'GetHandshake', + 'description' => '获取邀请信息', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'resourcemanager:GetHandshake', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Handshake', 'arn' => 'acs:resourcemanager::{#accountId}:handshake/{#HandshakeId}'], + ], + ], ], - 'schemes' => [ - 'http', - 'https', + [ + 'apiName' => 'RegisterDelegatedAdministrator', + 'description' => '将资源目录的成员设置为可信服务的委派管理员账号', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'resourcemanager:RegisterDelegatedAdministrator', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'DelegatedAdministrator', 'arn' => 'acs:resourcemanager::{#accountId}:account/{#ResourceDirectoryPath}'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'ListHandshakesForResourceDirectory', + 'description' => '查看资源目录下的所有邀请列表', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'resourcemanager:ListHandshakesForResourceDirectory', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Handshake', 'arn' => 'acs:resourcemanager::{#accountId}:handshake/*'], + ], ], ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'delete', + [ + 'apiName' => 'SendVerificationCodeForEnableRD', + 'description' => '向新管理账号的安全手机发送验证码', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'resourcemanager:SendVerificationCodeForEnableRD', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], ], - 'parameters' => [ - [ - 'name' => 'AccountId', - 'in' => 'query', - 'schema' => [ - 'description' => '资源目录中的成员ID。', - 'type' => 'string', - 'required' => true, - 'example' => '181761095690****', + [ + 'apiName' => 'CancelMessageContactUpdate', + 'description' => '取消更新联系人手机或邮箱', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:CancelMessageContactUpdate', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'MessageContact', 'arn' => 'acs:resourcemanager:*:{#accountId}:messagecontact/{#MessageContactId}'], ], ], - [ - 'name' => 'ServicePrincipal', - 'in' => 'query', - 'schema' => [ - 'description' => '可信服务的标识。', - 'type' => 'string', - 'required' => true, - 'example' => 'cloudfw.aliyuncs.com', + ], + [ + 'apiName' => 'ListAccountsForParent', + 'description' => '查询资源夹下的成员列表', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'resourcemanager:ListAccountsForParent', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Folder', 'arn' => 'acs:resourcemanager::{#accountId}:folder/{#ResourceDirectoryPath}'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '返回结果', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'DF5D5C52-7BD0-40E7-94C6-23A1505038A2', - ], - ], + [ + 'apiName' => 'ListControlPolicies', + 'description' => '查询管控策略列表', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'resourcemanager:ListControlPolicies', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'errorCodes' => [ - 409 => [ - [ - 'errorCode' => 'InvalidParameter.ServicePrincipal', - 'errorMessage' => 'The specified ServicePrincipal is invalid.', + [ + 'apiName' => 'SendPhoneVerificationForMessageContact', + 'description' => '向联系人手机发送验证信息', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'resourcemanager:SendPhoneVerificationForMessageContact', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'MessageContact', 'arn' => 'acs:resourcemanager:*:{#accountId}:messagecontact/{#MessageContactId}'], ], - [ - 'errorCode' => 'AccountNotRegistered', - 'errorMessage' => 'The specified account is not a delegated administrator for this service.', + ], + ], + [ + 'apiName' => 'ListAncestors', + 'description' => '查看指定资源夹的所有父资源夹信息', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'resourcemanager:ListAncestors', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"DF5D5C52-7BD0-40E7-94C6-23A1505038A2\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<DeregisterDelegatedAdministratorResponse>\\r\\n\\t<RequestId>DF5D5C52-7BD0-40E7-94C6-23A1505038A2</RequestId>\\r\\n</DeregisterDelegatedAdministratorResponse>\\t\\r\\n","errorExample":""}]', - 'title' => '移除可信服务的委派管理员账号', - 'description' => '如果被移除的委派管理账号在可信服务中存在历史管理任务,移除操作可能对可信服务的正常使用产生影响。请在移除前慎重考虑可能产生的影响,然后再进行移除操作。', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'ListDelegatedAdministrators' => [ - 'summary' => '调用ListDelegatedAdministrators查询可信服务的委派管理员账号列表。', - 'methods' => [ - 'post', - 'get', + [ + 'apiName' => 'SetMemberDeletionPermission', + 'description' => '开启或关闭成员删除许可', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:SetMemberDeletionPermission', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], ], - 'schemes' => [ - 'http', - 'https', + [ + 'apiName' => 'SendEmailVerificationForMessageContact', + 'description' => '向联系人邮箱发送验证信息', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'resourcemanager:SendEmailVerificationForMessageContact', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'MessageContact', 'arn' => 'acs:resourcemanager:*:{#accountId}:messagecontact/{#MessageContactId}'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'GetControlPolicyEnablementStatus', + 'description' => '查询管控策略功能的状态', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'resourcemanager:GetControlPolicyEnablementStatus', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'ResourceDirectory', 'arn' => 'acs:resourcemanager::{#accountId}:policy/controlpolicy/*'], + ], ], ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ + [ + 'apiName' => 'ListAuthorizedFolders', + 'description' => '列举有查询权限的资源夹列表', 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'resourcemanager:ListAuthorizedFolders', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], ], - 'parameters' => [ - [ - 'name' => 'ServicePrincipal', - 'in' => 'query', - 'schema' => [ - 'description' => '可信服务的标识。'."\n" - ."\n" - .'具体信息,请参见[支持的可信服务](~~208133~~)中的`可信服务标识`列。', - 'type' => 'string', - 'required' => false, - 'example' => 'cloudfw.aliyuncs.com', + [ + 'apiName' => 'CancelHandshake', + 'description' => '取消邀请', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:CancelHandshake', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Handshake', 'arn' => 'acs:resourcemanager::{#accountId}:handshake/{#HandshakeId}'], ], ], - [ - 'name' => 'PageNumber', - 'in' => 'query', - 'schema' => [ - 'description' => '页码。'."\n" - ."\n" - .'起始值:1。默认值:1。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1', + ], + [ + 'apiName' => 'ListMessageContactVerifications', + 'description' => '查询联系人待验证记录', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'resourcemanager:ListMessageContactVerifications', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'MessageContact', 'arn' => 'acs:resourcemanager:*:{#accountId}:messagecontact/{#MessageContactId}'], ], ], - [ - 'name' => 'PageSize', - 'in' => 'query', - 'schema' => [ - 'description' => '分页时每页显示的数据行数。'."\n" - ."\n" - .'取值范围:1~100。默认值:10。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '10', + ], + [ + 'apiName' => 'InviteAccountToResourceDirectory', + 'description' => '邀请外部账号加入资源目录', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'resourcemanager:InviteAccountToResourceDirectory', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Handshake', 'arn' => 'acs:resourcemanager:*:{#accountId}:handshake/*'], + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Folder', 'arn' => 'acs:resourcemanager:*:{#accountId}:folder/{#ResourceDirectoryPath}'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '009C3A02-7D4B-416C-9CE7-548C91508F1E', - ], - 'TotalCount' => [ - 'description' => '数据总条数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '2', - ], - 'PageSize' => [ - 'description' => '分页时每页显示的数据行数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '10', - ], - 'PageNumber' => [ - 'description' => '页码。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'Accounts' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'Account' => [ - 'description' => '委派管理员账号信息。', - 'type' => 'array', - 'items' => [ - 'description' => '账号信息', - 'type' => 'object', - 'properties' => [ - 'AccountId' => [ - 'description' => '成员ID。', - 'type' => 'string', - 'example' => '138660628348****', - ], - 'DisplayName' => [ - 'description' => '成员名称。', - 'type' => 'string', - 'example' => 'abc', - ], - 'JoinMethod' => [ - 'description' => '成员加入方式。取值:'."\n" - ."\n" - .'- invited:邀请。'."\n" - .'- created:创建。', - 'type' => 'string', - 'example' => 'created', - ], - 'ServicePrincipal' => [ - 'description' => '可信服务的标识。', - 'type' => 'string', - 'example' => 'cloudfw.aliyuncs.com', - ], - 'DelegationEnabledTime' => [ - 'description' => '设置为委派管理员账号的时间戳。', - 'type' => 'string', - 'example' => '1616652684164', - ], - ], - ], - ], - ], - ], - ], + [ + 'apiName' => 'UpdateFolder', + 'description' => '修改资源夹', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:UpdateFolder', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Folder', 'arn' => 'acs:resourcemanager::{#accountId}:folder/{#ResourceDirectoryPath}'], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"009C3A02-7D4B-416C-9CE7-548C91508F1E\\",\\n \\"TotalCount\\": 2,\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"Accounts\\": {\\n \\"Account\\": [\\n {\\n \\"AccountId\\": \\"138660628348****\\",\\n \\"DisplayName\\": \\"abc\\",\\n \\"JoinMethod\\": \\"created\\",\\n \\"ServicePrincipal\\": \\"cloudfw.aliyuncs.com\\",\\n \\"DelegationEnabledTime\\": \\"1616652684164\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\" ?>\\r\\n<ListDelegatedAdministratorsResponse>\\r\\n\\t<RequestId>009C3A02-7D4B-416C-9CE7-548C91508F1E</RequestId>\\r\\n\\t<TotalCount>2</TotalCount>\\r\\n\\t<PageSize>10</PageSize>\\r\\n\\t<PageNumber>1</PageNumber>\\r\\n\\t<Accounts>\\r\\n\\t\\t<Account>\\r\\n\\t\\t\\t<DelegationEnabledTime>1616652684164</DelegationEnabledTime>\\r\\n\\t\\t\\t<JoinMethod>created</JoinMethod>\\r\\n\\t\\t\\t<AccountId>138660628348****</AccountId>\\r\\n\\t\\t\\t<ServicePrincipal>cloudfw.aliyuncs.com</ServicePrincipal>\\r\\n\\t\\t\\t<DisplayName>abc</DisplayName>\\r\\n\\t\\t</Account>\\r\\n\\t\\t<Account>\\r\\n\\t\\t\\t<DelegationEnabledTime>1616489836069</DelegationEnabledTime>\\r\\n\\t\\t\\t<JoinMethod>invited</JoinMethod>\\r\\n\\t\\t\\t<AccountId>177242285274****</AccountId>\\r\\n\\t\\t\\t<ServicePrincipal>cloudfw.aliyuncs.com</ServicePrincipal>\\r\\n\\t\\t\\t<DisplayName>test</DisplayName>\\r\\n\\t\\t</Account>\\r\\n\\t</Accounts>\\r\\n</ListDelegatedAdministratorsResponse>\\t\\r\\n","errorExample":""}]', - 'title' => '查询可信服务的委派管理员账号列表', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'ListDelegatedServicesForAccount' => [ - 'summary' => '调用ListDelegatedServicesForAccount查询指定成员被设置为哪些可信服务的委派管理员账号。', - 'methods' => [ - 'post', - 'get', + [ + 'apiName' => 'DeclineHandshake', + 'description' => '拒绝邀请', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:DeclineHandshake', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Handshake', 'arn' => 'acs:resourcemanager::{#accountId}:handshake/{#HandshakeId}'], + ], + ], ], - 'schemes' => [ - 'http', - 'https', + [ + 'apiName' => 'GetMessageContactDeletionStatus', + 'description' => '查询联系人删除状态', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'resourcemanager:GetMessageContactDeletionStatus', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'MessageContact', 'arn' => 'acs:resourcemanager:*:{#accountId}:messagecontact/{#MessageContactId}'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'AcceptHandshake', + 'description' => '接受邀请', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:AcceptHandshake', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Handshake', 'arn' => 'acs:resourcemanager::{#accountId}:handshake/{#HandshakeId}'], + ], ], ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ + [ + 'apiName' => 'ListTrustedServiceStatus', + 'description' => '查询企业管理账号或委派管理员账号已启用的可信服务列表', 'operationType' => 'list', - 'riskType' => 'none', - 'chargeType' => 'free', + 'ramAction' => [ + 'action' => 'resourcemanager:ListTrustedServiceStatus', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], ], - 'parameters' => [ - [ - 'name' => 'AccountId', - 'in' => 'query', - 'schema' => [ - 'description' => '成员ID。', - 'type' => 'string', - 'required' => true, - 'example' => '138660628348****', + [ + 'apiName' => 'SetMemberDisplayNameSyncStatus', + 'description' => '开启或关闭成员显示名称同步状态', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:SetMemberDisplayNameSyncStatus', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'NextToken', - 'in' => 'query', - 'schema' => [ - 'title' => '当请求的返回结果被截断时,您可以使用NextToken再次发起请求,获取从当前截断位置之后的内容。', - 'description' => '当请求的返回结果被截断时,您可以使用NextToken再次发起请求,获取从当前截断位置之后的内容。', - 'type' => 'string', - 'required' => false, - 'example' => 'TGlzdFJlc291cm****', + ], + [ + 'apiName' => 'CreateResourceAccount', + 'description' => '创建成员', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'resourcemanager:CreateResourceAccount', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Folder', 'arn' => 'acs:resourcemanager:*:{#accountId}:folder/{#ResourceDirectoryPath}'], ], ], - [ - 'name' => 'MaxResults', - 'in' => 'query', - 'schema' => [ - 'title' => '单次请求返回结果的最大条数。取值范围:1~100。默认值:10。', - 'description' => '单次请求返回结果的最大条数。取值范围:1~100。默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '20', + ], + [ + 'apiName' => 'ListTagResources', + 'description' => '查询标签列表', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'resourcemanager:ListTagResources', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '返回结果。', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'D9C03B94-9396-4794-A74B-13DC437556A6', - ], - 'DelegatedServices' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'DelegatedService' => [ - 'description' => '可信服务列表。'."\n" - ."\n" - .'> 如果返回为空,则表示查询的成员不是委派管理员账号。', - 'type' => 'array', - 'items' => [ - 'description' => '可信服务信列表。'."\n" - ."\n" - .'> 如果返回为空,则表示查询的成员不是委派管理员账号。', - 'type' => 'object', - 'properties' => [ - 'DelegationEnabledTime' => [ - 'description' => '设置为委派管理员账号的时间戳。', - 'type' => 'string', - 'example' => '1616652684164', - ], - 'ServicePrincipal' => [ - 'description' => '可信服务的标识。', - 'type' => 'string', - 'example' => 'cloudfw.aliyuncs.com', - ], - 'Status' => [ - 'description' => '可信服务的启用状态。取值:'."\n" - ."\n" - .'- ENABLED:已启用。'."\n" - .'- DISABLED:未启用。', - 'type' => 'string', - 'example' => 'ENABLED', - ], - ], - ], - ], - ], - ], - 'NextToken' => [ - 'title' => '当请求的返回结果被截断时,您可以使用NextToken再次发起请求,获取从当前截断位置之后的内容。', - 'description' => '当请求的返回结果被截断时,您可以使用NextToken再次发起请求,获取从当前截断位置之后的内容。', - 'type' => 'string', - 'example' => 'TGlzdFJlc291cm****', - ], - 'MaxResults' => [ - 'title' => '单次请求返回结果的最大条数。', - 'description' => '单次请求返回结果的最大条数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '20', - ], - ], + [ + 'apiName' => 'DeleteMessageContact', + 'description' => '删除联系人', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'resourcemanager:DeleteMessageContact', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'MessageContact', 'arn' => 'acs:resourcemanager:*:{#accountId}:messagecontact/{#MessageContactId}'], + ], + ], + ], + [ + 'apiName' => 'UpdateMessageContact', + 'description' => '更新联系人信息', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:UpdateMessageContact', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'MessageContact', 'arn' => 'acs:resourcemanager:*:{#accountId}:messagecontact/{#MessageContactId}'], + ], + ], + ], + [ + 'apiName' => 'ListAuthorizedAccounts', + 'description' => '列举有查询权限的成员列表', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'resourcemanager:ListAuthorizedAccounts', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'ListTagValues', + 'description' => '查询指定标签键对应的标签值', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'resourcemanager:ListTagValues', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'DisableControlPolicy', + 'description' => '关闭管控策略', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:DisableControlPolicy', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'ResourceDirectory', 'arn' => 'acs:resourcemanager::{#accountId}:policy/controlpolicy/*'], + ], + ], + ], + [ + 'apiName' => 'GetPayerForAccount', + 'description' => '获取结算账号信息', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'resourcemanager:GetPayerForAccount', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager::{#accountId}:account/{#ResourceDirectoryPath}'], + ], + ], + ], + [ + 'apiName' => 'ChangeAccountEmail', + 'description' => '修改成员邮箱', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:ChangeAccountEmail', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'DeleteAccount', + 'description' => '删除资源账号', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'resourcemanager:DeleteAccount', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager::{#accountId}:account/{#ResourceDirectoryPath}'], + ], + ], + ], + [ + 'apiName' => 'ListControlPolicyAttachmentsForTarget', + 'description' => '查询资源夹或成员绑定的管控策略列表', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'resourcemanager:ListControlPolicyAttachmentsForTarget', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'DeleteFolder', + 'description' => '删除资源夹', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'resourcemanager:DeleteFolder', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Folder', 'arn' => 'acs:resourcemanager::{#accountId}:folder/{#ResourceDirectoryPath}'], + ], + ], + ], + [ + 'apiName' => 'UpdatePayerForAccount', + 'description' => '更新成员的结算账号', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'resourcemanager:UpdatePayerForAccount', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager::{#accountId}:account/{#ResourceDirectoryPath}'], + ], + ], + ], + [ + 'apiName' => 'ListMessageContacts', + 'description' => '查询联系人列表', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'resourcemanager:ListMessageContacts', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'ResourceManager', 'resourceType' => 'MessageContact', 'arn' => 'acs:resourcemanager:*:{#accountId}:messagecontact/*'], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"D9C03B94-9396-4794-A74B-13DC437556A6\\",\\n \\"DelegatedServices\\": {\\n \\"DelegatedService\\": [\\n {\\n \\"DelegationEnabledTime\\": \\"1616652684164\\",\\n \\"ServicePrincipal\\": \\"cloudfw.aliyuncs.com\\",\\n \\"Status\\": \\"ENABLED\\"\\n }\\n ]\\n },\\n \\"NextToken\\": \\"TGlzdFJlc291cm****\\",\\n \\"MaxResults\\": 20\\n}","errorExample":""},{"type":"xml","example":"<ListDelegatedServicesForAccountResponse>\\n <RequestId>D9C03B94-9396-4794-A74B-13DC437556A6</RequestId>\\n <DelegatedServices>\\n <DelegatedService>\\n <Status>ENABLED</Status>\\n <DelegationEnabledTime>1616652684164</DelegationEnabledTime>\\n <ServicePrincipal>cloudfw.aliyuncs.com</ServicePrincipal>\\n </DelegatedService>\\n </DelegatedServices>\\n</ListDelegatedServicesForAccountResponse>","errorExample":""}]', - 'title' => '查询指定成员被设置为哪些可信服务的委派管理员账号', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - ], - 'endpoints' => [ - [ - 'regionId' => 'cn-shanghai', - 'endpoint' => 'resourcedirectory.aliyuncs.com', ], - [ - 'regionId' => 'ap-southeast-1', - 'endpoint' => 'resourcedirectory-intl.aliyuncs.com', + 'resourceTypes' => [ + ['validationType' => 'always', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager::{#accountId}:account/{#ResourceDirectoryPath}'], + ['validationType' => 'always', 'resourceType' => 'ControlPolicy', 'arn' => 'acs:resourcemanager::{#accountId}:policy/controlpolicy/{#PolicyId}'], + ['validationType' => 'always', 'resourceType' => 'Folder', 'arn' => 'acs:resourcemanager::{#accountId}:folder/{#ResourceDirectoryPath}'], + ['validationType' => 'always', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager::{#accountId}:account/*'], + ['validationType' => 'always', 'resourceType' => 'MessageContact', 'arn' => 'acs:resourcemanager:*:{#accountId}:messagecontact/{#MessageContactId}'], + ['validationType' => 'always', 'resourceType' => 'Folder', 'arn' => 'acs:resourcemanager:*:{#accountId}:folder/{#FolderId}'], + ['validationType' => 'always', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager:*:{#accountId}:account/{#AccountId}'], + ['validationType' => 'always', 'resourceType' => 'ResourceDirectory', 'arn' => 'acs:resourcemanager::{#accountId}:policy/controlpolicy/*'], + ['validationType' => 'always', 'resourceType' => 'ControlPolicy', 'arn' => 'acs:resourcemanager::{#accountId}:policy/controlpolicy/*'], + ['validationType' => 'always', 'resourceType' => 'MessageContact', 'arn' => 'acs:resourcemanager:*:{#accountId}:messagecontact/*'], + ['validationType' => 'always', 'resourceType' => 'Handshake', 'arn' => 'acs:resourcemanager::{#accountId}:handshake/{#HandshakeId}'], + ['validationType' => 'always', 'resourceType' => 'DelegatedAdministrator', 'arn' => 'acs:resourcemanager::{#accountId}:account/{#ResourceDirectoryPath}'], + ['validationType' => 'always', 'resourceType' => 'Handshake', 'arn' => 'acs:resourcemanager::{#accountId}:handshake/*'], + ['validationType' => 'always', 'resourceType' => 'Folder', 'arn' => 'acs:resourcemanager::{#accountId}:folder/*'], + ['validationType' => 'always', 'resourceType' => 'Handshake', 'arn' => 'acs:resourcemanager:*:{#accountId}:handshake/*'], + ['validationType' => 'always', 'resourceType' => 'Folder', 'arn' => 'acs:resourcemanager:*:{#accountId}:folder/{#ResourceDirectoryPath}'], + ['validationType' => 'always', 'resourceType' => 'Account', 'arn' => 'acs:resourcemanager::{#accountId}:*'], ], ], ]; |
