diff options
Diffstat (limited to 'data/zh_cn/appstream-center/2021-02-20/api-docs.php')
| -rw-r--r-- | data/zh_cn/appstream-center/2021-02-20/api-docs.php | 1687 |
1 files changed, 714 insertions, 973 deletions
diff --git a/data/zh_cn/appstream-center/2021-02-20/api-docs.php b/data/zh_cn/appstream-center/2021-02-20/api-docs.php index bd92d85..42e2e7b 100644 --- a/data/zh_cn/appstream-center/2021-02-20/api-docs.php +++ b/data/zh_cn/appstream-center/2021-02-20/api-docs.php @@ -1,22 +1,12 @@ <?php return [ 'version' => '1.0', - 'info' => [ - 'style' => 'RPC', - 'product' => 'appstream-center', - 'version' => '2021-02-20', - ], + 'info' => ['style' => 'RPC', 'product' => 'appstream-center', 'version' => '2021-02-20'], 'directories' => [ [ - 'id' => 349018, - 'title' => '客户端登录认证', + 'children' => ['ClientUserLogout', 'GetLoginToken', 'RefreshLoginToken', 'GetStsToken', 'FindIdpListByLoginIdentifier'], 'type' => 'directory', - 'children' => [ - 'ClientUserLogout', - 'GetLoginToken', - 'RefreshLoginToken', - 'GetStsToken', - 'FindIdpListByLoginIdentifier', - ], + 'title' => '客户端登录认证', + 'id' => 289934, ], ], 'components' => [ @@ -24,110 +14,259 @@ ], 'apis' => [ 'ClientUserLogout' => [ - 'summary' => '客户端退出登录,销毁登录凭证。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'Anonymous' => [], ], ], 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'none', - ], + 'systemTags' => ['operationType' => 'none'], 'parameters' => [ [ 'name' => 'LoginToken', 'in' => 'query', - 'schema' => [ - 'description' => '登录Token。', - 'type' => 'string', - 'required' => false, - 'example' => 'v22369636c721ba6b3ddb1683341016775c3f63e4d0e78f120f9a0544ed826b7af7daf747c402f0d0730b52f451b70****', - ], + 'schema' => ['description' => '登录Token。', 'type' => 'string', 'required' => false, 'example' => 'v22369636c721ba6b3ddb1683341016775c3f63e4d0e78f120f9a0544ed826b7af7daf747c402f0d0730b52f451b70****'], ], [ 'name' => 'SessionId', 'in' => 'query', - 'schema' => [ - 'description' => '登录的会话ID。', - 'type' => 'string', - 'required' => false, - 'example' => '597e869d-ea14-4b83-9490-714f68****', - ], + 'schema' => ['description' => '登录的会话ID。', 'type' => 'string', 'required' => false, 'example' => '597e869d-ea14-4b83-9490-714f68****'], ], [ 'name' => 'ClientId', 'in' => 'query', + 'schema' => ['description' => '客户端ID。', 'type' => 'string', 'required' => false, 'example' => 'eac19bef-1e45-4190-a03a-4ea74b****'], + ], + [ + 'name' => 'OfficeSiteId', + 'in' => 'query', + 'schema' => ['description' => '办公网络ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-hongkong+dir-643067****'], + ], + [ + 'name' => 'ProfileRegion', + 'in' => 'query', 'schema' => [ - 'description' => '客户端ID。', + 'description' => '账号所属站点。', 'type' => 'string', 'required' => false, - 'example' => 'eac19bef-1e45-4190-a03a-4ea74b****', + 'enumValueTitles' => ['ap_southeast_1' => '国际站', 'cn_hangzhou' => '国内站'], + 'example' => 'cn_hangzhou', ], ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => '返回数据结构。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****'], + ], + ], + ], + ], + 'title' => '客户端退出登录', + 'summary' => '客户端退出登录,销毁登录凭证。', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\"\\n}","type":"json"}]', + ], + 'FindIdpListByLoginIdentifier' => [ + 'summary' => '用于客户端查询办公网络或企业标识符的登录配置信息。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'OfficeSiteId', - 'in' => 'query', + 'Anonymous' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '140090', + 'abilityTreeNodes' => ['FEATUREappstreamingV87T4P'], + ], + 'parameters' => [ + [ + 'name' => 'ClientId', + 'in' => 'formData', + 'schema' => ['description' => '自定义的客户端唯一ID。', 'type' => 'string', 'required' => false, 'example' => '370b56f8-2812-4b6c-bfa6-2560791c****'], + ], + [ + 'name' => 'ClientOS', + 'in' => 'formData', + 'schema' => ['description' => '客户端操作系统。', 'type' => 'string', 'required' => false, 'example' => 'windows_\\"Windows 10 Enterprise\\" 10.0 (Build 14393)'], + ], + [ + 'name' => 'ClientVersion', + 'in' => 'formData', + 'schema' => ['description' => '应用的客户端版本号。', 'type' => 'string', 'required' => false, 'example' => '2.0.1-D-20211008.101607'], + ], + [ + 'name' => 'ClientChannel', + 'in' => 'formData', + 'schema' => ['description' => '自定义的客户端标识,用于区分不同的应用。', 'type' => 'string', 'required' => false, 'example' => 'pc'], + ], + [ + 'name' => 'Uuid', + 'in' => 'formData', + 'schema' => ['description' => '客户端唯一标识。若使用无影客户端,可在客户端登录界面的关于对话框中查看该参数。', 'type' => 'string', 'required' => false, 'example' => '2943802884B27030B6759F9132B2****'], + ], + [ + 'name' => 'LoginIdentifier', + 'in' => 'formData', + 'schema' => ['description' => '企业标识符。', 'type' => 'string', 'required' => true, 'example' => 'Aliyun123***'], + ], + [ + 'name' => 'SupportTypes', + 'in' => 'formData', + 'style' => 'repeatList', 'schema' => [ - 'description' => '办公网络ID。', - 'type' => 'string', + 'description' => '支持的登录类型。', + 'type' => 'array', + 'items' => [ + 'description' => '支持的登录类型。', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => ['ad' => 'AD域账号', 'simple' => '便捷账号'], + 'example' => 'ad', + ], 'required' => false, - 'example' => 'cn-hongkong+dir-643067****', + 'maxItems' => 100, ], ], [ - 'name' => 'ProfileRegion', + 'name' => 'AvailableFeatures', 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'description' => '账号所属站点。', - 'type' => 'string', + 'description' => '客户端支持的特性。', + 'type' => 'object', 'required' => false, - 'enumValueTitles' => [ - 'ap_southeast_1' => '国际站', - 'cn_hangzhou' => '国内站', + 'additionalProperties' => [ + 'type' => 'string', + 'description' => '客户端支持的特性。', + 'enumValueTitles' => ['Business' => '支持商业版'], + 'example' => '{\\"Business\\":\\"1\\"}', ], - 'example' => 'cn_hangzhou', ], ], + [ + 'name' => 'ClientIp', + 'in' => 'query', + 'schema' => ['description' => '客户端IP。', 'type' => 'string', 'required' => false, 'example' => '22.21.XX.XX'], + ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => '返回数据结构。', + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => 'AD2D0761-1FE5-549D-B169-D3F8D19C****'], + 'IdpInfos' => [ + 'description' => '身份源信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'IdpId' => ['description' => '用户所属身份源配置ID。', 'type' => 'string', 'example' => 'idp-hlyexfvwert9m8****'], + 'IdpName' => ['description' => '用户身份源名称。', 'type' => 'string', 'example' => 'DingTalk'], + 'SsoProtocol' => [ + 'description' => 'SSO协议类型。', + 'type' => 'string', + 'enumValueTitles' => ['OAuth2' => 'OAuth2协议', 'SAML' => 'SAML协议', 'OIDC' => 'OIDC协议'], + 'example' => 'SAML', + ], + 'IdpProvider' => ['description' => '应用所属的资源提供者。', 'type' => 'string', 'example' => 'DingTalk'], + 'SsoServiceUrl' => ['description' => 'SSO服务地址。', 'type' => 'string', 'example' => 'https://e1iwdlcn.aliyunidaas.com/login/app/app_****/saml2/sso'], + 'Cookies' => ['description' => '用于使用Cookie方式实现应用内免登时告知客户端需要写入哪些Cookie到应用内。', 'type' => 'string', 'example' => 'null'], + 'AccountType' => [ + 'description' => '账号类型。', + 'type' => 'string', + 'enumValueTitles' => ['ad' => 'AD域账号', 'simple' => '便捷账号'], + 'example' => 'simple', + ], + 'JumpSwitch' => ['description' => '是否跳转到浏览器登录。', 'type' => 'string', 'example' => 'true'], + 'IdpNameEN' => ['description' => '英文名称。', 'type' => 'string', 'example' => 'wy-simple'], + ], + 'description' => '', + ], + ], + 'OfficeSiteInfo' => [ + 'description' => '查询到的办公网络信息。', + 'type' => 'object', + 'properties' => [ + 'OfficeSiteId' => ['description' => '办公网络ID。', 'type' => 'string', 'example' => 'cn-shanghai+dir-448204****'], + 'SsoServiceUrl' => ['description' => 'SSO服务地址。', 'type' => 'string', 'example' => 'https://e1iwdlcn.aliyunidaas.com/login/app/app_****/saml2/sso'], + 'RegionId' => ['description' => '地域ID。', 'type' => 'string', 'example' => 'cn-hangzhou'], + 'AccessType' => [ + 'description' => '允许的客户端网络连接方式。', + 'type' => 'string', + 'enumValueTitles' => ['INTERNET' => '互联网访问', 'VPC' => '专网访问', 'ANY' => '都允许'], + 'example' => 'INTERNET', + ], + 'ProviderId' => ['description' => '所属账号的BID。', 'type' => 'string', 'example' => '26842'], + 'PreferVpcAccess' => ['title' => '是否优先专网', 'type' => 'boolean'], + 'VpcAccessAddress' => ['title' => '专网接入地址', 'type' => 'string'], + ], + ], + 'TenantAliasInfo' => [ + 'description' => '企业标识符信息。', + 'type' => 'object', + 'properties' => [ + 'TenantAlias' => ['description' => '企业标识符。', 'type' => 'string', 'example' => 'Or09****'], + 'AccessType' => [ + 'description' => '允许的客户端网络连接方式。', + 'type' => 'string', + 'enumValueTitles' => ['INTERNET' => '互联网访问', 'VPC' => '专网访问', 'ANY' => '都允许'], + 'example' => 'INTERNET', + ], + 'PreferVpcAccess' => ['title' => '是否优先专网', 'type' => 'boolean'], + 'VpcAccessAddress' => ['title' => '专网接入地址', 'type' => 'string'], + 'IsLoginByCipherParam' => ['type' => 'string'], + ], + ], + 'ProfileRegion' => [ + 'description' => '账号所属站点。', 'type' => 'string', - 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + 'enumValueTitles' => ['ap_southeast_1' => '国际站', 'cn_hangzhou' => '中国站'], + 'example' => 'cn_hangzhou', + ], + 'PopRegionConfig' => [ + 'description' => '中心服务请求地址,用于服务高可用场景。', + 'type' => 'object', + 'additionalProperties' => ['type' => 'string', 'description' => '登录服务地址。', 'example' => 'cn-shanghai'], ], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\"\\n}","type":"json"}]', - 'title' => '客户端退出登录', - ], - 'GetLoginToken' => [ - 'summary' => '通过企业标识符获取登录凭证。', - 'methods' => [ - 'post', - 'get', + 'title' => '查询登录配置', + 'changeSet' => [ + ['createdAt' => '2024-12-13T02:07:38.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-11-02T06:16:44.000Z', 'description' => '请求参数发生变更、响应参数发生变更'], + ['createdAt' => '2022-06-22T06:10:33.000Z', 'description' => 'OpenAPI 下线'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], + 'ramActions' => [], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AD2D0761-1FE5-549D-B169-D3F8D19C****\\",\\n \\"IdpInfos\\": [\\n {\\n \\"IdpId\\": \\"idp-hlyexfvwert9m8****\\",\\n \\"IdpName\\": \\"DingTalk\\",\\n \\"SsoProtocol\\": \\"SAML\\",\\n \\"IdpProvider\\": \\"DingTalk\\",\\n \\"SsoServiceUrl\\": \\"https://e1iwdlcn.aliyunidaas.com/login/app/app_****/saml2/sso\\",\\n \\"Cookies\\": \\"null\\",\\n \\"AccountType\\": \\"simple\\",\\n \\"JumpSwitch\\": \\"true\\",\\n \\"IdpNameEN\\": \\"wy-simple\\"\\n }\\n ],\\n \\"OfficeSiteInfo\\": {\\n \\"OfficeSiteId\\": \\"cn-shanghai+dir-448204****\\",\\n \\"SsoServiceUrl\\": \\"https://e1iwdlcn.aliyunidaas.com/login/app/app_****/saml2/sso\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"AccessType\\": \\"INTERNET\\",\\n \\"ProviderId\\": \\"26842\\",\\n \\"PreferVpcAccess\\": true,\\n \\"VpcAccessAddress\\": \\"\\"\\n },\\n \\"TenantAliasInfo\\": {\\n \\"TenantAlias\\": \\"Or09****\\",\\n \\"AccessType\\": \\"INTERNET\\",\\n \\"PreferVpcAccess\\": true,\\n \\"VpcAccessAddress\\": \\"\\",\\n \\"IsLoginByCipherParam\\": \\"\\"\\n },\\n \\"ProfileRegion\\": \\"cn_hangzhou\\",\\n \\"PopRegionConfig\\": {\\n \\"key\\": \\"cn-shanghai\\"\\n }\\n}","type":"json"}]', + ], + 'GetLoginToken' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'Anonymous' => [], @@ -140,333 +279,169 @@ 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '125244', - 'abilityTreeNodes' => [ - 'FEATUREappstreamingV87T4P', - ], + 'abilityTreeNodes' => ['FEATUREappstreamingV87T4P'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '地域 ID。', - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 'cn-shanghai', - ], + 'schema' => ['description' => '地域 ID。', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'cn-shanghai'], ], [ 'name' => 'ClientId', 'in' => 'query', - 'schema' => [ - 'description' => '客户端生成的唯一ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => '05967f80-6f51-46cb-a27c-****', - ], + 'schema' => ['description' => '客户端生成的唯一ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '05967f80-6f51-46cb-a27c-****'], ], [ 'name' => 'DirectoryId', 'in' => 'query', - 'schema' => [ - 'description' => '办公网络ID,与`OfficeSiteId`含义相同。建议停止使用`DirectoryId`,改为使用`OfficeSiteId`。`DirectoryId`和`OfficeSiteId`只能填写一个,不可同时填写。', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'cn-beijing+dir-j9dd****', - ], + 'schema' => ['description' => '办公网络ID,与`OfficeSiteId`含义相同。建议停止使用`DirectoryId`,改为使用`OfficeSiteId`。`DirectoryId`和`OfficeSiteId`只能填写一个,不可同时填写。', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'cn-beijing+dir-j9dd****'], ], [ 'name' => 'OfficeSiteId', 'in' => 'query', - 'schema' => [ - 'description' => '办公网络ID。', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'cn-beijing+dir-j9dd****', - ], + 'schema' => ['description' => '办公网络ID。', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'cn-beijing+dir-j9dd****'], ], [ 'name' => 'SessionId', 'in' => 'query', - 'schema' => [ - 'description' => '登录的会话ID。'."\n" - ."\n" - .'若未绑定虚拟MFA设备或者未开启客户端二次认证,则不需要填写SessionId。'."\n" - .'若已绑定虚拟MFA设备或者已开启客户端二次认证,则ADPassword之后的登录认证阶段需要填写SessionId。可从便捷账号验证(即GetLoginToken请求处于ADPassword阶段)的返回结果中获取SessionId。', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'c6f3cd91-65fc-4c7b-b189-2a73da0****', - ], + 'schema' => ['description' => '登录的会话ID。'."\n" + ."\n" + .'若未绑定虚拟MFA设备或者未开启客户端二次认证,则不需要填写SessionId。'."\n" + .'若已绑定虚拟MFA设备或者已开启客户端二次认证,则ADPassword之后的登录认证阶段需要填写SessionId。可从便捷账号验证(即GetLoginToken请求处于ADPassword阶段)的返回结果中获取SessionId。', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'c6f3cd91-65fc-4c7b-b189-2a73da0****'], ], [ 'name' => 'CurrentStage', 'in' => 'query', - 'schema' => [ - 'description' => '当前登录认证阶段,依次为:'."\n" - ."\n" - .'1. `ADPassword`:验证用户信息。当使用便捷账号或者AD账号的账密认证时填写此值。'."\n" - .'1. `MFABind`:绑定虚拟MFA设备。'."\n" - .'1. `MFAVerify`:验证虚拟MFA设备生成的安全码。'."\n" - .'1. `TokenVerify`:客户端二次认证。'."\n" - .'1. `ChangePassword`:修改用户密码。'."\n" - .'1. `KeepAliveVerify`: KeepAliveToken有效时,可用于换取LoginToken。'."\n" - .'1. `PhoneVerifyTenantSelect`: 手机号登录场景下,用于选择其中一个企业ID登录。'."\n" - .'1. `VerifyForRisk`: 识别登录风险后的核身校验。', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'SsoTokenLogin', - ], + 'schema' => ['description' => '当前登录认证阶段,依次为:'."\n" + ."\n" + .'1. `ADPassword`:验证用户信息。当使用便捷账号或者AD账号的账密认证时填写此值。'."\n" + .'1. `MFABind`:绑定虚拟MFA设备。'."\n" + .'1. `MFAVerify`:验证虚拟MFA设备生成的安全码。'."\n" + .'1. `TokenVerify`:客户端二次认证。'."\n" + .'1. `ChangePassword`:修改用户密码。'."\n" + .'1. `KeepAliveVerify`: KeepAliveToken有效时,可用于换取LoginToken。'."\n" + .'1. `PhoneVerifyTenantSelect`: 手机号登录场景下,用于选择其中一个企业ID登录。'."\n" + .'1. `VerifyForRisk`: 识别登录风险后的核身校验。', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'SsoTokenLogin'], ], [ 'name' => 'EndUserId', 'in' => 'query', - 'schema' => [ - 'description' => '便捷账号或AD域账号的用户名。当`CurrentStage`为`ADPassword`时必填。', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'user01', - ], + 'schema' => ['description' => '便捷账号或AD域账号的用户名。当`CurrentStage`为`ADPassword`时必填。', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'user01'], ], [ 'name' => 'Password', 'in' => 'query', - 'schema' => [ - 'description' => '便捷账号或AD域账号的密码。当`CurrentStage`为`ADPassword`时必填。', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'Admin@1234****', - 'maxLength' => 500, - 'minLength' => 1, - ], + 'schema' => ['description' => '便捷账号或AD域账号的密码。当`CurrentStage`为`ADPassword`时必填。', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'Admin@1234****', 'maxLength' => 500, 'minLength' => 1], ], [ 'name' => 'EncryptedPassword', 'in' => 'query', - 'schema' => [ - 'description' => '已加密密码。', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => '04d7****8e90bb0484fc;gJ1GLca1vQRRqQbRvByU0A==;5kOWZE7AtbQhki+4LAo69A==', - ], + 'schema' => ['description' => '已加密密码。', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '04d7****8e90bb0484fc;gJ1GLca1vQRRqQbRvByU0A==;5kOWZE7AtbQhki+4LAo69A=='], ], [ 'name' => 'OldPassword', 'in' => 'query', - 'schema' => [ - 'description' => '旧密码。当`CurrentStage`为`ChangePassword`时必填。', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'Admin@1234****'."\n", - ], + 'schema' => ['description' => '旧密码。当`CurrentStage`为`ChangePassword`时必填。', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'Admin@1234****'."\n"], ], [ 'name' => 'NewPassword', 'in' => 'query', - 'schema' => [ - 'description' => '新密码。当`CurrentStage`为`ChangePassword`时必填。', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'Admin@1234****'."\n", - ], + 'schema' => ['description' => '新密码。当`CurrentStage`为`ChangePassword`时必填。', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'Admin@1234****'."\n"], ], [ 'name' => 'AuthenticationCode', 'in' => 'query', - 'schema' => [ - 'description' => '虚拟MFA设备生成的安全码。当`CurrentStage`为`MFAVerify`时必填。', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => '182901', - ], + 'schema' => ['description' => '虚拟MFA设备生成的安全码。当`CurrentStage`为`MFAVerify`时必填。', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '182901'], ], [ 'name' => 'SsoSessionToken', 'in' => 'query', - 'schema' => [ - 'description' => 'SSO场景下的登录令牌。', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => '04d707a6-fb23-44a7-aae7-8e90****', - ], + 'schema' => ['description' => 'SSO场景下的登录令牌。', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '04d707a6-fb23-44a7-aae7-8e90****'], ], [ 'name' => 'ClientOS', 'in' => 'query', - 'schema' => [ - 'description' => '客户端操作系统。', - 'type' => 'string', - 'required' => false, - 'example' => 'windows_\\"Windows 10 Pro\\" 10.0 (Build 22631)', - ], + 'schema' => ['description' => '客户端操作系统。', 'type' => 'string', 'required' => false, 'example' => 'windows_\\"Windows 10 Pro\\" 10.0 (Build 22631)'], ], [ 'name' => 'ClientVersion', 'in' => 'query', - 'schema' => [ - 'description' => '客户端版本。', - 'type' => 'string', - 'required' => false, - 'example' => '7.3.0-20240619.143924', - ], + 'schema' => ['description' => '客户端版本。', 'type' => 'string', 'required' => false, 'example' => '7.3.0-20240619.143924'], ], [ 'name' => 'TokenCode', 'in' => 'query', - 'schema' => [ - 'description' => '若已在无影云电脑企业版控制台开启客户端二次认证,且识别到当前登录用户有风险时,会发送该二次认证验证码到终端用户邮箱。当`CurrentStage`为`TokenVerify`时必填。', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => '1234***', - ], + 'schema' => ['description' => '若已在无影云电脑企业版控制台开启客户端二次认证,且识别到当前登录用户有风险时,会发送该二次认证验证码到终端用户邮箱。当`CurrentStage`为`TokenVerify`时必填。', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '1234***'], ], [ 'name' => 'UmidToken', 'in' => 'query', - 'schema' => [ - 'description' => '幂等校验参数。', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => '04d707a6-fb23-44a7-aae7-8e90bb04****', - ], + 'schema' => ['description' => '幂等校验参数。', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '04d707a6-fb23-44a7-aae7-8e90bb04****'], ], [ 'name' => 'FingerPrintData', 'in' => 'query', - 'schema' => [ - 'description' => '指纹信息,目前暂时停止支持。', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], + 'schema' => ['description' => '指纹信息,目前暂时停止支持。', 'type' => 'string', 'required' => false, 'example' => 'null'], ], [ 'name' => 'KeepAlive', 'in' => 'query', - 'schema' => [ - 'description' => '是否保持登录。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '是否保持登录。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ 'name' => 'KeepAliveToken', 'in' => 'query', - 'schema' => [ - 'description' => '用于保持登录的凭证(Token),在登录成功且用户开启了保持登录选项后,接口会返回KeepAliveToken,在KeepAliveToken有效期内可以调用GetLoginToken接口并将CurrentStage设为KeepAliveVerify来换取登录凭证(LoginToken)。当CurrentStage为KeepAliveVerify时,KeepAliveToken必填。', - 'type' => 'string', - 'required' => false, - 'example' => '00ugamMAoO1+u1MlhmgCeZJ75q094x3H/4kg7ZaTI3f/joVTVPIpJgfv9JFkPLNxnQjblrvsByNas08mc6FtVWvQPOE68fqmt6QMM4UbRtahm8luxEXvicF58qSPXW1hxOtV/Ev6d92VBz2Bck/N4CYyjD0iLocfN8jkBnt231****', - ], + 'schema' => ['description' => '用于保持登录的凭证(Token),在登录成功且用户开启了保持登录选项后,接口会返回KeepAliveToken,在KeepAliveToken有效期内可以调用GetLoginToken接口并将CurrentStage设为KeepAliveVerify来换取登录凭证(LoginToken)。当CurrentStage为KeepAliveVerify时,KeepAliveToken必填。', 'type' => 'string', 'required' => false, 'example' => '00ugamMAoO1+u1MlhmgCeZJ75q094x3H/4kg7ZaTI3f/joVTVPIpJgfv9JFkPLNxnQjblrvsByNas08mc6FtVWvQPOE68fqmt6QMM4UbRtahm8luxEXvicF58qSPXW1hxOtV/Ev6d92VBz2Bck/N4CYyjD0iLocfN8jkBnt231****'], ], [ 'name' => 'Uuid', 'in' => 'query', - 'schema' => [ - 'description' => '客户端唯一标识。若使用无影客户端,可在客户端登录界面的关于对话框中查看该参数。', - 'type' => 'string', - 'required' => false, - 'example' => 'C50973691A6D2BE23F2CDD73B85B****', - ], + 'schema' => ['description' => '客户端唯一标识。若使用无影客户端,可在客户端登录界面的关于对话框中查看该参数。', 'type' => 'string', 'required' => false, 'example' => 'C50973691A6D2BE23F2CDD73B85B****'], ], [ 'name' => 'ImageUrl', 'in' => 'query', - 'schema' => [ - 'description' => '图片URL。'."\n" - ."\n" - .'> 该参数已停用。', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], + 'schema' => ['description' => '图片URL。'."\n" + ."\n" + .'> 该参数已停用。', 'type' => 'string', 'required' => false, 'example' => 'null'], ], [ 'name' => 'EncryptedFingerPrintData', 'in' => 'query', - 'schema' => [ - 'description' => '指纹信息。'."\n" - ."\n" - .'> 该参数已停用。', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], + 'schema' => ['description' => '指纹信息。'."\n" + ."\n" + .'> 该参数已停用。', 'type' => 'string', 'required' => false, 'example' => 'null'], ], [ 'name' => 'EncryptedKey', 'in' => 'query', - 'schema' => [ - 'description' => '加密的密钥ID。', - 'type' => 'string', - 'required' => false, - 'example' => '4d7****8e90bb0484fc', - ], + 'schema' => ['description' => '加密的密钥ID。', 'type' => 'string', 'required' => false, 'example' => '4d7****8e90bb0484fc'], ], [ 'name' => 'ClientType', 'in' => 'query', - 'schema' => [ - 'description' => '客户端的类型。', - 'type' => 'string', - 'required' => false, - 'example' => 'windows', - ], + 'schema' => ['description' => '客户端的类型。', 'type' => 'string', 'required' => false, 'example' => 'windows'], ], [ 'name' => 'SsoExtendsCookies', 'in' => 'query', - 'schema' => [ - 'description' => 'SSO 登录的Cookie,应用内免登使用。', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], + 'schema' => ['description' => 'SSO 登录的Cookie,应用内免登使用。', 'type' => 'string', 'required' => false, 'example' => 'null'], ], [ 'name' => 'LoginName', 'in' => 'query', - 'schema' => [ - 'description' => '已停用。', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], + 'schema' => ['description' => '已停用。', 'type' => 'string', 'required' => false, 'example' => 'null'], ], [ 'name' => 'LoginIdentifier', 'in' => 'query', - 'schema' => [ - 'description' => '企业标识符。', - 'type' => 'string', - 'required' => false, - 'example' => 'Fe04****', - ], + 'schema' => ['description' => '企业标识符。', 'type' => 'string', 'required' => false, 'example' => 'Fe04****'], ], [ 'name' => 'IdpId', 'in' => 'query', - 'schema' => [ - 'description' => '登录认证服务ID,通过接口[FindIdpListByLoginIdentifier](~~FindIdpListByLoginIdentifier~~)获取。', - 'type' => 'string', - 'required' => false, - 'example' => 'idp-iwntrlbb98q7v****', - ], + 'schema' => ['description' => '登录认证服务ID,通过接口[FindIdpListByLoginIdentifier](~~FindIdpListByLoginIdentifier~~)获取。', 'type' => 'string', 'required' => false, 'example' => 'idp-iwntrlbb98q7v****'], ], [ 'name' => 'NetworkType', @@ -475,34 +450,21 @@ 'description' => '客户端的网络连接类型。', 'type' => 'string', 'required' => false, - 'enumValueTitles' => [ - 'INTERNET' => '互联网', - 'VPC' => '企业专网', - ], + 'enumValueTitles' => ['INTERNET' => '互联网', 'VPC' => '企业专网'], 'example' => 'INTERNET', ], ], [ 'name' => 'Phone', 'in' => 'query', - 'schema' => [ - 'description' => '手机号码,手机号登录场景下使用。'."\n" - .'> 国际站账号不支持。', - 'type' => 'string', - 'required' => false, - 'example' => '1822727****', - ], + 'schema' => ['description' => '手机号码,手机号登录场景下使用。'."\n" + .'> 国际站账号不支持。', 'type' => 'string', 'required' => false, 'example' => '1822727****'], ], [ 'name' => 'PhoneVerifyCode', 'in' => 'query', - 'schema' => [ - 'description' => '手机验证码,手机号登录场景下使用。'."\n" - .'> 国际站账号不支持。', - 'type' => 'string', - 'required' => false, - 'example' => '321123', - ], + 'schema' => ['description' => '手机验证码,手机号登录场景下使用。'."\n" + .'> 国际站账号不支持。', 'type' => 'string', 'required' => false, 'example' => '321123'], ], [ 'name' => 'AvailableFeatures', @@ -514,9 +476,7 @@ 'required' => false, 'additionalProperties' => [ 'type' => 'string', - 'enumValueTitles' => [ - 'Business' => '支持商业版', - ], + 'enumValueTitles' => ['Business' => '支持商业版'], 'description' => '客户端支持的特性。', 'example' => '{\\"Business\\":\\"1\\"}', ], @@ -529,23 +489,14 @@ 'description' => 'MFA校验的类型。', 'type' => 'string', 'required' => false, - 'enumValueTitles' => [ - 'TOTP' => '手机令牌', - 'PHONE' => '手机验证码', - 'EMAIL' => '邮箱', - ], + 'enumValueTitles' => ['TOTP' => '手机令牌', 'PHONE' => '手机验证码', 'EMAIL' => '邮箱'], 'example' => 'TOTP', ], ], [ 'name' => 'ClientName', 'in' => 'query', - 'schema' => [ - 'description' => '客户端名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'HONOR-BRN-HXXB', - ], + 'schema' => ['description' => '客户端名称。', 'type' => 'string', 'required' => false, 'example' => 'HONOR-BRN-HXXB'], ], [ 'name' => 'ProfileRegion', @@ -554,28 +505,29 @@ 'description' => '租户所属站点。', 'type' => 'string', 'required' => false, - 'enumValueTitles' => [ - 'ap_southeast_1' => '国际站', - 'cn_hangzhou' => '中国站', - ], + 'enumValueTitles' => ['ap_southeast_1' => '国际站', 'cn_hangzhou' => '中国站'], 'example' => 'cn_hangzhou', ], ], [ 'name' => 'Channel', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'required' => false, - ], + 'schema' => ['type' => 'string'], ], [ 'name' => 'AreaSite', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'required' => false, - ], + 'schema' => ['type' => 'string'], + ], + [ + 'name' => 'CipherEndUserId', + 'in' => 'query', + 'schema' => ['type' => 'string'], + ], + [ + 'name' => 'CipherPassword', + 'in' => 'query', + 'schema' => ['type' => 'string'], ], ], 'responses' => [ @@ -584,110 +536,37 @@ 'description' => '返回信息集合。', 'type' => 'object', 'properties' => [ - 'Email' => [ - 'description' => '用户邮箱。在登录后随LoginToken返回。'."\n" - ."\n" - .'- 如果是便捷账号,返回创建便捷账号时设置的邮箱。'."\n" - .'- 如果是AD域账号,返回以下形式:用户名@AD域名。', - 'type' => 'string', - 'example' => 'alice***@example.com', - ], - 'Secret' => [ - 'description' => '绑定虚拟MFA设备时的密钥。用于`MFABind`阶段。'."\n" - ."\n" - .'> 关于各认证阶段的详细信息,参见本接口请求参数`CurrentStage`的参数说明。', - 'type' => 'string', - 'example' => '4JZNSDHDM3T6AZ4G2O5OWXBLLE4P****', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'EEA72491-B731-53D6-83ED-209769D6****', - ], - 'EndUserId' => [ - 'description' => '便捷账号用户名或AD用户名。', - 'type' => 'string', - 'example' => 'alice', - ], - 'LoginToken' => [ - 'description' => '登录凭证。', - 'type' => 'string', - 'example' => 'v185fdd7f6d39fa7861981639366085772e150a390a5bb7b43c4e62440d94fc392b945770e1596cebe90085ce0af4d****', - ], - 'NextStage' => [ - 'description' => '预期的下一阶段。例如,若管理员在无影云电脑企业版控制台开启了MFA认证,则当用户名密码认证通过后(即`ADPassword`阶段后),该参数会返回`MFAVerify`,表示此时需要做MFA认证。'."\n" - ."\n" - .'> 关于各认证阶段的详细信息,参见本接口请求参数`CurrentStage`的参数说明。', - 'type' => 'string', - 'example' => 'MFABind', - ], - 'QrCodePng' => [ - 'description' => '绑定虚拟MFA设备时的密钥二维码。使用Base64编码。可以为空,用于`MFABind`阶段。'."\n" - ."\n" - .'> 关于各认证阶段的详细信息,参见本接口请求参数`CurrentStage`的参数说明。', - 'type' => 'string', - 'example' => '5OCLLKKOJU5HPBX66H3QCTWY******'."\n", - ], - 'Label' => [ - 'description' => '便捷账号属性。如果是AD域账号,则返回空值。', - 'type' => 'string', - 'example' => 'test:wuying'."\n", - ], - 'SessionId' => [ - 'description' => '会话ID。 仅在同一会话第一次调用GetLoginToken时返回。需要多次认证时,后续的阶段需要传入该参数。', - 'type' => 'string', - 'example' => 'cc15c91c-821b-4edd-9af2-6df66cc****', - ], - 'Phone' => [ - 'description' => '便捷账号的手机号。如果是AD域账号,则返回空值。', - 'type' => 'string', - 'example' => '1826717****', - ], - 'TenantId' => [ - 'description' => '阿里云账号ID。硬件终端识别使用。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '13747924304****', - ], - 'KeepAliveToken' => [ - 'description' => '用于保持登录的凭证(Token),在登录成功且用户开启了保持登录选项后,接口会返回`KeepAliveToken`。若未开启保持登录选项,则返回空值。', - 'type' => 'string', - 'example' => '006YwvYMsesWWsDBZnVB+Wq9AvJDVIqOY3YCktvtb7+KxMb3ClnNlV8+l/knhZYrXUmeP06IzkjF+IgcZ3vZKOyMprDyFHjCy1r27FRE/U7+geWCl8iQ+yF8GaCRHfJEkC2+ROs93HkT4tfHxyY1J8W7O7ZQGUC/cdCvm+cCP6FIy73IUuPuVR6PcKYXIp***', - ], - 'Industry' => [ - 'description' => '> 该参数不对外开放使用。', - 'type' => 'string', - 'example' => 'edu', - ], + 'Email' => ['description' => '用户邮箱。在登录后随LoginToken返回。'."\n" + ."\n" + .'- 如果是便捷账号,返回创建便捷账号时设置的邮箱。'."\n" + .'- 如果是AD域账号,返回以下形式:用户名@AD域名。', 'type' => 'string', 'example' => 'alice***@example.com'], + 'Secret' => ['description' => '绑定虚拟MFA设备时的密钥。用于`MFABind`阶段。'."\n" + ."\n" + .'> 关于各认证阶段的详细信息,参见本接口请求参数`CurrentStage`的参数说明。', 'type' => 'string', 'example' => '4JZNSDHDM3T6AZ4G2O5OWXBLLE4P****'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'EEA72491-B731-53D6-83ED-209769D6****'], + 'EndUserId' => ['description' => '便捷账号用户名或AD用户名。', 'type' => 'string', 'example' => 'alice'], + 'LoginToken' => ['description' => '登录凭证。', 'type' => 'string', 'example' => 'v185fdd7f6d39fa7861981639366085772e150a390a5bb7b43c4e62440d94fc392b945770e1596cebe90085ce0af4d****'], + 'NextStage' => ['description' => '预期的下一阶段。例如,若管理员在无影云电脑企业版控制台开启了MFA认证,则当用户名密码认证通过后(即`ADPassword`阶段后),该参数会返回`MFAVerify`,表示此时需要做MFA认证。'."\n" + ."\n" + .'> 关于各认证阶段的详细信息,参见本接口请求参数`CurrentStage`的参数说明。', 'type' => 'string', 'example' => 'MFABind'], + 'QrCodePng' => ['description' => '绑定虚拟MFA设备时的密钥二维码。使用Base64编码。可以为空,用于`MFABind`阶段。'."\n" + ."\n" + .'> 关于各认证阶段的详细信息,参见本接口请求参数`CurrentStage`的参数说明。', 'type' => 'string', 'example' => '5OCLLKKOJU5HPBX66H3QCTWY******'."\n"], + 'Label' => ['description' => '便捷账号属性。如果是AD域账号,则返回空值。', 'type' => 'string', 'example' => 'test:wuying'."\n"], + 'SessionId' => ['description' => '会话ID。 仅在同一会话第一次调用GetLoginToken时返回。需要多次认证时,后续的阶段需要传入该参数。', 'type' => 'string', 'example' => 'cc15c91c-821b-4edd-9af2-6df66cc****'], + 'Phone' => ['description' => '便捷账号的手机号。如果是AD域账号,则返回空值。', 'type' => 'string', 'example' => '1826717****'], + 'TenantId' => ['description' => '阿里云账号ID。硬件终端识别使用。', 'type' => 'integer', 'format' => 'int64', 'example' => '13747924304****'], + 'KeepAliveToken' => ['description' => '用于保持登录的凭证(Token),在登录成功且用户开启了保持登录选项后,接口会返回`KeepAliveToken`。若未开启保持登录选项,则返回空值。', 'type' => 'string', 'example' => '006YwvYMsesWWsDBZnVB+Wq9AvJDVIqOY3YCktvtb7+KxMb3ClnNlV8+l/knhZYrXUmeP06IzkjF+IgcZ3vZKOyMprDyFHjCy1r27FRE/U7+geWCl8iQ+yF8GaCRHfJEkC2+ROs93HkT4tfHxyY1J8W7O7ZQGUC/cdCvm+cCP6FIy73IUuPuVR6PcKYXIp***'], + 'Industry' => ['description' => '> 该参数不对外开放使用。', 'type' => 'string', 'example' => 'edu'], 'Props' => [ 'description' => '> 该参数不对外开放使用。', 'type' => 'object', - 'additionalProperties' => [ - 'type' => 'string', - 'description' => '> 该参数不对外开放使用。', - 'example' => '{\'environment\': \'online\', \'sourceClientType\': \'WINDOWS', - ], - ], - 'WyId' => [ - 'description' => '用户全局唯一ID。', - 'type' => 'string', - 'example' => '0aba1403b337a***', - ], - 'VpcRegionId' => [ - 'description' => 'VPC地域ID,用于专网登录。', - 'type' => 'string', - 'example' => 'cn-beijing', - ], - 'WindowDisplayMode' => [ - 'description' => '> 该参数不对外开放使用。', - 'type' => 'string', - 'example' => 'Windowed', - ], - 'AccountType' => [ - 'description' => '账号类型, 便捷账号或者AD域账号。', - 'type' => 'string', - 'example' => 'ad', + 'additionalProperties' => ['type' => 'string', 'description' => '> 该参数不对外开放使用。', 'example' => '{\'environment\': \'online\', \'sourceClientType\': \'WINDOWS'], ], + 'WyId' => ['description' => '用户全局唯一ID。', 'type' => 'string', 'example' => '0aba1403b337a***'], + 'VpcRegionId' => ['description' => 'VPC地域ID,用于专网登录。', 'type' => 'string', 'example' => 'cn-beijing'], + 'WindowDisplayMode' => ['description' => '> 该参数不对外开放使用。', 'type' => 'string', 'example' => 'Windowed'], + 'AccountType' => ['description' => '账号类型, 便捷账号或者AD域账号。', 'type' => 'string', 'example' => 'ad'], 'TenantInfos' => [ 'description' => '企业ID信息,在手机号登录场景下,一个手机号可能开通了多个企业ID的登录能力,此时需要传入CurrentState:PhoneVerifyTenantSelect选择其中一个企业ID进行登录。', 'type' => 'array', @@ -695,103 +574,48 @@ 'description' => '企业ID信息。', 'type' => 'object', 'properties' => [ - 'TenantAlias' => [ - 'description' => '企业ID。', - 'type' => 'string', - 'example' => 'Up830***', - ], + 'TenantAlias' => ['description' => '企业ID。', 'type' => 'string', 'example' => 'Up830***'], 'AccessType' => [ 'description' => '客户端的网络连接类型。', 'type' => 'string', - 'enumValueTitles' => [ - 'INTERNET' => '互联网', - 'VPC' => '企业专网', - 'ANY' => '都允许', - ], + 'enumValueTitles' => ['INTERNET' => '互联网', 'VPC' => '企业专网', 'ANY' => '都允许'], 'example' => 'INTERNET', ], ], ], ], - 'TenantAlias' => [ - 'description' => '登录的企业标识符名称。', - 'type' => 'string', - 'example' => 'Rq201***', - ], - 'AccessType' => [ - 'description' => '客户端的网络连接类型。', - 'type' => 'string', - 'example' => 'INTERNET', - ], + 'TenantAlias' => ['description' => '登录的企业标识符名称。', 'type' => 'string', 'example' => 'Rq201***'], + 'AccessType' => ['description' => '客户端的网络连接类型。', 'type' => 'string', 'example' => 'INTERNET'], 'OfficeSites' => [ 'description' => 'AD登录后,该AD对应的办公网络信息。', 'type' => 'array', - 'items' => [ - 'description' => 'AD登录后,该AD对应的办公网络ID。', - 'type' => 'string', - 'example' => '[\'cn-beijing+dir-096920***\', \'cn-shenzhen+dir-2546908***\']', - ], - ], - 'IdpId' => [ - 'description' => '用户所属身份源配置ID。', - 'type' => 'string', - 'example' => 'idp-7ttvs4ove8bo5***', - ], - 'AdDomain' => [ - 'description' => 'AD办公网络地址。', - 'type' => 'string', - 'example' => 'easthp***.com', + 'items' => ['description' => 'AD登录后,该AD对应的办公网络ID。', 'type' => 'string', 'example' => '[\'cn-beijing+dir-096920***\', \'cn-shenzhen+dir-2546908***\']'], ], + 'IdpId' => ['description' => '用户所属身份源配置ID。', 'type' => 'string', 'example' => 'idp-7ttvs4ove8bo5***'], + 'AdDomain' => ['description' => 'AD办公网络地址。', 'type' => 'string', 'example' => 'easthp***.com'], 'RiskVerifyInfo' => [ 'description' => '登录风险识别相关信息,如检测到风险,需要通过返回的邮箱或者手机号进行核身。'."\n" .'通过返回的手机号或邮箱,调用`SendVerifyCode`接口发送验证码,然后调用`GetLoginToken`接口指定`CurrentStage`参数为`VerifyForRisk`进行核身。', 'type' => 'object', 'properties' => [ - 'Email' => [ - 'description' => '用于身份验证的邮箱地址。', - 'type' => 'string', - 'example' => 'ppas***@aliyun.com', - ], - 'LastLockDuration' => [ - 'description' => '锁定时间。单位:秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '12000', - ], - 'Locked' => [ - 'description' => '用户是否被锁定。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'Phone' => [ - 'description' => '用于核身的手机号。', - 'type' => 'string', - 'example' => '138****1111', - ], + 'Email' => ['description' => '用于身份验证的邮箱地址。', 'type' => 'string', 'example' => 'ppas***@aliyun.com'], + 'LastLockDuration' => ['description' => '锁定时间。单位:秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '12000'], + 'Locked' => ['description' => '用户是否被锁定。', 'type' => 'boolean', 'example' => 'true'], + 'Phone' => ['description' => '用于核身的手机号。', 'type' => 'string', 'example' => '138****1111'], ], ], 'PasswordStrategy' => [ 'description' => '密码策略。', 'type' => 'object', 'properties' => [ - 'TenantPasswordLength' => [ - 'description' => '要求的密码长度。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '12', - ], + 'TenantPasswordLength' => ['description' => '要求的密码长度。', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'TenantAlternativeChars' => [ 'description' => '要求的密码内容。', 'type' => 'array', 'items' => [ 'description' => '要求的密码内容。', 'type' => 'string', - 'enumValueTitles' => [ - 'NUMBER' => '数字', - 'SPECIAL_CHAR' => '特殊字符', - 'LOWER_LETTER' => '小写字母', - 'UPPER_LETTER' => '大写字母', - ], + 'enumValueTitles' => ['NUMBER' => '数字', 'SPECIAL_CHAR' => '特殊字符', 'LOWER_LETTER' => '小写字母', 'UPPER_LETTER' => '大写字母'], 'example' => 'UPPER_LETTER', ], ], @@ -800,10 +624,7 @@ 'Reason' => [ 'description' => '登录失败的原因。', 'type' => 'string', - 'enumValueTitles' => [ - 'ResetPassword' => '密码已重置', - 'PasswordExpired' => '需要修改密码', - ], + 'enumValueTitles' => ['ResetPassword' => '密码已重置', 'PasswordExpired' => '需要修改密码'], 'example' => 'PasswordExpired', ], 'MfaTypeList' => [ @@ -815,264 +636,90 @@ 'Name' => [ 'description' => 'MFA校验类型。', 'type' => 'string', - 'enumValueTitles' => [ - 'TOTP' => '手机令牌', - 'PHONE' => '手机验证码', - 'EMAIL' => '邮箱', - ], + 'enumValueTitles' => ['TOTP' => '手机令牌', 'PHONE' => '手机验证码', 'EMAIL' => '邮箱'], 'example' => 'PHONE', ], 'Stage' => [ 'description' => '选定MFA类型后,对应CurrentStage参数的值。', 'type' => 'string', - 'enumValueTitles' => [ - 'MFAVerifyV1' => '执行MFA校验', - 'MFABindV1' => '绑定MFA设备', - ], + 'enumValueTitles' => ['MFAVerifyV1' => '执行MFA校验', 'MFABindV1' => '绑定MFA设备'], 'example' => 'MFABindV1', ], ], + 'description' => '', ], ], - 'NickName' => [ - 'type' => 'string', - ], + 'NickName' => ['type' => 'string', 'description' => ''], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Email\\": \\"alice***@example.com\\",\\n \\"Secret\\": \\"4JZNSDHDM3T6AZ4G2O5OWXBLLE4P****\\",\\n \\"RequestId\\": \\"EEA72491-B731-53D6-83ED-209769D6****\\",\\n \\"EndUserId\\": \\"alice\\",\\n \\"LoginToken\\": \\"v185fdd7f6d39fa7861981639366085772e150a390a5bb7b43c4e62440d94fc392b945770e1596cebe90085ce0af4d****\\",\\n \\"NextStage\\": \\"MFABind\\",\\n \\"QrCodePng\\": \\"5OCLLKKOJU5HPBX66H3QCTWY******\\\\n\\",\\n \\"Label\\": \\"test:wuying\\\\n\\",\\n \\"SessionId\\": \\"cc15c91c-821b-4edd-9af2-6df66cc****\\",\\n \\"Phone\\": \\"1826717****\\",\\n \\"TenantId\\": 0,\\n \\"KeepAliveToken\\": \\"006YwvYMsesWWsDBZnVB+Wq9AvJDVIqOY3YCktvtb7+KxMb3ClnNlV8+l/knhZYrXUmeP06IzkjF+IgcZ3vZKOyMprDyFHjCy1r27FRE/U7+geWCl8iQ+yF8GaCRHfJEkC2+ROs93HkT4tfHxyY1J8W7O7ZQGUC/cdCvm+cCP6FIy73IUuPuVR6PcKYXIp***\\",\\n \\"Industry\\": \\"edu\\",\\n \\"Props\\": {\\n \\"key\\": \\"{\'environment\': \'online\', \'sourceClientType\': \'WINDOWS\\"\\n },\\n \\"WyId\\": \\"0aba1403b337a***\\",\\n \\"VpcRegionId\\": \\"cn-beijing\\",\\n \\"WindowDisplayMode\\": \\"Windowed\\",\\n \\"AccountType\\": \\"ad\\",\\n \\"TenantInfos\\": [\\n {\\n \\"TenantAlias\\": \\"Up830***\\",\\n \\"AccessType\\": \\"INTERNET\\"\\n }\\n ],\\n \\"TenantAlias\\": \\"Rq201***\\",\\n \\"AccessType\\": \\"INTERNET\\",\\n \\"OfficeSites\\": [\\n \\"[\'cn-beijing+dir-096920***\', \'cn-shenzhen+dir-2546908***\']\\"\\n ],\\n \\"IdpId\\": \\"idp-7ttvs4ove8bo5***\\",\\n \\"AdDomain\\": \\"easthp***.com\\",\\n \\"RiskVerifyInfo\\": {\\n \\"Email\\": \\"ppas***@aliyun.com\\",\\n \\"LastLockDuration\\": 12000,\\n \\"Locked\\": true,\\n \\"Phone\\": \\"138****1111\\"\\n },\\n \\"PasswordStrategy\\": {\\n \\"TenantPasswordLength\\": 12,\\n \\"TenantAlternativeChars\\": [\\n \\"UPPER_LETTER\\"\\n ]\\n },\\n \\"Reason\\": \\"PasswordExpired\\",\\n \\"MfaTypeList\\": [\\n {\\n \\"Name\\": \\"PHONE\\",\\n \\"Stage\\": \\"MFABindV1\\"\\n }\\n ],\\n \\"NickName\\": \\"\\"\\n}","type":"json"}]', 'title' => '获取登录凭证', - ], - 'RefreshLoginToken' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'Anonymous' => [], - ], - ], - 'systemTags' => [ - 'operationType' => 'none', - 'abilityTreeCode' => '128463', - 'abilityTreeNodes' => [ - 'FEATUREappstreamingV87T4P', - ], - ], - 'parameters' => [ - [ - 'name' => 'ClientId', - 'in' => 'query', - 'schema' => [ - 'description' => '客户端生成的唯一ID,参考`UUID`。该参数非敏感字段,无需加密。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'f4a0dc8e-1702-4728-9a60-95b27a35****'."\n", - ], - ], - [ - 'name' => 'SessionId', - 'in' => 'query', - 'schema' => [ - 'description' => '登录的会话ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => false, - 'example' => '6442b2fd-ed3e-423a-8e6e-352d26a4****', - ], - ], - [ - 'name' => 'EndUserId', - 'in' => 'query', - 'schema' => [ - 'description' => '用户名。', - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 'alice', - ], - ], - [ - 'name' => 'LoginToken', - 'in' => 'query', - 'schema' => [ - 'description' => '登录凭证。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'v1046341d8d4e2f05c4aa168196009613594aaf451499bfc75e54699efa7230bc968e1debb1fa4063b01e5d327b467****', - ], - ], - [ - 'name' => 'OfficeSiteId', - 'in' => 'query', - 'schema' => [ - 'description' => '办公网络ID。非办公网络登录场景下为空。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-shenzhen+dir-436909****', - ], - ], - [ - 'name' => 'LoginIdentifier', - 'in' => 'query', - 'schema' => [ - 'description' => '企业标识符。', - 'type' => 'string', - 'required' => false, - 'example' => 'Alibaba****', - ], - ], - [ - 'name' => 'ClientType', - 'in' => 'query', - 'schema' => [ - 'description' => '客户端类型。', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'html5' => 'Web客户端', - 'android' => 'Android客户端', - 'windows' => 'Windows客户端', - 'ios' => 'iOS客户端', - 'macos' => 'macOS客户端', - ], - 'example' => 'windows', - ], - ], - [ - 'name' => 'Uuid', - 'in' => 'query', - 'schema' => [ - 'description' => '登录使用的设备UUID。', - 'type' => 'string', - 'required' => false, - 'example' => '2943802884B27030B6759F9132B2****', - ], - ], - [ - 'name' => 'ProfileRegion', - 'in' => 'query', - 'schema' => [ - 'description' => '账号所属站点。', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'ap_southeast_1' => '国际站', - 'cn_hangzhou' => '中国站', - ], - 'example' => 'cn_hangzhou', - ], - ], + 'summary' => '通过企业标识符获取登录凭证。', + 'changeSet' => [ + ['createdAt' => '2025-04-27T03:27:39.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-02-27T12:04:12.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-12-11T03:48:32.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-12-06T09:32:21.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-12-06T09:27:27.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-11-02T06:19:13.000Z', 'description' => '请求参数发生变更、响应参数发生变更'], + ['createdAt' => '2022-06-22T08:13:40.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-04-28T15:40:09.000Z', 'description' => 'OpenAPI 下线'], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '419F31B9-1FDF-5644-ABA3-D00026FA****', - ], - 'LoginToken' => [ - 'description' => '登录凭证。', - 'type' => 'string', - 'example' => 'v12369636c721ba6b3ddb1683341016775c3f63e4d0e78f120f9a0544ed826b7af7daf747c402f0d0730b52f451b70****', - ], - ], - ], - ], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"419F31B9-1FDF-5644-ABA3-D00026FA****\\",\\n \\"LoginToken\\": \\"v12369636c721ba6b3ddb1683341016775c3f63e4d0e78f120f9a0544ed826b7af7daf747c402f0d0730b52f451b70****\\"\\n}","type":"json"}]', - 'title' => '刷新登录凭证', - 'summary' => '刷新登录凭证。', - 'description' => '登录凭证(LoginToken)的有效期为8小时。如果在8小时内终端用户没有退出客户端,客户端需要重新刷新登录凭证。', + 'ramActions' => [], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Email\\": \\"alice***@example.com\\",\\n \\"Secret\\": \\"4JZNSDHDM3T6AZ4G2O5OWXBLLE4P****\\",\\n \\"RequestId\\": \\"EEA72491-B731-53D6-83ED-209769D6****\\",\\n \\"EndUserId\\": \\"alice\\",\\n \\"LoginToken\\": \\"v185fdd7f6d39fa7861981639366085772e150a390a5bb7b43c4e62440d94fc392b945770e1596cebe90085ce0af4d****\\",\\n \\"NextStage\\": \\"MFABind\\",\\n \\"QrCodePng\\": \\"5OCLLKKOJU5HPBX66H3QCTWY******\\\\n\\",\\n \\"Label\\": \\"test:wuying\\\\n\\",\\n \\"SessionId\\": \\"cc15c91c-821b-4edd-9af2-6df66cc****\\",\\n \\"Phone\\": \\"1826717****\\",\\n \\"TenantId\\": 0,\\n \\"KeepAliveToken\\": \\"006YwvYMsesWWsDBZnVB+Wq9AvJDVIqOY3YCktvtb7+KxMb3ClnNlV8+l/knhZYrXUmeP06IzkjF+IgcZ3vZKOyMprDyFHjCy1r27FRE/U7+geWCl8iQ+yF8GaCRHfJEkC2+ROs93HkT4tfHxyY1J8W7O7ZQGUC/cdCvm+cCP6FIy73IUuPuVR6PcKYXIp***\\",\\n \\"Industry\\": \\"edu\\",\\n \\"Props\\": {\\n \\"key\\": \\"{\'environment\': \'online\', \'sourceClientType\': \'WINDOWS\\"\\n },\\n \\"WyId\\": \\"0aba1403b337a***\\",\\n \\"VpcRegionId\\": \\"cn-beijing\\",\\n \\"WindowDisplayMode\\": \\"Windowed\\",\\n \\"AccountType\\": \\"ad\\",\\n \\"TenantInfos\\": [\\n {\\n \\"TenantAlias\\": \\"Up830***\\",\\n \\"AccessType\\": \\"INTERNET\\"\\n }\\n ],\\n \\"TenantAlias\\": \\"Rq201***\\",\\n \\"AccessType\\": \\"INTERNET\\",\\n \\"OfficeSites\\": [\\n \\"[\'cn-beijing+dir-096920***\', \'cn-shenzhen+dir-2546908***\']\\"\\n ],\\n \\"IdpId\\": \\"idp-7ttvs4ove8bo5***\\",\\n \\"AdDomain\\": \\"easthp***.com\\",\\n \\"RiskVerifyInfo\\": {\\n \\"Email\\": \\"ppas***@aliyun.com\\",\\n \\"LastLockDuration\\": 12000,\\n \\"Locked\\": true,\\n \\"Phone\\": \\"138****1111\\"\\n },\\n \\"PasswordStrategy\\": {\\n \\"TenantPasswordLength\\": 12,\\n \\"TenantAlternativeChars\\": [\\n \\"UPPER_LETTER\\"\\n ]\\n },\\n \\"Reason\\": \\"PasswordExpired\\",\\n \\"MfaTypeList\\": [\\n {\\n \\"Name\\": \\"PHONE\\",\\n \\"Stage\\": \\"MFABindV1\\"\\n }\\n ],\\n \\"NickName\\": \\"\\"\\n}","type":"json"}]', ], 'GetStsToken' => [ - 'summary' => '获取无影STS Token(临时身份凭证)。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'Anonymous' => [], ], ], + 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [], + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREappstreamingV87T4P'], + 'autoTest' => false, + 'tenantRelevance' => 'publicInformation', + ], 'parameters' => [ [ 'name' => 'ClientId', 'in' => 'formData', - 'schema' => [ - 'description' => '客户端生成的唯一ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'eac19bef-1e45-4190-a03a-4ea74b69****', - ], + 'schema' => ['description' => '客户端生成的唯一ID。', 'type' => 'string', 'required' => false, 'example' => 'eac19bef-1e45-4190-a03a-4ea74b69****'], ], [ 'name' => 'ClientOS', 'in' => 'formData', - 'schema' => [ - 'description' => '客户端操作系统。', - 'type' => 'string', - 'required' => false, - 'example' => 'windows_\\"Windows 10 Enterprise\\" 10.0 (Build 14393)', - ], + 'schema' => ['description' => '客户端操作系统。', 'type' => 'string', 'required' => false, 'example' => 'windows_\\"Windows 10 Enterprise\\" 10.0 (Build 14393)'], ], [ 'name' => 'ClientVersion', 'in' => 'formData', - 'schema' => [ - 'description' => '客户端版本号。', - 'type' => 'string', - 'required' => false, - 'example' => '6.3.0-R-20231106.210000', - ], + 'schema' => ['description' => '客户端版本号。', 'type' => 'string', 'required' => false, 'example' => '6.3.0-R-20231106.210000'], ], [ 'name' => 'ClientIp', 'in' => 'formData', - 'schema' => [ - 'description' => '客户端IP地址。', - 'type' => 'string', - 'required' => false, - 'example' => '22.21.2.**', - ], + 'schema' => ['description' => '客户端IP地址。', 'type' => 'string', 'required' => false, 'example' => '22.21.2.**'], ], [ 'name' => 'Uuid', 'in' => 'formData', - 'schema' => [ - 'description' => '设备UUID。', - 'type' => 'string', - 'required' => false, - 'example' => '2943802884B27030B6759F9132B2****', - ], + 'schema' => ['description' => '设备UUID。', 'type' => 'string', 'required' => false, 'example' => '2943802884B27030B6759F9132B2****'], ], [ 'name' => 'AuthCode', 'in' => 'formData', - 'schema' => [ - 'description' => '授权码。该授权码有效期为3分钟,且无论校验成功或失败,只能被使用一次。当为一个用户生成多个授权码时,只有最后一次生成的有效。', - 'type' => 'string', - 'required' => true, - 'example' => 'e4e169bea1cc48e8afac53**********', - ], + 'schema' => ['description' => '授权码。该授权码有效期为3分钟,且无论校验成功或失败,只能被使用一次。当为一个用户生成多个授权码时,只有最后一次生成的有效。', 'type' => 'string', 'required' => true, 'example' => 'e4e169bea1cc48e8afac53**********'], ], ], 'responses' => [ @@ -1082,342 +729,436 @@ 'description' => '返回数据集合。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'CCF92035-6231-5ABB-930E-1E003C32****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => 'CCF92035-6231-5ABB-930E-1E003C32****'], 'StsTokenModel' => [ 'description' => '临时身份凭证的详细信息。', 'type' => 'object', 'properties' => [ - 'SessionId' => [ - 'description' => '登录的会话ID。', - 'type' => 'string', - 'example' => 'be4be09e-cd00-4b4c-add7-11b4d8****', - ], - 'StsToken' => [ - 'description' => '临时身份凭证。', - 'type' => 'string', - 'example' => 'sts****', - ], - 'TenantId' => [ - 'description' => '租户ID(阿里云账号UID)。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '105552640689****', - ], + 'SessionId' => ['description' => '登录的会话ID。', 'type' => 'string', 'example' => 'be4be09e-cd00-4b4c-add7-11b4d8****'], + 'StsToken' => ['description' => '临时身份凭证。', 'type' => 'string', 'example' => 'sts****'], + 'TenantId' => ['description' => '租户ID(阿里云账号UID)。', 'type' => 'integer', 'format' => 'int64', 'example' => '105552640689****'], + 'LoginToken' => ['type' => 'string'], + 'EndUserId' => ['type' => 'string'], + 'ProfileRegion' => ['type' => 'string'], ], ], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CCF92035-6231-5ABB-930E-1E003C32****\\",\\n \\"StsTokenModel\\": {\\n \\"SessionId\\": \\"be4be09e-cd00-4b4c-add7-11b4d8****\\",\\n \\"StsToken\\": \\"sts****\\",\\n \\"TenantId\\": 0\\n }\\n}","type":"json"}]', + 'staticInfo' => ['returnType' => 'synchronous'], 'title' => '获取临时身份凭证', - ], - 'FindIdpListByLoginIdentifier' => [ - 'summary' => '用于客户端查询办公网络或企业标识符的登录配置信息。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'summary' => '获取无影STS Token(临时身份凭证)。', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], + 'ramActions' => [], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CCF92035-6231-5ABB-930E-1E003C32****\\",\\n \\"StsTokenModel\\": {\\n \\"SessionId\\": \\"be4be09e-cd00-4b4c-add7-11b4d8****\\",\\n \\"StsToken\\": \\"sts****\\",\\n \\"TenantId\\": 0,\\n \\"LoginToken\\": \\"\\",\\n \\"EndUserId\\": \\"\\",\\n \\"ProfileRegion\\": \\"\\"\\n }\\n}","type":"json"}]', + ], + 'RefreshLoginToken' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'Anonymous' => [], ], ], - 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', - 'abilityTreeCode' => '140090', - 'abilityTreeNodes' => [ - 'FEATUREappstreamingV87T4P', - ], + 'abilityTreeCode' => '128463', + 'abilityTreeNodes' => ['FEATUREappstreamingV87T4P'], ], 'parameters' => [ [ 'name' => 'ClientId', - 'in' => 'formData', - 'schema' => [ - 'description' => '自定义的客户端唯一ID。', - 'type' => 'string', - 'required' => false, - 'example' => '370b56f8-2812-4b6c-bfa6-2560791c****', - ], + 'in' => 'query', + 'schema' => ['description' => '客户端生成的唯一ID,参考`UUID`。该参数非敏感字段,无需加密。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'f4a0dc8e-1702-4728-9a60-95b27a35****'."\n"], ], [ - 'name' => 'ClientOS', - 'in' => 'formData', - 'schema' => [ - 'description' => '客户端操作系统。', - 'type' => 'string', - 'required' => false, - 'example' => 'windows_\\"Windows 10 Enterprise\\" 10.0 (Build 14393)', - ], + 'name' => 'SessionId', + 'in' => 'query', + 'schema' => ['description' => '登录的会话ID。', 'type' => 'string', 'required' => true, 'docRequired' => false, 'example' => '6442b2fd-ed3e-423a-8e6e-352d26a4****'], ], [ - 'name' => 'ClientVersion', - 'in' => 'formData', - 'schema' => [ - 'description' => '应用的客户端版本号。', - 'type' => 'string', - 'required' => false, - 'example' => '2.0.1-D-20211008.101607', - ], + 'name' => 'EndUserId', + 'in' => 'query', + 'schema' => ['description' => '用户名。', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'alice'], ], [ - 'name' => 'ClientChannel', - 'in' => 'formData', - 'schema' => [ - 'description' => '自定义的客户端标识,用于区分不同的应用。', - 'type' => 'string', - 'required' => false, - 'example' => 'pc', - ], + 'name' => 'LoginToken', + 'in' => 'query', + 'schema' => ['description' => '登录凭证。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'v1046341d8d4e2f05c4aa168196009613594aaf451499bfc75e54699efa7230bc968e1debb1fa4063b01e5d327b467****'], ], [ - 'name' => 'Uuid', - 'in' => 'formData', - 'schema' => [ - 'description' => '客户端唯一标识。若使用无影客户端,可在客户端登录界面的关于对话框中查看该参数。', - 'type' => 'string', - 'required' => false, - 'example' => '2943802884B27030B6759F9132B2****', - ], + 'name' => 'OfficeSiteId', + 'in' => 'query', + 'schema' => ['description' => '办公网络ID。非办公网络登录场景下为空。', 'type' => 'string', 'required' => false, 'example' => 'cn-shenzhen+dir-436909****'], ], [ 'name' => 'LoginIdentifier', - 'in' => 'formData', - 'schema' => [ - 'description' => '企业标识符。', - 'type' => 'string', - 'required' => true, - 'example' => 'Aliyun123***', - ], + 'in' => 'query', + 'schema' => ['description' => '企业标识符。', 'type' => 'string', 'required' => false, 'example' => 'Alibaba****'], ], [ - 'name' => 'SupportTypes', - 'in' => 'formData', - 'style' => 'repeatList', + 'name' => 'ClientType', + 'in' => 'query', 'schema' => [ - 'description' => '支持的登录类型。', - 'type' => 'array', - 'items' => [ - 'description' => '支持的登录类型。', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'ad' => 'AD域账号', - 'simple' => '便捷账号', - ], - 'example' => 'ad', - ], + 'description' => '客户端类型。', + 'type' => 'string', 'required' => false, - 'maxItems' => 100, + 'enumValueTitles' => ['html5' => 'Web客户端', 'android' => 'Android客户端', 'windows' => 'Windows客户端', 'ios' => 'iOS客户端', 'macos' => 'macOS客户端'], + 'example' => 'windows', ], ], [ - 'name' => 'AvailableFeatures', + 'name' => 'Uuid', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'description' => '客户端支持的特性。', - 'type' => 'object', - 'required' => false, - 'additionalProperties' => [ - 'type' => 'string', - 'description' => '客户端支持的特性。', - 'enumValueTitles' => [ - 'Business' => '支持商业版', - ], - 'example' => '{\\"Business\\":\\"1\\"}', - ], - ], + 'schema' => ['description' => '登录使用的设备UUID。', 'type' => 'string', 'required' => false, 'example' => '2943802884B27030B6759F9132B2****'], ], [ - 'name' => 'ClientIp', + 'name' => 'ProfileRegion', 'in' => 'query', 'schema' => [ - 'description' => '客户端IP。', + 'description' => '账号所属站点。', 'type' => 'string', 'required' => false, - 'example' => '22.21.XX.XX', + 'enumValueTitles' => ['ap_southeast_1' => '国际站', 'cn_hangzhou' => '中国站'], + 'example' => 'cn_hangzhou', ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'AD2D0761-1FE5-549D-B169-D3F8D19C****', - ], - 'IdpInfos' => [ - 'description' => '身份源信息。', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'IdpId' => [ - 'description' => '用户所属身份源配置ID。', - 'type' => 'string', - 'example' => 'idp-hlyexfvwert9m8****', - ], - 'IdpName' => [ - 'description' => '用户身份源名称。', - 'type' => 'string', - 'example' => '钉钉', - ], - 'SsoProtocol' => [ - 'description' => 'SSO协议类型。', - 'type' => 'string', - 'enumValueTitles' => [ - 'OAuth2' => 'OAuth2协议', - 'SAML' => 'SAML协议', - 'OIDC' => 'OIDC协议', - ], - 'example' => 'SAML', - ], - 'IdpProvider' => [ - 'description' => '应用所属的资源提供者。', - 'type' => 'string', - 'example' => '钉钉', - ], - 'SsoServiceUrl' => [ - 'description' => 'SSO服务地址。', - 'type' => 'string', - 'example' => 'https://e1iwdlcn.aliyunidaas.com/login/app/app_****/saml2/sso', - ], - 'Cookies' => [ - 'description' => '用于使用Cookie方式实现应用内免登时告知客户端需要写入哪些Cookie到应用内。', - 'type' => 'string', - 'example' => 'null', - ], - 'AccountType' => [ - 'description' => '账号类型。', - 'type' => 'string', - 'enumValueTitles' => [ - 'ad' => 'AD域账号', - 'simple' => '便捷账号', - ], - 'example' => 'simple', - ], - 'JumpSwitch' => [ - 'description' => '是否跳转到浏览器登录。', - 'type' => 'string', - 'example' => 'true', - ], - 'IdpNameEN' => [ - 'description' => '英文名称。', - 'type' => 'string', - 'example' => 'wy-simple', - ], - ], - ], - ], - 'OfficeSiteInfo' => [ - 'description' => '查询到的办公网络信息。', - 'type' => 'object', - 'properties' => [ - 'OfficeSiteId' => [ - 'description' => '办公网络ID。', - 'type' => 'string', - 'example' => 'cn-shanghai+dir-448204****', - ], - 'SsoServiceUrl' => [ - 'description' => 'SSO服务地址。', - 'type' => 'string', - 'example' => 'https://e1iwdlcn.aliyunidaas.com/login/app/app_****/saml2/sso', - ], - 'RegionId' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - 'AccessType' => [ - 'description' => '允许的客户端网络连接方式。', - 'type' => 'string', - 'enumValueTitles' => [ - 'INTERNET' => '互联网访问', - 'VPC' => '专网访问', - 'ANY' => '都允许', - ], - 'example' => 'INTERNET', - ], - 'ProviderId' => [ - 'description' => '所属账号的BID。', - 'type' => 'string', - 'example' => '26842', - ], - ], - ], - 'TenantAliasInfo' => [ - 'description' => '企业标识符信息。', - 'type' => 'object', - 'properties' => [ - 'TenantAlias' => [ - 'description' => '企业标识符。', - 'type' => 'string', - 'example' => 'Or09****', - ], - 'AccessType' => [ - 'description' => '允许的客户端网络连接方式。', - 'type' => 'string', - 'enumValueTitles' => [ - 'INTERNET' => '互联网访问', - 'VPC' => '专网访问', - 'ANY' => '都允许', - ], - 'example' => 'INTERNET', - ], - ], - ], - 'ProfileRegion' => [ - 'description' => '账号所属站点。', - 'type' => 'string', - 'enumValueTitles' => [ - 'ap_southeast_1' => '国际站', - 'cn_hangzhou' => '中国站', - ], - 'example' => 'cn_hangzhou', - ], - 'PopRegionConfig' => [ - 'description' => '中心服务请求地址,用于服务高可用场景。', - 'type' => 'object', - 'additionalProperties' => [ - 'type' => 'string', - 'description' => '登录服务地址。', - 'example' => 'cn-shanghai', - ], - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '419F31B9-1FDF-5644-ABA3-D00026FA****'], + 'LoginToken' => ['description' => '登录凭证。', 'type' => 'string', 'example' => 'v12369636c721ba6b3ddb1683341016775c3f63e4d0e78f120f9a0544ed826b7af7daf747c402f0d0730b52f451b70****'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AD2D0761-1FE5-549D-B169-D3F8D19C****\\",\\n \\"IdpInfos\\": [\\n {\\n \\"IdpId\\": \\"idp-hlyexfvwert9m8****\\",\\n \\"IdpName\\": \\"钉钉\\",\\n \\"SsoProtocol\\": \\"SAML\\",\\n \\"IdpProvider\\": \\"钉钉\\",\\n \\"SsoServiceUrl\\": \\"https://e1iwdlcn.aliyunidaas.com/login/app/app_****/saml2/sso\\",\\n \\"Cookies\\": \\"null\\",\\n \\"AccountType\\": \\"simple\\",\\n \\"JumpSwitch\\": \\"true\\",\\n \\"IdpNameEN\\": \\"wy-simple\\"\\n }\\n ],\\n \\"OfficeSiteInfo\\": {\\n \\"OfficeSiteId\\": \\"cn-shanghai+dir-448204****\\",\\n \\"SsoServiceUrl\\": \\"https://e1iwdlcn.aliyunidaas.com/login/app/app_****/saml2/sso\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"AccessType\\": \\"INTERNET\\",\\n \\"ProviderId\\": \\"26842\\"\\n },\\n \\"TenantAliasInfo\\": {\\n \\"TenantAlias\\": \\"Or09****\\",\\n \\"AccessType\\": \\"INTERNET\\"\\n },\\n \\"ProfileRegion\\": \\"cn_hangzhou\\",\\n \\"PopRegionConfig\\": {\\n \\"key\\": \\"cn-shanghai\\"\\n }\\n}","type":"json"}]', - 'title' => '查询登录配置', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"419F31B9-1FDF-5644-ABA3-D00026FA****\\",\\n \\"LoginToken\\": \\"v12369636c721ba6b3ddb1683341016775c3f63e4d0e78f120f9a0544ed826b7af7daf747c402f0d0730b52f451b70****\\"\\n}","type":"json"}]', + 'title' => '刷新登录凭证', + 'summary' => '刷新登录凭证。', + 'description' => '登录凭证(LoginToken)的有效期为8小时。如果在8小时内终端用户没有退出客户端,客户端需要重新刷新登录凭证。', + 'changeSet' => [], + 'ramActions' => [], ], ], 'endpoints' => [ + ['regionId' => 'cn-shanghai', 'regionName' => '华东2(上海)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'appstream-center.cn-shanghai.aliyuncs.com', 'endpoint' => 'appstream-center.cn-shanghai.aliyuncs.com', 'vpc' => 'appstream-center-intl.vpc-proxy.aliyuncs.com'], + ['regionId' => 'ap-southeast-1', 'regionName' => '新加坡', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'appstream-center.ap-southeast-1.aliyuncs.com', 'endpoint' => 'appstream-center.ap-southeast-1.aliyuncs.com', 'vpc' => 'appstream-center-intl.vpc-proxy.aliyuncs.com'], + ], + 'errorCodes' => [ + ['code' => 'AddRemoveAccountIsSame', 'message' => 'The same account is to be added and to be removed at the same time.', 'http_code' => 400, 'description' => '添加移除包含相同账号。'], + ['code' => 'AppCenterImageId.Missing', 'message' => 'The AppCenter ImageId is missing.', 'http_code' => 400, 'description' => '参数ImageId缺失'], + ['code' => 'AppCenterImageInfo.NotFound', 'message' => 'The AppCenter ImageInfo is not found.', 'http_code' => 400, 'description' => '镜像信息找不到'], + ['code' => 'AppDeploymentInfo.NotFound', 'message' => 'The AppDeploymentInfo is not found.', 'http_code' => 400, 'description' => '应用信息未找到'], + ['code' => 'AppInstallation.StartFailed', 'message' => 'Start app installation failed.', 'http_code' => 400, 'description' => '启动应用安装失败。'], + ['code' => 'AppInstallationStatus.IsFailed', 'message' => 'App installation failed.', 'http_code' => 400, 'description' => '应用安装状态失败。'], + ['code' => 'AppInstanceGroupAttributeModify.Failed', 'message' => 'Failed to modify the delivery group attribute.', 'http_code' => 400, 'description' => '修改交付组属性失败'], + ['code' => 'AppInstanceGroupIdIsNull', 'message' => 'The AppInstanceGroupId is null.', 'http_code' => 400, 'description' => '交付组ID是空值'], + ['code' => 'AppInstanceGroupImageCreate.Failed', 'message' => 'Failed to create an image from the debugging app instance group.', 'http_code' => 400, 'description' => '基于调试交付组创建镜像失败。'], + ['code' => 'AppInstanceGroupNotFound', 'message' => 'The AppInstanceGroup is not found.', 'http_code' => 400, 'description' => '交付组未找到'], + ['code' => 'AppInstanceGroupNotFound', 'message' => 'The specified AppInstanceGroup not found.', 'http_code' => 400, 'description' => '交付组找不到'], + ['code' => 'AppType.ValueNotSupported', 'message' => 'The category of the app is not supported.', 'http_code' => 400, 'description' => '不支持该应用类别。'], + ['code' => 'AuthorizeFailed', 'message' => 'Authorize failed, please check your EndUserId and Password.', 'http_code' => 400, 'description' => '您的用户名或密码不正确。'], + ['code' => 'BillingItem.InsertFailure', 'message' => 'Failed to insert the billing item.', 'http_code' => 400, 'description' => '无法插入计费项。'], + ['code' => 'BizTypeNotMatch', 'message' => 'The bizType and image do not match.', 'http_code' => 400, 'description' => '输入BizType和镜像不匹配。'], + ['code' => 'BuilderImage.StartTaskFailed', 'message' => 'Failed to start the builder image task.', 'http_code' => 400, 'description' => '启动镜像制作任务失败。'], + ['code' => 'CallBack.PayOrderCallbackFailed', 'message' => 'Failed to lock the order.', 'http_code' => 400, 'description' => '无法锁定订单。'], + ['code' => 'CashBookInsufficient', 'message' => 'No payment method is specified for your account. We recommend that you add a payment method or add funds to the prepayment balance.', 'http_code' => 400, 'description' => '余额不足'], + ['code' => 'CheckStock.Failed', 'message' => 'Failed to check the stock.', 'http_code' => 400, 'description' => '检查库存失败'], + ['code' => 'ConnectLdapServer.Failed', 'message' => 'Failed to connect to the LDAP server. Please check the configuration.', 'http_code' => 400, 'description' => '连接LDAP服务器失败,请检查配置是否正确。'], + ['code' => 'CreateAppInstanceGroup.Failed', 'message' => 'Failed to create the app instance group.', 'http_code' => 400, 'description' => '创建交付组失败'], + ['code' => 'CreateDesktopImageRecord.Failed', 'message' => 'Create cloud computer image failed.', 'http_code' => 400, 'description' => '创建云电脑镜像失败。'], + ['code' => 'DeleteTemplate.Failed', 'message' => 'Delete template failed.', 'http_code' => 400, 'description' => '删除模板失败。'], + ['code' => 'DesktopInstance.NotFound', 'message' => 'The cloud computer instance does not exist.', 'http_code' => 400, 'description' => '云电脑实例不存在。'], + ['code' => 'ExceedAddAccountQuota', 'message' => 'The maximum number of account addition is reached.', 'http_code' => 400, 'description' => '添加账号达到上限。'], + ['code' => 'ExceedAppAuthUserQuota', 'message' => 'The authorized user quota of the app is exceeded.', 'http_code' => 400, 'description' => '授权用户超过上限'], + ['code' => 'ExceedAppInstanceGroupQuota', 'message' => 'The app instance group quota is exceeded.', 'http_code' => 400, 'description' => '交付组超过上限'], + ['code' => 'ExceedBuilderQuota', 'message' => 'The maximum number of builders is reached.', 'http_code' => 400, 'description' => 'Builder数量达到了上限。'], + ['code' => 'ExceedImageQuota', 'message' => 'The maximum number of images is reached.', 'http_code' => 400, 'description' => '镜像数量达到了上限。'], + ['code' => 'ExceedPoolNodeAmountQuota', 'message' => 'The pool node amount quota is exceeded.', 'http_code' => 400, 'description' => '资源节点数量超过购买上限'], + ['code' => 'ExceedRemoveAccountQuota', 'message' => 'The maximum number of account removal is reached.', 'http_code' => 400, 'description' => '移除账号达到上限。'], + ['code' => 'Forbidden.NoPermission', 'message' => 'You are not authorized to access this page.', 'http_code' => 403, 'description' => '您没有权限访问当前页面。'], + ['code' => 'ForbiddenNoRealNameAuthentication', 'message' => 'Operation failed. The user has not completed the real-name authentication.', 'http_code' => 400, 'description' => '尚未通过实名认证'], + ['code' => 'ForbiddenNoRealNameAuthentication', 'message' => 'Forbidden by user real name authentication status.', 'http_code' => 400, 'description' => '没有实名认证'], + ['code' => 'GetLoginTokenError', 'message' => 'Failed to get the login token.', 'http_code' => 400, 'description' => '无法获取登录令牌。'], + ['code' => 'Image.CreateModeInvalid', 'message' => 'The creation mode of this task is invalid.', 'http_code' => 400, 'description' => '任务创建模式无效。'], + ['code' => 'Image.NotExist', 'message' => 'The image does not exist.', 'http_code' => 400, 'description' => '镜像不存在。'], + ['code' => 'ImageCreateByInstance.TaskExist', 'message' => 'The image task of instance creation already exists.', 'http_code' => 400, 'description' => '实例创建镜像任务已存在。'], + ['code' => 'ImageDeleteFailed.HasSharedImage', 'message' => 'The shared image is not allowed to be deleted.', 'http_code' => 400, 'description' => '共享镜像不允许删除。'], + ['code' => 'ImageDeleteFailed.NotAllow', 'message' => 'The image is not allowed to be deleted.', 'http_code' => 400, 'description' => '镜像不允许删除。'], + ['code' => 'ImageDeleteFailed.NotAllowCommunityParent', 'message' => 'The parent image of a community image is not allowed to be deleted.', 'http_code' => 400, 'description' => '社区镜像父镜像不允许删除。'], + ['code' => 'ImageDeleteFailed.NotAllowSharedImage', 'message' => 'The shared image is not allowed to be deleted.', 'http_code' => 400, 'description' => '共享镜像不允许删除。'], + ['code' => 'ImageDistribute.ImageNotSupport', 'message' => 'The image does not support region distribution.', 'http_code' => 400, 'description' => '镜像不支持分发,如:加密镜像。'], + ['code' => 'ImageDistribute.RepeatedDistribution', 'message' => 'This image has been distributed to this region.', 'http_code' => 400, 'description' => '镜像已经分发过该地域。'], + ['code' => 'ImageDistribute.TargetDistributeRegionListEmpty', 'message' => 'The target distribution region list is empty.', 'http_code' => 400, 'description' => '分发地域配置为空。'], + ['code' => 'ImageDistribute.Undistributed', 'message' => 'The image has not been distributed to any region.', 'http_code' => 400, 'description' => '镜像分发无拷贝源地址,检查镜像分发地域是否已经清空。'], + ['code' => 'ImageIsNull', 'message' => 'The image does not exist.', 'http_code' => 400, 'description' => '镜像不存在'], + ['code' => 'ImageNotAllowDelete', 'message' => 'The image cannot be deleted, because shared cloud computers already exist.', 'http_code' => 400, 'description' => '镜像不能删除,已经存在共享型云电脑资源。'], + ['code' => 'ImageRegion.NotConfigured', 'message' => 'The image does not have any region configuration.', 'http_code' => 400, 'description' => '镜像无任何地域配置信息。'], + ['code' => 'ImageRegionDistribute.NotAllow', 'message' => 'This image cannot be distributed.', 'http_code' => 400, 'description' => '镜像不允许分发操作。'], + ['code' => 'ImageStatus.Error', 'message' => 'The image status is error.', 'http_code' => 400, 'description' => '镜像状态错误。'], + ['code' => 'ImageStatus.ValueNotSupported', 'message' => 'The image status is not supported for creating a delivery group.', 'http_code' => 400, 'description' => '该镜像状态下不可创建交付组。'], + ['code' => 'ImageTask.Failed', 'message' => 'Start image task failed.', 'http_code' => 400, 'description' => '任务失败。'], + ['code' => 'ImageUpdateFailed.NotAllow', 'message' => 'The image is not allowed to be modified.', 'http_code' => 400, 'description' => '镜像不允许修改。'], + ['code' => 'ImageUpdateSharedImageFailed.NotAllow', 'message' => 'The shared image is not allowed to be modified.', 'http_code' => 400, 'description' => '共享镜像不允许修改。'], + ['code' => 'Instance.ImageUnsupported', 'message' => 'A non-centralized image does not support this type of operation.', 'http_code' => 400, 'description' => '使用非中心化镜像不支持该操作。'], + ['code' => 'Instance.NotFound', 'message' => 'The instance is not found.', 'http_code' => 400, 'description' => '实例找不到。'], + ['code' => 'Instance.PhysicalNodeNotExist', 'message' => 'The instance physical node does not exist.', 'http_code' => 400, 'description' => '物理节点不存在。'], + ['code' => 'InternalError', 'message' => 'Internal error.', 'http_code' => 400, 'description' => '内部错误'], + ['code' => 'InternalError.TicketGenInternalError', 'message' => 'An error occurred while generating a ticket.', 'http_code' => 400, 'description' => '生成Ticket时出错。'], + ['code' => 'InvalidAliUid.Missing', 'message' => 'The AliUid is missing.', 'http_code' => 400, 'description' => '参数AliUid缺失'], + ['code' => 'InvalidAliUid.Missing', 'message' => 'The specified parameter AliUid is missing.', 'http_code' => 400, 'description' => 'AliUid缺失。'], + ['code' => 'InvalidAliUid.NotFound', 'message' => 'The AliUid is not found.', 'http_code' => 400, 'description' => '找不到参数AliUid。'], + ['code' => 'InvalidAmount.Invalid', 'message' => 'The Amount is invalid.', 'http_code' => 400, 'description' => '参数Amount不合法。'], + ['code' => 'InvalidAppId.Missing', 'message' => 'The AppId is missing.', 'http_code' => 400, 'description' => '参数AppId缺失'], + ['code' => 'InvalidAppId.NotFound', 'message' => 'The AppId is not found.', 'http_code' => 400, 'description' => '找不到参数AppId。'], + ['code' => 'InvalidAppInstanceGroup.NotContainThisAPP', 'message' => 'The app instance group does not contain this app.', 'http_code' => 400, 'description' => '交付组不包含此应用。'], + ['code' => 'InvalidAppInstanceGroup.NotFound', 'message' => 'The app instance group is not found.', 'http_code' => 400, 'description' => '交付组未找到'], + ['code' => 'InvalidAppInstanceGroup.NotFound', 'message' => 'The AppInstanceGroupId %s is not found.', 'http_code' => 400, 'description' => '找不到AppInstanceGroupId %s。'], + ['code' => 'InvalidAppInstanceGroup.NullAppInstanceGroup', 'message' => 'The app instance group is null.', 'http_code' => 400, 'description' => '交付组为空。'], + ['code' => 'InvalidAppInstanceGroup.NullOrNotPublishedStatus', 'message' => 'The app instance group does not exist or is not published.', 'http_code' => 400, 'description' => '交付组不存在或未发布。'], + ['code' => 'InvalidAppInstanceGroup.StatusInvalid', 'message' => 'The app instance group status is invalid.', 'http_code' => 400, 'description' => '交付组状态无效。'], + ['code' => 'InvalidAppInstanceGroup.Unauthorized', 'message' => 'Unauthorized to use this app.', 'http_code' => 400, 'description' => '没有权限使用此应用。'], + ['code' => 'InvalidAppInstanceGroupAction.IllegalAction', 'message' => 'The action against the app instance group is not allowed.', 'http_code' => 400, 'description' => '不允许对交付组执行此操作。'], + ['code' => 'InvalidAppInstanceGroupId.Missing', 'message' => 'The AppInstanceGroupId is missing.', 'http_code' => 400, 'description' => '参数AppInstanceGroupId缺失'], + ['code' => 'InvalidAppInstanceGroupName.Missing', 'message' => 'The AppInstanceGroupName is missing.', 'http_code' => 400, 'description' => '参数AppInstanceGroupName缺失。'], + ['code' => 'InvalidAppInstanceGroupSpecItem.NotFound', 'message' => 'The app instance group spec item is not found.', 'http_code' => 400, 'description' => '交付组(旧版概念,已弃用)未找到。'], + ['code' => 'InvalidAppInstanceId.NotFound', 'message' => 'The AppInstanceId is not found.', 'http_code' => 400, 'description' => '找不到参数AppInstanceId。'], + ['code' => 'InvalidAppInstanceState', 'message' => 'The app instance state is invalid.', 'http_code' => 200, 'description' => '应用实例状态不合法。'], + ['code' => 'InvalidAppInstanceType.Invalid', 'message' => 'The AppInstanceType is invalid.', 'http_code' => 400, 'description' => '参数AppInstanceType不合法'], + ['code' => 'InvalidAppInstanceType.Missing', 'message' => 'The AppInstanceType is missing.', 'http_code' => 400, 'description' => '参数AppInstanceType缺失'], + ['code' => 'InvalidAppInstanceType.NotFound', 'message' => 'The app instance type is not found.', 'http_code' => 400, 'description' => '找不到该应用实例类型。'], + ['code' => 'InvalidAppVersion.Missing', 'message' => 'The AppVersion is missing.', 'http_code' => 400, 'description' => '参数AppVersion缺失。'], + ['code' => 'InvalidBaseImage.InvalidStatus', 'message' => 'Invalid base image status.', 'http_code' => 400, 'description' => '基础镜像状态无效。'], + ['code' => 'InvalidBaseImage.NotConfigured', 'message' => 'Configuration required for Vhd/Container images.', 'http_code' => 400, 'description' => 'Vhd/Container镜像类型需要配置BaseImageId。'], + ['code' => 'InvalidBaseImage.NotFound', 'message' => 'Base image not found.', 'http_code' => 400, 'description' => '基础镜像找不到。'], + ['code' => 'InvalidBaseImage.NotSystemImage', 'message' => 'Base image is not system image.', 'http_code' => 400, 'description' => '基础镜像不是系统镜像。'], + ['code' => 'InvalidBaseImageVersion.NotOnline', 'message' => 'Base image version is not online.', 'http_code' => 400, 'description' => '基础镜像不是有效在线版本。'], + ['code' => 'InvalidBindRelationship.NotFound', 'message' => 'The bind relationship is not found.', 'http_code' => 400, 'description' => '交付组绑定的资源池未找到'], + ['code' => 'InvalidBindStage.Missing', 'message' => 'The BindStage is missing.', 'http_code' => 400, 'description' => '参数BindStage缺失。'], + ['code' => 'InvalidBindStrategy.NotFound', 'message' => 'The bind strategy is not found.', 'http_code' => 400, 'description' => '找不到该绑定策略。'], + ['code' => 'InvalidBizType', 'message' => 'The bizType parameter is invalid.', 'http_code' => 400, 'description' => '业务类型不合法。'], + ['code' => 'InvalidBrowserInstanceGroup.NotFound', 'message' => 'The browser instance group is not found.', 'http_code' => 400, 'description' => '云浏览器不存在,请确认后重试'], + ['code' => 'InvalidBundle.NotFound', 'message' => 'The request bundle does not exist.', 'http_code' => 400, 'description' => '请求的应用资源模板不存在。'], + ['code' => 'InvalidChargeType.Missing', 'message' => 'The ChargeType is missing.', 'http_code' => 400, 'description' => '参数ChargeType缺失'], + ['code' => 'InvalidChargeType.ValueNotSupported', 'message' => 'The ChargeType is invalid.', 'http_code' => 400, 'description' => '参数ChargeType无效。'], + ['code' => 'InvalidDataDiskSize.SmallerThanParent', 'message' => 'Sub-image data disk size is smaller than the parent image.', 'http_code' => 400, 'description' => '子镜像数据盘小于父镜像数据盘。'], + ['code' => 'InvalidDomainId.NotFound', 'message' => 'The DomainId is not found.', 'http_code' => 400, 'description' => '找不到参数DomainId。'], + ['code' => 'InvalidDriveId.NotFound', 'message' => 'The DriveId is not found.', 'http_code' => 400, 'description' => '找不到参数DriveId。'], + ['code' => 'InvalidEndUserId.Missing', 'message' => 'The EndUserId is missing.', 'http_code' => 400, 'description' => '参数EndUserId缺失'], + ['code' => 'InvalidEndUserIds.ValueNotSupported', 'message' => 'The EndUserIds is invalid.', 'http_code' => 400, 'description' => '参数EndUserIds无效。'], + ['code' => 'InvalidExternalFileId.NotFound', 'message' => 'The ExternalFileId is not found.', 'http_code' => 400, 'description' => '找不到参数ExternalFileId。'], + ['code' => 'InvalidGwAddress.NotFound', 'message' => 'The gateway address is not found.', 'http_code' => 400, 'description' => '找不到该网关地址。'], + ['code' => 'InvalidGwParam.NotFound', 'message' => 'A parameter error occurred while generating the gateway token.', 'http_code' => 400, 'description' => '生成网关令牌时出现参数错误。'], + ['code' => 'InvalidGwToken.ValueTooLong', 'message' => 'The GWToken is too long.', 'http_code' => 400, 'description' => 'GWToken过长。'], + ['code' => 'InvalidImageConfig.RegionInvalid', 'message' => 'The region configuration of this image is invalid.', 'http_code' => 400, 'description' => '镜像的地域配置信息无效。'], + ['code' => 'InvalidImageId.Invalid', 'message' => 'The specified parameter imageId is invalid.', 'http_code' => 400, 'description' => '镜像ID无效'], + ['code' => 'InvalidImageOperation.Failed', 'message' => 'Invalid image operation.', 'http_code' => 400, 'description' => '镜像操作无效。'], + ['code' => 'InvalidImageOperation.ImageIsCreating', 'message' => 'Failed to operation the image, it is creating.', 'http_code' => 400, 'description' => '镜像在创建中,操作无效。'], + ['code' => 'InvalidImagePackageType.Unsupported', 'message' => 'Unsupported image package type.', 'http_code' => 400, 'description' => '不支持的PackageType。'], + ['code' => 'InvalidInstanceId.Missing', 'message' => 'The InstanceId is invalid.', 'http_code' => 400, 'description' => '参数InstanceId不合法'], + ['code' => 'InvalidLoginToken.Missing', 'message' => 'The LoginToken is missing.', 'http_code' => 400, 'description' => '参数LoginToken缺失。'], + ['code' => 'InvalidMaxResults', 'message' => 'The MaxResults is invalid.', 'http_code' => 400, 'description' => '参数MaxResults无效'], + ['code' => 'InvalidNextToken', 'message' => 'The NextToken is invalid.', 'http_code' => 400, 'description' => '参数NextToken无效'], + ['code' => 'InvalidNodeInstanceType.NotFound', 'message' => 'The node instance type is not found.', 'http_code' => 400, 'description' => '找不到该节点实例类型。'], + ['code' => 'InvalidNodeInstanceType.NotSupportOsType', 'message' => 'The node instance type does not support images with this OS type.', 'http_code' => 400, 'description' => '该资源规格不支持搭载此操作系统的镜像。'], + ['code' => 'InvalidOrder.CommodityCodeNotMatch', 'message' => 'No CommodityCode matches this order.', 'http_code' => 400, 'description' => '没有匹配到商品的模块'], + ['code' => 'InvalidOrder.CommodityCodeNotMatch', 'message' => 'No commodityCode matched for this order.', 'http_code' => 400, 'description' => '没有匹配到商品的模块'], + ['code' => 'InvalidOrderId.NotFound', 'message' => 'The order is not found.', 'http_code' => 400, 'description' => '订单找不到'], + ['code' => 'InvalidOrderId.NotFound', 'message' => 'The specified order is not found.', 'http_code' => 400, 'description' => '没有订单信息'], + ['code' => 'InvalidOsType.ValueNotSupported', 'message' => 'The operation system type is not supported.', 'http_code' => 400, 'description' => '镜像的操作系统类型不支持'], + ['code' => 'InvalidParameter.%s', 'message' => 'The parameter %s is invalid.', 'http_code' => 400, 'description' => '参数值校验不通过。'], + ['code' => 'InvalidParameter.AddAccount/RemoveAccount', 'message' => 'The tenant ID to be added or removed is invalid.', 'http_code' => 400, 'description' => '添加或删除共享的租户ID不合法。'], + ['code' => 'InvalidParameter.ImageId', 'message' => 'The image ID is invalid.', 'http_code' => 400, 'description' => '镜像ID不合法。'], + ['code' => 'InvalidParameter.SystemDiskSize', 'message' => 'The system disk size is invalid.', 'http_code' => 400, 'description' => '系统盘大小不合法。'], + ['code' => 'InvalidParentImage.AlreadyHasCommunityImage', 'message' => 'The parent image already has a community image.', 'http_code' => 400, 'description' => '镜像不能发布社区镜像,该镜像已经存在社区镜像。'], + ['code' => 'InvalidParentImage.ImageTypeIsNotUserImage', 'message' => 'Invalid operation. The parent image is not a user image.', 'http_code' => 400, 'description' => '父镜像不是用户镜像,操作无效。'], + ['code' => 'InvalidParentImage.InvalidStatus', 'message' => 'Invalid parent image status.', 'http_code' => 400, 'description' => '父镜像状态无效。'], + ['code' => 'InvalidParentImage.NotFound', 'message' => 'Parent image not found.', 'http_code' => 400, 'description' => '父镜像找不到。'], + ['code' => 'InvalidPeriod.Invalid', 'message' => 'The Period is invalid.', 'http_code' => 400, 'description' => '参数Period不合法'], + ['code' => 'InvalidPeriod.Missing', 'message' => 'The Period is missing.', 'http_code' => 400, 'description' => '参数Period缺失'], + ['code' => 'InvalidPeriodUnit.Missing', 'message' => 'The PeriodUnit is missing.', 'http_code' => 400, 'description' => '参数PeriodUnit缺失'], + ['code' => 'InvalidPeriodUnit.ValueNotSupported', 'message' => 'The PeriodUnit is invalid.', 'http_code' => 400, 'description' => '参数PeriodUnit无效。'], + ['code' => 'InvalidProductType.Invalid', 'message' => 'The ProductType is invalid.', 'http_code' => 400, 'description' => '参数ProductType无效。'], + ['code' => 'InvalidProductType.Missing', 'message' => 'The ProductType is missing.', 'http_code' => 400, 'description' => '参数ProductType缺失'], + ['code' => 'InvalidProductType.ValueNotSupported', 'message' => 'The ProductType is not supported.', 'http_code' => 400, 'description' => '不支持该产品类型'], + ['code' => 'InvalidRegion.ConfigError', 'message' => 'The region configuration is not found.', 'http_code' => 400, 'description' => '地域配置不存在'], + ['code' => 'InvalidRegion.Missing', 'message' => 'The Region is missing.', 'http_code' => 400, 'description' => '参数Region缺失'], + ['code' => 'InvalidRegion.NotFound', 'message' => 'The region is not found.', 'http_code' => 400, 'description' => '地域不存在'], + ['code' => 'InvalidRegion.NotMatch', 'message' => 'The region does not match the current environment.', 'http_code' => 400, 'description' => '地域与当前环境不匹配。'], + ['code' => 'InvalidRegionBind.NotFound', 'message' => 'The AppRegionBind is not found.', 'http_code' => 400, 'description' => '找不到参数AppRegionBind。'], + ['code' => 'InvalidRegionId.NotFound', 'message' => 'The RegionId is not found.', 'http_code' => 400, 'description' => '找不到参数RegionId。'], + ['code' => 'InvalidResourcePool.NotFound', 'message' => 'The resource pool is not found.', 'http_code' => 400, 'description' => '资源池未找到'], + ['code' => 'InvalidResponse.Missing', 'message' => 'The response body is missing.', 'http_code' => 400, 'description' => '响应体缺失。'], + ['code' => 'InvalidSessionId.Missing', 'message' => 'The SessionId is missing.', 'http_code' => 400, 'description' => '参数SessionId缺失。'], + ['code' => 'InvalidSourceImage.ImageTypeCannotBeShared', 'message' => 'Source image cannot be shared.', 'http_code' => 400, 'description' => '源镜像类型不支持共享。'], + ['code' => 'InvalidSourceImage.StatusNotAvailable', 'message' => 'Invalid source image status.', 'http_code' => 400, 'description' => '源镜像状态非正常。'], + ['code' => 'InvalidSpecId.Missing', 'message' => 'The SpecId is missing.', 'http_code' => 400, 'description' => '参数SpecId缺失。'], + ['code' => 'InvalidStorageType.NotFound', 'message' => 'The StorageType is not found.', 'http_code' => 400, 'description' => '找不到参数StorageType。'], + ['code' => 'InvalidStrategyConfig.ChargeTypeNotSupported', 'message' => 'The charge type is not supported for the given strategy.', 'http_code' => 400, 'description' => '指定的策略不支持该付费类型。'], + ['code' => 'InvalidStrategyConfig.Invalid', 'message' => 'The StrategyConfig is invalid.', 'http_code' => 400, 'description' => '参数StrategyConfig无效。'], + ['code' => 'InvalidStrategyConfig.Invalid', 'message' => 'The policy configuration is invalid.', 'http_code' => 400, 'description' => '策略配置不可用'], + ['code' => 'InvalidStrategyConfig.Missing', 'message' => 'The StrategyConfig is missing.', 'http_code' => 400, 'description' => '参数StrategyConfig缺失。'], + ['code' => 'InvalidStrategyConfig.NotFound', 'message' => 'The StrategyConfig is not found.', 'http_code' => 400, 'description' => '找不到参数StrategyConfig。'], + ['code' => 'InvalidStrategyParam.Invalid', 'message' => 'The StrategyParam is invalid.', 'http_code' => 400, 'description' => '参数StrategyParam无效。'], + ['code' => 'InvalidStrategyType.ValueNotSupported', 'message' => 'The strategy type is not supported.', 'http_code' => 400, 'description' => '不支持该策略类型。'], + ['code' => 'InvalidStrategyType.ValueNotSupported', 'message' => 'The policy type is not supported.', 'http_code' => 400, 'description' => '策略类型不支持'], + ['code' => 'InvalidSubAppType.ValueNotSupported', 'message' => 'The sub-category of the app is not supported.', 'http_code' => 400, 'description' => '镜像内的应用子类型不支持'], + ['code' => 'InvalidSystemDiskSize.SmallerThanParent', 'message' => 'Sub-image system disk size is smaller than the parent image.', 'http_code' => 400, 'description' => '子镜像系统盘小于父镜像系统盘。'], + ['code' => 'InvalidTargetAliUid.TargetShareImageAlreadyExist', 'message' => 'Target shared image already exists.', 'http_code' => 400, 'description' => '共享镜像已经存在。'], + ['code' => 'InvalidTaskId.NotFound', 'message' => 'The TaskId is not found.', 'http_code' => 400, 'description' => '找不到参数TaskId。'], + ['code' => 'InvalidTemplate.NotFound', 'message' => 'Template not found.', 'http_code' => 400, 'description' => '模版未找到。'], + ['code' => 'InvalidUserId.NotFound', 'message' => 'The UserId is not found.', 'http_code' => 400, 'description' => '找不到参数UserId。'], + ['code' => 'LogOffAllSession.Failed', 'message' => 'Failed to log off all sessions in the delivery group.', 'http_code' => 400, 'description' => '注销交付组下所有会话失败'], + ['code' => 'MissingParameter', 'message' => 'There is a missing parameter.', 'http_code' => 400, 'description' => '缺少参数'], + ['code' => 'MissingParameter.AppIdAndAppVersion', 'message' => 'The AppId and AppVersion are missing.', 'http_code' => 400, 'description' => '参数AppId、AppVersion不存在'], + ['code' => 'MissingParameter.RegionId', 'message' => 'The RegionId is missing.', 'http_code' => 400, 'description' => '参数RegionId不存在'], + ['code' => 'nvalidStrategyConfig.NotFound', 'message' => 'The policy configuration is not found.', 'http_code' => 400, 'description' => '找不到对应的策略配置'], + ['code' => 'OperationDenied.NoStock', 'message' => 'The operation is denied, because the instance stock is unavailable.', 'http_code' => 400, 'description' => '操作已被拒绝,因为实例库存不可用。'], + ['code' => 'OtaTask.Canceled', 'message' => 'The task has been cancelled.', 'http_code' => 400, 'description' => '该任务已取消。'], + ['code' => 'OtaTask.NotFound', 'message' => 'The ota task is not found.', 'http_code' => 400, 'description' => '找不到该OTA任务。'], + ['code' => 'OtaTask.Running', 'message' => 'The task is running and cannot be sumitted.', 'http_code' => 400, 'description' => '该任务正在运行,无法提交。'], + ['code' => 'OtaTaskNotifyRegion.Error', 'message' => 'The unit manager failed to receive the OTA upgrade job.', 'http_code' => 400, 'description' => '单元管理器无法接收OTA升级任务。'], + ['code' => 'ParentImage.NotExist', 'message' => 'The parent image does not exist.', 'http_code' => 400, 'description' => '依赖父镜像不存在。'], + ['code' => 'ParentImageRegionDistribute.NotExist', 'message' => 'The target distribution region of the parent image does not exist.', 'http_code' => 400, 'description' => '依赖父镜像分发地址不存在。'], + ['code' => 'ProductTypeInvalid', 'message' => 'The ProductType is invalid.', 'http_code' => 400, 'description' => '产品类型无效'], + ['code' => 'ProductTypeNotMatch', 'message' => 'The productType and image do not match.', 'http_code' => 400, 'description' => '输入ProductType和镜像不匹配。'], + ['code' => 'QueryTemplate.Failed', 'message' => 'Query template failed.', 'http_code' => 400, 'description' => '查找模板失败。'], + ['code' => 'RegionUnBind.Fail', 'message' => 'Failed to unbind.', 'http_code' => 400, 'description' => '无法取消绑定。'], + ['code' => 'ServiceUnavailable', 'message' => 'Service unavailable. Please try again later.', 'http_code' => 500, 'description' => '服务不可用,请稍后再试。'], + ['code' => 'StockError.InvalidResourceRequest', 'message' => 'Your request cannot be processed currently due to an error. Please try again later.', 'http_code' => 500, 'description' => '库存检查失败,系统暂时无法处理您的请求,请稍后再试。'], + ['code' => 'StockError.NoStock', 'message' => 'The selected specification is out of stock. Please try again later or select other specifications.', 'http_code' => 400, 'description' => '您选择的规格库存不足,请稍后再试或更换其他规格。'], + ['code' => 'StorageLock.Exist', 'message' => 'The storage lock exists.', 'http_code' => 400, 'description' => '存储读写锁已存在。'], + ['code' => 'StorageLock.NotFound', 'message' => 'The storage lock is not found.', 'http_code' => 400, 'description' => '找不到该存储读写锁。'], + ['code' => 'StorageLockProperties.NotMatch', 'message' => 'The storage lock properties do not match.', 'http_code' => 400, 'description' => '存储读写锁的属性不匹配。'], + ['code' => 'StorageLockUnitResponse.Empty', 'message' => 'The storage lock unit is found empty.', 'http_code' => 400, 'description' => '存储读写锁单元为空。'], + ['code' => 'StorageLockUnlockLevel.Error', 'message' => 'An unlock level error occurred while unlocking the storage lock.', 'http_code' => 400, 'description' => '解锁存储读写锁时出现解锁级别错误。'], + ['code' => 'Task.ResourceReleased', 'message' => 'Cannot retry because task resource is released.', 'http_code' => 400, 'description' => '任务资源已释放。'], + ['code' => 'TaskType.Invalid', 'message' => 'Invalid task type.', 'http_code' => 400, 'description' => '任务类型无效。'], + ['code' => 'TryBind.AppRegionBindLockFailed', 'message' => 'Failed to lock the app and region bind.', 'http_code' => 400, 'description' => '无法锁定应用和地域的绑定。'], + ['code' => 'TryBind.NoBindContext', 'message' => 'Failed to bind, because there is no bind context.', 'http_code' => 400, 'description' => '无法绑定,因为没有绑定的上下文。'], + ['code' => 'TryBind.NoCandidateAppInstanceGroup', 'message' => 'Failed to bind, because there is no candidate app instance group.', 'http_code' => 400, 'description' => '无法绑定,因为没有可用的交付组。'], + ['code' => 'TryBind.NoSupportedApp', 'message' => 'Failed to bind, because there is no supported app for this file extension.', 'http_code' => 400, 'description' => '无法绑定,因为没有支持此文件后缀的应用。'], + ['code' => 'TryRegionBind.BindExistingAppInstanceFail', 'message' => 'Failed to bind existing app instance.', 'http_code' => 400, 'description' => '无法绑定现有的应用实例。'], + ['code' => 'TryRegionBind.NoCandidateAppInstance', 'message' => 'Failed to bind, because there is no candidate app instance.', 'http_code' => 400, 'description' => '无法绑定,因为没有可用的应用实例。'], + ['code' => 'TryRegionBind.NoIdleAppInstance', 'message' => 'Failed to bind, because there is no idle app instance.', 'http_code' => 400, 'description' => '无法绑定,因为没有空闲的应用实例。'], + ['code' => 'TryRegionBind.TicketIsNull', 'message' => 'Failed to bind, because a null ticket is returned.', 'http_code' => 400, 'description' => '无法绑定,因为返回的Ticket为空。'], + ['code' => 'UpdateImage.Failed', 'message' => 'Failed to update the image.', 'http_code' => 400, 'description' => '无法更新镜像。'], + ['code' => 'UpdateRegion.NotSupport', 'message' => 'The distributed regions of vhd or container images cannot be modified.', 'http_code' => 400, 'description' => 'Vhd/Container镜像类型不支持修改地域配置信息。'], + ['code' => 'UserIdentifier.NotFound', 'message' => 'This username does not exist. Please check if it is correct.', 'http_code' => 400, 'description' => '该用户名不存在,请检查输入是否正确。'], + ], + 'changeSet' => [ + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'GetLoginToken'], + ], + 'createdAt' => '2025-02-27T12:04:21.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'FindIdpListByLoginIdentifier'], + ], + 'createdAt' => '2024-12-13T02:07:46.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'GetLoginToken'], + ['description' => '请求参数发生变更', 'api' => 'RefreshLoginToken'], + ], + 'createdAt' => '2024-12-11T03:48:41.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'RefreshLoginToken'], + ], + 'createdAt' => '2024-12-10T12:05:10.000Z', + 'description' => '', + ], [ - 'regionId' => 'cn-shanghai', - 'endpoint' => 'appstream-center.cn-shanghai.aliyuncs.com', + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'GetLoginToken'], + ], + 'createdAt' => '2024-12-06T09:32:29.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'GetLoginToken'], + ], + 'createdAt' => '2024-12-06T09:27:36.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'GetLoginToken'], + ], + 'createdAt' => '2024-11-02T06:19:21.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'FindIdpListByLoginIdentifier'], + ], + 'createdAt' => '2024-11-02T06:16:53.000Z', + 'description' => '', ], [ - 'regionId' => 'ap-southeast-1', - 'endpoint' => 'appstream-center.ap-southeast-1.aliyuncs.com', + 'apis' => [ + ['description' => '请求参数发生变更', 'api' => 'RefreshLoginToken'], + ], + 'createdAt' => '2024-07-22T03:08:26.000Z', + 'description' => '', ], + [ + 'apis' => [ + ['description' => 'OpenAPI 下线', 'api' => 'ChangePassword'], + ['description' => 'OpenAPI 下线', 'api' => 'FindIdpListByUuid'], + ['description' => '请求参数发生变更', 'api' => 'GetLoginToken'], + ['description' => '请求参数发生变更', 'api' => 'RefreshLoginToken'], + ['description' => 'OpenAPI 下线', 'api' => 'ResetPassword'], + ['description' => 'OpenAPI 下线', 'api' => 'SendTokenCode'], + ], + 'createdAt' => '2022-06-22T08:14:12.000Z', + 'description' => '统一认证服务', + ], + [ + 'apis' => [ + ['description' => 'OpenAPI 下线', 'api' => 'FindIdpListByLoginIdentifier'], + ], + 'createdAt' => '2022-06-22T06:11:02.000Z', + 'description' => '企业ID', + ], + [ + 'apis' => [ + ['description' => 'OpenAPI 下线', 'api' => 'FindIdpListByLoginName'], + ['description' => 'OpenAPI 下线', 'api' => 'GetLoginToken'], + ['description' => 'OpenAPI 下线', 'api' => 'RefreshLoginToken'], + ], + 'createdAt' => '2022-04-28T15:40:43.000Z', + 'description' => '无影统一身份认证服务', + ], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '-1', 'countWindow' => 1, 'regionId' => '*'], + ], + ], + 'ram' => [ + 'productCode' => 'AppStreaming', + 'productName' => '无影云应用', + 'ramCodes' => ['appstreaming', 'ecd'], + 'ramLevel' => '服务级', + 'ramConditions' => [], + 'ramActions' => [], + 'resourceTypes' => [], ], ]; |
