diff options
Diffstat (limited to 'data/en_us/appstream-center/2021-02-20/api-docs.php')
| -rw-r--r-- | data/en_us/appstream-center/2021-02-20/api-docs.php | 1644 |
1 files changed, 720 insertions, 924 deletions
diff --git a/data/en_us/appstream-center/2021-02-20/api-docs.php b/data/en_us/appstream-center/2021-02-20/api-docs.php index fa51258..06c5ba2 100644 --- a/data/en_us/appstream-center/2021-02-20/api-docs.php +++ b/data/en_us/appstream-center/2021-02-20/api-docs.php @@ -1,22 +1,11 @@ <?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' => null, + 'children' => ['ClientUserLogout', 'GetLoginToken', 'RefreshLoginToken', 'GetStsToken', 'FindIdpListByLoginIdentifier'], 'type' => 'directory', - 'children' => [ - 'ClientUserLogout', - 'GetLoginToken', - 'RefreshLoginToken', - 'GetStsToken', - 'FindIdpListByLoginIdentifier', - ], + 'title' => 'Client logon authentication', ], ], 'components' => [ @@ -24,109 +13,279 @@ ], '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' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'v22369636c721ba6b3ddb1683341016775c3f63e4d0e78f120f9a0544ed826b7af7daf747c402f0d0730b52f451b70****', - ], + 'schema' => ['description' => 'Login token.', 'type' => 'string', 'required' => false, 'example' => 'v22369636c721ba6b3ddb1683341016775c3f63e4d0e78f120f9a0544ed826b7af7daf747c402f0d0730b52f451b70****', 'title' => ''], ], [ 'name' => 'SessionId', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => '597e869d-ea14-4b83-9490-714f68****', - ], + 'schema' => ['description' => 'Session ID for the login.', 'type' => 'string', 'required' => false, 'example' => '597e869d-ea14-4b83-9490-714f68****', 'title' => ''], ], [ 'name' => 'ClientId', 'in' => 'query', + 'schema' => ['description' => 'Client ID.', 'type' => 'string', 'required' => false, 'example' => 'eac19bef-1e45-4190-a03a-4ea74b****', 'title' => ''], + ], + [ + 'name' => 'OfficeSiteId', + 'in' => 'query', + 'schema' => ['description' => 'Office network ID.', 'type' => 'string', 'required' => false, 'example' => 'cn-hongkong+dir-643067****', 'title' => ''], + ], + [ + 'name' => 'ProfileRegion', + 'in' => 'query', 'schema' => [ - 'description' => '', + 'description' => 'Site to which the account belongs.', + 'enumValueTitles' => ['ap_southeast_1' => 'Alibaba Cloud International Website (www\\.alibabacloud.com)', 'cn_hangzhou' => 'China site'], 'type' => 'string', 'required' => false, - 'example' => 'eac19bef-1e45-4190-a03a-4ea74b****', + 'example' => 'cn_hangzhou', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'Response data structure.', + 'title' => 'Schema of Response ', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request ', 'description' => 'Request ID.', 'type' => 'string', 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****'], + ], + 'example' => '', ], ], + ], + 'title' => 'Client logoff ', + 'summary' => 'Log out the client and destroy the login credentials.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\"\\n}","type":"json"}]', + ], + 'FindIdpListByLoginIdentifier' => [ + 'summary' => 'Allows a client to query login configuration for an office network or an enterprise identifier.', + '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' => 'The unique ID of the client.', 'type' => 'string', 'required' => false, 'example' => '370b56f8-2812-4b6c-bfa6-2560791c****', 'title' => ''], + ], + [ + 'name' => 'ClientOS', + 'in' => 'formData', + 'schema' => ['description' => 'The client operating system.', 'type' => 'string', 'required' => false, 'example' => 'windows_\\"Windows 10 Enterprise\\" 10.0 (Build 14393)', 'title' => ''], + ], + [ + 'name' => 'ClientVersion', + 'in' => 'formData', + 'schema' => ['description' => 'The version of the client application.', 'type' => 'string', 'required' => false, 'example' => '2.0.1-D-20211008.101607', 'title' => ''], + ], + [ + 'name' => 'ClientChannel', + 'in' => 'formData', + 'schema' => ['description' => 'A custom identifier that distinguishes different client applications.', 'type' => 'string', 'required' => false, 'example' => 'pc', 'title' => ''], + ], + [ + 'name' => 'Uuid', + 'in' => 'formData', + 'schema' => ['description' => 'The unique identifier of the client. For the Wuying Client, find this parameter in the About dialog box on the login screen.', 'type' => 'string', 'required' => false, 'example' => '2943802884B27030B6759F9132B2****', 'title' => ''], + ], + [ + 'name' => 'LoginIdentifier', + 'in' => 'formData', + 'schema' => ['description' => 'The enterprise identifier.', 'type' => 'string', 'required' => true, 'example' => 'Aliyun123***', 'title' => ''], + ], + [ + 'name' => 'SupportTypes', + 'in' => 'formData', + 'style' => 'repeatList', 'schema' => [ - 'description' => '', - 'type' => 'string', + 'description' => 'The supported login types.', + 'type' => 'array', + 'items' => [ + 'description' => 'The supported login type.', + 'enumValueTitles' => ['ad' => 'AD domain account', 'simple' => 'simple account'], + 'type' => 'string', + 'required' => false, + 'example' => 'ad', + 'title' => '', + ], 'required' => false, - 'example' => 'cn-hongkong+dir-643067****', + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'ProfileRegion', + 'name' => 'AvailableFeatures', 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'ap_southeast_1' => '', - 'cn_hangzhou' => '', + 'description' => 'The features supported by the client.', + 'additionalProperties' => [ + 'description' => 'The feature supported by the client.', + 'enumValueTitles' => ['Business' => 'Support for the Business Edition'], + 'type' => 'string', + 'example' => '{\\"Business\\":\\"1\\"}', + 'title' => '', ], - 'example' => 'cn_hangzhou', + 'type' => 'object', + 'required' => false, + 'title' => '', + 'example' => '', ], ], + [ + 'name' => 'ClientIp', + 'in' => 'query', + 'schema' => ['description' => 'The client IP address.', 'type' => 'string', 'required' => false, 'example' => '22.21.XX.XX', 'title' => ''], + ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => '', + 'title' => '', + 'description' => 'The response body.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '', + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => 'AD2D0761-1FE5-549D-B169-D3F8D19C****'], + 'IdpInfos' => [ + 'description' => 'The identity provider (IdP) details.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'IdpId' => ['description' => 'The ID of the identity provider (IdP) configuration.', 'type' => 'string', 'example' => 'idp-hlyexfvwert9m8****', 'title' => ''], + 'IdpName' => ['description' => 'The name of the identity provider.', 'type' => 'string', 'example' => 'DingTalk', 'title' => ''], + 'SsoProtocol' => [ + 'description' => 'The SSO protocol.', + 'enumValueTitles' => ['OAuth2' => 'The OAuth2 protocol.', 'SAML' => 'The SAML protocol.', 'OIDC' => 'The OIDC protocol.'], + 'type' => 'string', + 'example' => 'SAML', + 'title' => '', + ], + 'IdpProvider' => ['description' => 'The type or service of the identity provider.', 'type' => 'string', 'example' => 'DingTalk', 'title' => ''], + 'SsoServiceUrl' => ['description' => 'The SSO service URL.', 'type' => 'string', 'example' => 'https://e1iwdlcn.aliyunidaas.com/login/app/app_****/saml2/sso', 'title' => ''], + 'Cookies' => ['description' => 'For cookie-based single sign-on (SSO), specifies the cookies that the client must set.', 'type' => 'string', 'example' => 'null', 'title' => ''], + 'AccountType' => [ + 'description' => 'The account type.', + 'enumValueTitles' => ['ad' => 'AD domain account', 'simple' => 'simple account'], + 'type' => 'string', + 'example' => 'simple', + 'title' => '', + ], + 'JumpSwitch' => ['description' => 'Indicates whether to redirect to a browser for sign-in.', 'type' => 'string', 'example' => 'true', 'title' => ''], + 'IdpNameEN' => ['description' => 'The English name of the identity provider (IdP).', 'type' => 'string', 'example' => 'wy-simple', 'title' => ''], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'OfficeSiteInfo' => [ + 'description' => 'The office site details.', + 'type' => 'object', + 'properties' => [ + 'OfficeSiteId' => ['description' => 'The office site ID.', 'type' => 'string', 'example' => 'cn-shanghai+dir-448204****', 'title' => ''], + 'SsoServiceUrl' => ['description' => 'The SSO service URL.', 'type' => 'string', 'example' => 'https://e1iwdlcn.aliyunidaas.com/login/app/app_****/saml2/sso', 'title' => ''], + 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], + 'AccessType' => [ + 'description' => 'The allowed client network connection types.', + 'enumValueTitles' => ['INTERNET' => 'internet access', 'VPC' => 'VPC access', 'ANY' => 'Both internet access and VPC access are allowed.'], + 'type' => 'string', + 'example' => 'INTERNET', + 'title' => '', + ], + 'ProviderId' => ['description' => 'The business ID (BID) of the account.', 'type' => 'string', 'example' => '26842', 'title' => ''], + 'PreferVpcAccess' => ['type' => 'boolean', 'description' => '', 'title' => '', 'example' => ''], + 'VpcAccessAddress' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'TenantAliasInfo' => [ + 'description' => 'The tenant alias details.', + 'type' => 'object', + 'properties' => [ + 'TenantAlias' => ['description' => 'The tenant alias.', 'type' => 'string', 'example' => 'Or09****', 'title' => ''], + 'AccessType' => [ + 'description' => 'The allowed client network connection types.', + 'enumValueTitles' => ['INTERNET' => 'internet access', 'VPC' => 'VPC access', 'ANY' => 'Both internet access and VPC access are allowed.'], + 'type' => 'string', + 'example' => 'INTERNET', + 'title' => '', + ], + 'PreferVpcAccess' => ['type' => 'boolean', 'description' => '', 'title' => '', 'example' => ''], + 'VpcAccessAddress' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + 'IsLoginByCipherParam' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'ProfileRegion' => [ + 'description' => 'The site where the account is located.', + 'enumValueTitles' => ['ap_southeast_1' => 'international site', 'cn_hangzhou' => 'china site'], 'type' => 'string', - 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + 'example' => 'cn_hangzhou', + 'title' => '', + ], + 'PopRegionConfig' => [ + 'description' => 'The central service endpoint, used for high availability.', + 'type' => 'object', + 'additionalProperties' => ['description' => 'The login service URL for the specified region.', 'type' => 'string', 'example' => 'cn-shanghai', 'title' => ''], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\"\\n}","type":"json"}]', + 'title' => 'Query logon configuration', + 'changeSet' => [], + '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\\": false,\\n \\"VpcAccessAddress\\": \\"\\"\\n },\\n \\"TenantAliasInfo\\": {\\n \\"TenantAlias\\": \\"Or09****\\",\\n \\"AccessType\\": \\"INTERNET\\",\\n \\"PreferVpcAccess\\": false,\\n \\"VpcAccessAddress\\": \\"\\",\\n \\"IsLoginByCipherParam\\": \\"\\"\\n },\\n \\"ProfileRegion\\": \\"cn_hangzhou\\",\\n \\"PopRegionConfig\\": {\\n \\"key\\": \\"cn-shanghai\\"\\n }\\n}","type":"json"}]', ], 'GetLoginToken' => [ - 'summary' => 'Queries a logon token using an enterprise identifier.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'Anonymous' => [], @@ -139,1198 +298,835 @@ 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '125244', - 'abilityTreeNodes' => [ - 'FEATUREappstreamingV87T4P', - ], + 'abilityTreeNodes' => ['FEATUREappstreamingV87T4P'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 'cn-shanghai', - ], + 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'cn-shanghai', 'title' => ''], ], [ 'name' => 'ClientId', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => '05967f80-6f51-46cb-a27c-****', - ], + 'schema' => ['description' => 'A unique identifier generated by the client.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '05967f80-6f51-46cb-a27c-****', 'title' => ''], ], [ 'name' => 'DirectoryId', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'cn-beijing+dir-j9dd****', - ], + 'schema' => ['description' => 'The ID of the office network. This parameter has the same meaning as `OfficeSiteId`. We recommend that you use `OfficeSiteId` instead of `DirectoryId`. You can specify `DirectoryId` or `OfficeSiteId`, but not both.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'cn-beijing+dir-j9dd****', 'title' => ''], ], [ 'name' => 'OfficeSiteId', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'cn-beijing+dir-j9dd****', - ], + 'schema' => ['description' => 'The office network ID.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'cn-beijing+dir-j9dd****', 'title' => ''], ], [ 'name' => 'SessionId', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'c6f3cd91-65fc-4c7b-b189-2a73da0****', - ], + 'schema' => ['description' => 'The login session ID.'."\n" + ."\n" + .'This parameter is not required if a virtual MFA device is not bound or secondary client authentication is disabled. If a virtual MFA device is bound or secondary client authentication is enabled, you must specify this parameter in authentication stages that occur after the `ADPassword` stage. You can obtain the session ID from the response returned for convenience account verification (that is, when the `GetLoginToken` request is in the `ADPassword` stage).', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'c6f3cd91-65fc-4c7b-b189-2a73da0****', 'title' => ''], ], [ 'name' => 'CurrentStage', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'SsoTokenLogin', - ], + 'schema' => ['description' => 'The current stage of the login authentication process. The following stages are available in sequence:'."\n" + ."\n" + .'1. `ADPassword`: Verifies user information. Specify this value for password-based authentication by using a convenience account or an AD account.'."\n" + ."\n" + .'2. `MFABind`: Binds a virtual MFA device.'."\n" + ."\n" + .'3. `MFAVerify`: Verifies the security code generated by the virtual MFA device.'."\n" + ."\n" + .'4. `TokenVerify`: Performs secondary client authentication.'."\n" + ."\n" + .'5. `ChangePassword`: Changes the user password.'."\n" + ."\n" + .'6. `KeepAliveVerify`: Exchanges a valid `KeepAliveToken` for a new login token.'."\n" + ."\n" + .'7. `PhoneVerifyTenantSelect`: Selects a corporate identifier to log in with during phone-based authentication.'."\n" + ."\n" + .'8. `VerifyForRisk`: Performs identity verification after a login risk is detected.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'SsoTokenLogin', 'title' => ''], ], [ 'name' => 'EndUserId', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'user01', - ], + 'schema' => ['description' => 'The username of the convenience account or AD account. This parameter is required if `CurrentStage` is set to `ADPassword`.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'user01', 'title' => ''], ], [ 'name' => 'Password', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'Admin@1234****', - 'maxLength' => 500, - 'minLength' => 1, - ], + 'schema' => ['description' => 'The password for the convenience account or AD account. This parameter is required if `CurrentStage` is set to `ADPassword`.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'maxLength' => 500, 'minLength' => 1, 'example' => 'Admin@1234****', 'title' => ''], ], [ 'name' => 'EncryptedPassword', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => '04d7****8e90bb0484fc;gJ1GLca1vQRRqQbRvByU0A==;5kOWZE7AtbQhki+4LAo69A==', - ], + 'schema' => ['description' => 'The encrypted password.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '04d7****8e90bb0484fc;gJ1GLca1vQRRqQbRvByU0A==;5kOWZE7AtbQhki+4LAo69A==', 'title' => ''], ], [ 'name' => 'OldPassword', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'Admin@1234****'."\n", - ], + 'schema' => ['description' => 'The old password. This parameter is required if `CurrentStage` is set to `ChangePassword`.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'Admin@1234****'."\n", 'title' => ''], ], [ 'name' => 'NewPassword', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'Admin@1234****'."\n", - ], + 'schema' => ['description' => 'The new password. This parameter is required if `CurrentStage` is set to `ChangePassword`.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'Admin@1234****'."\n", 'title' => ''], ], [ 'name' => 'AuthenticationCode', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => '182901', - ], + 'schema' => ['description' => 'The security code generated by the virtual MFA device. This parameter is required if `CurrentStage` is set to `MFAVerify`.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '182901', 'title' => ''], ], [ 'name' => 'SsoSessionToken', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => '04d707a6-fb23-44a7-aae7-8e90****', - ], + 'schema' => ['description' => 'The token used for SSO authentication.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '04d707a6-fb23-44a7-aae7-8e90****', 'title' => ''], ], [ 'name' => 'ClientOS', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'windows_\\"Windows 10 Pro\\" 10.0 (Build 22631)', - ], + 'schema' => ['description' => 'The client operating system.', 'type' => 'string', 'required' => false, 'example' => 'windows_\\"Windows 10 Pro\\" 10.0 (Build 22631)', 'title' => ''], ], [ 'name' => 'ClientVersion', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => '7.3.0-20240619.143924', - ], + 'schema' => ['description' => 'The client version.', 'type' => 'string', 'required' => false, 'example' => '7.3.0-20240619.143924', 'title' => ''], ], [ 'name' => 'TokenCode', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => '1234***', - ], + 'schema' => ['description' => 'If secondary client authentication is enabled in the Elastic Desktop Service Enterprise Edition console and a login risk is detected for the user, the system sends a secondary authentication verification code to the user\'s email. This parameter is required if `CurrentStage` is set to `TokenVerify`.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '1234***', 'title' => ''], ], [ 'name' => 'UmidToken', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => '04d707a6-fb23-44a7-aae7-8e90bb04****', - ], + 'schema' => ['description' => 'A token that you provide to ensure the request is idempotent.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '04d707a6-fb23-44a7-aae7-8e90bb04****', 'title' => ''], ], [ 'name' => 'FingerPrintData', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], + 'schema' => ['description' => 'The fingerprint information. This parameter is not currently supported.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'KeepAlive', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => 'Specifies whether to stay logged in.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'KeepAliveToken', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => '00ugamMAoO1+u1MlhmgCeZJ75q094x3H/4kg7ZaTI3f/joVTVPIpJgfv9JFkPLNxnQjblrvsByNas08mc6FtVWvQPOE68fqmt6QMM4UbRtahm8luxEXvicF58qSPXW1hxOtV/Ev6d92VBz2Bck/N4CYyjD0iLocfN8jkBnt231****', - ], + 'schema' => ['description' => 'The token used to stay logged in. If a user successfully logs on and chooses to stay logged in, the API returns a `KeepAliveToken`. While this token is valid, you can call the `GetLoginToken` operation and set `CurrentStage` to `KeepAliveVerify` to obtain a new login token (`LoginToken`). This parameter is required if `CurrentStage` is set to `KeepAliveVerify`.', 'type' => 'string', 'required' => false, 'example' => '00ugamMAoO1+u1MlhmgCeZJ75q094x3H/4kg7ZaTI3f/joVTVPIpJgfv9JFkPLNxnQjblrvsByNas08mc6FtVWvQPOE68fqmt6QMM4UbRtahm8luxEXvicF58qSPXW1hxOtV/Ev6d92VBz2Bck/N4CYyjD0iLocfN8jkBnt231****', 'title' => ''], ], [ 'name' => 'Uuid', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'C50973691A6D2BE23F2CDD73B85B****', - ], + 'schema' => ['description' => 'A unique identifier for the client. If you use the Elastic Desktop Service client, you can find this value in the About dialog box on the logon screen.', 'type' => 'string', 'required' => false, 'example' => 'C50973691A6D2BE23F2CDD73B85B****', 'title' => ''], ], [ 'name' => 'ImageUrl', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], + 'schema' => ['description' => 'The image URL.'."\n" + ."\n" + .'> This parameter is deprecated.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'EncryptedFingerPrintData', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], + 'schema' => ['description' => 'The fingerprint information.'."\n" + ."\n" + .'> This parameter is deprecated.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'EncryptedKey', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => '4d7****8e90bb0484fc', - ], + 'schema' => ['description' => 'The encrypted key ID.', 'type' => 'string', 'required' => false, 'example' => '4d7****8e90bb0484fc', 'title' => ''], ], [ 'name' => 'ClientType', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'windows', - ], + 'schema' => ['description' => 'The client type.', 'type' => 'string', 'required' => false, 'example' => 'windows', 'title' => ''], ], [ 'name' => 'SsoExtendsCookies', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], + 'schema' => ['description' => 'The cookie for SSO sign-in, used to enable password-free sign-in within applications.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'LoginName', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], + 'schema' => ['description' => 'This parameter is deprecated.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'LoginIdentifier', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'Fe04****', - ], + 'schema' => ['description' => 'The corporate identifier.', 'type' => 'string', 'required' => false, 'example' => 'Fe04****', 'title' => ''], ], [ 'name' => 'IdpId', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'idp-iwntrlbb98q7v****', - ], + 'schema' => ['description' => 'The logon authentication service ID. You can obtain this ID by calling the [`FindIdpListByLoginIdentifier`](~~FindIdpListByLoginIdentifier~~) operation.', 'type' => 'string', 'required' => false, 'example' => 'idp-iwntrlbb98q7v****', 'title' => ''], ], [ 'name' => 'NetworkType', 'in' => 'query', 'schema' => [ - 'description' => '', + 'description' => 'The network connection type of the client.', + 'enumValueTitles' => ['INTERNET' => 'Internet', 'VPC' => 'VPC'], 'type' => 'string', 'required' => false, - 'enumValueTitles' => [ - 'INTERNET' => '', - 'VPC' => '', - ], 'example' => 'INTERNET', + 'title' => '', ], ], [ 'name' => 'Phone', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => '1822727****', - ], + 'schema' => ['description' => 'The phone number. This parameter is used for phone-based logins.'."\n" + ."\n" + .'> This feature is not available for accounts on the International site.', 'type' => 'string', 'required' => false, 'example' => '1822727****', 'title' => ''], ], [ 'name' => 'PhoneVerifyCode', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => '321123', - ], + 'schema' => ['description' => 'The phone verification code. This parameter is used for phone-based logins.'."\n" + ."\n" + .'> This feature is not available for accounts on the International site.', 'type' => 'string', 'required' => false, 'example' => '321123', 'title' => ''], ], [ 'name' => 'AvailableFeatures', 'in' => 'query', 'style' => 'json', 'schema' => [ - 'type' => 'object', + 'description' => 'The features supported by the client.', 'additionalProperties' => [ + 'description' => 'The features supported by the client.', + 'enumValueTitles' => ['Business' => 'Supports the Business Edition.'], 'type' => 'string', + 'example' => '{\\"Business\\":\\"1\\"}', + 'title' => '', ], + 'type' => 'object', + 'required' => false, + 'title' => '', + 'example' => '', ], ], [ 'name' => 'MfaType', 'in' => 'query', 'schema' => [ + 'description' => 'The MFA verification type.', + 'enumValueTitles' => ['TOTP' => 'Authenticator app code', 'PHONE' => 'Phone verification code', 'EMAIL' => 'Email verification code'], 'type' => 'string', + 'required' => false, + 'example' => 'TOTP', + 'title' => '', ], ], [ 'name' => 'ClientName', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - ], + 'schema' => ['description' => 'The client name.', 'type' => 'string', 'required' => false, 'example' => 'HONOR-BRN-HXXB', 'title' => ''], ], [ 'name' => 'ProfileRegion', 'in' => 'query', 'schema' => [ + 'description' => 'The site to which the tenant belongs.', + 'enumValueTitles' => ['ap_southeast_1' => 'International site', 'cn_hangzhou' => 'China site'], 'type' => 'string', + 'required' => false, + 'example' => 'cn_hangzhou', + 'title' => '', ], ], [ 'name' => 'Channel', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - ], + 'schema' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'AreaSite', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - ], + 'schema' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + ], + [ + 'name' => 'CipherEndUserId', + 'in' => 'query', + 'schema' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + ], + [ + 'name' => 'CipherPassword', + 'in' => 'query', + 'schema' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '', + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'Email' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'alice***@aliyun.com', - ], - 'Secret' => [ - 'description' => '', - 'type' => 'string', - 'example' => '4JZNSDHDM3T6AZ4G2O5OWXBLLE4P****', - ], - 'RequestId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'EEA72491-B731-53D6-83ED-209769D6****', - ], - 'EndUserId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'alice', - ], - 'LoginToken' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'v185fdd7f6d39fa7861981639366085772e150a390a5bb7b43c4e62440d94fc392b945770e1596cebe90085ce0af4d****', - ], - 'NextStage' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'MFABind', - ], - 'QrCodePng' => [ - 'description' => '', - 'type' => 'string', - 'example' => '5OCLLKKOJU5HPBX66H3QCTWY******'."\n", - ], - 'Label' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'test:wuying'."\n", - ], - 'SessionId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'cc15c91c-821b-4edd-9af2-6df66cc****', - ], - 'Phone' => [ - 'description' => '', - 'type' => 'string', - 'example' => '1826717****', - ], - 'TenantId' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '13747924304****', - ], - 'KeepAliveToken' => [ - 'description' => '', - 'type' => 'string', - 'example' => '006YwvYMsesWWsDBZnVB+Wq9AvJDVIqOY3YCktvtb7+KxMb3ClnNlV8+l/knhZYrXUmeP06IzkjF+IgcZ3vZKOyMprDyFHjCy1r27FRE/U7+geWCl8iQ+yF8GaCRHfJEkC2+ROs93HkT4tfHxyY1J8W7O7ZQGUC/cdCvm+cCP6FIy73IUuPuVR6PcKYXIp***', - ], - 'Industry' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'edu', - ], + 'Email' => ['description' => 'The user\'s email address. This parameter is returned with the `LoginToken` after a successful sign-in.'."\n" + ."\n" + .'- For a convenience account, this is the email address specified when the account was created.'."\n" + ."\n" + .'- For an AD domain account, the email address uses the format `username@<AD domain>`.', 'type' => 'string', 'example' => 'alice***@example.com', 'title' => ''], + 'Secret' => ['description' => 'The secret key for binding a virtual MFA device. This parameter is used in the `MFABind` stage.'."\n" + ."\n" + .'> For details about authentication stages, see the description of the `CurrentStage` request parameter.', 'type' => 'string', 'example' => '4JZNSDHDM3T6AZ4G2O5OWXBLLE4P****', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'EEA72491-B731-53D6-83ED-209769D6****', 'title' => ''], + 'EndUserId' => ['description' => 'The username of the convenience account or AD domain account.', 'type' => 'string', 'example' => 'alice', 'title' => ''], + 'LoginToken' => ['description' => 'The login token.', 'type' => 'string', 'example' => 'v185fdd7f6d39fa7861981639366085772e150a390a5bb7b43c4e62440d94fc392b945770e1596cebe90085ce0af4d****', 'title' => ''], + 'NextStage' => ['description' => 'The expected next authentication stage. For example, if an administrator enables multi-factor authentication (MFA) in the Elastic Desktop Service Enterprise Edition console, this parameter returns `MFAVerify` after the username and password authentication is successful (that is, after the `ADPassword` stage). This indicates that MFA is required.'."\n" + ."\n" + .'> For details about authentication stages, see the description of the `CurrentStage` request parameter.', 'type' => 'string', 'example' => 'MFABind', 'title' => ''], + 'QrCodePng' => ['description' => 'The Base64-encoded QR code of the secret key used to bind a virtual MFA device. This parameter is returned during the `MFABind` stage and may be empty.'."\n" + ."\n" + .'> For details about authentication stages, see the description of the `CurrentStage` request parameter.', 'type' => 'string', 'example' => '5OCLLKKOJU5HPBX66H3QCTWY******'."\n", 'title' => ''], + 'Label' => ['description' => 'The convenience account attributes. For an AD domain account, this parameter is empty.', 'type' => 'string', 'example' => 'test:wuying'."\n", 'title' => ''], + 'SessionId' => ['description' => 'The session ID. This parameter is returned only on the first call to `GetLoginToken` in the same session. If multiple authentication steps are required, you must pass this parameter in subsequent requests.', 'type' => 'string', 'example' => 'cc15c91c-821b-4edd-9af2-6df66cc****', 'title' => ''], + 'Phone' => ['description' => 'The phone number of the convenience account. For an AD domain account, this parameter is empty.', 'type' => 'string', 'example' => '1826717****', 'title' => ''], + 'TenantId' => ['description' => 'The Alibaba Cloud account ID, used for hardware terminal identification.', 'type' => 'integer', 'format' => 'int64', 'example' => '13747924304****', 'title' => ''], + 'KeepAliveToken' => ['description' => 'The token used to keep the user signed in. If a user successfully signs in and enables the \'keep me signed in\' option, the operation returns a `KeepAliveToken`. If this option is not enabled, this parameter is empty.', 'type' => 'string', 'example' => '006YwvYMsesWWsDBZnVB+Wq9AvJDVIqOY3YCktvtb7+KxMb3ClnNlV8+l/knhZYrXUmeP06IzkjF+IgcZ3vZKOyMprDyFHjCy1r27FRE/U7+geWCl8iQ+yF8GaCRHfJEkC2+ROs93HkT4tfHxyY1J8W7O7ZQGUC/cdCvm+cCP6FIy73IUuPuVR6PcKYXIp***', 'title' => ''], + 'Industry' => ['description' => '> This parameter is not available for public use.', 'type' => 'string', 'example' => 'edu', 'title' => ''], 'Props' => [ - 'description' => '', + 'description' => '> This parameter is not available for public use.', 'type' => 'object', - 'additionalProperties' => [ - 'type' => 'string', - 'description' => '', - 'example' => '{\'environment\': \'online\', \'sourceClientType\': \'WINDOWS', - ], - ], - 'WyId' => [ - 'description' => '', - 'type' => 'string', - 'example' => '0aba1403b337a***', - ], - 'VpcRegionId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'cn-beijing', - ], - 'WindowDisplayMode' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'Windowed', - ], - 'AccountType' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'ad', + 'additionalProperties' => ['description' => '> This parameter is not available for public use.', 'type' => 'string', 'example' => '{\'environment\': \'online\', \'sourceClientType\': \'WINDOWS', 'title' => ''], + 'title' => '', + 'example' => '', ], + 'WyId' => ['description' => 'The globally unique ID for the user.', 'type' => 'string', 'example' => '0aba1403b337a***', 'title' => ''], + 'VpcRegionId' => ['description' => 'The ID of the Virtual Private Cloud (VPC) region. This parameter is used when signing in over a VPC.', 'type' => 'string', 'example' => 'cn-beijing', 'title' => ''], + 'WindowDisplayMode' => ['description' => '> This parameter is not available for public use.', 'type' => 'string', 'example' => 'Windowed', 'title' => ''], + 'AccountType' => ['description' => 'The account type, which can be a convenience account or an AD domain account.', 'type' => 'string', 'example' => 'ad', 'title' => ''], 'TenantInfos' => [ - 'description' => '', + 'description' => 'The tenant ID information. When signing in with a phone number, the number may be associated with multiple tenant IDs. In this case, you must set the `CurrentStage` parameter to `PhoneVerifyTenantSelect` and specify a tenant ID to sign in.', 'type' => 'array', 'items' => [ - 'description' => '', + 'description' => 'The tenant ID information.', 'type' => 'object', 'properties' => [ - 'TenantAlias' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'Up830***', - ], + 'TenantAlias' => ['description' => 'The tenant ID.', 'type' => 'string', 'example' => 'Up830***', 'title' => ''], 'AccessType' => [ - 'description' => '', + 'description' => 'The client\'s network connection type.', + 'enumValueTitles' => ['INTERNET' => 'Internet', 'VPC' => 'Virtual Private Cloud (VPC)', 'ANY' => 'All connection types are allowed.'], 'type' => 'string', - 'enumValueTitles' => [ - 'INTERNET' => '', - 'VPC' => '', - 'ANY' => '', - ], 'example' => 'INTERNET', + 'title' => '', ], ], + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], - 'TenantAlias' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'Rq201***', - ], - 'AccessType' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'INTERNET', - ], + 'TenantAlias' => ['description' => 'The tenant identifier used for sign-in.', 'type' => 'string', 'example' => 'Rq201***', 'title' => ''], + 'AccessType' => ['description' => 'The client\'s network connection type.', 'type' => 'string', 'example' => 'INTERNET', 'title' => ''], 'OfficeSites' => [ - 'description' => '', + 'description' => 'The office network information for the AD domain, returned after a successful sign-in.', 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'example' => '[\'cn-beijing+dir-096920***\', \'cn-shenzhen+dir-2546908***\']', - ], - ], - 'IdpId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'idp-7ttvs4ove8bo5***', - ], - 'AdDomain' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'easthp***.com', + 'items' => ['description' => 'An office network ID associated with the AD domain.', 'type' => 'string', 'example' => '[\'cn-beijing+dir-096920***\', \'cn-shenzhen+dir-2546908***\']', 'title' => ''], + 'title' => '', + 'example' => '', ], + 'IdpId' => ['description' => 'The ID of the identity provider (IdP) configuration associated with the user.', 'type' => 'string', 'example' => 'idp-7ttvs4ove8bo5***', 'title' => ''], + 'AdDomain' => ['description' => 'The domain name of the AD-integrated office network.', 'type' => 'string', 'example' => 'easthp***.com', 'title' => ''], 'RiskVerifyInfo' => [ - 'description' => '', + 'description' => 'Contains details for login risk detection. If a risk is detected, you must verify the user\'s identity using the returned email address or phone number.'."\n" + .'To do this, call the `SendVerifyCode` operation to send a verification code to the provided contact information. Then, call the `GetLoginToken` operation and set the `CurrentStage` parameter to `VerifyForRisk` to complete the identity verification.', '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' => '1826717****', - ], + 'Email' => ['description' => 'The email address used for identity verification.', 'type' => 'string', 'example' => 'ppas***@aliyun.com', 'title' => ''], + 'LastLockDuration' => ['description' => 'The lockout duration, in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '12000', 'title' => ''], + 'Locked' => ['description' => 'Indicates whether the user is locked.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Phone' => ['description' => 'The phone number used for identity verification.', 'type' => 'string', 'example' => '138****1111', 'title' => ''], ], + 'title' => '', + 'example' => '', ], 'PasswordStrategy' => [ - 'description' => '', + 'description' => 'The password policy.', 'type' => 'object', 'properties' => [ - 'TenantPasswordLength' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '12', - ], + 'TenantPasswordLength' => ['description' => 'The required password length.', 'type' => 'integer', 'format' => 'int32', 'example' => '12', 'title' => ''], 'TenantAlternativeChars' => [ - 'description' => '', + 'description' => 'The required character types for the password.', 'type' => 'array', 'items' => [ - 'description' => '', + 'description' => 'The required character types for the password.', + 'enumValueTitles' => ['NUMBER' => 'Digits', 'SPECIAL_CHAR' => 'Special characters', 'LOWER_LETTER' => 'Lowercase letters', 'UPPER_LETTER' => 'Uppercase letters'], 'type' => 'string', - 'enumValueTitles' => [ - 'NUMBER' => '', - 'SPECIAL_CHAR' => '', - 'LOWER_LETTER' => '', - 'UPPER_LETTER' => '', - ], 'example' => 'UPPER_LETTER', + 'title' => '', ], + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], 'Reason' => [ - 'description' => '', + 'description' => 'The reason the sign-in failed.', + 'enumValueTitles' => ['ResetPassword' => 'The password has been reset.', 'PasswordExpired' => 'The password has expired and must be changed.'], 'type' => 'string', - 'enumValueTitles' => [ - 'ResetPassword' => '', - 'PasswordExpired' => '', - ], 'example' => 'PasswordExpired', + 'title' => '', ], 'MfaTypeList' => [ + 'description' => 'The available MFA verification types when MFA is triggered.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Name' => [ + 'description' => 'The MFA verification type.', + 'enumValueTitles' => ['TOTP' => 'TOTP', 'PHONE' => 'phone verification code', 'EMAIL' => 'Email verification code'], 'type' => 'string', + 'example' => 'PHONE', + 'title' => '', ], 'Stage' => [ + 'description' => 'The value to use for the `CurrentStage` parameter after you select an MFA type.', + 'enumValueTitles' => ['MFAVerifyV1' => 'Perform MFA verification', 'MFABindV1' => 'Bind an MFA device'], 'type' => 'string', + 'example' => 'MFABindV1', + 'title' => '', ], ], + 'description' => '', + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], - 'NickName' => [ - 'type' => 'string', - ], + 'NickName' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], + 'title' => '', + 'example' => '', ], ], ], + 'title' => 'Obtain Login Credential ', + 'summary' => 'Retrieve login credentials using an enterprise identifier.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + '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"}]', - 'title' => 'GetLoginToken', ], - 'RefreshLoginToken' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'GetStsToken' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'Anonymous' => [], ], ], + 'operationType' => 'read', + 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', - 'abilityTreeCode' => '128463', - 'abilityTreeNodes' => [ - 'FEATUREappstreamingV87T4P', - ], - ], - 'parameters' => [ - [ - 'name' => 'ClientId', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'f4a0dc8e-1702-4728-9a60-95b27a35****'."\n", - ], - ], - [ - 'name' => 'SessionId', - 'in' => 'query', - 'schema' => [ - 'description' => '', - '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' => '', - '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' => '', - 'android' => '', - 'windows' => '', - 'ios' => '', - 'macos' => '', - ], - 'example' => 'windows', - ], - ], - [ - 'name' => 'Uuid', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => '2943802884B27030B6759F9132B2****', - ], - ], - [ - 'name' => 'ProfileRegion', - 'in' => 'query', - 'schema' => [ - 'type' => 'string', - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '', - 'type' => 'string', - 'example' => '419F31B9-1FDF-5644-ABA3-D00026FA****', - ], - 'LoginToken' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'v12369636c721ba6b3ddb1683341016775c3f63e4d0e78f120f9a0544ed826b7af7daf747c402f0d0730b52f451b70****', - ], - ], - ], - ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"419F31B9-1FDF-5644-ABA3-D00026FA****\\",\\n \\"LoginToken\\": \\"v12369636c721ba6b3ddb1683341016775c3f63e4d0e78f120f9a0544ed826b7af7daf747c402f0d0730b52f451b70****\\"\\n}","type":"json"}]', - 'title' => 'RefreshLoginToken', - 'summary' => 'Refreshes a logon token.', - ], - 'GetStsToken' => [ - 'summary' => 'Obtains an STS token.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'Anonymous' => [], - ], + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREappstreamingV87T4P'], + 'autoTest' => false, + 'tenantRelevance' => 'publicInformation', ], - 'deprecated' => false, - 'systemTags' => [], 'parameters' => [ [ 'name' => 'ClientId', 'in' => 'formData', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'eac19bef-1e45-4190-a03a-4ea74b69****', - ], + 'schema' => ['description' => 'The unique ID generated by the client.', 'type' => 'string', 'required' => false, 'example' => 'eac19bef-1e45-4190-a03a-4ea74b69****', 'title' => ''], ], [ 'name' => 'ClientOS', 'in' => 'formData', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'windows_\\"Windows 10 Enterprise\\" 10.0 (Build 14393)', - ], + 'schema' => ['description' => 'The client operating system.', 'type' => 'string', 'required' => false, 'example' => 'windows_\\"Windows 10 Enterprise\\" 10.0 (Build 14393)', 'title' => ''], ], [ 'name' => 'ClientVersion', 'in' => 'formData', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => '6.3.0-R-20231106.210000', - ], + 'schema' => ['description' => 'The client version.', 'type' => 'string', 'required' => false, 'example' => '6.3.0-R-20231106.210000', 'title' => ''], ], [ 'name' => 'ClientIp', 'in' => 'formData', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => '22.21.2.**', - ], + 'schema' => ['description' => 'The client IP address.', 'type' => 'string', 'required' => false, 'example' => '22.21.2.**', 'title' => ''], ], [ 'name' => 'Uuid', 'in' => 'formData', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => '2943802884B27030B6759F9132B2****', - ], + 'schema' => ['description' => 'The device UUID.', 'type' => 'string', 'required' => false, 'example' => '2943802884B27030B6759F9132B2****', 'title' => ''], ], [ 'name' => 'AuthCode', 'in' => 'formData', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => true, - 'example' => 'e4e169bea1cc48e8afac53**********', - ], + 'schema' => ['description' => 'The authorization code. This code is valid for 3 minutes and can be used only once, regardless of whether the validation succeeds or fails. If a user generates multiple authorization codes, only the latest one is valid.', 'type' => 'string', 'required' => true, 'example' => 'e4e169bea1cc48e8afac53**********', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => '', + 'description' => 'The response object.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '', - 'type' => 'string', - 'example' => 'CCF92035-6231-5ABB-930E-1E003C32****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CCF92035-6231-5ABB-930E-1E003C32****'], 'StsTokenModel' => [ - 'description' => '', + 'description' => 'The temporary security credential details.', 'type' => 'object', 'properties' => [ - 'SessionId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'be4be09e-cd00-4b4c-add7-11b4d8****', - ], - 'StsToken' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'sts****', - ], - 'TenantId' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '105552640689****', - ], + 'SessionId' => ['description' => 'The login session ID.', 'type' => 'string', 'example' => 'be4be09e-cd00-4b4c-add7-11b4d8****', 'title' => ''], + 'StsToken' => ['description' => 'The STS token.', 'type' => 'string', 'example' => 'sts****', 'title' => ''], + 'TenantId' => ['description' => 'The tenant ID (Alibaba Cloud account ID).', 'type' => 'integer', 'format' => 'int64', 'example' => '105552640689****', 'title' => ''], + 'LoginToken' => ['description' => 'The login token.', 'type' => 'string', 'title' => '', 'example' => ''], + 'EndUserId' => ['description' => 'The end-user ID.', 'type' => 'string', 'title' => '', 'example' => ''], + 'ProfileRegion' => ['description' => 'The region where the user profile is stored.', 'type' => 'string', 'title' => '', 'example' => ''], ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - '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"}]', - 'title' => 'GetStsToken', - ], - 'FindIdpListByLoginIdentifier' => [ - 'summary' => 'Queries the information about identity providers by logon identifier.', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'Obtain temporary identity credentials', + 'summary' => 'Gets an STS token (temporary security credential) for Wuying Workspace.', + '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' => '', - 'type' => 'string', - 'required' => false, - 'example' => '370b56f8-2812-4b6c-bfa6-2560791c****', - ], + 'in' => 'query', + 'schema' => ['description' => 'The unique ID generated by the client. See `UUID`. This parameter is not sensitive and does not require encryption.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'f4a0dc8e-1702-4728-9a60-95b27a35****'."\n", 'title' => ''], ], [ - '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' => 'The login session ID.', 'type' => 'string', 'required' => true, 'docRequired' => false, 'example' => '6442b2fd-ed3e-423a-8e6e-352d26a4****', 'title' => ''], ], [ - 'name' => 'ClientVersion', - 'in' => 'formData', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => '2.0.1-D-20211008.101607', - ], + 'name' => 'EndUserId', + 'in' => 'query', + 'schema' => ['description' => 'The username.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'alice', 'title' => ''], ], [ - 'name' => 'ClientChannel', - 'in' => 'formData', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'pc', - ], + 'name' => 'LoginToken', + 'in' => 'query', + 'schema' => ['description' => 'The login token.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'v1046341d8d4e2f05c4aa168196009613594aaf451499bfc75e54699efa7230bc968e1debb1fa4063b01e5d327b467****', 'title' => ''], ], [ - 'name' => 'Uuid', - 'in' => 'formData', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => '2943802884B27030B6759F9132B2****', - ], + 'name' => 'OfficeSiteId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the office network. Leave this parameter empty if you are not logging in from an office network.', 'type' => 'string', 'required' => false, 'example' => 'cn-shenzhen+dir-436909****', 'title' => ''], ], [ 'name' => 'LoginIdentifier', - 'in' => 'formData', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => true, - 'example' => 'Aliyun123***', - ], + 'in' => 'query', + 'schema' => ['description' => 'The enterprise identifier.', 'type' => 'string', 'required' => false, 'example' => 'Alibaba****', 'title' => ''], ], [ - 'name' => 'SupportTypes', - 'in' => 'formData', - 'style' => 'repeatList', + 'name' => 'ClientType', + 'in' => 'query', 'schema' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'ad' => '', - 'simple' => '', - ], - 'example' => 'ad', - ], + 'description' => 'The client type.', + 'enumValueTitles' => ['html5' => 'Web client', 'android' => 'Android client', 'windows' => 'Windows client', 'ios' => 'iOS client', 'macos' => 'macOS client'], + 'type' => 'string', 'required' => false, - 'maxItems' => 100, + 'example' => 'windows', + 'title' => '', ], ], [ - 'name' => 'AvailableFeatures', + 'name' => 'Uuid', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'type' => 'object', - 'additionalProperties' => [ - 'type' => 'string', - ], - ], + 'schema' => ['description' => 'The UUID of the device used for login.', 'type' => 'string', 'required' => false, 'example' => '2943802884B27030B6759F9132B2****', 'title' => ''], ], [ - 'name' => 'ClientIp', + 'name' => 'ProfileRegion', 'in' => 'query', 'schema' => [ - 'description' => '', + 'description' => 'The site to which the account belongs.', + 'enumValueTitles' => ['ap_southeast_1' => 'Alibaba Cloud International Website (www\\.alibabacloud.com)', 'cn_hangzhou' => 'Alibaba Cloud China Website (www\\.aliyun.com)'], 'type' => 'string', 'required' => false, - 'example' => '22.21.XX.XX', + 'example' => 'cn_hangzhou', + 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '', - 'type' => 'string', - 'example' => 'AD2D0761-1FE5-549D-B169-D3F8D19C****', - ], - 'IdpInfos' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'IdpId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'idp-hlyexfvwert9m8****', - ], - 'IdpName' => [ - 'description' => '', - 'type' => 'string', - 'example' => '', - ], - 'SsoProtocol' => [ - 'description' => '', - 'type' => 'string', - 'enumValueTitles' => [ - 'OAuth2' => '', - 'SAML' => '', - 'OIDC' => '', - ], - 'example' => 'SAML', - ], - 'IdpProvider' => [ - 'description' => '', - 'type' => 'string', - 'example' => '', - ], - 'SsoServiceUrl' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'https://e1iwdlcn.aliyunidaas.com/login/app/app_****/saml2/sso', - ], - 'Cookies' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'null', - ], - 'AccountType' => [ - 'description' => '', - 'type' => 'string', - 'enumValueTitles' => [ - 'ad' => '', - 'simple' => '', - ], - 'example' => 'simple', - ], - 'JumpSwitch' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'true', - ], - 'IdpNameEN' => [ - 'type' => 'string', - ], - ], - ], - ], - 'OfficeSiteInfo' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'OfficeSiteId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'cn-shanghai+dir-448204****', - ], - 'SsoServiceUrl' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'https://e1iwdlcn.aliyunidaas.com/login/app/app_****/saml2/sso', - ], - 'RegionId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - 'AccessType' => [ - 'description' => '', - 'type' => 'string', - 'enumValueTitles' => [ - 'INTERNET' => '', - 'VPC' => '', - 'ANY' => '', - ], - 'example' => 'INTERNET', - ], - 'ProviderId' => [ - 'description' => '', - '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' => 'The request ID.', 'type' => 'string', 'example' => '419F31B9-1FDF-5644-ABA3-D00026FA****', 'title' => ''], + 'LoginToken' => ['description' => 'The login token.', 'type' => 'string', 'example' => 'v12369636c721ba6b3ddb1683341016775c3f63e4d0e78f120f9a0544ed826b7af7daf747c402f0d0730b52f451b70****', 'title' => ''], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - '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' => 'FindIdpListByLoginIdentifier', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"419F31B9-1FDF-5644-ABA3-D00026FA****\\",\\n \\"LoginToken\\": \\"v12369636c721ba6b3ddb1683341016775c3f63e4d0e78f120f9a0544ed826b7af7daf747c402f0d0730b52f451b70****\\"\\n}","type":"json"}]', + 'title' => 'Purge Logon Credential', + 'summary' => 'Refresh the login token.', + 'description' => 'A login token (LoginToken) is valid for 8 hours. If the end user remains logged in to the client for longer than 8 hours, the client must refresh the login token.', + 'changeSet' => [], + 'ramActions' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], ], ], 'endpoints' => [ - [ - 'regionId' => 'cn-shanghai', - 'endpoint' => 'appstream-center.cn-shanghai.aliyuncs.com', - ], - [ - 'regionId' => 'ap-southeast-1', - 'endpoint' => 'appstream-center.ap-southeast-1.aliyuncs.com', + ['regionId' => 'cn-shanghai', 'regionName' => 'China (Shanghai)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', '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' => 'Singapore', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', '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' => 'The same account is to be added and to be removed at the same time.'], + ['code' => 'AppCenterImageId.Missing', 'message' => 'The AppCenter ImageId is missing.', 'http_code' => 400, 'description' => ''], + ['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' => 'Failed to start the app installation.'], + ['code' => 'AppInstallationStatus.IsFailed', 'message' => 'App installation failed.', 'http_code' => 400, 'description' => 'The app installation status is failed.'], + ['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' => ''], + ['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' => 'Invalid username or password.'], + ['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' => 'The bizType and image do not match.'], + ['code' => 'BuilderImage.StartTaskFailed', 'message' => 'Failed to start the builder image task.', 'http_code' => 400, 'description' => 'Failed to start the builder image task.'], + ['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' => ''], + ['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' => 'Failed to create the cloud computer image.'], + ['code' => 'DeleteTemplate.Failed', 'message' => 'Delete template failed.', 'http_code' => 400, 'description' => 'Failed to delete the template.'], + ['code' => 'DesktopInstance.NotFound', 'message' => 'The cloud computer instance does not exist.', 'http_code' => 400, 'description' => 'The cloud computer instance does not exist.'], + ['code' => 'ExceedAddAccountQuota', 'message' => 'The maximum number of account addition is reached.', 'http_code' => 400, 'description' => 'The maximum number of account addition is reached.'], + ['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' => 'The maximum number of builders is reached.'], + ['code' => 'ExceedImageQuota', 'message' => 'The maximum number of images is reached.', 'http_code' => 400, 'description' => 'The maximum number of images is reached.'], + ['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' => 'The maximum number of account removal is reached.'], + ['code' => 'Forbidden.NoPermission', 'message' => 'You are not authorized to access this page.', 'http_code' => 403, 'description' => 'You are not authorized to access this page.'], + ['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' => 'The creation mode of this task is invalid.'], + ['code' => 'Image.NotExist', 'message' => 'The image does not exist.', 'http_code' => 400, 'description' => 'The image does not exist.'], + ['code' => 'ImageCreateByInstance.TaskExist', 'message' => 'The image task of instance creation already exists.', 'http_code' => 400, 'description' => 'The image task of instance creation already exists.'], + ['code' => 'ImageDeleteFailed.HasSharedImage', 'message' => 'The shared image is not allowed to be deleted.', 'http_code' => 400, 'description' => 'The shared image is not allowed to be deleted.'], + ['code' => 'ImageDeleteFailed.NotAllow', 'message' => 'The image is not allowed to be deleted.', 'http_code' => 400, 'description' => 'The image is not allowed to be deleted.'], + ['code' => 'ImageDeleteFailed.NotAllowCommunityParent', 'message' => 'The parent image of a community image is not allowed to be deleted.', 'http_code' => 400, 'description' => 'The parent image of a community image is not allowed to be deleted.'], + ['code' => 'ImageDeleteFailed.NotAllowSharedImage', 'message' => 'The shared image is not allowed to be deleted.', 'http_code' => 400, 'description' => 'The shared image is not allowed to be deleted.'], + ['code' => 'ImageDistribute.ImageNotSupport', 'message' => 'The image does not support region distribution.', 'http_code' => 400, 'description' => 'The image does not support region distribution. E.g. encrypted images.'], + ['code' => 'ImageDistribute.RepeatedDistribution', 'message' => 'This image has been distributed to this region.', 'http_code' => 400, 'description' => 'This image has been distributed to this region.'], + ['code' => 'ImageDistribute.TargetDistributeRegionListEmpty', 'message' => 'The target distribution region list is empty.', 'http_code' => 400, 'description' => 'The target distribution region list is empty.'], + ['code' => 'ImageDistribute.Undistributed', 'message' => 'The image has not been distributed to any region.', 'http_code' => 400, 'description' => 'The image has not been distributed to any region.'], + ['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' => 'The image cannot be deleted, because shared cloud computers already exist.'], + ['code' => 'ImageRegion.NotConfigured', 'message' => 'The image does not have any region configuration.', 'http_code' => 400, 'description' => 'The image does not have any region configuration.'], + ['code' => 'ImageRegionDistribute.NotAllow', 'message' => 'This image cannot be distributed.', 'http_code' => 400, 'description' => 'This image cannot be distributed.'], + ['code' => 'ImageStatus.Error', 'message' => 'The image status is error.', 'http_code' => 400, 'description' => 'The image status is error.'], + ['code' => 'ImageStatus.ValueNotSupported', 'message' => 'The image status is not supported for creating a delivery group.', 'http_code' => 400, 'description' => 'You cannot create a delivery group in the current image status.'], + ['code' => 'ImageTask.Failed', 'message' => 'Start image task failed.', 'http_code' => 400, 'description' => 'Failed to start the image task.'], + ['code' => 'ImageUpdateFailed.NotAllow', 'message' => 'The image is not allowed to be modified.', 'http_code' => 400, 'description' => 'The image is not allowed to be modified.'], + ['code' => 'ImageUpdateSharedImageFailed.NotAllow', 'message' => 'The shared image is not allowed to be modified.', 'http_code' => 400, 'description' => 'The shared image is not allowed to be modified.'], + ['code' => 'Instance.ImageUnsupported', 'message' => 'A non-centralized image does not support this type of operation.', 'http_code' => 400, 'description' => 'A non-centralized image does not support this type of operation.'], + ['code' => 'Instance.NotFound', 'message' => 'The instance is not found.', 'http_code' => 400, 'description' => 'The instance is not found.'], + ['code' => 'Instance.PhysicalNodeNotExist', 'message' => 'The instance physical node does not exist.', 'http_code' => 400, 'description' => 'The physical node of this instance does not exist.'], + ['code' => 'InternalError', 'message' => 'Internal error.', 'http_code' => 400, 'description' => ''], + ['code' => 'InternalError.TicketGenInternalError', 'message' => 'An error occurred while generating a ticket.', 'http_code' => 400, 'description' => ''], + ['code' => 'InvalidAliUid.Missing', 'message' => 'The AliUid is missing.', 'http_code' => 400, 'description' => ''], + ['code' => 'InvalidAliUid.Missing', 'message' => 'The specified parameter AliUid is missing.', 'http_code' => 400, 'description' => 'The specified parameter AliUid is missing.'], + ['code' => 'InvalidAliUid.NotFound', 'message' => 'The AliUid is not found.', 'http_code' => 400, 'description' => ''], + ['code' => 'InvalidAmount.Invalid', 'message' => 'The Amount is invalid.', 'http_code' => 400, 'description' => ''], + ['code' => 'InvalidAppId.Missing', 'message' => 'The AppId is missing.', 'http_code' => 400, 'description' => ''], + ['code' => 'InvalidAppId.NotFound', 'message' => 'The AppId is not found.', 'http_code' => 400, 'description' => ''], + ['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' => ''], + ['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' => ''], + ['code' => 'InvalidAppInstanceGroupName.Missing', 'message' => 'The AppInstanceGroupName is missing.', 'http_code' => 400, 'description' => ''], + ['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' => ''], + ['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' => ''], + ['code' => 'InvalidAppInstanceType.Missing', 'message' => 'The AppInstanceType is missing.', 'http_code' => 400, 'description' => ''], + ['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' => ''], + ['code' => 'InvalidBaseImage.InvalidStatus', 'message' => 'Invalid base image status.', 'http_code' => 400, 'description' => 'The status of the base image is invalid.'], + ['code' => 'InvalidBaseImage.NotConfigured', 'message' => 'Configuration required for Vhd/Container images.', 'http_code' => 400, 'description' => 'Configuration required for Vhd/Container images.'], + ['code' => 'InvalidBaseImage.NotFound', 'message' => 'Base image not found.', 'http_code' => 400, 'description' => 'The base image is not found.'], + ['code' => 'InvalidBaseImage.NotSystemImage', 'message' => 'Base image is not system image.', 'http_code' => 400, 'description' => 'The base image is not a system image.'], + ['code' => 'InvalidBaseImageVersion.NotOnline', 'message' => 'Base image version is not online.', 'http_code' => 400, 'description' => 'The base image is not of an available online version.'], + ['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' => ''], + ['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' => 'The bizType parameter is invalid.'], + ['code' => 'InvalidBrowserInstanceGroup.NotFound', 'message' => 'The browser instance group is not found.', 'http_code' => 400, 'description' => 'The cloud browser does not exist, please confirm and try again'], + ['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' => ''], + ['code' => 'InvalidChargeType.ValueNotSupported', 'message' => 'The ChargeType is invalid.', 'http_code' => 400, 'description' => ''], + ['code' => 'InvalidDataDiskSize.SmallerThanParent', 'message' => 'Sub-image data disk size is smaller than the parent image.', 'http_code' => 400, 'description' => 'Sub-image data disk size is smaller than the parent image.'], + ['code' => 'InvalidDomainId.NotFound', 'message' => 'The DomainId is not found.', 'http_code' => 400, 'description' => ''], + ['code' => 'InvalidDriveId.NotFound', 'message' => 'The DriveId is not found.', 'http_code' => 400, 'description' => ''], + ['code' => 'InvalidEndUserId.Missing', 'message' => 'The EndUserId is missing.', 'http_code' => 400, 'description' => ''], + ['code' => 'InvalidEndUserIds.ValueNotSupported', 'message' => 'The EndUserIds is invalid.', 'http_code' => 400, 'description' => ''], + ['code' => 'InvalidExternalFileId.NotFound', 'message' => 'The ExternalFileId is not found.', 'http_code' => 400, 'description' => ''], + ['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' => ''], + ['code' => 'InvalidImageConfig.RegionInvalid', 'message' => 'The region configuration of this image is invalid.', 'http_code' => 400, 'description' => 'The region configuration of this image is invalid.'], + ['code' => 'InvalidImageId.Invalid', 'message' => 'The specified parameter imageId is invalid.', 'http_code' => 400, 'description' => ''], + ['code' => 'InvalidImageOperation.Failed', 'message' => 'Invalid image operation.', 'http_code' => 400, 'description' => 'Image operation failed.'], + ['code' => 'InvalidImageOperation.ImageIsCreating', 'message' => 'Failed to operation the image, it is creating.', 'http_code' => 400, 'description' => 'Failed to operation the image, it is creating.'], + ['code' => 'InvalidImagePackageType.Unsupported', 'message' => 'Unsupported image package type.', 'http_code' => 400, 'description' => 'This package type is not supported.'], + ['code' => 'InvalidInstanceId.Missing', 'message' => 'The InstanceId is invalid.', 'http_code' => 400, 'description' => ''], + ['code' => 'InvalidLoginToken.Missing', 'message' => 'The LoginToken is missing.', 'http_code' => 400, 'description' => ''], + ['code' => 'InvalidMaxResults', 'message' => 'The MaxResults is invalid.', 'http_code' => 400, 'description' => ''], + ['code' => 'InvalidNextToken', 'message' => 'The NextToken is invalid.', 'http_code' => 400, 'description' => ''], + ['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' => 'The tenant ID to be added or removed is invalid.'], + ['code' => 'InvalidParameter.ImageId', 'message' => 'The image ID is invalid.', 'http_code' => 400, 'description' => 'The image ID is invalid.'], + ['code' => 'InvalidParameter.SystemDiskSize', 'message' => 'The system disk size is invalid.', 'http_code' => 400, 'description' => 'The system disk size is invalid.'], + ['code' => 'InvalidParentImage.AlreadyHasCommunityImage', 'message' => 'The parent image already has a community image.', 'http_code' => 400, 'description' => 'This image cannot be published to the community because it is already published.'], + ['code' => 'InvalidParentImage.ImageTypeIsNotUserImage', 'message' => 'Invalid operation. The parent image is not a user image.', 'http_code' => 400, 'description' => 'Invalid operation. The parent image is not a user image.'], + ['code' => 'InvalidParentImage.InvalidStatus', 'message' => 'Invalid parent image status.', 'http_code' => 400, 'description' => 'The status of the parent image is invalid.'], + ['code' => 'InvalidParentImage.NotFound', 'message' => 'Parent image not found.', 'http_code' => 400, 'description' => 'The parent image is not found.'], + ['code' => 'InvalidPeriod.Invalid', 'message' => 'The Period is invalid.', 'http_code' => 400, 'description' => ''], + ['code' => 'InvalidPeriod.Missing', 'message' => 'The Period is missing.', 'http_code' => 400, 'description' => ''], + ['code' => 'InvalidPeriodUnit.Missing', 'message' => 'The PeriodUnit is missing.', 'http_code' => 400, 'description' => ''], + ['code' => 'InvalidPeriodUnit.ValueNotSupported', 'message' => 'The PeriodUnit is invalid.', 'http_code' => 400, 'description' => ''], + ['code' => 'InvalidProductType.Invalid', 'message' => 'The ProductType is invalid.', 'http_code' => 400, 'description' => ''], + ['code' => 'InvalidProductType.Missing', 'message' => 'The ProductType is missing.', 'http_code' => 400, 'description' => ''], + ['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' => ''], + ['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' => ''], + ['code' => 'InvalidRegionId.NotFound', 'message' => 'The RegionId is not found.', 'http_code' => 400, 'description' => ''], + ['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' => ''], + ['code' => 'InvalidSourceImage.ImageTypeCannotBeShared', 'message' => 'Source image cannot be shared.', 'http_code' => 400, 'description' => 'This type of source image cannot be shared.'], + ['code' => 'InvalidSourceImage.StatusNotAvailable', 'message' => 'Invalid source image status.', 'http_code' => 400, 'description' => 'The status of the source image is invalid.'], + ['code' => 'InvalidSpecId.Missing', 'message' => 'The SpecId is missing.', 'http_code' => 400, 'description' => ''], + ['code' => 'InvalidStorageType.NotFound', 'message' => 'The StorageType is not found.', 'http_code' => 400, 'description' => ''], + ['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' => ''], + ['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' => ''], + ['code' => 'InvalidStrategyConfig.NotFound', 'message' => 'The StrategyConfig is not found.', 'http_code' => 400, 'description' => ''], + ['code' => 'InvalidStrategyParam.Invalid', 'message' => 'The StrategyParam is invalid.', 'http_code' => 400, 'description' => ''], + ['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' => 'Sub-image system disk size is smaller than the parent image.'], + ['code' => 'InvalidTargetAliUid.TargetShareImageAlreadyExist', 'message' => 'Target shared image already exists.', 'http_code' => 400, 'description' => 'The target shared image already exists.'], + ['code' => 'InvalidTaskId.NotFound', 'message' => 'The TaskId is not found.', 'http_code' => 400, 'description' => ''], + ['code' => 'InvalidTemplate.NotFound', 'message' => 'Template not found.', 'http_code' => 400, 'description' => 'The template is not found.'], + ['code' => 'InvalidUserId.NotFound', 'message' => 'The UserId is not found.', 'http_code' => 400, 'description' => ''], + ['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' => ''], + ['code' => 'MissingParameter.RegionId', 'message' => 'The RegionId is missing.', 'http_code' => 400, 'description' => ''], + ['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' => ''], + ['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' => ''], + ['code' => 'ParentImage.NotExist', 'message' => 'The parent image does not exist.', 'http_code' => 400, 'description' => 'The parent image does not exist.'], + ['code' => 'ParentImageRegionDistribute.NotExist', 'message' => 'The target distribution region of the parent image does not exist.', 'http_code' => 400, 'description' => 'The target distribution region of the parent image does not exist.'], + ['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' => 'The productType and image do not match.'], + ['code' => 'QueryTemplate.Failed', 'message' => 'Query template failed.', 'http_code' => 400, 'description' => 'Failed to query the template.'], + ['code' => 'RegionUnBind.Fail', 'message' => 'Failed to unbind.', 'http_code' => 400, 'description' => ''], + ['code' => 'ServiceUnavailable', 'message' => 'Service unavailable. Please try again later.', 'http_code' => 500, 'description' => 'Service unavailable. Please try again later.'], + ['code' => 'StockError.InvalidResourceRequest', 'message' => 'Your request cannot be processed currently due to an error. Please try again later.', 'http_code' => 500, 'description' => 'The inventory check failed and the system is temporarily unable to process your request. Please try again later.'], + ['code' => 'StockError.NoStock', 'message' => 'The selected specification is out of stock. Please try again later or select other specifications.', 'http_code' => 400, 'description' => 'The selected specification is out of stock. Please try again later or select other specifications.'], + ['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' => 'Cannot retry because the resource for builder task is released.'], + ['code' => 'TaskType.Invalid', 'message' => 'Invalid task type.', 'http_code' => 400, 'description' => 'Invalid task type.'], + ['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' => ''], + ['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' => 'The distributed regions of vhd or container images cannot be modified.'], + ['code' => 'UserIdentifier.NotFound', 'message' => 'This username does not exist. Please check if it is correct.', 'http_code' => 400, 'description' => ''], + ], + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '-1', 'countWindow' => 1, 'regionId' => '*'], ], ], + 'ram' => [ + 'productCode' => 'AppStreaming', + 'productName' => 'App Streaming', + 'ramCodes' => ['appstreaming', 'ecd'], + 'ramLevel' => 'SERVICE', + 'ramConditions' => [], + 'ramActions' => [], + 'resourceTypes' => [], + ], ]; |
