diff options
| author | Zhineng Li <[email protected]> | 2026-02-13 10:54:11 +0800 |
|---|---|---|
| committer | Zhineng Li <[email protected]> | 2026-02-13 10:54:11 +0800 |
| commit | 7347bac4ab7e136157fc94777e6cf87ef9e08599 (patch) | |
| tree | 0dec367dac6e152161a6f7cc0dba6ebbef1f34a2 /data/en_us/maxcompute/2022-01-04/api-docs.php | |
| download | acs-metadata-full-7347bac4ab7e136157fc94777e6cf87ef9e08599.tar.gz acs-metadata-full-7347bac4ab7e136157fc94777e6cf87ef9e08599.zip | |
first commitHEADv1.0.0+20260212main
Diffstat (limited to 'data/en_us/maxcompute/2022-01-04/api-docs.php')
| -rw-r--r-- | data/en_us/maxcompute/2022-01-04/api-docs.php | 27378 |
1 files changed, 27378 insertions, 0 deletions
diff --git a/data/en_us/maxcompute/2022-01-04/api-docs.php b/data/en_us/maxcompute/2022-01-04/api-docs.php new file mode 100644 index 0000000..5d9a2f6 --- /dev/null +++ b/data/en_us/maxcompute/2022-01-04/api-docs.php @@ -0,0 +1,27378 @@ +<?php return [ + 'version' => '1.0', + 'info' => [ + 'style' => 'ROA', + 'product' => 'MaxCompute', + 'version' => '2022-01-04', + ], + 'directories' => [ + [ + 'children' => [ + 'ListQuotas', + 'GetQuota', + [ + 'children' => [ + 'UpdateComputeQuotaSchedule', + ], + 'type' => 'directory', + 'title' => 'Compute Quota', + ], + [ + 'children' => [ + 'UpdateTunnelQuotaTimer', + ], + 'type' => 'directory', + 'title' => 'Tunnel Quota', + ], + ], + 'type' => 'directory', + 'title' => 'Quota Management', + ], + [ + 'children' => [ + [ + 'children' => [ + 'GetProject', + 'UpdateProjectModelTier', + 'DeleteProject', + ], + 'type' => 'directory', + 'title' => 'Basic Management (Project)', + ], + [ + 'children' => [ + 'UpdateUsersToRole', + ], + 'type' => 'directory', + 'title' => 'Role Permissions', + ], + ], + 'type' => 'directory', + 'title' => 'Project Management', + ], + [ + 'children' => [ + 'QueryQuotaMetric', + 'QueryTunnelMetricDetail', + 'QueryTunnelMetric', + 'QueryStorageMetric', + 'GetStorageSizeSummary', + 'GetStorageAmountSummary', + 'GetStorageSummaryCompared', + 'ListStorageProjectsInfo', + 'SumStorageMetricsByDate', + ], + 'type' => 'directory', + 'title' => 'Resource Observation', + ], + [ + 'children' => [ + 'ListJobInfos', + 'ListJobSnapshotInfos', + ], + 'type' => 'directory', + 'title' => 'Job Management', + ], + [ + 'children' => [ + 'CreateMmsDataSource', + 'GetMmsDataSource', + 'ListMmsDataSources', + 'UpdateMmsDataSource', + 'DeleteMmsDataSource', + 'CreateMmsFetchMetadataJob', + 'GetMmsFetchMetadataJob', + 'ListMmsDbs', + 'GetMmsDb', + 'ListMmsTables', + 'GetMmsTable', + 'ListMmsPartitions', + 'GetMmsPartition', + 'CreateMmsJob', + 'ListMmsJobs', + 'GetMmsJob', + 'GetMmsAsyncTask', + 'DeleteMmsJob', + 'StartMmsJob', + 'StopMmsJob', + 'RetryMmsJob', + 'ListMmsTasks', + 'GetMmsTask', + 'ListMmsTaskLogs', + ], + 'type' => 'directory', + 'title' => 'Data Migration', + ], + [ + 'children' => [ + 'ApplyComputeQuotaPlan', + 'CreateComputeQuotaPlan', + 'CreatePackage', + 'CreateProject', + 'CreateQuotaPlan', + 'CreateRole', + 'DeleteComputeQuotaPlan', + 'DeleteQuotaPlan', + 'GetComputeEffectivePlan', + 'GetComputeQuotaPlan', + 'GetComputeQuotaSchedule', + 'GetJobInfo', + 'GetJobResourceUsage', + 'GetPackage', + 'GetQuotaPlan', + 'GetQuotaSchedule', + 'GetQuotaUsage', + 'GetRoleAcl', + 'GetRoleAclOnObject', + 'GetRolePolicy', + 'GetRunningJobs', + 'GetTableInfo', + 'GetTrustedProjects', + 'KillJobs', + 'ListComputeMetricsByInstance', + 'ListComputeQuotaPlan', + 'ListFunctions', + 'ListJobMetric', + 'ListPackages', + 'ListProjectUsers', + 'ListProjects', + 'ListQuotasPlans', + 'ListResources', + 'ListRoles', + 'ListStoragePartitionsInfo', + 'ListStorageTablesInfo', + 'ListTables', + 'ListTunnelQuotaTimer', + 'ListUsers', + 'ListUsersByRole', + 'QueryQuota', + 'UpdateComputeQuotaPlan', + 'UpdateComputeSubQuota', + 'UpdatePackage', + 'UpdateProjectBasicMeta', + 'UpdateProjectDefaultQuota', + 'UpdateProjectIpWhiteList', + 'UpdateQuotaPlan', + 'UpdateQuotaSchedule', + ], + 'title' => 'Others', + 'type' => 'directory', + ], + ], + 'components' => [ + 'schemas' => [], + ], + 'apis' => [ + 'ApplyComputeQuotaPlan' => [ + 'path' => '/api/v1/quotas/{nickname}/computeQuotaPlan/{planName}/apply', + 'methods' => [ + 'put', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '259116', + 'abilityTreeNodes' => [ + 'FEATUREodpsZAKNHC', + ], + ], + 'parameters' => [ + [ + 'name' => 'nickname', + 'in' => 'path', + 'schema' => [ + 'description' => 'The nickname of level-1 compute quota.', + 'type' => 'string', + 'required' => true, + 'example' => 'os_ComputeQuota_p', + ], + ], + [ + 'name' => 'planName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of quota plan.', + 'type' => 'string', + 'required' => true, + 'example' => 'planA', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<String>', + 'description' => 'The response parameters.', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '0b87b7a316654730544735643e9200', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n" + ."\n" + .'- 1xx: informational response. The request is received and is being processed.'."\n" + .'- 2xx: success. The request is successfully received, understood, and accepted by the server.'."\n" + .'- 3xx: redirection. The request is redirected, and further actions are required to complete the request.'."\n" + .'- 4xx: client error. The request contains invalid request parameters or syntaxes, or specific request conditions cannot be met.'."\n" + .'- 5xx: server error. The server cannot meet requirements due to other reasons.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code.', + 'type' => 'string', + 'example' => 'OBJECT_NOT_EXIST', + ], + 'errorMsg' => [ + 'description' => 'The error message.', + 'type' => 'string', + 'example' => 'this quota plan is not exist.', + ], + 'data' => [ + 'description' => 'The data returned.', + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0b87b7a316654730544735643e9200\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"OBJECT_NOT_EXIST\\",\\n \\"errorMsg\\": \\"this quota plan is not exist.\\",\\n \\"data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'ApplyComputeQuotaPlan', + 'summary' => 'Activate a Quota Plan Immediately.', + 'description' => 'Please ensure that before using this interface, you have fully understood the <props="china">[Pricing and Charges](https://help.aliyun.com/zh/maxcompute/product-overview/computing-pricing-1)</props>'."\n" + .'<props="intl">[Pricing and Charges](https://www.alibabacloud.com/help/maxcompute/product-overview/computing-pricing-1)</props> of MaxCompute Elastic Reserved CU.', + 'translator' => 'machine', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:ApplyComputeQuotaPlan', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + ], + ], + 'CreateComputeQuotaPlan' => [ + 'path' => '/api/v1/quotas/{nickname}/computeQuotaPlan', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '255781', + 'abilityTreeNodes' => [ + 'FEATUREodps2FOXFI', + ], + ], + 'parameters' => [ + [ + 'name' => 'nickname', + 'in' => 'path', + 'schema' => [ + 'description' => 'The nickname of level-1 compute quota.', + 'type' => 'string', + 'required' => true, + 'example' => 'os_ComputeQuota_p'."\n", + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'style' => 'json', + 'schema' => [ + 'description' => 'The request body parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of quota plan.', + 'type' => 'string', + 'required' => true, + 'example' => 'planA', + ], + 'quota' => [ + 'description' => 'The parameters of quota plan.', + 'type' => 'object', + 'properties' => [ + 'parameter' => [ + 'description' => 'The parameters of level-1 quota.', + 'type' => 'object', + 'properties' => [ + 'elasticReservedCU' => [ + 'description' => 'The value of elastic Reserved CUs in the level-1 quota.'."\n" + .'> The default value is 0. The maximum value of this parameter must be equal to the number of subscription-based reserved CUs and cannot exceed 10,000 CUs.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '50', + ], + ], + 'required' => false, + ], + 'subQuotaInfoList' => [ + 'description' => 'The list of level-2 quotas.', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'nickName' => [ + 'description' => 'The nickname of the level-2 quota.', + 'type' => 'string', + 'required' => true, + 'example' => 'os_ComputeQuota', + ], + 'parameter' => [ + 'description' => 'The parameters of the level-2 quota.', + 'type' => 'object', + 'properties' => [ + 'elasticReservedCU' => [ + 'description' => 'The value of elastic Reserved CUs.'."\n" + .'> The total number of elastically reserved CUs in all the level-2 quotas is equal to the number of elastically reserved CUs in the level-1 quota.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '50', + ], + 'maxCU' => [ + 'description' => 'The value of maxCU in Reserved CUs.'."\n" + .'> The value of maxCU must be less than or equal to the value of maxCU in the level-1 quota that you purchased.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '50', + ], + 'minCU' => [ + 'description' => 'The value of minCU in Reserved CUs.'."\n" + .'> '."\n" + .'>- The total value of minCU in all the level-2 quotas is equal to the value of minCU in the level-1 quota.'."\n" + .'>- The value of minCU must be less than or equal to the value of maxCU in the level-2 quota and less than or equal to the value of minCU in the level-1 quota that you purchased.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '50', + ], + ], + 'required' => false, + ], + ], + 'required' => false, + ], + 'required' => false, + ], + ], + 'required' => false, + ], + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<String>', + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0b87b7e716665825896565060e87a4', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n" + ."\n" + .'- 1xx: informational response. The request is received and is being processed.'."\n" + .'- 2xx: success. The request is successfully received, understood, and accepted by the server.'."\n" + .'- 3xx: redirection. The request is redirected, and further actions are required to complete the request.'."\n" + .'- 4xx: client error. The request contains invalid request parameters or syntaxes, or specific request conditions cannot be met.'."\n" + .'- 5xx: server error. The server cannot meet requirements due to other reasons.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code.', + 'type' => 'string', + 'example' => 'OBJECT_NOT_EXIST', + ], + 'errorMsg' => [ + 'description' => 'The error message.', + 'type' => 'string', + 'example' => 'this quota is not exist.', + ], + 'data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0b87b7e716665825896565060e87a4\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"OBJECT_NOT_EXIST\\",\\n \\"errorMsg\\": \\"this quota is not exist.\\",\\n \\"data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'CreateComputeQuotaPlan', + 'summary' => 'Creates a quota plan.', + 'description' => 'Please ensure that before using this interface, you have fully understood the <props="china">[Pricing and Charges](https://help.aliyun.com/zh/maxcompute/product-overview/computing-pricing-1)</props>'."\n" + .'<props="intl">[Pricing and Charges](https://www.alibabacloud.com/help/maxcompute/product-overview/computing-pricing-1)</props> of MaxCompute Elastic Reserved CU.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'odps:CreateQuotaPlan', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + ], + ], + 'CreateMmsDataSource' => [ + 'summary' => 'Creates a data source to migrate data to MaxCompute using MaxCompute Migration Assist (MMA).', + 'path' => '/api/v1/mms/datasources', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '182968', + 'abilityTreeNodes' => [ + 'FEATUREodpsN8WEG6', + ], + ], + 'parameters' => [ + [ + 'name' => 'body', + 'in' => 'body', + 'style' => 'json', + 'schema' => [ + 'description' => 'The request body.', + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the data source.', + 'type' => 'string', + 'required' => false, + 'example' => 'demo', + 'title' => '', + ], + 'type' => [ + 'description' => 'The type of the data source.', + 'enumValueTitles' => [ + 'HIVE' => 'HIVE', + 'BIGQUERY' => 'BIGQUERY', + ], + 'type' => 'string', + 'required' => false, + 'example' => 'BIGQUERY', + 'title' => '', + ], + 'networklink' => [ + 'description' => 'The ID of the MaxCompute network connectivity.', + 'type' => 'string', + 'required' => false, + 'example' => 'vpc-uf6pc2vordian33gobzfr:cn-shanghai', + 'title' => '', + ], + 'config' => [ + 'description' => 'The configurations of the data source.', + 'type' => 'object', + 'required' => false, + 'additionalProperties' => [ + 'description' => 'The configuration items of the data source.', + 'type' => 'any', + 'example' => '"bigquery.project.id": "xx"', + 'title' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ApiRes<SourceIdDTO>', + 'description' => 'ApiRes', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => 'B42CA730-8187-50F1-9FE0-6733297036DB', + 'title' => '', + ], + 'data' => [ + 'description' => 'The returned results.', + 'type' => 'object', + 'properties' => [ + 'dataSourceId' => [ + 'description' => 'The ID of the data source.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '18', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"B42CA730-8187-50F1-9FE0-6733297036DB\\",\\n \\"data\\": {\\n \\"dataSourceId\\": 18\\n }\\n}","type":"json"}]', + 'title' => 'CreateMmsDataSource', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'odps:CreateMmsDataSource', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'CreateMmsFetchMetadataJob' => [ + 'summary' => 'Creates a job to pull metadata from a data source.', + 'path' => '/api/v1/mms/datasources/{sourceId}/scans', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '188538', + 'abilityTreeNodes' => [ + 'FEATUREodpsN8WEG6', + ], + ], + 'parameters' => [ + [ + 'name' => 'sourceId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The ID of the data source.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '2000021', + 'title' => '', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'style' => 'json', + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'dbName' => [ + 'description' => 'Updates metadata for the specified source database, schema, or dataset.', + 'type' => 'string', + 'example' => 'default', + 'title' => '', + 'required' => false, + ], + 'tableNames' => [ + 'type' => 'array', + 'items' => [ + 'description' => 'The name of a source table.', + 'type' => 'string', + 'example' => 'table1', + 'title' => '', + 'required' => false, + ], + 'title' => '', + 'description' => 'Updates metadata for the specified source tables.', + 'required' => false, + 'example' => '', + ], + ], + 'title' => '', + 'description' => 'Specifies the scope of metadata to update. This parameter can be empty.', + 'required' => false, + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ApiRes<ScanIdDTO>', + 'description' => 'The return value.', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => 'CC4D05E8-0613-5A8E-9339-A0EBD097A69E', + 'title' => '', + ], + 'data' => [ + 'description' => 'The returned result.', + 'type' => 'object', + 'properties' => [ + 'scanId' => [ + 'description' => 'The ID of the asynchronous task that syncs metadata.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1000002', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"CC4D05E8-0613-5A8E-9339-A0EBD097A69E\\",\\n \\"data\\": {\\n \\"scanId\\": 1000002\\n }\\n}","type":"json"}]', + 'title' => 'CreateMmsFetchMetadataJob', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'odps:CreateMmsFetchMetadataJob', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + ], + ], + 'CreateMmsJob' => [ + 'summary' => 'Creates a data migration task.', + 'path' => '/api/v1/mms/datasources/{sourceId}/jobs', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '182983', + 'abilityTreeNodes' => [ + 'FEATUREodpsN8WEG6', + ], + ], + 'parameters' => [ + [ + 'name' => 'sourceId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The ID of the data source.', + 'properties' => [ + 'type' => [ + 'enumValueTitles' => [ + 'HIVE' => 'HIVE', + 'BIGQUERY' => 'BIGQUERY', + ], + ], + ], + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '2000014', + 'title' => '', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'style' => 'json', + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'sourceId' => [ + 'description' => 'The ID of the data source.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '2000014', + 'title' => '', + ], + 'name' => [ + 'description' => 'The name of the migration job.', + 'type' => 'string', + 'required' => false, + 'example' => 'migrate_db_1', + 'title' => '', + ], + 'sourceName' => [ + 'description' => 'The name of the data source.', + 'type' => 'string', + 'required' => false, + 'example' => 'demo'."\n", + 'title' => '', + ], + 'srcDbName' => [ + 'description' => 'The name of the source database.', + 'type' => 'string', + 'required' => false, + 'example' => 'src_db', + 'title' => '', + ], + 'srcSchemaName' => [ + 'description' => 'The name of the source schema. This is the schema in a Layer 3 namespace.', + 'type' => 'string', + 'required' => false, + 'example' => 'default', + 'title' => '', + ], + 'dstDbName' => [ + 'description' => 'The destination MaxCompute project.', + 'type' => 'string', + 'required' => false, + 'example' => 'mms_test', + 'title' => '', + ], + 'dstSchemaName' => [ + 'description' => 'The destination MaxCompute schema.', + 'type' => 'string', + 'required' => false, + 'example' => 'default', + 'title' => '', + ], + 'taskType' => [ + 'title' => 'MOCK, HIVE: hive udtf task, HIVE_DATAX: hive datax task, COPY_TASK: odps Copy Task, ODPS_INSERT_OVERWRITE: odps simple insert overwrite task, MC2MC_VERIFY, OSS, HIVE_OSS', + 'description' => 'The type of the migration task.', + 'enumValueTitles' => [ + 'HIVE' => 'HIVE user-defined table-valued function (UDTF) method', + 'BIGQUERY' => 'BIGQUERY read API method', + ], + 'type' => 'string', + 'required' => false, + 'example' => 'BIGQUERY', + ], + 'partitions' => [ + 'type' => 'array', + 'items' => [ + 'description' => 'The value of the partition ID.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1232', + 'title' => '', + ], + 'required' => false, + 'description' => 'The list of partition IDs.', + 'title' => '', + 'example' => '', + ], + 'tables' => [ + 'type' => 'array', + 'items' => [ + 'description' => 'The table name.', + 'type' => 'string', + 'required' => false, + 'example' => 't1', + 'title' => '', + ], + 'required' => false, + 'description' => 'The list of table names.', + 'title' => '', + 'example' => '', + ], + 'tableBlackList' => [ + 'type' => 'array', + 'items' => [ + 'description' => 'The table name.', + 'type' => 'string', + 'required' => false, + 'example' => 't1', + 'title' => '', + ], + 'required' => false, + 'description' => 'The blacklist of tables.', + 'title' => '', + 'example' => '', + ], + 'tableWhiteList' => [ + 'type' => 'array', + 'items' => [ + 'description' => 'The table name.', + 'type' => 'string', + 'required' => false, + 'example' => 't1', + 'title' => '', + ], + 'required' => false, + 'description' => 'The whitelist of tables. Note: If you configure both a whitelist and a blacklist, only the blacklist takes effect.', + 'title' => '', + 'example' => '', + ], + 'partitionFilters' => [ + 'type' => 'object', + 'required' => false, + 'additionalProperties' => [ + 'description' => 'The partition filter expression.', + 'type' => 'string', + 'example' => '例子:p1 >= \'2022-03-04\' and (p2 = 10 or p3 > 20) and p4 in (\'abc\', \'cde\')'."\n" + .'例子说明:'."\n" + .'1. p1, p2, p3为分区名'."\n" + .'2. 分区值只有字符串和数字两种,字符串被双引号或单引号包裹。除int/bigint类型的分区列值外,其他所有类型的分区值都只能取字符串值。'."\n" + .'3. 比较操作符包括: >, >=, = , <, <=, <>'."\n" + .'4. 支持"in"操作符'."\n" + .'5. 逻辑操作符包括: and, or'."\n" + .'6. 支持括号'."\n" + ."\n", + 'title' => '', + ], + 'description' => '{Table name: Partition filter expression}', + 'title' => '', + 'example' => '', + ], + 'schemaOnly' => [ + 'description' => 'Specifies whether to migrate only metadata.', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + 'title' => '', + ], + 'tableMapping' => [ + 'type' => 'object', + 'required' => false, + 'additionalProperties' => [ + 'description' => 'The table name.', + 'type' => 'string', + 'example' => 't1_1', + 'title' => '', + ], + 'description' => '{Source table: Destination table}', + 'title' => '', + 'example' => '', + ], + 'increment' => [ + 'description' => 'Specifies whether to perform an incremental migration. In an incremental migration, only new or changed partitions are migrated. Note that changed partitions are re-migrated.', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'title' => '', + ], + 'enableSchemaMigration' => [ + 'description' => 'Specifies whether to migrate table schemas.', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'title' => '', + ], + 'enableDataMigration' => [ + 'description' => 'Specifies whether to migrate table data.', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'title' => '', + ], + 'enableVerification' => [ + 'description' => 'Specifies whether to enable data verification. The current verification method is to execute SELECT COUNT(\\*) on the source and destination to compare the number of rows.', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + 'title' => '', + ], + 'columnMapping' => [ + 'type' => 'object', + 'required' => false, + 'additionalProperties' => [ + 'description' => 'The column name.', + 'type' => 'string', + 'example' => 'null', + 'title' => '', + ], + 'description' => '{Source column name: Destination column name}', + 'title' => '', + 'example' => '', + ], + 'others' => [ + 'type' => 'object', + 'required' => false, + 'additionalProperties' => [ + 'description' => 'The configuration value.', + 'type' => 'any', + 'example' => 'null', + 'title' => '', + ], + 'description' => 'Other configuration information.', + 'title' => '', + 'example' => '', + ], + 'eta' => [ + 'description' => 'The expected completion time of the migration. Note: A smaller eta value gives the migration task higher priority.', + 'type' => 'string', + 'required' => false, + 'example' => '2025-02-04', + 'title' => '', + ], + ], + 'required' => false, + 'description' => 'The request body parameters.', + 'title' => '', + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ApiRes<AsyncTaskIdDTO>', + 'description' => 'ApiRes\\<asynctaskiddto>', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '73207140-0FD5-588A-B11A-3CE093924196', + 'title' => '', + ], + 'data' => [ + 'type' => 'object', + 'properties' => [ + 'asyncTaskId' => [ + 'description' => 'The ID of the asynchronous task that is created for the migration job.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + 'title' => '', + ], + ], + 'description' => 'The returned data.', + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"73207140-0FD5-588A-B11A-3CE093924196\\",\\n \\"data\\": {\\n \\"asyncTaskId\\": 100\\n }\\n}","type":"json"}]', + 'title' => 'CreateMmsJob', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'odps:CreateMmsJob', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + ], + 'translator' => 'machine', + ], + 'CreatePackage' => [ + 'path' => '/api/v1/projects/{projectName}/packages', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '144116', + 'abilityTreeNodes' => [ + 'FEATUREodpsTZPZOE', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'projectName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the MaxCompute project.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'projectA'."\n", + ], + ], + [ + 'name' => 'isInstall', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to install the package.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + 'default' => 'false', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'schema' => [ + 'description' => 'The request body parameters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .'"name": "test_packege", '."\n" + .' "resourceList": { '."\n" + .' "table": ['."\n" + .' {'."\n" + .' "name": "table_name",'."\n" + .' "actions": ['."\n" + .' "Describe",'."\n" + .' "Select"'."\n" + .' ]'."\n" + .' },'."\n" + .' {'."\n" + .' "name": "table_name",'."\n" + .' "actions": ['."\n" + .' "Describe",'."\n" + .' "Select"'."\n" + .' ]'."\n" + .' }'."\n" + .' ],'."\n" + .' "resource": ['."\n" + .' {'."\n" + .' "name": "",'."\n" + .' "actions": []'."\n" + .' },'."\n" + .' {'."\n" + .' "name": "",'."\n" + .' "actions": []'."\n" + .' }'."\n" + .' ],'."\n" + .' "function": ['."\n" + .' {'."\n" + .' "name": "",'."\n" + .' "actions": []'."\n" + .' },'."\n" + .' {'."\n" + .' "name": "",'."\n" + .' "actions": []'."\n" + .' }'."\n" + .' ]'."\n" + .' }'."\n" + .'}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<String>', + 'description' => 'PopResult'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0bc3b4ab16684833172127321e2c25', + ], + 'data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0bc3b4ab16684833172127321e2c25\\",\\n \\"data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'CreatePackage', + 'summary' => 'Creates a package.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'odps:CreatePackage', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + ], + ], + 'CreateProject' => [ + 'path' => '/api/v1/projects', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREodpsTZPZOE', + ], + ], + 'parameters' => [ + [ + 'name' => 'body', + 'in' => 'body', + 'schema' => [ + 'description' => 'The request body parameters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{ "name": "project_name", "comment": "", "productType":"payasyougo/subscription/dev", /\\*\\* \\* "PAYASYOUGO": specifies a pay-as-you-go project. \\* "SUBSCRIPTION": specifies a subscription project. \\* "DEV": specifies that the project is created in Developer Edition. \\*/ "defaultQuota": "quota_nick_name", "properties": { "sqlMeteringMax":"", "typeSystem": "",// The string type. Valid values: 1, 2, and hive. "encryption": { "enable": true, "algorithm":"" , // The name of the encryption algorithm. "key":"" // The key of the encryption algorithm. } // json: This field is required only when data encryption is enabled. } }'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<String>', + 'description' => 'PopResult'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0b87b7a316654730544735643e9200', + ], + 'data' => [ + 'description' => 'The returned result.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0b87b7a316654730544735643e9200\\",\\n \\"data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'CreateProject', + 'summary' => 'Creates a MaxCompute project.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'odps:CreateProject', + 'authLevel' => 'resource', + 'actionConditions' => [ + [ + 'conditionKey' => 'odps:Encryption', + 'validationType' => 'always', + ], + ], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:project/*', + ], + ], + ], + ], + ], + ], + 'CreateQuotaPlan' => [ + 'path' => '/api/v1/quotas/{nickname}/plans', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '142709', + 'abilityTreeNodes' => [ + 'FEATUREodpsZAKNHC', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'nickname', + 'in' => 'path', + 'schema' => [ + 'description' => 'QuotaNickName'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'planA', + ], + ], + [ + 'name' => 'tenantId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the tenant.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '228451885265153', + ], + ], + [ + 'name' => 'region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-beijing', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'schema' => [ + 'description' => 'The request body parameters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{ "name": "planA", // The quota is a level-1 quota. You can select only the fields that are related to the quota plan. "quota": { "name": "a", "nickName": "aaa_nick", "tenantId": "10001", "regionId": "cn-hangzhou", "parentId": "0", "cluster": "AT-ODPS-TEST3", "parameter": { "minCU": 40, "maxCU": 40, "adhocCU": 0, "elasticMinCU": 40, "elasticMaxCU": 40, "enablePreemptiveScheduling": false, "forceReservedMin":true, "enablePriority":false, "singleJobCULimit":100, "adhocQuotaBeginTimeInSec": 1345, "adhocQuotaEndTimeInSec": 1234, "ignoreAdhocQuota":false }, "subQuotaInfoList": \\[ { "nickName": "WlmFuxiSecondaryOnlineQuotaTest", "name": "WlmFuxiSecondaryOnlineQuotaTest", "type": "FUXI_ONLINE", "tenantId": "10001", "regionId": "cn-hangzhou", "cluster": "AT-ODPS-TEST3", "parameter": { "minCU": 40, "maxCU": 40, "adhocCU": 0, "elasticMinCU": 40, "elasticMaxCU": 40, "enablePreemptiveScheduling": false, "forceReservedMin":true, "enablePriority":false, "singleJobCULimit":100, "adhocQuotaBeginTimeInSec": 1345, "adhocQuotaEndTimeInSec": 1234, "ignoreAdhocQuota":false } } ] } }'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<String>', + 'description' => 'PopResult'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0bc3b4b016674434996033675e71ee', + ], + 'data' => [ + 'description' => 'The returned result.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0bc3b4b016674434996033675e71ee\\",\\n \\"data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'CreateQuotaPlan', + 'summary' => 'Creates a quota plan.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'odps:CreateQuotaPlan', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + ], + ], + 'CreateRole' => [ + 'path' => '/api/v1/projects/{projectName}/roles', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '144125', + 'abilityTreeNodes' => [ + 'FEATUREodpsTZPZOE', + ], + ], + 'parameters' => [ + [ + 'name' => 'projectName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the MaxCompute project.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'projectA', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'schema' => [ + 'description' => 'The request body parameters. For valid values, see [MaxCompute permissions](~~27935~~).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"name": "role_name","type": "resource/adminn","policy": "", // The document of the policy. This parameter is not required if an access-control list (ACL) is used. "acl": { // This parameter is not required if a policy is used. "table": \\[{"name": "", "actions":\\["","",]}, {"name": "", "actions":\\[]}],"resource":\\[{"name": "", "actions":\\["","",]}, {"name": "", "actions":\\[]}],"function":\\[{"name": "", "actions":\\["","",]}, {"name": "", "actions":\\[]}],"package":\\[{"name": "", "actions":\\["","",]}, {"name": "", "actions":\\[]}],"project":\\[{"name": "", "actions":\\[]}], // Only the current project is displayed in the console. "instance":\\[{"name": "", "actions":\\[]}] // The parameter name must be set to an asterisk (\\*) in the console. }}// An asterisk (\\*) can be specified for name.'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<String>', + 'description' => 'PopResult'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0b87b7e716665825896565060e87a4', + ], + 'data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0b87b7e716665825896565060e87a4\\",\\n \\"data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'CreateRole', + 'summary' => 'Creates a role at the MaxCompute project level.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'odps:CreateRole', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#projectName}', + ], + ], + ], + ], + ], + ], + 'DeleteComputeQuotaPlan' => [ + 'path' => '/api/v1/quotas/{nickname}/computeQuotaPlan/{planName}', + 'methods' => [ + 'delete', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'abilityTreeCode' => '258225', + 'abilityTreeNodes' => [ + 'FEATUREodpsZAKNHC', + ], + ], + 'parameters' => [ + [ + 'name' => 'nickname', + 'in' => 'path', + 'schema' => [ + 'description' => 'The nickname of level-1 compute quota.', + 'type' => 'string', + 'required' => true, + 'example' => 'os_ComputeQuota_p', + ], + ], + [ + 'name' => 'planName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of quota plan.', + 'type' => 'string', + 'required' => true, + 'example' => 'planA', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<String>', + 'description' => 'The response parameters.', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '0b87b7a316654730544735643e9200', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n" + ."\n" + .'- 1xx: informational response. The request is received and is being processed.'."\n" + .'- 2xx: success. The request is successfully received, understood, and accepted by the server.'."\n" + .'- 3xx: redirection. The request is redirected, and further actions are required to complete the request.'."\n" + .'- 4xx: client error. The request contains invalid request parameters or syntaxes, or specific request conditions cannot be met.'."\n" + .'- 5xx: server error. The server cannot meet requirements due to other reasons.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code.'."\n", + 'type' => 'string', + 'example' => 'OBJECT_NOT_EXIST', + ], + 'errorMsg' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'this quota plan is not exist.', + ], + 'data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0b87b7a316654730544735643e9200\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"OBJECT_NOT_EXIST\\",\\n \\"errorMsg\\": \\"this quota plan is not exist.\\",\\n \\"data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'DeleteComputeQuotaPlan', + 'summary' => 'Deletes a MaxCompute quota plan.', + 'requestParamsDescription' => '><notice>The currently effective quota plan cannot be deleted.></notice>', + 'translator' => 'machine', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'odps:DeleteQuotaPlan', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + ], + ], + 'DeleteMmsDataSource' => [ + 'summary' => 'Deletes a MaxCompute Migration Assist (MMA) data source and its associated migration plans and metadata.', + 'path' => '/api/v1/mms/datasources/{sourceId}', + 'methods' => [ + 'delete', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '182967', + 'abilityTreeNodes' => [ + 'FEATUREodpsN8WEG6', + ], + ], + 'parameters' => [ + [ + 'name' => 'sourceId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The ID of the data source.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'title' => '', + 'example' => '2000015', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ApiRes<Long>', + 'description' => 'The return value.', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.', + 'type' => 'string', + 'title' => '', + 'example' => 'EA1320AB-7766-5EC7-B0F6-8B20E2298567', + ], + 'data' => [ + 'description' => 'The ID of the deleted data source.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '2000015', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"EA1320AB-7766-5EC7-B0F6-8B20E2298567\\",\\n \\"data\\": 2000015\\n}","type":"json"}]', + 'title' => 'DeleteMmsDataSource', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'odps:DeleteMmsDataSource', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + ], + 'DeleteMmsJob' => [ + 'summary' => 'Deletes a MaxCompute Migration Assist (MMA) data migration plan.', + 'path' => '/api/v1/mms/datasources/{sourceId}/jobs/{jobId}', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '182990', + 'abilityTreeNodes' => [ + 'FEATUREodpsN8WEG6', + ], + ], + 'parameters' => [ + [ + 'name' => 'sourceId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The data source ID.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'title' => '', + 'example' => '2000015', + ], + ], + [ + 'name' => 'jobId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The job ID.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'title' => '', + 'example' => '88', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ApiRes<Long>', + 'description' => 'The response parameters.', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => '31BE216F-AEF7-581E-B9C9-DECEB5424AC4', + ], + 'data' => [ + 'description' => 'The ID of the deleted job.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '88', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"31BE216F-AEF7-581E-B9C9-DECEB5424AC4\\",\\n \\"data\\": 88\\n}","type":"json"}]', + 'title' => 'DeleteMmsJob', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'odps:DeleteMmsJob', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + ], + 'DeleteProject' => [ + 'summary' => 'Deletes a MaxCompute project. This operation is irreversible. Use this API with caution.', + 'path' => '/api/v1/projects/{projectName}', + 'methods' => [ + 'delete', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'high', + 'chargeType' => 'free', + 'abilityTreeCode' => '142484', + 'abilityTreeNodes' => [ + 'FEATUREodpsTZPZOE', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'projectName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the project.', + 'required' => true, + 'type' => 'string', + 'title' => '', + 'example' => 'odps_project', + ], + ], + [ + 'name' => 'isLogical', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to perform a logical deletion. The default value is true. A value of false indicates a physical deletion.', + 'required' => false, + 'type' => 'boolean', + 'default' => 'true', + 'title' => '', + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'PopResult', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => '0be3e0aa16667684362147582e038f', + ], + 'data' => [ + 'description' => 'The returned result.', + 'type' => 'string', + 'title' => '', + 'example' => 'success', + ], + ], + 'title' => 'PopResult<String>', + 'type' => 'object', + 'example' => '', + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0be3e0aa16667684362147582e038f\\",\\n \\"data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'DeleteProject', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [], + ], + 'DeleteQuotaPlan' => [ + 'path' => '/api/v1/quotas/{nickname}/plans/{planName}', + 'methods' => [ + 'delete', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'abilityTreeCode' => '142708', + 'abilityTreeNodes' => [ + 'FEATUREodpsZAKNHC', + ], + ], + 'parameters' => [ + [ + 'name' => 'nickname', + 'in' => 'path', + 'schema' => [ + 'description' => 'QuotaNickName'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'quota_A', + ], + ], + [ + 'name' => 'planName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the quota plan.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'planA', + ], + ], + [ + 'name' => 'tenantId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the tenant.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '416441016836866', + ], + ], + [ + 'name' => 'region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<String>', + 'description' => 'PopResult'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0b57ff7616612271051086500ea3ce', + ], + 'data' => [ + 'description' => 'The returned result.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0b57ff7616612271051086500ea3ce\\",\\n \\"data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'DeleteQuotaPlan', + 'summary' => 'Deletes a quota plan.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'odps:DeleteQuotaPlan', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + ], + ], + 'GetComputeEffectivePlan' => [ + 'path' => '/api/v1/quotas/{nickname}/computeEffectivePlan/', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '260077', + 'abilityTreeNodes' => [ + 'FEATUREodps2FOXFI', + ], + ], + 'parameters' => [ + [ + 'name' => 'nickname', + 'in' => 'path', + 'schema' => [ + 'description' => 'The nickname of level-1 compute quota.', + 'type' => 'string', + 'required' => true, + 'example' => 'os_ComputeQuota_p', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<QuotaPlanDTO>', + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '688003E1-D1B4-5468-957E-2FFB3AC8D79B', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n" + ."\n" + .'- 1xx: informational response. The request is received and is being processed.'."\n" + .'- 2xx: success. The request is successfully received, understood, and accepted by the server.'."\n" + .'- 3xx: redirection. The request is redirected, and further actions are required to complete the request.'."\n" + .'- 4xx: client error. The request contains invalid request parameters or syntaxes, or specific request conditions cannot be met.'."\n" + .'- 5xx: server error. The server cannot meet requirements due to other reasons.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code.', + 'type' => 'string', + 'example' => 'success', + ], + 'errorMsg' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'plan \\"***\\" does not exist', + ], + 'data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the quota plan.'."\n", + 'type' => 'string', + 'example' => 'planA', + ], + 'createTime' => [ + 'description' => 'The time when the quota plan was created.'."\n", + 'type' => 'string', + 'example' => '1714356241163', + ], + 'quota' => [ + 'description' => 'The details of the quota.'."\n", + 'type' => 'object', + 'properties' => [ + 'subQuotaInfoList' => [ + 'description' => 'The list of subquotas.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The ID of the level-2 quota.'."\n", + 'type' => 'string', + 'example' => '10940', + ], + 'name' => [ + 'description' => 'The name of the level-2 quota.'."\n", + 'type' => 'string', + 'example' => 'dp_cn_shanghai_1696659792_p', + ], + 'nickName' => [ + 'description' => 'The nickname of the level-2 quota.', + 'type' => 'string', + 'example' => 'os_MyQuota', + ], + 'type' => [ + 'title' => '', + 'description' => 'The type of quota.', + 'type' => 'string', + 'example' => 'FUXI_ONLINE', + ], + 'status' => [ + 'description' => 'Resource status.', + 'type' => 'string', + 'example' => 'ON', + ], + 'tenantId' => [ + 'description' => 'The ID of the tenant.'."\n", + 'type' => 'string', + 'example' => '478403690625249', + ], + 'regionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-beijing', + ], + 'cluster' => [ + 'description' => 'The ID of the cluster.'."\n", + 'type' => 'string', + 'example' => 'AT-120N'."\n", + ], + 'version' => [ + 'description' => 'The version number.'."\n", + 'type' => 'string', + 'example' => '1386', + ], + 'parameter' => [ + 'description' => 'The description of the level-2 quota.', + 'type' => 'object', + 'example' => '{'."\n" + .' "enablePriority": false,'."\n" + .' "minCU": 25,'."\n" + .' "adhocCU": 0,'."\n" + .' "elasticReservedCU": 0,'."\n" + .' "forceReservedMin": false,'."\n" + .' "maxCU": 50,'."\n" + .' "schedulerType": "Fifo"'."\n" + .'}', + ], + 'createTime' => [ + 'description' => 'The time when the resource was created.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1718155201628', + ], + 'creatorId' => [ + 'description' => 'The ID of the Alibaba Cloud account that is used to create the resource.', + 'type' => 'string', + 'example' => '672863518', + ], + ], + ], + ], + 'id' => [ + 'description' => 'The ID of the level-1 quota.', + 'type' => 'string', + 'example' => '2413', + ], + 'name' => [ + 'description' => 'The name of the level-1 quota.', + 'type' => 'string', + 'example' => 'dp_cn_shanghai_1699533470_p', + ], + 'nickName' => [ + 'description' => 'The nickname of the level-1 quota.', + 'type' => 'string', + 'example' => 'os_MyQuota_p', + ], + 'type' => [ + 'title' => '', + 'description' => 'The type of quota.', + 'type' => 'string', + 'example' => 'FUXI_ONLINE', + ], + 'status' => [ + 'description' => 'The status of the resource.'."\n", + 'type' => 'string', + 'example' => 'ON', + ], + 'tenantId' => [ + 'description' => 'The ID of the tenant.'."\n", + 'type' => 'string', + 'example' => '478403690625249', + ], + 'regionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-beijing', + ], + 'cluster' => [ + 'description' => 'The ID of the cluster.'."\n", + 'type' => 'string', + 'example' => 'AT-120N'."\n", + ], + 'version' => [ + 'description' => 'The version number.'."\n", + 'type' => 'string', + 'example' => '1964', + ], + 'parameter' => [ + 'description' => 'The description of the level-2 quota.', + 'type' => 'object', + 'example' => '{'."\n" + .' "enablePriority": false,'."\n" + .' "minCU": 25,'."\n" + .' "adhocCU": 0,'."\n" + .' "elasticReservedCU": 0,'."\n" + .' "forceReservedMin": false,'."\n" + .' "maxCU": 50,'."\n" + .' "schedulerType": "Fifo"'."\n" + .'}', + ], + 'createTime' => [ + 'description' => 'The time when the level-1 quota was created.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1719886322347', + ], + 'creatorId' => [ + 'description' => 'The ID of the Alibaba Cloud account that is used to create the resource.'."\n", + 'type' => 'string', + 'example' => '672863518', + ], + ], + ], + 'isEffective' => [ + 'description' => 'Whether it is currently effective.'."\n" + .'> A Quota plan that has taken effect cannot be deleted, i.e., isEffective=true', + 'type' => 'boolean', + 'example' => 'true/false', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"688003E1-D1B4-5468-957E-2FFB3AC8D79B\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"success\\",\\n \\"errorMsg\\": \\"plan \\\\\\\\\\\\\\"***\\\\\\\\\\\\\\" does not exist\\",\\n \\"data\\": {\\n \\"name\\": \\"planA\\",\\n \\"createTime\\": \\"1714356241163\\",\\n \\"quota\\": {\\n \\"subQuotaInfoList\\": [\\n {\\n \\"id\\": \\"10940\\",\\n \\"name\\": \\"dp_cn_shanghai_1696659792_p\\",\\n \\"nickName\\": \\"os_MyQuota\\",\\n \\"type\\": \\"FUXI_ONLINE\\",\\n \\"status\\": \\"ON\\",\\n \\"tenantId\\": \\"478403690625249\\",\\n \\"regionId\\": \\"cn-beijing\\",\\n \\"cluster\\": \\"AT-120N\\\\n\\",\\n \\"version\\": \\"1386\\",\\n \\"parameter\\": {\\n \\"enablePriority\\": false,\\n \\"minCU\\": 25,\\n \\"adhocCU\\": 0,\\n \\"elasticReservedCU\\": 0,\\n \\"forceReservedMin\\": false,\\n \\"maxCU\\": 50,\\n \\"schedulerType\\": \\"Fifo\\"\\n },\\n \\"createTime\\": 1718155201628,\\n \\"creatorId\\": \\"672863518\\"\\n }\\n ],\\n \\"id\\": \\"2413\\",\\n \\"name\\": \\"dp_cn_shanghai_1699533470_p\\",\\n \\"nickName\\": \\"os_MyQuota_p\\",\\n \\"type\\": \\"FUXI_ONLINE\\",\\n \\"status\\": \\"ON\\",\\n \\"tenantId\\": \\"478403690625249\\",\\n \\"regionId\\": \\"cn-beijing\\",\\n \\"cluster\\": \\"AT-120N\\\\n\\",\\n \\"version\\": \\"1964\\",\\n \\"parameter\\": {\\n \\"enablePriority\\": false,\\n \\"minCU\\": 25,\\n \\"adhocCU\\": 0,\\n \\"elasticReservedCU\\": 0,\\n \\"forceReservedMin\\": false,\\n \\"maxCU\\": 50,\\n \\"schedulerType\\": \\"Fifo\\"\\n },\\n \\"createTime\\": 1719886322347,\\n \\"creatorId\\": \\"672863518\\"\\n },\\n \\"isEffective\\": true\\n }\\n}","type":"json"}]', + 'title' => 'GetComputeEffectivePlan', + 'summary' => 'GetComputeEffectivePlan.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetEffectivePlan', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'QuotaPlan', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + ], + ], + 'GetComputeQuotaPlan' => [ + 'path' => '/api/v1/quotas/{nickname}/computeQuotaPlan/{planName}', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '258227', + 'abilityTreeNodes' => [ + 'FEATUREodpsZAKNHC', + ], + ], + 'parameters' => [ + [ + 'name' => 'nickname', + 'in' => 'path', + 'schema' => [ + 'description' => 'The nickname of level-1 compute quota.', + 'type' => 'string', + 'required' => true, + 'example' => 'os_ComputeQuota_p', + ], + ], + [ + 'name' => 'planName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of quota plan.', + 'type' => 'string', + 'required' => true, + 'example' => 'planA', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<QuotaPlanDTO>', + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'EA1320AB-7766-5EC7-B0F6-8B20E2298567', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n" + ."\n" + .'- 1xx: informational response. The request is received and is being processed.'."\n" + .'- 2xx: success. The request is successfully received, understood, and accepted by the server.'."\n" + .'- 3xx: redirection. The request is redirected, and further actions are required to complete the request.'."\n" + .'- 4xx: client error. The request contains invalid request parameters or syntaxes, or specific request conditions cannot be met.'."\n" + .'- 5xx: server error. The server cannot meet requirements due to other reasons.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code.', + 'type' => 'string', + 'example' => 'QUOTA_PLAN_NOT_FOUND', + ], + 'errorMsg' => [ + 'description' => 'The error message.', + 'type' => 'string', + 'example' => 'plan \\"***\\" does not exist', + ], + 'data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the quota plan.'."\n", + 'type' => 'string', + 'example' => 'planA', + ], + 'createTime' => [ + 'description' => 'The time when the quota plan was created.'."\n", + 'type' => 'string', + 'example' => '1730946421757', + ], + 'quota' => [ + 'description' => 'The details of the quota.'."\n", + 'type' => 'object', + 'properties' => [ + 'subQuotaInfoList' => [ + 'description' => 'The list of level-2 quotas.', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The ID of the level-2 quota.'."\n", + 'type' => 'string', + 'enumValueTitles' => [], + 'example' => '10940', + ], + 'name' => [ + 'description' => 'The name of the level-2 quota.'."\n", + 'type' => 'string', + 'example' => 'dp_cn_shanghai_1696659792_p', + ], + 'nickName' => [ + 'description' => 'The nickname of the level-2 quota.', + 'type' => 'string', + 'example' => 'subquotaA', + ], + 'type' => [ + 'title' => '对应控制集群的resourceSystemType字段', + 'description' => 'The type of quota.', + 'type' => 'string', + 'example' => 'FUXI_ONLINE', + ], + 'status' => [ + 'description' => 'Resource status.', + 'type' => 'string', + 'example' => 'ON', + ], + 'tenantId' => [ + 'description' => 'Tenant ID.', + 'type' => 'string', + 'example' => '478403690625249', + ], + 'regionId' => [ + 'description' => 'Region ID.', + 'type' => 'string', + 'example' => 'cn-beijing', + ], + 'cluster' => [ + 'description' => 'Cluster ID.', + 'type' => 'string', + 'example' => 'AT-120N'."\n", + ], + 'version' => [ + 'description' => 'Version number.', + 'type' => 'string', + 'example' => '1386', + ], + 'parameter' => [ + 'description' => 'The parameters of the level-2 quota.', + 'type' => 'object', + 'properties' => [ + 'elasticReservedCU' => [ + 'description' => 'The value of elastic Reserved CUs.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '50', + ], + 'maxCU' => [ + 'description' => 'The value of maxCU in Reserved CUs.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '50', + ], + 'minCU' => [ + 'description' => 'The value of minCU in Reserved CUs.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '50', + ], + 'schedulerType' => [ + 'description' => 'Scheduling policy.', + 'type' => 'string', + 'example' => 'Fifo/Fair', + ], + 'singleJobCULimit' => [ + 'description' => 'The upper limit for CUs that can be concurrently used by a job scheduled to the quota.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '50', + ], + 'forceReservedMin' => [ + 'description' => 'Whether it is exclusive.', + 'type' => 'boolean', + 'example' => 'true/false', + ], + 'enablePriority' => [ + 'description' => 'whether to enable the priority feature.', + 'type' => 'boolean', + 'example' => 'true/false', + ], + ], + ], + 'createTime' => [ + 'description' => 'Creation time.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1718155201628', + ], + 'creatorId' => [ + 'description' => 'Creator cloud account UID.', + 'type' => 'string', + 'example' => '672863518', + ], + ], + ], + ], + 'id' => [ + 'description' => 'The ID of the level-1 quota.', + 'type' => 'string', + 'example' => '2413', + ], + 'name' => [ + 'description' => 'The name of the level-1 quota.', + 'type' => 'string', + 'example' => 'quota_a'."\n", + ], + 'nickName' => [ + 'description' => 'The nickname of the level-1 quota.', + 'type' => 'string', + 'example' => 'quota_nickname', + ], + 'type' => [ + 'title' => '对应控制集群的resourceSystemType字段', + 'description' => 'Corresponds to the `resourceSystemType` field of the control cluster.', + 'type' => 'string', + 'example' => 'FUXI_ONLINE', + ], + 'status' => [ + 'description' => 'Resource status.', + 'type' => 'string', + 'example' => 'ON', + ], + 'tenantId' => [ + 'description' => 'Tenant ID.', + 'type' => 'string', + 'example' => '478403690625249', + ], + 'regionId' => [ + 'description' => 'Region ID.', + 'type' => 'string', + 'example' => 'cn-beijing', + ], + 'cluster' => [ + 'description' => 'Cluster ID.', + 'type' => 'string', + 'example' => 'AT-120N'."\n", + ], + 'version' => [ + 'description' => 'Version number.', + 'type' => 'string', + 'example' => '1964', + ], + 'parameter' => [ + 'description' => 'CU value parameters for the level-1 quota.', + 'type' => 'object', + 'properties' => [ + 'maxCU' => [ + 'description' => 'The value of maxCU in Reserved CUs.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '50', + ], + 'minCU' => [ + 'description' => 'The value of minCU in Reserved CUs.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '50', + ], + 'elasticReservedCU' => [ + 'description' => 'The value of elastic Reserved CUs.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '50', + ], + ], + ], + 'createTime' => [ + 'description' => 'Creation time.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1719886322347', + ], + 'creatorId' => [ + 'description' => 'Creator\'s cloud account UID.', + 'type' => 'string', + 'example' => '672863518', + ], + ], + ], + 'isEffective' => [ + 'description' => 'Whether it is currently effective.'."\n" + .'> '."\n" + .'> - A Quota plan that has taken effect cannot be deleted, i.e., isEffective=true', + 'type' => 'boolean', + 'example' => 'true/false', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"EA1320AB-7766-5EC7-B0F6-8B20E2298567\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"QUOTA_PLAN_NOT_FOUND\\",\\n \\"errorMsg\\": \\"plan \\\\\\\\\\\\\\"***\\\\\\\\\\\\\\" does not exist\\",\\n \\"data\\": {\\n \\"name\\": \\"planA\\",\\n \\"createTime\\": \\"1730946421757\\",\\n \\"quota\\": {\\n \\"subQuotaInfoList\\": [\\n {\\n \\"id\\": \\"10940\\",\\n \\"name\\": \\"dp_cn_shanghai_1696659792_p\\",\\n \\"nickName\\": \\"subquotaA\\",\\n \\"type\\": \\"FUXI_ONLINE\\",\\n \\"status\\": \\"ON\\",\\n \\"tenantId\\": \\"478403690625249\\",\\n \\"regionId\\": \\"cn-beijing\\",\\n \\"cluster\\": \\"AT-120N\\\\n\\",\\n \\"version\\": \\"1386\\",\\n \\"parameter\\": {\\n \\"elasticReservedCU\\": 50,\\n \\"maxCU\\": 50,\\n \\"minCU\\": 50,\\n \\"schedulerType\\": \\"Fifo/Fair\\",\\n \\"singleJobCULimit\\": 50,\\n \\"forceReservedMin\\": true,\\n \\"enablePriority\\": true\\n },\\n \\"createTime\\": 1718155201628,\\n \\"creatorId\\": \\"672863518\\"\\n }\\n ],\\n \\"id\\": \\"2413\\",\\n \\"name\\": \\"quota_a\\\\n\\",\\n \\"nickName\\": \\"quota_nickname\\",\\n \\"type\\": \\"FUXI_ONLINE\\",\\n \\"status\\": \\"ON\\",\\n \\"tenantId\\": \\"478403690625249\\",\\n \\"regionId\\": \\"cn-beijing\\",\\n \\"cluster\\": \\"AT-120N\\\\n\\",\\n \\"version\\": \\"1964\\",\\n \\"parameter\\": {\\n \\"maxCU\\": 50,\\n \\"minCU\\": 50,\\n \\"elasticReservedCU\\": 50\\n },\\n \\"createTime\\": 1719886322347,\\n \\"creatorId\\": \\"672863518\\"\\n },\\n \\"isEffective\\": true\\n }\\n}","type":"json"}]', + 'title' => 'GetComputeQuotaPlan', + 'summary' => 'Get detailed information of a single compute quota plan.', + 'translator' => 'machine', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetQuotaPlan', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + ], + ], + 'GetComputeQuotaSchedule' => [ + 'path' => '/api/v1/quotas/{nickname}/computeQuotaSchedule', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '255379', + 'abilityTreeNodes' => [ + 'FEATUREodpsZAKNHC', + ], + ], + 'parameters' => [ + [ + 'name' => 'nickname', + 'in' => 'path', + 'schema' => [ + 'description' => 'The nickname of level-1 compute quota.', + 'type' => 'string', + 'required' => true, + 'example' => 'os_ComputeQuota_p', + ], + ], + [ + 'name' => 'displayTimezone', + 'in' => 'query', + 'schema' => [ + 'description' => 'Display time zone.', + 'type' => 'string', + 'required' => false, + 'example' => 'UTC+8', + 'default' => 'UTC+8', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<List<QuotaScheduleDTO>>', + 'description' => 'The response parameters.', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => 'B42CA730-8187-50F1-9FE0-6733297036DB', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n" + ."\n" + .'- 1xx: informational response. The request is received and is being processed.'."\n" + .'- 2xx: success. The request is successfully received, understood, and accepted by the server.'."\n" + .'- 3xx: redirection. The request is redirected, and further actions are required to complete the request.'."\n" + .'- 4xx: client error. The request contains invalid request parameters or syntaxes, or specific request conditions cannot be met.'."\n" + .'- 5xx: server error. The server cannot meet requirements due to other reasons.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code.', + 'type' => 'string', + 'example' => 'QUOTA_UNKNOWN_NICKNAME', + ], + 'errorMsg' => [ + 'description' => 'The error message.', + 'type' => 'string', + 'example' => 'Cannot found quota **', + ], + 'data' => [ + 'description' => 'The data returned.', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The ID of the quota plan.', + 'type' => 'string', + 'example' => '89b54db44d384f26964951ea457f64a5', + ], + 'type' => [ + 'description' => 'The type of the quota plan.', + 'type' => 'string', + 'example' => 'daily', + ], + 'plan' => [ + 'description' => 'The name of the quota plan.', + 'type' => 'string', + 'example' => 'planA', + ], + 'condition' => [ + 'description' => 'The value of effective condition.', + 'type' => 'object', + 'properties' => [ + 'at' => [ + 'description' => 'The start time when the quota plan takes effect.', + 'type' => 'string', + 'example' => '09:00', + ], + ], + ], + 'timezone' => [ + 'description' => 'The time zone property.', + 'type' => 'string', + 'example' => 'UTC+8', + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"B42CA730-8187-50F1-9FE0-6733297036DB\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"QUOTA_UNKNOWN_NICKNAME\\",\\n \\"errorMsg\\": \\"Cannot found quota **\\",\\n \\"data\\": [\\n {\\n \\"id\\": \\"89b54db44d384f26964951ea457f64a5\\",\\n \\"type\\": \\"daily\\",\\n \\"plan\\": \\"planA\\",\\n \\"condition\\": {\\n \\"at\\": \\"09:00\\"\\n },\\n \\"timezone\\": \\"UTC+8\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'GetComputeQuotaSchedule', + 'summary' => 'Displays the time-specific configuration of compute quota.', + 'translator' => 'machine', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetQuotaSchedule', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + ], + ], + 'GetJobInfo' => [ + 'path' => '/api/v1/jobs/{instanceId}/info', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '257433', + 'abilityTreeNodes' => [ + 'FEATUREodpsDUKRZ1', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'instanceId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '20230410****60gg', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<JobInfo>', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '0be3e0bb16654558425251398e27a9', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n" + ."\n" + .'* 1xx: informational response. The request is received and is being processed.'."\n" + .'* 2xx: success. The request is successfully received, understood, and accepted by the server.'."\n" + .'* 3xx: redirection. The request is redirected, and further actions are required to complete the request.'."\n" + .'* 4xx: client error. The request contains invalid request parameters and syntaxes, or specific request conditions cannot be met.'."\n" + .'* 5xx: server error. The server cannot meet requirements due to other reasons.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code.'."\n", + 'type' => 'string', + 'example' => 'OBJECT_NOT_EXIST', + ], + 'errorMsg' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'This object does not exist.', + ], + 'data' => [ + 'description' => 'The returned result.'."\n", + 'type' => 'object', + 'properties' => [ + 'tenantId' => [ + 'description' => 'The tenant ID.'."\n", + 'type' => 'string', + 'example' => '4784****5249', + ], + 'region' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-shanghai', + ], + 'instanceId' => [ + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '20230410****60gg', + ], + 'jobOwner' => [ + 'description' => 'The owner of the job.'."\n", + 'type' => 'string', + 'example' => 'ALIYUN$7632***@aliyun.com'."\n", + ], + 'project' => [ + 'description' => 'The project name.'."\n", + 'type' => 'string', + 'example' => 'dp_cdm_prod', + ], + 'jobType' => [ + 'description' => 'The type of the job.'."\n", + 'type' => 'string', + 'example' => 'SQL'."\n", + ], + 'priority' => [ + 'description' => 'The priority of the job.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'status' => [ + 'description' => 'The job status.'."\n", + 'type' => 'string', + 'example' => 'running', + ], + 'quotaNickname' => [ + 'description' => 'The nickname of the computing quota that is used by the job.'."\n", + 'type' => 'string', + 'example' => 'os_bigdata', + ], + 'quotaType' => [ + 'description' => 'The quota type.'."\n", + 'type' => 'string', + 'example' => 'subscription', + ], + 'cuUsage' => [ + 'description' => 'The amount of resources consumed by the job. This parameter is returned only for jobs that are complete.Unit: 100\\*Core\\*s.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'memoryUsage' => [ + 'description' => 'The number of memory consumed by the job. This parameter is returned only for jobs that are complete.Unit: MB\\*s.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '40', + ], + 'submittedAtTime' => [ + 'description' => 'The time when the job was submitted.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1672112013', + ], + 'waitingTime' => [ + 'description' => 'The wait time, which is the duration from the time the job is submitted to the time the job starts to run.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + ], + 'runningAtTime' => [ + 'description' => 'The start time, which is the time when the job received the first batch of computing resources. For jobs that run for a short period of time or do not consume computing resources, such as the jobs that involve DDL statements, the job submission time is used instead.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1672112113', + ], + 'runningTime' => [ + 'description' => 'The execution duration, which is the duration from the start time to the end time of the job.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '800', + ], + 'endAtTime' => [ + 'description' => 'The end time of the job.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1672112913', + ], + 'totalTime' => [ + 'description' => 'The total duration from the time a job is submitted to the time the job is terminated.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '900', + ], + 'signature' => [ + 'description' => 'The signature of the SQL job. You can use the signature to find the instances on which each time an SQL statement is executed.'."\n", + 'type' => 'string', + 'example' => '20c1efb4a7caca1865f4aa784bb500efae74af04', + ], + 'extPlantFrom' => [ + 'description' => 'The upstream platform.'."\n", + 'type' => 'string', + 'example' => 'platform_3', + ], + 'extNodeId' => [ + 'description' => 'The ID of the ancestor node.'."\n", + 'type' => 'string', + 'example' => 'node_4', + ], + 'extNodeOnDuty' => [ + 'description' => 'The Alibaba Cloud account ID of the task owner.'."\n", + 'type' => 'string', + 'example' => 'duty_2', + ], + 'inputBytes' => [ + 'description' => 'The amount of data scanned by the job.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '1234', + ], + 'sceneResults' => [ + 'description' => 'The intelligent diagnostics result.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The intelligent diagnostics result.'."\n", + 'type' => 'object', + 'properties' => [ + 'sceneTag' => [ + 'title' => '', + 'description' => 'The intelligent diagnostics result tag.'."\n", + 'type' => 'string', + 'example' => 'SubscriptionLackResource', + ], + 'scene' => [ + 'title' => '', + 'description' => 'The intelligent diagnostics result scenario.'."\n", + 'type' => 'string', + 'example' => 'LackResource', + ], + 'type' => [ + 'title' => '', + 'description' => 'The intelligent diagnostics result type.'."\n", + 'type' => 'string', + 'example' => 'warning', + ], + 'summary' => [ + 'title' => '', + 'description' => 'The intelligent diagnostics result summary.'."\n", + 'type' => 'string', + 'example' => ' '."\n" + .'Insufficient computing resources available for the job. Click to view details.', + ], + 'description' => [ + 'title' => '', + 'description' => 'The intelligent diagnostics result description.'."\n", + 'type' => 'string', + 'example' => 'This job uses annual and monthly computing resources. It may be that the job is waiting for resources due to the large amount of overall job running data, many resources requested, and low job priority. Please go to Resource Consumption to view the specific situation. You can also go to Cost Optimization to see if you need to adjust resource configuration.', + ], + 'params' => [ + 'title' => '', + 'description' => 'Information about the nodes where data skew or data expansion is detected. This parameter is returned only when the diagnostics scenario is data skew or data expansion.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + 'example' => '"jobinsight_data_skew_node": "Worker M1#10000_0"'."\n", + 'description' => 'Information about the nodes where data skew or data expansion is detected.'."\n", + ], + ], + ], + ], + ], + 'jobSubStatusList' => [ + 'description' => 'The substatuses of the job lifecycle.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The substatus of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'code' => [ + 'description' => 'The encoding of the substatus.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1010', + ], + 'startTime' => [ + 'description' => 'The start time of the substatus.'."\n", + 'type' => 'string', + 'example' => '2025-03-05 00:04:15.717364 +0800', + ], + 'description' => [ + 'description' => 'The description of the substatus.'."\n", + 'type' => 'string', + 'example' => 'Waiting for scheduling', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0be3e0bb16654558425251398e27a9\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"OBJECT_NOT_EXIST\\",\\n \\"errorMsg\\": \\"This object does not exist.\\",\\n \\"data\\": {\\n \\"tenantId\\": \\"4784****5249\\",\\n \\"region\\": \\"cn-shanghai\\",\\n \\"instanceId\\": \\"20230410****60gg\\",\\n \\"jobOwner\\": \\"ALIYUN$7632***@aliyun.com\\\\n\\",\\n \\"project\\": \\"dp_cdm_prod\\",\\n \\"jobType\\": \\"SQL\\\\n\\",\\n \\"priority\\": 1,\\n \\"status\\": \\"running\\",\\n \\"quotaNickname\\": \\"os_bigdata\\",\\n \\"quotaType\\": \\"subscription\\",\\n \\"cuUsage\\": 10,\\n \\"memoryUsage\\": 40,\\n \\"submittedAtTime\\": 1672112013,\\n \\"waitingTime\\": 100,\\n \\"runningAtTime\\": 1672112113,\\n \\"runningTime\\": 800,\\n \\"endAtTime\\": 1672112913,\\n \\"totalTime\\": 900,\\n \\"signature\\": \\"20c1efb4a7caca1865f4aa784bb500efae74af04\\",\\n \\"extPlantFrom\\": \\"platform_3\\",\\n \\"extNodeId\\": \\"node_4\\",\\n \\"extNodeOnDuty\\": \\"duty_2\\",\\n \\"inputBytes\\": 1234,\\n \\"sceneResults\\": [\\n {\\n \\"sceneTag\\": \\"SubscriptionLackResource\\",\\n \\"scene\\": \\"LackResource\\",\\n \\"type\\": \\"warning\\",\\n \\"summary\\": \\"\\\\t\\\\nInsufficient computing resources available for the job. Click to view details.\\",\\n \\"description\\": \\"This job uses annual and monthly computing resources. It may be that the job is waiting for resources due to the large amount of overall job running data, many resources requested, and low job priority. Please go to Resource Consumption to view the specific situation. You can also go to Cost Optimization to see if you need to adjust resource configuration.\\",\\n \\"params\\": {\\n \\"key\\": \\"\\\\\\"jobinsight_data_skew_node\\\\\\": \\\\\\"Worker M1#10000_0\\\\\\"\\\\n\\"\\n }\\n }\\n ],\\n \\"jobSubStatusList\\": [\\n {\\n \\"code\\": 1010,\\n \\"startTime\\": \\"2025-03-05 00:04:15.717364 +0800\\",\\n \\"description\\": \\"Waiting for scheduling\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'GetJobInfo', + 'summary' => 'Queries the basic information about a job.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetJobInfo', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Job', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:job/{#instanceId}', + ], + ], + ], + ], + ], + ], + 'GetJobResourceUsage' => [ + 'path' => '/api/v1/jobs/resourceUsage', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'abilityTreeCode' => '188399', + 'abilityTreeNodes' => [ + 'FEATUREodpsDUKRZ1', + ], + ], + 'parameters' => [ + [ + 'name' => 'date', + 'in' => 'query', + 'schema' => [ + 'description' => 'The date that is accurate to the day part for the query. The date must be in the yyyy-MM-dd format.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '2023-05-15', + ], + ], + [ + 'name' => 'jobOwnerList', + 'in' => 'query', + 'style' => 'simple', + 'schema' => [ + 'description' => 'The list of job executors.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The list of job executors.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[email protected]', + ], + 'required' => false, + ], + ], + [ + 'name' => 'quotaNicknameList', + 'in' => 'query', + 'style' => 'simple', + 'schema' => [ + 'description' => 'The list of nicknames of quotas that are used by jobs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The list of nicknames of quotas that are used by jobs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'my_quota', + ], + 'required' => false, + ], + ], + [ + 'name' => 'pageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'pageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10. Maximum value: 100.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ListJobResourceUsageDTO>', + 'description' => 'PopResult'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '0b57ff7616612271051086500ea3ce', + ], + 'httpCode' => [ + 'description' => 'Indicates whether the request was successful. If this parameter was not empty and the value of this parameter was not 200, the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code returned if the request failed.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'errorMsg' => [ + 'description' => 'The error message returned if the request failed.'."\n", + 'type' => 'string', + 'example' => '0A3B1E82006A23A918C70905BF08AEC7', + ], + 'data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'jobResourceUsageList' => [ + 'description' => 'The data list returned.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'date' => [ + 'description' => 'The start date of the query in the format of yyyy-MM-dd.'."\n", + 'type' => 'string', + 'example' => '2023-05-09', + ], + 'jobOwner' => [ + 'description' => 'The job executor.'."\n", + 'type' => 'string', + 'example' => '[email protected]', + ], + 'quotaNickname' => [ + 'description' => 'The quota nickname.'."\n", + 'type' => 'string', + 'example' => 'my_quota', + ], + 'cuUsage' => [ + 'description' => 'The total number of used compute units (CUs).'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1185100', + ], + 'memoryUsage' => [ + 'description' => 'The total memory usage.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '15169536', + ], + ], + ], + ], + 'totalCount' => [ + 'description' => 'The total number of returned entries.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '64', + ], + 'pageNumber' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'pageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0b57ff7616612271051086500ea3ce\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"success\\",\\n \\"errorMsg\\": \\"0A3B1E82006A23A918C70905BF08AEC7\\",\\n \\"data\\": {\\n \\"jobResourceUsageList\\": [\\n {\\n \\"date\\": \\"2023-05-09\\",\\n \\"jobOwner\\": \\"[email protected]\\",\\n \\"quotaNickname\\": \\"my_quota\\",\\n \\"cuUsage\\": 1185100,\\n \\"memoryUsage\\": 15169536\\n }\\n ],\\n \\"totalCount\\": 64,\\n \\"pageNumber\\": 2,\\n \\"pageSize\\": 10\\n }\\n}","type":"json"}]', + 'title' => 'GetJobResourceUsage', + 'summary' => 'Performs statistics on all jobs that are complete on a specified day and obtains the total resource usage of each job executor on a daily basis.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:GetJobResourceUsage', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'GetMmsAsyncTask' => [ + 'summary' => 'Retrieves a single asynchronous task from MaxCompute Migration Assist (MMA).', + 'path' => '/api/v1/mms/datasources/{sourceId}/asyncTasks/{asyncTaskId}', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '182969', + 'abilityTreeNodes' => [ + 'FEATUREodpsN8WEG6', + ], + ], + 'parameters' => [ + [ + 'name' => 'sourceId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The data source ID.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '2000028', + 'title' => '', + ], + ], + [ + 'name' => 'asyncTaskId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The asynchronous task ID.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1000286', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ApiRes<AsyncTaskModel>', + 'description' => 'ApiRes', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '688003E1-D1B4-5468-957E-2FFB3AC8D79B', + 'title' => '', + ], + 'data' => [ + 'description' => 'The asynchronous task object.', + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The asynchronous task ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2523', + 'title' => '', + ], + 'sourceId' => [ + 'description' => 'The data source ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2000017', + 'title' => '', + ], + 'type' => [ + 'title' => 'META_SCAN, META_SAVE, TASK_CREATE, RESTART_AGENT, STOP_JOB, CONN_TEST', + 'description' => 'The type of the asynchronous task.', + 'enumValueTitles' => [ + 'TASK_CREATE' => 'TASK\\_CREATE', + 'STOP_JOB' => 'STOP\\_JOB', + ], + 'type' => 'string', + 'example' => 'TASK_CREATE', + ], + 'objectId' => [ + 'description' => 'The ID of the object associated with the asynchronous task.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '232', + 'title' => '', + ], + 'status' => [ + 'description' => 'The status of the asynchronous task.', + 'type' => 'string', + 'example' => 'DONE', + 'title' => '', + ], + 'running' => [ + 'description' => 'Indicates whether the task is running.', + 'type' => 'boolean', + 'example' => 'false', + 'title' => '', + ], + 'progress' => [ + 'description' => 'The progress of the task.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + 'title' => '', + ], + 'result' => [ + 'description' => 'The result of the task.', + 'type' => 'string', + 'example' => 'null', + 'title' => '', + ], + 'errorMsg' => [ + 'description' => 'The error message.', + 'type' => 'string', + 'example' => 'null', + 'title' => '', + ], + 'startTime' => [ + 'description' => 'The time when the task started to run.', + 'type' => 'string', + 'example' => '2024-12-17 15:44:17'."\n", + 'title' => '', + ], + 'endTime' => [ + 'description' => 'The time when the task stopped running.', + 'type' => 'string', + 'example' => '2024-12-17 17:44:17'."\n", + 'title' => '', + ], + 'createTime' => [ + 'description' => 'The time when the task was created.', + 'type' => 'string', + 'example' => '2024-12-17 15:44:00'."\n", + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"688003E1-D1B4-5468-957E-2FFB3AC8D79B\\",\\n \\"data\\": {\\n \\"id\\": 2523,\\n \\"sourceId\\": 2000017,\\n \\"type\\": \\"TASK_CREATE\\",\\n \\"objectId\\": 232,\\n \\"status\\": \\"DONE\\",\\n \\"running\\": false,\\n \\"progress\\": 0,\\n \\"result\\": \\"null\\",\\n \\"errorMsg\\": \\"null\\",\\n \\"startTime\\": \\"2024-12-17 15:44:17\\\\n\\",\\n \\"endTime\\": \\"2024-12-17 17:44:17\\\\n\\",\\n \\"createTime\\": \\"2024-12-17 15:44:00\\\\n\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetMmsAsyncTask', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetMmsAsyncTask', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + ], + ], + 'GetMmsDataSource' => [ + 'summary' => 'Retrieves the details of a single MaxCompute Migration Assist (MMA) data source.', + 'path' => '/api/v1/mms/datasources/{sourceId}', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '182976', + 'abilityTreeNodes' => [ + 'FEATUREodpsN8WEG6', + ], + ], + 'parameters' => [ + [ + 'name' => 'sourceId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The ID of the data source.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '2000015', + 'title' => '', + ], + ], + [ + 'name' => 'withConfig', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to obtain the specific configuration items of the data source.', + 'type' => 'boolean', + 'default' => 'true', + 'required' => false, + 'example' => 'true', + 'title' => '', + ], + ], + [ + 'name' => 'lang', + 'in' => 'query', + 'schema' => [ + 'description' => 'The language of the description for the configuration items.', + 'type' => 'string', + 'default' => 'zh_CN', + 'required' => false, + 'example' => 'en_US', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ApiRes<DataSourceModel>', + 'description' => 'ApiRes', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '98EC8C47-3D6D-560C-808B-84E494220A32', + 'title' => '', + ], + 'data' => [ + 'description' => 'The data returned.', + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The ID of the data source.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2000015', + 'title' => '', + ], + 'region' => [ + 'description' => 'The region ID.', + 'type' => 'string', + 'example' => 'cn-shanghai', + 'title' => '', + ], + 'name' => [ + 'description' => 'The name of the data source.', + 'type' => 'string', + 'example' => 'demo', + 'title' => '', + ], + 'dstProject' => [ + 'description' => 'The default MaxCompute destination project name.', + 'type' => 'string', + 'example' => 'mms_test', + 'title' => '', + ], + 'dstProjects' => [ + 'type' => 'array', + 'items' => [ + 'description' => 'The destination project.', + 'type' => 'string', + 'example' => 'mms_test1', + 'title' => '', + ], + 'description' => 'The list of destination MaxCompute projects.', + 'title' => '', + 'example' => '', + ], + 'type' => [ + 'title' => 'HIVE, OSS, MAXCOMPUTE, MOCK, HIVE_OSS', + 'description' => 'The type of the data source.', + 'enumValueTitles' => [ + 'HIVE' => 'HIVE', + 'BIGQUERY' => 'BIGQUERY', + 'MAXCOMPUTE' => 'MAXCOMPUTE', + ], + 'type' => 'string', + 'example' => 'BIGQUERY', + ], + 'networklink' => [ + 'description' => 'The ID of the MaxCompute network connectivity, which is the region ID.', + 'type' => 'string', + 'example' => 'vpc-2zebqp6uojhdla46677tl:cn-shanghai', + 'title' => '', + ], + 'lastUpdateTime' => [ + 'description' => 'The last time when the metadata was synchronized.', + 'type' => 'string', + 'example' => '2024-12-17 15:44:17', + 'title' => '', + ], + 'dbNum' => [ + 'description' => 'The number of databases in the data source.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '3', + 'title' => '', + ], + 'tableNum' => [ + 'description' => 'The number of tables in the data source.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1000', + 'title' => '', + ], + 'partitionNum' => [ + 'description' => 'The number of partitions in the data source.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10000000', + 'title' => '', + ], + 'createTime' => [ + 'description' => 'The time when the data source was created.', + 'type' => 'string', + 'example' => '2024-12-17 09:29:58', + 'title' => '', + ], + 'status' => [ + 'title' => 'STOPPED, STARTING, STARTED, STOPPING, START_FAILED, STOP_FAILED', + 'description' => 'The status of the data source.', + 'enumValueTitles' => [ + 'STARTING' => 'STARTING', + 'STOPPED' => 'STOPPED', + 'STARTED' => 'STARTED', + 'START_FAILED' => 'START\\_FAILED', + 'STOPPING' => 'STOPPING', + 'STOP_FAILED' => 'STOP\\_FAILED', + ], + 'type' => 'string', + 'example' => 'STARTED', + ], + 'errMsg' => [ + 'description' => 'The reason why the data source instance failed to be started or shut down. This parameter is returned only when the status is START\\_FAILED or STOP\\_FAILED.', + 'type' => 'string', + 'example' => 'unexpected exception', + 'title' => '', + ], + 'config' => [ + 'description' => 'The configurations of the data source.', + 'type' => 'array', + 'items' => [ + 'description' => 'The configurations of the data source.', + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the configuration.', + 'type' => 'string', + 'example' => '范围分区表迁移方式', + 'title' => '', + ], + 'key' => [ + 'description' => 'The English identifier of the configuration.', + 'type' => 'string', + 'example' => 'bigquery.range.partition.migrate.type', + 'title' => '', + ], + 'desc' => [ + 'description' => 'The description of the configuration.', + 'type' => 'string', + 'example' => '范围分区表迁移方式', + 'title' => '', + ], + 'placeHolder' => [ + 'description' => 'The example value of the configuration.', + 'type' => 'string', + 'example' => 'Cluster or Partition', + 'title' => '', + ], + 'type' => [ + 'description' => 'The type of the configuration. Valid values: boolean, int, map, string, password, and file.', + 'enumValueTitles' => [ + 'password' => 'password', + 'file' => 'file', + 'string' => 'string', + 'map' => 'map', + 'booelan' => 'boolean', + 'int' => 'int', + ], + 'type' => 'string', + 'example' => 'string', + 'title' => '', + ], + 'subType' => [ + 'description' => 'If the type is file, this parameter specifies the file type, such as .keytab.', + 'type' => 'string', + 'example' => '.keytab', + 'title' => '', + ], + 'value' => [ + 'description' => 'The value of the configuration.', + 'type' => 'any', + 'example' => 'Partition'."\n", + 'title' => '', + ], + 'enums' => [ + 'description' => 'The enumeration values of the configuration.', + 'type' => 'array', + 'items' => [ + 'description' => 'The enumeration value of the configuration.', + 'type' => 'string', + 'example' => 'Cluster or Partition', + 'title' => '', + ], + 'title' => '', + 'example' => '', + ], + 'required' => [ + 'description' => 'Specifies whether the configuration is required.', + 'type' => 'boolean', + 'example' => 'true', + 'title' => '', + ], + 'group' => [ + 'description' => 'The configuration group.', + 'type' => 'string', + 'example' => 'basic_group', + 'title' => '', + ], + 'subItems' => [ + 'type' => 'object', + 'additionalProperties' => [ + 'description' => 'Child configuration item.', + 'type' => 'any', + 'example' => '{"azure.bob.sas.token": "xxx"}', + 'title' => '', + ], + 'description' => 'Child configuration items. Some configuration items depend on the values of other configuration items. These dependent configurations are considered child items of the configurations they depend on.', + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'agentIsOnline' => [ + 'description' => 'Indicates whether the data source instance or its associated agent is started.', + 'type' => 'boolean', + 'example' => 'true', + 'title' => '', + ], + 'tablesDoingNum' => [ + 'description' => 'The number of tables being migrated.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '19', + 'title' => '', + ], + 'tablesDoneNum' => [ + 'description' => 'The number of tables that are migrated.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '16', + 'title' => '', + ], + 'tablesPartDoneNum' => [ + 'description' => 'The number of tables that are partially migrated.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '123', + 'title' => '', + ], + 'tablesFailedNum' => [ + 'description' => 'The number of tables that failed to be migrated.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + 'title' => '', + ], + 'partitionsDoingNum' => [ + 'description' => 'The number of partitions being migrated.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '23322', + 'title' => '', + ], + 'partitionsDoneNum' => [ + 'description' => 'The number of partitions that are migrated.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '11113', + 'title' => '', + ], + 'partitionsFailedNum' => [ + 'description' => 'The number of partitions that failed to be migrated.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '32', + 'title' => '', + ], + 'scanId' => [ + 'description' => 'The ID of the metadata synchronization task.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1000253', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"98EC8C47-3D6D-560C-808B-84E494220A32\\",\\n \\"data\\": {\\n \\"id\\": 2000015,\\n \\"region\\": \\"cn-shanghai\\",\\n \\"name\\": \\"demo\\",\\n \\"dstProject\\": \\"mms_test\\",\\n \\"dstProjects\\": [\\n \\"mms_test1\\"\\n ],\\n \\"type\\": \\"BIGQUERY\\",\\n \\"networklink\\": \\"vpc-2zebqp6uojhdla46677tl:cn-shanghai\\",\\n \\"lastUpdateTime\\": \\"2024-12-17 15:44:17\\",\\n \\"dbNum\\": 3,\\n \\"tableNum\\": 1000,\\n \\"partitionNum\\": 10000000,\\n \\"createTime\\": \\"2024-12-17 09:29:58\\",\\n \\"status\\": \\"STARTED\\",\\n \\"errMsg\\": \\"unexpected exception\\",\\n \\"config\\": [\\n {\\n \\"name\\": \\"范围分区表迁移方式\\",\\n \\"key\\": \\"bigquery.range.partition.migrate.type\\",\\n \\"desc\\": \\"范围分区表迁移方式\\",\\n \\"placeHolder\\": \\"Cluster or Partition\\",\\n \\"type\\": \\"string\\",\\n \\"subType\\": \\".keytab\\",\\n \\"value\\": \\"Partition\\\\n\\",\\n \\"enums\\": [\\n \\"Cluster or Partition\\"\\n ],\\n \\"required\\": true,\\n \\"group\\": \\"basic_group\\",\\n \\"subItems\\": {\\n \\"key\\": \\"{\\\\\\"azure.bob.sas.token\\\\\\": \\\\\\"xxx\\\\\\"}\\"\\n }\\n }\\n ],\\n \\"agentIsOnline\\": true,\\n \\"tablesDoingNum\\": 19,\\n \\"tablesDoneNum\\": 16,\\n \\"tablesPartDoneNum\\": 123,\\n \\"tablesFailedNum\\": 2,\\n \\"partitionsDoingNum\\": 23322,\\n \\"partitionsDoneNum\\": 11113,\\n \\"partitionsFailedNum\\": 32,\\n \\"scanId\\": 1000253\\n }\\n}","type":"json"}]', + 'title' => 'GetMmsDataSource', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetMmsDataSource', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + ], + ], + 'GetMmsDb' => [ + 'summary' => 'Retrieves a database from a MaxCompute Migration Assist (MMA) data source.', + 'path' => '/api/v1/mms/datasources/{sourceId}/dbs/{dbId}', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '182971', + 'abilityTreeNodes' => [ + 'FEATUREodpsN8WEG6', + ], + ], + 'parameters' => [ + [ + 'name' => 'sourceId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The ID of the data source.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '2000017', + 'title' => '', + ], + ], + [ + 'name' => 'dbId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The database ID.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1232', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ApiRes<DataBaseModel>', + 'description' => 'ApiRes', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '90D64EB6-2962-5B1C-A039-BC41C8176C7F', + 'title' => '', + ], + 'data' => [ + 'description' => 'The data returned.', + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The database ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '63', + 'title' => '', + ], + 'name' => [ + 'description' => 'The database name.', + 'type' => 'string', + 'example' => 'mms_test', + 'title' => '', + ], + 'description' => [ + 'description' => 'The database description.', + 'type' => 'string', + 'example' => 'for mms_test', + 'title' => '', + ], + 'owner' => [ + 'description' => 'The database owner.', + 'type' => 'string', + 'example' => 'System user', + 'title' => '', + ], + 'location' => [ + 'description' => 'The storage location of the database.', + 'type' => 'string', + 'example' => ' hdfs://master-1-1.c-6fc187819ed6bae0.cn-shanghai.emr.aliyuncs.com:9000/user/hive/warehouse ', + 'title' => '', + ], + 'extra' => [ + 'description' => 'Other information stored in JSON format.', + 'type' => 'string', + 'example' => '{}', + 'title' => '', + ], + 'tables' => [ + 'description' => 'The number of tables.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + 'title' => '', + ], + 'tablesDoing' => [ + 'description' => 'The tables that are being migrated.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + 'title' => '', + ], + 'tablesDone' => [ + 'description' => 'Tables for which migration has completed', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '120', + 'title' => '', + ], + 'tablesPartDone' => [ + 'description' => 'The tables whose migration is partially complete.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + 'title' => '', + ], + 'tablesFailed' => [ + 'description' => 'The tables that failed to migrate.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + 'title' => '', + ], + 'partitions' => [ + 'description' => 'The number of partitions.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2000', + 'title' => '', + ], + 'partitionsDoing' => [ + 'description' => 'The partitions that are being migrated.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + 'title' => '', + ], + 'partitionsDone' => [ + 'description' => 'The number of partitions whose migration is complete.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1400', + 'title' => '', + ], + 'partitionsFailed' => [ + 'description' => 'The partitions that failed during migration.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '400', + 'title' => '', + ], + 'sourceId' => [ + 'description' => 'The ID of the data source.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2000017', + 'title' => '', + ], + 'sourceName' => [ + 'description' => 'The name of the data source.', + 'type' => 'string', + 'example' => 'demo', + 'title' => '', + ], + 'size' => [ + 'description' => 'The size of the database in bytes.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '323232332', + 'title' => '', + ], + 'numRows' => [ + 'description' => 'The number of rows in the database.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2323', + 'title' => '', + ], + 'updated' => [ + 'description' => 'Indicates whether the metadata is updated.', + 'type' => 'boolean', + 'example' => 'true', + 'title' => '', + ], + 'lastDdlTime' => [ + 'description' => 'The last DDL time.', + 'type' => 'string', + 'example' => '2024-12-17 15:44:42'."\n", + 'title' => '', + ], + 'status' => [ + 'title' => 'INIT, DOING, FAILED, DONE, PART_DONE', + 'description' => 'The migration status. Valid values: INIT, DOING, FAILED, DONE, and PART\\_DONE.', + 'enumValueTitles' => [ + 'PART_DONE' => 'The migration is partially complete.', + 'INIT' => 'The migration has not started.', + 'DONE' => 'The migration is complete.', + 'DOING' => 'The migration is in progress.', + 'FAILED' => 'The migration failed.', + ], + 'type' => 'string', + 'example' => 'DOING', + ], + 'dstName' => [ + 'description' => 'The MaxCompute schema corresponding to the source database. If the destination MaxCompute project does not enable the schema layer, this value is null. By default, this value matches the source database name.', + 'type' => 'string', + 'example' => 'default', + 'title' => '', + ], + 'dstProjectName' => [ + 'description' => 'The name of the destination MaxCompute project.', + 'type' => 'string', + 'example' => 'mma_test', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"90D64EB6-2962-5B1C-A039-BC41C8176C7F\\",\\n \\"data\\": {\\n \\"id\\": 63,\\n \\"name\\": \\"mms_test\\",\\n \\"description\\": \\"for mms_test\\",\\n \\"owner\\": \\"System user\\",\\n \\"location\\": \\" hdfs://master-1-1.c-6fc187819ed6bae0.cn-shanghai.emr.aliyuncs.com:9000/user/hive/warehouse \\",\\n \\"extra\\": \\"{}\\",\\n \\"tables\\": 200,\\n \\"tablesDoing\\": 20,\\n \\"tablesDone\\": 120,\\n \\"tablesPartDone\\": 20,\\n \\"tablesFailed\\": 20,\\n \\"partitions\\": 2000,\\n \\"partitionsDoing\\": 200,\\n \\"partitionsDone\\": 1400,\\n \\"partitionsFailed\\": 400,\\n \\"sourceId\\": 2000017,\\n \\"sourceName\\": \\"demo\\",\\n \\"size\\": 323232332,\\n \\"numRows\\": 2323,\\n \\"updated\\": true,\\n \\"lastDdlTime\\": \\"2024-12-17 15:44:42\\\\n\\",\\n \\"status\\": \\"DOING\\",\\n \\"dstName\\": \\"default\\",\\n \\"dstProjectName\\": \\"mma_test\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetMmsDb', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetMmsDb', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + ], + ], + 'GetMmsFetchMetadataJob' => [ + 'summary' => 'Retrieves the details of a MaxCompute Migration Assist (MMA) job that fetches metadata.', + 'path' => '/api/v1/mms/datasources/{sourceId}/scans/{scanId}', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '182965', + 'abilityTreeNodes' => [ + 'FEATUREodpsN8WEG6', + ], + ], + 'parameters' => [ + [ + 'name' => 'sourceId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The data source ID.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '2000015', + 'title' => '', + ], + ], + [ + 'name' => 'scanId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The ID of the asynchronous task for metadata synchronization.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1000002', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ApiRes<MetaTaskDTO>', + 'description' => 'ApiRes', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '5CA6292A-E301-5CD8-B4E2-AF060F99147B', + 'title' => '', + ], + 'data' => [ + 'description' => 'The returned data.', + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The ID of the asynchronous task.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1000002', + 'title' => '', + ], + 'sourceId' => [ + 'description' => 'The data source ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2000015', + 'title' => '', + ], + 'status' => [ + 'description' => 'The status of the asynchronous task for metadata synchronization.', + 'type' => 'string', + 'enumValueTitles' => [ + 'INIT' => 'INIT', + 'DONE' => 'DONE', + 'FAILED' => 'FAILED', + 'UPLOAD_FAILED' => 'UPLOAD_FAILED', + 'SAVE_DOING' => 'SAVE_DOING', + 'UPLOAD_DONE' => 'UPLOAD_DONE', + 'SCAN_DONE' => 'SCAN_DONE', + 'SCAN_FAILED' => 'SCAN_FAILED', + 'SCAN_DOING' => 'SCAN_DOING', + ], + 'example' => 'SCAN_DOING', + 'title' => '', + ], + 'progress' => [ + 'description' => 'The progress of metadata synchronization. Valid values: 1 to 10000.', + 'type' => 'number', + 'format' => 'float', + 'example' => '5000', + 'title' => '', + ], + 'result' => [ + 'description' => 'The result of metadata synchronization.', + 'type' => 'string', + 'example' => '{"databases":5,"tables":75,"partitions":215}', + 'title' => '', + ], + 'errorMsg' => [ + 'description' => 'The error message.', + 'type' => 'string', + 'example' => 'unexpected exception', + 'title' => '', + ], + 'startTime' => [ + 'description' => 'The time when metadata synchronization started.', + 'type' => 'string', + 'example' => '2024-12-16 19:09:37', + 'title' => '', + ], + 'endTime' => [ + 'description' => 'The time when metadata synchronization ended.', + 'type' => 'string', + 'example' => '2024-12-16 19:10:07', + 'title' => '', + ], + ], + 'title' => '', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"5CA6292A-E301-5CD8-B4E2-AF060F99147B\\",\\n \\"data\\": {\\n \\"id\\": 1000002,\\n \\"sourceId\\": 2000015,\\n \\"status\\": \\"SCAN_DOING\\",\\n \\"progress\\": 5000,\\n \\"result\\": \\"{\\\\\\"databases\\\\\\":5,\\\\\\"tables\\\\\\":75,\\\\\\"partitions\\\\\\":215}\\",\\n \\"errorMsg\\": \\"unexpected exception\\",\\n \\"startTime\\": \\"2024-12-16 19:09:37\\",\\n \\"endTime\\": \\"2024-12-16 19:10:07\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetMmsFetchMetadataJob', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetMmsFetchMetadataJob', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + ], + 'GetMmsJob' => [ + 'summary' => 'Retrieves the details of a single MaxCompute Migration Assist (MMA) migration plan.', + 'path' => '/api/v1/mms/datasources/{sourceId}/jobs/{jobId}', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '182992', + 'abilityTreeNodes' => [ + 'FEATUREodpsN8WEG6', + ], + ], + 'parameters' => [ + [ + 'name' => 'sourceId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The data source ID.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '2000015', + 'title' => '', + ], + ], + [ + 'name' => 'jobId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The job ID.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '10', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ApiRes<JobModel>', + 'description' => 'ApiRes', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => 'D9F872FD-5DDE-30A6-8C8A-1B8C6A81059F', + 'title' => '', + ], + 'data' => [ + 'description' => 'The migration job object.', + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The migration job ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + 'title' => '', + ], + 'name' => [ + 'description' => 'The name of the migration job.', + 'type' => 'string', + 'example' => 'migrate_db_1', + 'title' => '', + ], + 'sourceId' => [ + 'description' => 'The data source ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + 'title' => '', + ], + 'dbId' => [ + 'description' => 'The source database ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '23', + 'title' => '', + ], + 'sourceName' => [ + 'description' => 'The name of the data source.', + 'type' => 'string', + 'example' => 'demo', + 'title' => '', + ], + 'srcDbName' => [ + 'description' => 'The name of the source database.', + 'type' => 'string', + 'example' => 'mms_test', + 'title' => '', + ], + 'srcSchemaName' => [ + 'description' => 'The name of the source schema. This parameter specifies the schema in a Layer 3 namespace.', + 'type' => 'string', + 'example' => 'default', + 'title' => '', + ], + 'dstDbName' => [ + 'description' => 'The destination MaxCompute project.', + 'type' => 'string', + 'example' => 'mms_target', + 'title' => '', + ], + 'dstSchemaName' => [ + 'description' => 'The destination MaxCompute schema.', + 'type' => 'string', + 'example' => 'default', + 'title' => '', + ], + 'status' => [ + 'title' => 'INIT, DOING, FAILED, DONE', + 'description' => 'The status of the migration task.', + 'enumValueTitles' => [ + 'INIT' => 'Not started', + 'DONE' => 'Successful', + 'DOING' => 'Running', + 'FAILED' => 'Failed', + ], + 'type' => 'string', + 'example' => 'DOING', + ], + 'type' => [ + 'title' => 'Database, Tables, Partitions', + 'description' => 'The migration scope. Valid values: Database, Tables, and Partitions.', + 'enumValueTitles' => [ + 'Partitions' => 'Multiple partitions', + 'Database' => 'Single database', + 'Tables' => 'Multiple tables', + ], + 'type' => 'string', + 'example' => 'Tables', + ], + 'taskNum' => [ + 'description' => 'The number of migration tasks included in the job.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + 'title' => '', + ], + 'stopped' => [ + 'description' => 'Stopped.', + 'type' => 'boolean', + 'example' => 'false'."\n", + 'title' => '', + ], + 'createTime' => [ + 'description' => 'The time when the job was created.', + 'type' => 'string', + 'example' => '2024-12-17 15:44:17', + 'title' => '', + ], + 'taskDone' => [ + 'description' => 'The number of completed migration tasks.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + 'title' => '', + ], + 'config' => [ + 'type' => 'object', + 'properties' => [ + 'partitions' => [ + 'type' => 'array', + 'items' => [ + 'description' => 'The partition ID of the table to migrate.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '[123, 132]', + 'title' => '', + ], + 'description' => 'If type is set to Partitions, this parameter specifies the list of partition IDs of the table to migrate.', + 'title' => '', + 'example' => '', + ], + 'tables' => [ + 'type' => 'array', + 'items' => [ + 'description' => 'The name of the table to migrate.', + 'type' => 'string', + 'example' => '["student", "scores"]', + 'title' => '', + ], + 'description' => 'If type is set to Tables, this parameter specifies the list of names of the tables to migrate.', + 'title' => '', + 'example' => '', + ], + 'taskType' => [ + 'description' => 'Deprecated. Valid values: MOCK, HIVE (a Hive user-defined table-valued function (UDTF) task), HIVE\\_DATAX (a Hive DataX task), COPY\\_TASK (an ODPS Copy Task), ODPS\\_INSERT\\_OVERWRITE (an ODPS simple insert overwrite task), MC2MC\\_VERIFY, OSS, HIVE\\_OSS, HIVE\\_SPARK, and BIGQUERY.', + 'type' => 'string', + 'title' => '', + 'example' => 'BIGQUERY', + ], + 'tableBlackList' => [ + 'type' => 'array', + 'items' => [ + 'description' => 'If type is set to Database, this parameter specifies the table to exclude.', + 'type' => 'string', + 'example' => '["student", "scores"]', + 'title' => '', + ], + 'description' => 'If type is set to Database, this parameter specifies the tables to exclude from the migration.', + 'title' => '', + 'example' => '', + ], + 'tableWhiteList' => [ + 'type' => 'array', + 'items' => [ + 'description' => 'If type is set to Database, this parameter specifies the table to migrate.', + 'type' => 'string', + 'example' => '["student", "scores"]', + 'title' => '', + ], + 'description' => 'If type is set to Database, this parameter specifies the list of tables to migrate. If you do not specify this parameter, all tables in the database are migrated.', + 'title' => '', + 'example' => '', + ], + 'partitionFilters' => [ + 'type' => 'object', + 'additionalProperties' => [ + 'description' => 'The partition filter expression. Example: p1 >= \'2022-03-04\' and (p2 = 10 or p3 > 20) and p4 in (\'abc\', \'cde\'). The following items describe the expression:'."\n" + ."\n" + .'p1, p2, and p3 are partition names.'."\n" + ."\n" + .'Partition values can be strings or numbers. Strings must be enclosed in double or single quotation marks.'."\n" + ."\n" + .'For partition key columns of data types other than INT and BIGINT, the partition values can only be strings.'."\n" + ."\n" + .'The following comparison operators are supported: >, >=, =, <, <=, and <>.'."\n" + ."\n" + .'The IN operator is supported in partition filter expressions.'."\n" + ."\n" + .'The following logical operators are supported: AND and OR.'."\n" + ."\n" + .'Parentheses are supported.', + 'type' => 'string', + 'example' => '{'."\n" + .'"student": "p1 >= \'2022-03-04\' and (p2 = 10 or p3 > 20) and p4 in (\'abc\', \'cde\')" '."\n" + .'}'."\n", + 'title' => '', + ], + 'description' => 'The partition filter expression. This parameter specifies the partition filter expression for a specific table.', + 'title' => '', + 'example' => '', + ], + 'schemaOnly' => [ + 'description' => 'Deprecated', + 'type' => 'boolean', + 'example' => 'false', + 'title' => '', + ], + 'tableMapping' => [ + 'type' => 'object', + 'additionalProperties' => [ + 'description' => 'The mapping from source table names to destination table names.', + 'type' => 'string', + 'example' => '{\'a\': \'a1\'}', + 'title' => '', + ], + 'description' => 'The mapping from source table names to destination table names.', + 'title' => '', + 'example' => '', + ], + 'increment' => [ + 'description' => 'Incremental migration. Only new or modified partitions are migrated. Note: Modified partitions are re-migrated.', + 'type' => 'boolean', + 'example' => 'true', + 'title' => '', + ], + 'enableVerification' => [ + 'description' => 'Enables data verification. The current verification method is to execute a SELECT COUNT statement on the source and destination to compare the row counts.', + 'type' => 'boolean', + 'example' => 'true', + 'title' => '', + ], + 'tunnelQuota' => [ + 'description' => 'Deprecated', + 'type' => 'string', + 'example' => 'Depcreated', + 'title' => '', + ], + 'columnMapping' => [ + 'type' => 'object', + 'additionalProperties' => [ + 'description' => '{Source column name: Destination column name}', + 'type' => 'string', + 'example' => '{"c-1": "c_1"}', + 'title' => '', + ], + 'description' => '{Source column name: Destination column name}', + 'title' => '', + 'example' => '', + ], + 'others' => [ + 'description' => 'Other configuration information.', + 'type' => 'object', + 'example' => '{"spark.executor.mem": "2g"}', + 'title' => '', + ], + ], + 'description' => 'The configuration of the migration job.', + 'title' => '', + 'example' => '', + ], + 'eta' => [ + 'description' => 'The expected completion time of the migration. Note: A smaller eta value indicates a higher priority for the migration task.', + 'type' => 'string', + 'example' => '2025-05-06', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"D9F872FD-5DDE-30A6-8C8A-1B8C6A81059F\\",\\n \\"data\\": {\\n \\"id\\": 10,\\n \\"name\\": \\"migrate_db_1\\",\\n \\"sourceId\\": 2,\\n \\"dbId\\": 23,\\n \\"sourceName\\": \\"demo\\",\\n \\"srcDbName\\": \\"mms_test\\",\\n \\"srcSchemaName\\": \\"default\\",\\n \\"dstDbName\\": \\"mms_target\\",\\n \\"dstSchemaName\\": \\"default\\",\\n \\"status\\": \\"DOING\\",\\n \\"type\\": \\"Tables\\",\\n \\"taskNum\\": 100,\\n \\"stopped\\": true,\\n \\"createTime\\": \\"2024-12-17 15:44:17\\",\\n \\"taskDone\\": 100,\\n \\"config\\": {\\n \\"partitions\\": [\\n 0\\n ],\\n \\"tables\\": [\\n \\"[\\\\\\"student\\\\\\", \\\\\\"scores\\\\\\"]\\"\\n ],\\n \\"taskType\\": \\"BIGQUERY\\",\\n \\"tableBlackList\\": [\\n \\"[\\\\\\"student\\\\\\", \\\\\\"scores\\\\\\"]\\"\\n ],\\n \\"tableWhiteList\\": [\\n \\"[\\\\\\"student\\\\\\", \\\\\\"scores\\\\\\"]\\"\\n ],\\n \\"partitionFilters\\": {\\n \\"key\\": \\"{\\\\n\\\\\\"student\\\\\\": \\\\\\"p1 >= \'2022-03-04\' and (p2 = 10 or p3 > 20) and p4 in (\'abc\', \'cde\')\\\\\\" \\\\n}\\\\n\\"\\n },\\n \\"schemaOnly\\": false,\\n \\"tableMapping\\": {\\n \\"key\\": \\"{\'a\': \'a1\'}\\"\\n },\\n \\"increment\\": true,\\n \\"enableVerification\\": true,\\n \\"tunnelQuota\\": \\"Depcreated\\",\\n \\"columnMapping\\": {\\n \\"key\\": \\"{\\\\\\"c-1\\\\\\": \\\\\\"c_1\\\\\\"}\\"\\n },\\n \\"others\\": {\\n \\"spark.executor.mem\\": \\"2g\\"\\n }\\n },\\n \\"eta\\": \\"2025-05-06\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetMmsJob', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetMmsJob', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + ], + ], + 'GetMmsPartition' => [ + 'summary' => 'Retrieves a partition from a MaxCompute Migration Assist (MMA) data source.', + 'path' => '/api/v1/mms/datasources/{sourceId}/partitions/{partitionId}', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '182980', + 'abilityTreeNodes' => [ + 'FEATUREodpsN8WEG6', + ], + ], + 'parameters' => [ + [ + 'name' => 'sourceId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The data source ID.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '200018', + 'title' => '', + ], + ], + [ + 'name' => 'partitionId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The partition ID.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '2323', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ApiRes<PartitionModel>', + 'description' => 'ApiRes', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => 'D9F872FD-5DDE-30A6-8C8A-1B8C6A81059F'."\n", + 'title' => '', + ], + 'data' => [ + 'description' => 'The partition object.', + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The partition ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2323', + 'title' => '', + ], + 'dbId' => [ + 'description' => 'The ID of the database that contains the partition. The name for this metadata layer depends on the data source. For example, it is a Dataset in BigQuery, a Database in Hive, or a Schema in Databricks and MaxCompute.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '12', + 'title' => '', + ], + 'tableId' => [ + 'description' => 'The table ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '23', + 'title' => '', + ], + 'dbName' => [ + 'description' => 'The name of the database. The name for this metadata layer depends on the data source. For example, it is a Dataset in BigQuery, a Database in Hive, or a Schema in Databricks and MaxCompute.', + 'type' => 'string', + 'example' => 'd1', + 'title' => '', + ], + 'tableName' => [ + 'description' => 'The table name.', + 'type' => 'string', + 'example' => 't1', + 'title' => '', + ], + 'value' => [ + 'description' => 'The partition value.', + 'type' => 'string', + 'example' => 'p1=1/p2=abc'."\n", + 'title' => '', + ], + 'dstProjectName' => [ + 'description' => 'The name of the destination MaxCompute project.', + 'type' => 'string', + 'example' => 'mms_test', + 'title' => '', + ], + 'dstSchemaName' => [ + 'description' => 'The name of the destination MaxCompute schema. This parameter is null if the destination MaxCompute project does not use a schema layer.', + 'type' => 'string', + 'example' => 'default', + 'title' => '', + ], + 'dstTableName' => [ + 'description' => 'The name of the destination MaxCompute table.', + 'type' => 'string', + 'example' => 'test', + 'title' => '', + ], + 'dstValue' => [ + 'description' => 'The value of the destination MaxCompute partition. By default, this value is the same as the source partition value.', + 'type' => 'string', + 'example' => 'p1=1/p2=abc', + 'title' => '', + ], + 'sourceId' => [ + 'description' => 'The data source ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200018'."\n", + 'title' => '', + ], + 'sourceName' => [ + 'description' => 'The data source name.', + 'type' => 'string', + 'example' => 'demo', + 'title' => '', + ], + 'size' => [ + 'description' => 'The data size in bytes.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '12323', + 'title' => '', + ], + 'numRows' => [ + 'description' => 'The number of rows.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2323', + 'title' => '', + ], + 'updated' => [ + 'description' => 'Indicates whether the metadata is updated.', + 'type' => 'boolean', + 'example' => 'false', + 'title' => '', + ], + 'lastDdlTime' => [ + 'description' => 'The time of the last DDL operation.', + 'type' => 'string', + 'example' => '2024-12-17 15:44:42'."\n", + 'title' => '', + ], + 'status' => [ + 'title' => 'INIT, DOING, FAILED, DONE, PART_DONE', + 'description' => 'The migration status.', + 'enumValueTitles' => [ + 'INIT' => 'The partition is not migrated.', + 'DONE' => 'The migration is complete.', + 'DOING' => 'The partition is being migrated.', + 'FAILED' => 'The migration failed.', + ], + 'type' => 'string', + 'example' => 'DONE', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"D9F872FD-5DDE-30A6-8C8A-1B8C6A81059F\\\\n\\",\\n \\"data\\": {\\n \\"id\\": 2323,\\n \\"dbId\\": 12,\\n \\"tableId\\": 23,\\n \\"dbName\\": \\"d1\\",\\n \\"tableName\\": \\"t1\\",\\n \\"value\\": \\"p1=1/p2=abc\\\\n\\",\\n \\"dstProjectName\\": \\"mms_test\\",\\n \\"dstSchemaName\\": \\"default\\",\\n \\"dstTableName\\": \\"test\\",\\n \\"dstValue\\": \\"p1=1/p2=abc\\",\\n \\"sourceId\\": 200018,\\n \\"sourceName\\": \\"demo\\",\\n \\"size\\": 12323,\\n \\"numRows\\": 2323,\\n \\"updated\\": false,\\n \\"lastDdlTime\\": \\"2024-12-17 15:44:42\\\\n\\",\\n \\"status\\": \\"DONE\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetMmsPartition', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetMmsPartition', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + ], + ], + 'GetMmsTable' => [ + 'summary' => 'Retrieves a table from a MaxCompute Migration Assist (MMA) data source.', + 'path' => '/api/v1/mms/datasources/{sourceId}/tables/{tableId}', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '182963', + 'abilityTreeNodes' => [ + 'FEATUREodpsN8WEG6', + ], + ], + 'parameters' => [ + [ + 'name' => 'sourceId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The data source ID.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '12323', + 'title' => '', + ], + ], + [ + 'name' => 'tableId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The table ID.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '22', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ApiRes<TableModel>', + 'description' => 'ApiRes\\<tablemodel>', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => 'E7FB14F1-4ACD-5C73-A755-B302D70AB9AD'."\n", + 'title' => '', + ], + 'data' => [ + 'description' => 'The returned data.', + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The table ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '22', + 'title' => '', + ], + 'dbId' => [ + 'description' => 'The database ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '3', + 'title' => '', + ], + 'dbName' => [ + 'description' => 'The database name.', + 'type' => 'string', + 'example' => 'mms_test', + 'title' => '', + ], + 'name' => [ + 'description' => 'The table name.', + 'type' => 'string', + 'example' => 'test', + 'title' => '', + ], + 'dstProjectName' => [ + 'description' => 'The destination MaxCompute project name.', + 'type' => 'string', + 'example' => 'mms_test', + 'title' => '', + ], + 'dstSchemaName' => [ + 'description' => 'The destination MaxCompute schema name. This value is null if the destination MaxCompute project does not enable the schema layer.', + 'type' => 'string', + 'example' => 'default', + 'title' => '', + ], + 'dstName' => [ + 'description' => 'The destination MaxCompute table name. By default, this name matches the original table name.', + 'type' => 'string', + 'example' => 'test', + 'title' => '', + ], + 'type' => [ + 'description' => 'The table type.', + 'type' => 'string', + 'example' => 'MANAGED_TABLED', + 'title' => '', + ], + 'hasPartitions' => [ + 'description' => 'Indicates whether the table is a partitioned table.', + 'type' => 'boolean', + 'example' => 'true', + 'title' => '', + ], + 'schema' => [ + 'description' => 'The table schema.', + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The table name.', + 'type' => 'string', + 'example' => 'test', + 'title' => '', + ], + 'comment' => [ + 'description' => 'The comment of the table.', + 'type' => 'string', + 'example' => 'for mms test', + 'title' => '', + ], + 'columns' => [ + 'description' => 'All common columns.', + 'type' => 'array', + 'items' => [ + 'description' => 'A common column.', + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The column name.', + 'type' => 'string', + 'example' => 'user_id', + 'title' => '', + ], + 'type' => [ + 'description' => 'The data type of the column.', + 'type' => 'string', + 'example' => 'bigint', + 'title' => '', + ], + 'comment' => [ + 'description' => 'The comment of the column.', + 'type' => 'string', + 'example' => 'user id', + 'title' => '', + ], + 'defaultValue' => [ + 'description' => 'The default value of the column.', + 'type' => 'string', + 'example' => '10', + 'title' => '', + ], + 'nullable' => [ + 'description' => 'Indicates whether the column can be null.', + 'type' => 'boolean', + 'example' => 'false', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'partitions' => [ + 'description' => 'All partition key columns.', + 'type' => 'array', + 'items' => [ + 'description' => 'A partition key column.', + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The column name.', + 'type' => 'string', + 'example' => 'p1', + 'title' => '', + ], + 'type' => [ + 'description' => 'The data type of the column.', + 'type' => 'string', + 'example' => 'string', + 'title' => '', + ], + 'comment' => [ + 'description' => 'The comment of the column.', + 'type' => 'string', + 'example' => 'first partition level', + 'title' => '', + ], + 'defaultValue' => [ + 'description' => 'The default value of the column.', + 'type' => 'string', + 'example' => 'abc', + 'title' => '', + ], + 'nullable' => [ + 'description' => 'Indicates whether the column can be null.', + 'type' => 'boolean', + 'example' => 'false', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'owner' => [ + 'description' => 'The owner of the table.', + 'type' => 'string', + 'example' => 'Hive'."\n", + 'title' => '', + ], + 'location' => [ + 'description' => 'The storage location of the table.', + 'type' => 'string', + 'example' => '| hdfs://master-1-1.c-c127cd184bb029ea.cn-zhangjiakou.emr.aliyuncs.com:9000/user/hive/warehouse/demo'."\n", + 'title' => '', + ], + 'inputFormat' => [ + 'description' => 'The input format.', + 'type' => 'string', + 'example' => 'org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat '."\n", + 'title' => '', + ], + 'outputFormat' => [ + 'description' => 'The output format.', + 'type' => 'string', + 'example' => 'org.apache.hadoop.hive.ql.io.parquet.MapredParquetOutputFormat'."\n", + 'title' => '', + ], + 'serde' => [ + 'description' => 'The serializer/deserializer (SerDe).', + 'type' => 'string', + 'example' => 'org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe'."\n", + 'title' => '', + ], + 'extra' => [ + 'description' => 'Other information stored in JSON format.', + 'type' => 'string', + 'example' => '{"mapkey.delim":":","collection.delim":",","serialization.format":"|","field.delim":"|"} '."\n", + 'title' => '', + ], + 'partitions' => [ + 'description' => 'The number of partitions.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + 'title' => '', + ], + 'partitionsDoing' => [ + 'description' => 'The number of partitions that are being migrated.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + 'title' => '', + ], + 'partitionsDone' => [ + 'description' => 'The number of partitions that are migrated.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '80', + 'title' => '', + ], + 'partitionsFailed' => [ + 'description' => 'The number of partitions that failed to be migrated.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + 'title' => '', + ], + 'sourceId' => [ + 'description' => 'The data source ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2000028'."\n", + 'title' => '', + ], + 'sourceName' => [ + 'description' => 'The data source name.', + 'type' => 'string', + 'example' => 'demo', + 'title' => '', + ], + 'size' => [ + 'description' => 'The data size in bytes.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '23232', + 'title' => '', + ], + 'numRows' => [ + 'description' => 'The number of rows.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '233232', + 'title' => '', + ], + 'updated' => [ + 'description' => 'Indicates whether the metadata is updated.', + 'type' => 'boolean', + 'example' => 'false', + 'title' => '', + ], + 'lastDdlTime' => [ + 'description' => 'The last DDL time.', + 'type' => 'string', + 'example' => '2024-12-17 15:44:42'."\n", + 'title' => '', + ], + 'status' => [ + 'title' => 'INIT, DOING, FAILED, DONE, PART_DONE', + 'description' => 'The migration status.', + 'enumValueTitles' => [ + 'PART_DONE' => 'Partially migrated.', + 'INIT' => 'Not migrated.', + 'DONE' => 'Migrated.', + 'DOING' => 'Migrating.', + 'FAILED' => 'Migration failed.', + ], + 'type' => 'string', + 'example' => 'DONE', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"E7FB14F1-4ACD-5C73-A755-B302D70AB9AD\\\\n\\",\\n \\"data\\": {\\n \\"id\\": 22,\\n \\"dbId\\": 3,\\n \\"dbName\\": \\"mms_test\\",\\n \\"name\\": \\"test\\",\\n \\"dstProjectName\\": \\"mms_test\\",\\n \\"dstSchemaName\\": \\"default\\",\\n \\"dstName\\": \\"test\\",\\n \\"type\\": \\"MANAGED_TABLED\\",\\n \\"hasPartitions\\": true,\\n \\"schema\\": {\\n \\"name\\": \\"test\\",\\n \\"comment\\": \\"for mms test\\",\\n \\"columns\\": [\\n {\\n \\"name\\": \\"user_id\\",\\n \\"type\\": \\"bigint\\",\\n \\"comment\\": \\"user id\\",\\n \\"defaultValue\\": \\"10\\",\\n \\"nullable\\": false\\n }\\n ],\\n \\"partitions\\": [\\n {\\n \\"name\\": \\"p1\\",\\n \\"type\\": \\"string\\",\\n \\"comment\\": \\"first partition level\\",\\n \\"defaultValue\\": \\"abc\\",\\n \\"nullable\\": false\\n }\\n ]\\n },\\n \\"owner\\": \\"Hive\\\\n\\",\\n \\"location\\": \\"| hdfs://master-1-1.c-c127cd184bb029ea.cn-zhangjiakou.emr.aliyuncs.com:9000/user/hive/warehouse/demo\\\\n\\",\\n \\"inputFormat\\": \\"org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat \\\\n\\",\\n \\"outputFormat\\": \\"org.apache.hadoop.hive.ql.io.parquet.MapredParquetOutputFormat\\\\n\\",\\n \\"serde\\": \\"org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe\\\\n\\",\\n \\"extra\\": \\"{\\\\\\"mapkey.delim\\\\\\":\\\\\\":\\\\\\",\\\\\\"collection.delim\\\\\\":\\\\\\",\\\\\\",\\\\\\"serialization.format\\\\\\":\\\\\\"|\\\\\\",\\\\\\"field.delim\\\\\\":\\\\\\"|\\\\\\"} \\\\n\\",\\n \\"partitions\\": 100,\\n \\"partitionsDoing\\": 20,\\n \\"partitionsDone\\": 80,\\n \\"partitionsFailed\\": 0,\\n \\"sourceId\\": 2000028,\\n \\"sourceName\\": \\"demo\\",\\n \\"size\\": 23232,\\n \\"numRows\\": 233232,\\n \\"updated\\": false,\\n \\"lastDdlTime\\": \\"2024-12-17 15:44:42\\\\n\\",\\n \\"status\\": \\"DONE\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetMmsTable', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetMmsTable', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + ], + ], + 'GetMmsTask' => [ + 'summary' => 'Retrieves the details of a specific migration task.', + 'path' => '/api/v1/mms/datasources/{sourceId}/tasks/{taskId}', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '182981', + 'abilityTreeNodes' => [ + 'FEATUREodpsN8WEG6', + ], + ], + 'parameters' => [ + [ + 'name' => 'sourceId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The data source ID.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'title' => '', + 'example' => '2000015', + ], + ], + [ + 'name' => 'taskId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The migration task ID.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'title' => '', + 'example' => '7680', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ApiRes<TaskModel>', + 'description' => 'ApiRes', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => '73207140-0FD5-588A-B11A-3CE093924196', + ], + 'data' => [ + 'description' => 'The migration task object.', + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The migration task ID.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '7680', + ], + 'jobId' => [ + 'description' => 'The migration job ID.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '87', + ], + 'sourceId' => [ + 'description' => 'The data source ID.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '2000015', + ], + 'dbId' => [ + 'description' => 'The source database ID.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '23', + ], + 'tableId' => [ + 'description' => 'The source table ID.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '2323', + ], + 'jobName' => [ + 'description' => 'The migration job name.', + 'type' => 'string', + 'title' => '', + 'example' => 'test_odps_spark', + ], + 'sourceName' => [ + 'description' => 'The data source name.', + 'type' => 'string', + 'title' => '', + 'example' => 'demo', + ], + 'srcDbName' => [ + 'description' => 'The source database name.', + 'type' => 'string', + 'title' => '', + 'example' => 'mms_test', + ], + 'srcSchemaName' => [ + 'description' => 'The name of the source schema. This refers to the schema in a Layer 3 namespace.', + 'type' => 'string', + 'title' => '', + 'example' => 'default', + ], + 'srcTableName' => [ + 'description' => 'The source table name.', + 'type' => 'string', + 'title' => '', + 'example' => 'table_1', + ], + 'dstDbName' => [ + 'description' => 'The destination MaxCompute project.', + 'type' => 'string', + 'title' => '', + 'example' => 'mms_target', + ], + 'dstSchemaName' => [ + 'description' => 'The destination MaxCompute schema.', + 'type' => 'string', + 'title' => '', + 'example' => 'default', + ], + 'dstTableName' => [ + 'description' => 'The destination MaxCompute table.', + 'type' => 'string', + 'title' => '', + 'example' => 'table_1', + ], + 'type' => [ + 'title' => 'MOCK, HIVE: hive udtf task, HIVE_DATAX: hive datax task, COPY_TASK: odps Copy Task, ODPS_INSERT_OVERWRITE: odps simple insert overwrite task, MC2MC_VERIFY, OSS, HIVE_OSS', + 'description' => 'The task type.', + 'type' => 'string', + 'example' => 'BIGQUERY', + ], + 'status' => [ + 'title' => 'INIT, SCHEMA_DOING, SCHEMA_DONE, SCHEMA_FAILED, DATA_DOING, DATA_DONE, DATA_FAILED, VERIFICATION_DOING, VERIFICATION_DONE, VERIFICATION_FAILED, DONE', + 'description' => 'The migration task status.', + 'type' => 'string', + 'enumValueTitles' => [ + 'INIT' => 'The task is not started.', + 'SCHEMA_DONE' => 'The schema migration succeeded.', + 'SCHEMA_DOING' => 'The schema is being migrated.', + 'SCHEMA_FAILED' => 'The schema migration failed.', + 'DATA_DOING' => 'The data is being migrated.', + 'DATA_DONE' => 'The data migration succeeded.', + 'DATA_FAILED' => 'The data migration failed.', + ], + 'example' => 'DATA_DOING', + ], + 'running' => [ + 'description' => 'Indicates if the task is running.', + 'type' => 'boolean', + 'title' => '', + 'example' => 'true', + ], + 'stopped' => [ + 'description' => 'Indicates if the task is stopped.', + 'type' => 'boolean', + 'title' => '', + 'example' => 'false', + ], + 'retriedTimes' => [ + 'description' => 'The number of times the task has been retried.', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'example' => '1', + ], + 'startTime' => [ + 'description' => 'The start time of the task.', + 'type' => 'string', + 'title' => '', + 'example' => '2024-10-25 06:21:01'."\n", + ], + 'endTime' => [ + 'description' => 'The end time of the task.', + 'type' => 'string', + 'title' => '', + 'example' => '2024-10-25 07:21:01'."\n", + ], + 'createTime' => [ + 'description' => 'The creation time of the task.', + 'type' => 'string', + 'title' => '', + 'example' => '2024-10-25 04:21:01'."\n", + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'title' => 'GetMmsTask', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetMmsTask', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"73207140-0FD5-588A-B11A-3CE093924196\\",\\n \\"data\\": {\\n \\"id\\": 7680,\\n \\"jobId\\": 87,\\n \\"sourceId\\": 2000015,\\n \\"dbId\\": 23,\\n \\"tableId\\": 2323,\\n \\"jobName\\": \\"test_odps_spark\\",\\n \\"sourceName\\": \\"demo\\",\\n \\"srcDbName\\": \\"mms_test\\",\\n \\"srcSchemaName\\": \\"default\\",\\n \\"srcTableName\\": \\"table_1\\",\\n \\"dstDbName\\": \\"mms_target\\",\\n \\"dstSchemaName\\": \\"default\\",\\n \\"dstTableName\\": \\"table_1\\",\\n \\"type\\": \\"BIGQUERY\\",\\n \\"status\\": \\"DATA_DOING\\",\\n \\"running\\": true,\\n \\"stopped\\": false,\\n \\"retriedTimes\\": 1,\\n \\"startTime\\": \\"2024-10-25 06:21:01\\\\n\\",\\n \\"endTime\\": \\"2024-10-25 07:21:01\\\\n\\",\\n \\"createTime\\": \\"2024-10-25 04:21:01\\\\n\\"\\n }\\n}","type":"json"}]', + ], + 'GetPackage' => [ + 'path' => '/api/v1/projects/{projectName}/packages/{packageName}', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'projectName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the MaxCompute project.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'projectA', + ], + ], + [ + 'name' => 'packageName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the package.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'test_package', + ], + ], + [ + 'name' => 'sourceProject', + 'in' => 'query', + 'schema' => [ + 'description' => 'The project to which the package belongs. This parameter is required if the package is installed in the MaxCompute project.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'projectB', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<PackageInfo>', + 'description' => 'PopResult'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0b57ff8316614119858417939e3e54', + ], + 'httpCode' => [ + 'description' => 'Indicates whether the request was successful. If this parameter was not empty and the value of this parameter was not 200, the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code returned if the request failed.'."\n", + 'type' => 'string', + 'example' => '040002', + ], + 'errorMsg' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'error message.', + ], + 'data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'allowedProjectList' => [ + 'description' => 'The projects in which the package is installed.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The projects in which the package is installed.'."\n", + 'type' => 'object', + 'properties' => [ + 'label' => [ + 'description' => 'The security level for sensitive data.'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'project' => [ + 'description' => 'The name of the MaxCompute project.'."\n", + 'type' => 'string', + 'example' => 'proejctB', + ], + ], + ], + ], + 'resourceList' => [ + 'description' => 'The details of the resources that are included in the package.'."\n", + 'type' => 'object', + 'properties' => [ + 'table' => [ + 'description' => 'The tables.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tables.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the table.'."\n", + 'type' => 'string', + 'example' => 'dim_odps'."\n", + ], + 'schemaName' => [ + 'description' => 'The name of schema.', + 'type' => 'string', + 'example' => 'default', + ], + 'actions' => [ + 'description' => 'The operations that were performed on the table.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The operations that were performed on the table.'."\n", + 'type' => 'string', + 'example' => 'describe', + ], + ], + ], + ], + ], + 'resource' => [ + 'description' => 'The resources.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The resources.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the resource.'."\n", + 'type' => 'string', + 'example' => 'res_1', + ], + 'schemaName' => [ + 'description' => 'The name of schema.', + 'type' => 'string', + 'example' => 'default', + ], + 'actions' => [ + 'description' => 'The operations that were performed on the resource.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The operations that were performed on the resource.'."\n", + 'type' => 'string', + 'example' => 'read', + ], + ], + ], + ], + ], + 'function' => [ + 'description' => 'The functions.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The functions.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the function.'."\n", + 'type' => 'string', + 'example' => 'function_1', + ], + 'schemaName' => [ + 'description' => 'The name of schema.', + 'type' => 'string', + 'example' => 'default', + ], + 'actions' => [ + 'description' => 'The operations that were performed on the function.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The operations that were performed on the function.'."\n", + 'type' => 'string', + 'example' => 'read', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0b57ff8316614119858417939e3e54\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"040002\\",\\n \\"errorMsg\\": \\"error message.\\",\\n \\"data\\": {\\n \\"allowedProjectList\\": [\\n {\\n \\"label\\": \\"2\\",\\n \\"project\\": \\"proejctB\\"\\n }\\n ],\\n \\"resourceList\\": {\\n \\"table\\": [\\n {\\n \\"name\\": \\"dim_odps\\\\n\\",\\n \\"schemaName\\": \\"default\\",\\n \\"actions\\": [\\n \\"describe\\"\\n ]\\n }\\n ],\\n \\"resource\\": [\\n {\\n \\"name\\": \\"res_1\\",\\n \\"schemaName\\": \\"default\\",\\n \\"actions\\": [\\n \\"read\\"\\n ]\\n }\\n ],\\n \\"function\\": [\\n {\\n \\"name\\": \\"function_1\\",\\n \\"schemaName\\": \\"default\\",\\n \\"actions\\": [\\n \\"read\\"\\n ]\\n }\\n ]\\n }\\n }\\n}","type":"json"}]', + 'title' => 'GetPackage', + 'summary' => 'Obtains the information about a package.', + 'changeSet' => [ + [ + 'createdAt' => '2023-12-10T11:23:54.000Z', + 'description' => 'Response parameters changed', + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetPackage', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + ], + ], + 'GetProject' => [ + 'summary' => 'Queries the basic information about a MaxCompute project.', + 'path' => '/api/v1/projects/{projectName}', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '142482', + 'abilityTreeNodes' => [ + 'FEATUREodpsTZPZOE', + ], + ], + 'parameters' => [ + [ + 'name' => 'projectName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The project name.', + 'type' => 'string', + 'required' => true, + 'title' => '', + 'example' => 'odps_project', + ], + ], + [ + 'name' => 'verbose', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to include additional information, such as securityProperties and superAdmins.', + 'type' => 'boolean', + 'required' => false, + 'default' => 'true', + 'title' => '', + 'example' => 'true', + ], + ], + [ + 'name' => 'withStorageTierInfo', + 'in' => 'query', + 'schema' => [ + 'type' => 'boolean', + 'default' => 'true', + 'title' => '', + 'description' => 'Specifies whether to include additional information, such as properties.storageTierInfo.', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'withQuotaProductType', + 'in' => 'query', + 'schema' => [ + 'type' => 'boolean', + 'default' => 'true', + 'title' => '', + 'description' => 'Specifies whether to include additional information, such as productType.', + 'required' => false, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ProjectInfo>', + 'description' => 'The response parameters.', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => '0b87b7b316643495896551555e855b', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n" + ."\n" + .'- 1xx: Informational response. The request is received and is being processed.'."\n" + ."\n" + .'- 2xx: Success. The request is successfully received, understood, and accepted by the server.'."\n" + ."\n" + .'- 3xx: Redirection. The request is redirected, and further actions are required to complete the request.'."\n" + ."\n" + .'- 4xx: Client error. The request contains invalid request parameters or syntax, or specific request conditions cannot be met.'."\n" + ."\n" + .'- 5xx: Server error. The server cannot fulfill the request for other reasons.', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code.', + 'type' => 'string', + 'title' => '', + 'example' => 'OBJECT_NOT_EXIST', + ], + 'errorMsg' => [ + 'description' => 'The error message.', + 'type' => 'string', + 'title' => '', + 'example' => 'This object does not exist.', + ], + 'data' => [ + 'description' => 'The data returned.', + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The project name.', + 'type' => 'string', + 'title' => '', + 'example' => 'odps_project', + ], + 'owner' => [ + 'description' => 'The account information of the project owner.', + 'type' => 'string', + 'title' => '', + 'example' => 'ALIYUN$odps****@aliyunid.com', + ], + 'type' => [ + 'description' => 'The project type. Valid values:'."\n" + ."\n" + .'- **managed**: an internal project.'."\n" + ."\n" + .'- **external**: an external project.', + 'type' => 'string', + 'title' => '', + 'example' => 'managed', + ], + 'comment' => [ + 'description' => 'The project description.', + 'type' => 'string', + 'title' => '', + 'example' => 'BI_Analysis', + ], + 'defaultQuota' => [ + 'description' => 'The default computing quota. Quotas are used for resource allocation. If you do not specify a computing quota, jobs that are initiated in the project consume resources from the default quota. For more information, see <props="intl">[Use of computing resources](https://www.alibabacloud.com/help/en/maxcompute/user-guide/use-of-computing-resources)</props>.', + 'type' => 'string', + 'title' => '', + 'example' => 'os_PayAsYouGoQuota', + ], + 'status' => [ + 'description' => 'The project status. Valid values:'."\n" + ."\n" + .'- **AVAILABLE**: Normal'."\n" + ."\n" + .'- **READONLY**: read-only'."\n" + ."\n" + .'- **FROZEN**: frozen'."\n" + ."\n" + .'- **DELETING**: being deleted', + 'type' => 'string', + 'title' => '', + 'example' => 'AVAILABLE', + ], + 'productType' => [ + 'description' => 'The billing method of the default computing quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'PayAsYouGo', + ], + 'threeTierModel' => [ + 'description' => 'Specifies whether data storage by schema is supported. MaxCompute supports schemas. A schema is an object in a project. It is used to classify objects such as tables, resources, and user-defined functions (UDFs). You can create multiple schemas in a project. For more information, see <props="intl">[Schema operations](https://www.alibabacloud.com/help/en/maxcompute/user-guide/schema-related-operations)</props>.', + 'type' => 'boolean', + 'title' => '', + 'example' => 'true', + ], + 'costStorage' => [ + 'description' => 'The total storage usage. This value indicates the logical storage size after data is collected and compressed for the project. The storage usage is the same as the usage for billing.', + 'type' => 'string', + 'title' => '', + 'example' => '16489027', + ], + 'regionId' => [ + 'title' => '', + 'description' => 'The region ID.', + 'type' => 'string', + 'example' => 'cn-beijing', + ], + 'createdTime' => [ + 'title' => '', + 'description' => 'The time when the project was created.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1704380838000'."\n", + ], + 'properties' => [ + 'description' => 'The basic properties of the project.', + 'type' => 'object', + 'properties' => [ + 'timezone' => [ + 'description' => 'The time zone of the project. This parameter corresponds to the `odps.sql.timezone` property.', + 'type' => 'string', + 'title' => '', + 'example' => 'Asia/Shanghai', + ], + 'retentionDays' => [ + 'description' => 'The retention period of backup data. Unit: days. During this period, you can restore the current data version to any backup version. The value can be an integer from 0 to 30. The default value is 1. A value of 0 indicates that the backup feature is disabled.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '1', + ], + 'allowFullScan' => [ + 'description' => 'Specifies whether to allow a full table scan in the project. A full table scan consumes a large amount of resources and reduces processing efficiency. By default, this feature is disabled.', + 'type' => 'boolean', + 'title' => '', + 'example' => 'false', + ], + 'typeSystem' => [ + 'description' => 'The data type edition. Valid values:'."\n" + ."\n" + .'- **1**: V1.0'."\n" + ."\n" + .'- **2**: V2.0'."\n" + ."\n" + .'- **hive**: Hive-compatible'."\n" + ."\n" + .'For more information, see <props="intl">[Data type editions](https://www.alibabacloud.com/help/en/maxcompute/user-guide/data-type-editions)</props>.', + 'type' => 'string', + 'title' => '', + 'example' => '2.0', + ], + 'enableDecimal2' => [ + 'description' => 'Specifies whether to enable the DECIMAL data type of MaxCompute V2.0 for the project.', + 'type' => 'boolean', + 'title' => '', + 'example' => 'true', + ], + 'sqlMeteringMax' => [ + 'description' => 'The maximum consumption threshold of a single SQL statement. Formula: Amount of scanned data (GB) × Complexity.', + 'type' => 'string', + 'title' => '', + 'example' => '1500', + ], + 'tableLifecycle' => [ + 'description' => 'The lifecycle properties of the table.', + 'type' => 'object', + 'properties' => [ + 'type' => [ + 'description' => 'The lifecycle type. Valid values:'."\n" + ."\n" + .'- **mandatory**: The Lifecycle clause is required. You must set a lifecycle for the table.'."\n" + ."\n" + .'- **optional**: The Lifecycle clause is optional when you create a table. If you do not set a lifecycle for the table, the table is permanently valid.'."\n" + ."\n" + .'- **inherit**: If you do not set a lifecycle for a table when you create it, the lifecycle of the table is the value of odps.table.lifecycle.value.', + 'type' => 'string', + 'title' => '', + 'example' => 'optional', + ], + 'value' => [ + 'description' => 'The lifecycle of the table. Unit: days. The value can be an integer from 1 to 37231. The default value is 37231.', + 'type' => 'string', + 'title' => '', + 'example' => '37231', + ], + ], + 'title' => '', + 'example' => '', + ], + 'encryption' => [ + 'description' => 'The storage encryption properties.', + 'type' => 'object', + 'properties' => [ + 'enable' => [ + 'description' => 'Specifies whether to enable data encryption for the project. For more information, see <props="intl">[Storage encryption](https://www.alibabacloud.com/help/en/maxcompute/security-and-compliance/storage-encryption)</props>.', + 'type' => 'boolean', + 'title' => '', + 'example' => 'true', + ], + 'algorithm' => [ + 'description' => 'The data encryption algorithm. Supported algorithms include AES256, AESCTR, and RC4.', + 'type' => 'string', + 'title' => '', + 'example' => 'AES256', + ], + 'key' => [ + 'description' => 'The type of key used for data encryption. Valid values include MaxCompute Default Key and Bring-Your-Own-Key (BYOK). MaxCompute Default Key is a default key created within MaxCompute.', + 'type' => 'string', + 'title' => '', + 'example' => 'dafault', + ], + ], + 'title' => '', + 'example' => '', + ], + 'tunnelQuota' => [ + 'description' => 'The <props="intl">[Data Transmission Service](https://www.alibabacloud.com/help/en/maxcompute/user-guide/overview-of-dts)</props> resource group that is bound to the project.'."\n" + ."\n" + .'- Default (shared Data Transmission Service resource group): The project cannot use a subscription Data Transmission Service resource group. Regardless of the value of the default Data Transmission Service resource group, the Data Transmission Service automatically uses the Default resource group for data transmission tasks that are submitted by default in the project.'."\n" + ."\n" + .'- Subscription Data Transmission Service resource group: The project can use a subscription Data Transmission Service resource group.', + 'type' => 'string', + 'title' => '', + 'example' => 'Default', + ], + 'elderTunnelQuota' => [ + 'description' => 'The parent resource group of the Data Transmission Service resource group that is bound to the project. This parameter is for internal use.', + 'type' => 'string', + 'title' => '', + 'example' => 'Default_p', + ], + 'enableTunnelQuotaRoute' => [ + 'description' => 'Specifies whether to enable routing for the Data Transmission Service resource group.'."\n" + ."\n" + .'- true: The data transmission tasks that are submitted by default in the project use the Data Transmission Service resource group that is bound to the project.'."\n" + ."\n" + .'- false: The data transmission tasks that are submitted by default in the project use the shared Data Transmission Service resource group.', + 'type' => 'boolean', + 'title' => '', + 'example' => 'true', + ], + 'storageTierInfo' => [ + 'description' => 'The <props="intl">[tiered storage](https://www.alibabacloud.com/help/en/maxcompute/user-guide/tiered-storage)</props> information.', + 'type' => 'object', + 'properties' => [ + 'storageTierSize' => [ + 'description' => 'The <props="intl">[tiered storage](https://www.alibabacloud.com/help/en/maxcompute/user-guide/tiered-storage)</props> information.', + 'type' => 'object', + 'properties' => [ + 'standardSize' => [ + 'description' => 'The Standard storage usage.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '27649172', + ], + 'longTermSize' => [ + 'description' => 'The long-term storage usage.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '21764917', + ], + 'lowFrequencySize' => [ + 'description' => 'The IA storage class usage.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '767693', + ], + ], + 'title' => '', + 'example' => '', + ], + 'projectTotalSize' => [ + 'description' => 'The total storage usage.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '56066037', + ], + 'projectBackupSize' => [ + 'description' => 'The backup storage size.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '86672917', + ], + ], + 'title' => '', + 'example' => '', + ], + 'fdcQuota' => [ + 'title' => 'fdc quota', + 'description' => 'The quota for external table caching.', + 'type' => 'string', + 'example' => 'fdc_quota', + ], + 'enableFdcCacheForce' => [ + 'title' => '', + 'description' => 'Specifies whether to forcefully enable external table caching.', + 'type' => 'boolean', + 'example' => 'true', + ], + 'enableTieredStorage' => [ + 'description' => 'Specifies whether to enable <props="intl">[tiered storage](https://www.alibabacloud.com/help/en/maxcompute/user-guide/tiered-storage)</props>.', + 'type' => 'boolean', + 'title' => '', + 'example' => 'true', + ], + 'tableLifecycleConfig' => [ + 'description' => 'The properties of the <props="intl">[tiered storage lifecycle rule](https://www.alibabacloud.com/help/en/maxcompute/user-guide/tiered-storage#f61fc9db76nna)</props>. After you set these properties, the system automatically triggers the conversion of storage classes based on the rule.', + 'type' => 'object', + 'properties' => [ + 'TierToLongterm' => [ + 'description' => 'The identifier for the long-term storage class.', + 'type' => 'object', + 'properties' => [ + 'DaysAfterLastModificationGreaterThan' => [ + 'description' => 'The number of days after the data was last modified. After this period, the storage class is automatically changed. This corresponds to the `LastModifiedTime` of the table or partition.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '180', + ], + 'DaysAfterLastAccessGreaterThan' => [ + 'description' => 'The number of days after the data was last accessed. After this period, the storage class is automatically changed. This corresponds to the `LastAccessTime` of the table or partition.'."\n" + ."\n" + .'> If the LastAccessTime of the table or partition is empty:'."\n" + .'>'."\n" + .'> - For tables or partitions that were created before October 1, 2023, the last access time is considered 00:00:00 on October 1, 2023 (UTC+0).'."\n" + .'>'."\n" + .'> - For tables or partitions that were created on or after October 1, 2023, if the data has not been accessed, the creation time of the table or partition is considered the last access time.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '180', + ], + 'DaysAfterLastTierModificationGreaterThan' => [ + 'description' => 'The number of days after the storage class was last changed.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '1', + ], + ], + 'title' => '', + 'example' => '', + ], + 'TierToLowFrequency' => [ + 'description' => 'The identifier for the IA storage class.', + 'type' => 'object', + 'properties' => [ + 'DaysAfterLastModificationGreaterThan' => [ + 'description' => 'The number of days after the data was last modified. After this period, the storage class is automatically changed. This corresponds to the `LastModifiedTime` of the table or partition.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '30', + ], + 'DaysAfterLastAccessGreaterThan' => [ + 'description' => 'The number of days after the data was last accessed. After this period, the storage class is automatically changed. This corresponds to the `LastAccessTime` of the table or partition.'."\n" + ."\n" + .'> If the LastAccessTime of the table or partition is empty:'."\n" + .'>'."\n" + .'> - For tables or partitions that were created before October 1, 2023, the last access time is considered 00:00:00 on October 1, 2023 (UTC+0).'."\n" + .'>'."\n" + .'> - For tables or partitions that were created on or after October 1, 2023, if the data has not been accessed, the creation time of the table or partition is considered the last access time.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '30', + ], + 'DaysAfterLastTierModificationGreaterThan' => [ + 'description' => 'The number of days after the storage class was last changed.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '1', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'externalProjectProperties' => [ + 'description' => 'The properties of the external project.', + 'type' => 'object', + 'properties' => [ + 'isExternalCatalogBound' => [ + 'description' => 'Specifies whether the project is an external project of <props="intl">[data lakehouse 2.0](https://www.alibabacloud.com/help/en/maxcompute/user-guide/lake-warehouse-integrated-2-0-use-guide)</props>.', + 'type' => 'string', + 'title' => '', + 'example' => 'true', + ], + 'tableFormat' => [ + 'type' => 'string', + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'warehouse' => [ + 'type' => 'string', + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'foreignServerName' => [ + 'type' => 'string', + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'foreignServerType' => [ + 'type' => 'string', + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'externalCatalogId' => [ + 'type' => 'string', + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'enableAutoMv' => [ + 'type' => 'boolean', + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'autoMvQuotaGb' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'enableDr' => [ + 'type' => 'boolean', + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'superAdmins' => [ + 'description' => 'The list of members that are assigned the `Super_Administrator` role in the project.', + 'type' => 'array', + 'items' => [ + 'description' => 'The account information of a member that is assigned the `Super_Administrator` role in the project.', + 'type' => 'string', + 'title' => '', + 'example' => 'RAM$odps****@aliyunid.com:RAM_USER'."\n", + ], + 'title' => '', + 'example' => '', + ], + 'securityProperties' => [ + 'description' => 'The permission properties.', + 'type' => 'object', + 'properties' => [ + 'usingAcl' => [ + 'description' => 'Specifies whether to use the <props="intl">[ACL-based access control](https://www.alibabacloud.com/help/en/maxcompute/user-guide/acl-based-access-control)</props> feature. By default, this feature is enabled.', + 'type' => 'boolean', + 'title' => '', + 'example' => 'true', + ], + 'usingPolicy' => [ + 'description' => 'Specifies whether to use the <props="intl">[policy-based access control](https://www.alibabacloud.com/help/en/maxcompute/user-guide/policy-based-access-control-1)</props> feature. By default, this feature is enabled.', + 'type' => 'boolean', + 'title' => '', + 'example' => 'true', + ], + 'objectCreatorHasAccessPermission' => [ + 'description' => 'Specifies whether the creator of an object has access permissions on the object. Default value: true.', + 'type' => 'boolean', + 'title' => '', + 'example' => 'true', + ], + 'objectCreatorHasGrantPermission' => [ + 'description' => 'Specifies whether the creator of an object has grant permissions on the object. Default value: true.', + 'type' => 'boolean', + 'title' => '', + 'example' => 'true', + ], + 'labelSecurity' => [ + 'description' => 'Specifies whether to use the <props="intl">[label-based access control](https://www.alibabacloud.com/help/en/maxcompute/user-guide/label-based-access-control)</props> feature. By default, this feature is disabled.', + 'type' => 'boolean', + 'title' => '', + 'example' => 'false', + ], + 'enableDownloadPrivilege' => [ + 'description' => 'Specifies whether to use the <props="intl">[download control](https://www.alibabacloud.com/help/en/maxcompute/user-guide/download-control)</props> feature. By default, this feature is disabled.', + 'type' => 'boolean', + 'title' => '', + 'example' => 'false', + ], + 'projectProtection' => [ + 'description' => 'The properties of the <props="intl">[data protection mechanism](https://www.alibabacloud.com/help/en/maxcompute/security-and-compliance/project-data-protection)</props>.', + 'type' => 'object', + 'properties' => [ + 'exceptionPolicy' => [ + 'description' => 'If data protection is enabled for a project, you can configure an exception policy to specify exception or trusted projects. This policy allows specified users to transfer data from a specified object to a specified project. The data protection mechanism does not apply to the scenarios described in the exception policy.', + 'type' => 'string', + 'title' => '', + 'example' => '{'."\n" + .' "Version": "1",'."\n" + .' "Statement": ['."\n" + .' {'."\n" + .' "Effect": "Allow",'."\n" + .' "Principal": "",'."\n" + .' "Action": ['."\n" + .' "odps:[, , ...]"'."\n" + .' ],'."\n" + .' "Resource": "acs:odps:*:",'."\n" + .' "Condition": {'."\n" + .' "StringEquals": {'."\n" + .' "odps:TaskType": ['."\n" + .' ""'."\n" + .' ]'."\n" + .' }'."\n" + .' }'."\n" + .' }'."\n" + .' ]'."\n" + .'}', + ], + 'protected' => [ + 'description' => 'Specifies whether to enable the <props="intl">[data protection mechanism](https://www.alibabacloud.com/help/en/maxcompute/security-and-compliance/project-data-protection)</props> for the project to prohibit or allow data to flow out of the project. By default, this mechanism is disabled.', + 'type' => 'boolean', + 'title' => '', + 'example' => 'true', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'ipWhiteList' => [ + 'description' => 'The IP address whitelist.', + 'type' => 'object', + 'properties' => [ + 'ipList' => [ + 'description' => 'The IP address whitelist for access over the Internet or a network that is used to interconnect with other Alibaba Cloud services.'."\n" + ."\n" + .'> If you configure only this IP address whitelist, access over the Internet or the network that is used to interconnect with other Alibaba Cloud services is restricted based on the configuration, and access over a VPC is prohibited.', + 'type' => 'string', + 'title' => '', + 'example' => '10.88.111.3', + ], + 'vpcIpList' => [ + 'description' => 'The IP address whitelist for access over a VPC.'."\n" + ."\n" + .'> If you configure only this IP address whitelist, access over a VPC is restricted based on the configuration, and access over the Internet or a network that is used to interconnect with other Alibaba Cloud services is prohibited.', + 'type' => 'string', + 'title' => '', + 'example' => '10.88.111.3', + ], + ], + 'title' => '', + 'example' => '', + ], + 'saleTag' => [ + 'description' => 'The instance ID and billing method of the default computing quota.', + 'type' => 'object', + 'properties' => [ + 'resourceId' => [ + 'description' => 'The instance ID of the default computing quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'b7afb7d1-****-****-****-c393669c307b', + ], + 'resourceType' => [ + 'description' => 'The billing method of the default computing quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'PayAsYouGo', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0b87b7b316643495896551555e855b\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"OBJECT_NOT_EXIST\\",\\n \\"errorMsg\\": \\"This object does not exist.\\",\\n \\"data\\": {\\n \\"name\\": \\"odps_project\\",\\n \\"owner\\": \\"ALIYUN$odps****@aliyunid.com\\",\\n \\"type\\": \\"managed\\",\\n \\"comment\\": \\"BI_Analysis\\",\\n \\"defaultQuota\\": \\"os_PayAsYouGoQuota\\",\\n \\"status\\": \\"AVAILABLE\\",\\n \\"productType\\": \\"PayAsYouGo\\",\\n \\"threeTierModel\\": true,\\n \\"costStorage\\": \\"16489027\\",\\n \\"regionId\\": \\"cn-beijing\\",\\n \\"createdTime\\": 1704380838000,\\n \\"properties\\": {\\n \\"timezone\\": \\"Asia/Shanghai\\",\\n \\"retentionDays\\": 1,\\n \\"allowFullScan\\": false,\\n \\"typeSystem\\": \\"2.0\\",\\n \\"enableDecimal2\\": true,\\n \\"sqlMeteringMax\\": \\"1500\\",\\n \\"tableLifecycle\\": {\\n \\"type\\": \\"optional\\",\\n \\"value\\": \\"37231\\"\\n },\\n \\"encryption\\": {\\n \\"enable\\": true,\\n \\"algorithm\\": \\"AES256\\",\\n \\"key\\": \\"dafault\\"\\n },\\n \\"tunnelQuota\\": \\"Default\\",\\n \\"elderTunnelQuota\\": \\"Default_p\\",\\n \\"enableTunnelQuotaRoute\\": true,\\n \\"storageTierInfo\\": {\\n \\"storageTierSize\\": {\\n \\"standardSize\\": 27649172,\\n \\"longTermSize\\": 21764917,\\n \\"lowFrequencySize\\": 767693\\n },\\n \\"projectTotalSize\\": 56066037,\\n \\"projectBackupSize\\": 86672917\\n },\\n \\"fdcQuota\\": \\"fdc_quota\\",\\n \\"enableFdcCacheForce\\": true,\\n \\"enableTieredStorage\\": true,\\n \\"tableLifecycleConfig\\": {\\n \\"TierToLongterm\\": {\\n \\"DaysAfterLastModificationGreaterThan\\": 180,\\n \\"DaysAfterLastAccessGreaterThan\\": 180,\\n \\"DaysAfterLastTierModificationGreaterThan\\": 1\\n },\\n \\"TierToLowFrequency\\": {\\n \\"DaysAfterLastModificationGreaterThan\\": 30,\\n \\"DaysAfterLastAccessGreaterThan\\": 30,\\n \\"DaysAfterLastTierModificationGreaterThan\\": 1\\n }\\n },\\n \\"externalProjectProperties\\": {\\n \\"isExternalCatalogBound\\": \\"true\\",\\n \\"tableFormat\\": \\"\\",\\n \\"warehouse\\": \\"\\",\\n \\"foreignServerName\\": \\"\\",\\n \\"foreignServerType\\": \\"\\",\\n \\"externalCatalogId\\": \\"\\"\\n },\\n \\"enableAutoMv\\": false,\\n \\"autoMvQuotaGb\\": 0,\\n \\"enableDr\\": false\\n },\\n \\"superAdmins\\": [\\n \\"RAM$odps****@aliyunid.com:RAM_USER\\\\n\\"\\n ],\\n \\"securityProperties\\": {\\n \\"usingAcl\\": true,\\n \\"usingPolicy\\": true,\\n \\"objectCreatorHasAccessPermission\\": true,\\n \\"objectCreatorHasGrantPermission\\": true,\\n \\"labelSecurity\\": false,\\n \\"enableDownloadPrivilege\\": false,\\n \\"projectProtection\\": {\\n \\"exceptionPolicy\\": \\"{\\\\n \\\\\\"Version\\\\\\": \\\\\\"1\\\\\\",\\\\n \\\\\\"Statement\\\\\\": [\\\\n {\\\\n \\\\\\"Effect\\\\\\": \\\\\\"Allow\\\\\\",\\\\n \\\\\\"Principal\\\\\\": \\\\\\"\\\\\\",\\\\n \\\\\\"Action\\\\\\": [\\\\n \\\\\\"odps:[, , ...]\\\\\\"\\\\n ],\\\\n \\\\\\"Resource\\\\\\": \\\\\\"acs:odps:*:\\\\\\",\\\\n \\\\\\"Condition\\\\\\": {\\\\n \\\\\\"StringEquals\\\\\\": {\\\\n \\\\\\"odps:TaskType\\\\\\": [\\\\n \\\\\\"\\\\\\"\\\\n ]\\\\n }\\\\n }\\\\n }\\\\n ]\\\\n}\\",\\n \\"protected\\": true\\n }\\n },\\n \\"ipWhiteList\\": {\\n \\"ipList\\": \\"10.88.111.3\\",\\n \\"vpcIpList\\": \\"10.88.111.3\\"\\n },\\n \\"saleTag\\": {\\n \\"resourceId\\": \\"b7afb7d1-****-****-****-c393669c307b\\",\\n \\"resourceType\\": \\"PayAsYouGo\\"\\n }\\n }\\n}","type":"json"}]', + 'title' => 'GetProject', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + [ + 'threshold' => '800', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'GetProject', + ], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetProject', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + ], + ], + 'GetQuota' => [ + 'summary' => 'Retrieve information for the specified level-1 quota group. Warning: This operation will be decommissioned on July 31, 2024. It will be replaced by the `QueryQuota` operation. The request parameters, response parameters, and features of the two operations are the same.', + 'path' => '/api/v1/quotas/{nickname}', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '134191', + 'abilityTreeNodes' => [ + 'FEATUREodpsZAKNHC', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'nickname', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the quota.', + 'type' => 'string', + 'required' => true, + 'title' => '', + 'example' => '%E9%BB%98%E8%AE%A4%E9%A2%84%E4%BB%98%E8%B4%B9Quota_p'."\n" + ."\n" + .'#中文名称需要经过utf8 urlencode编码转义', + ], + ], + [ + 'name' => 'tenantId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'deprecated' => true, + 'title' => '', + 'example' => '', + ], + ], + [ + 'name' => 'region', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'deprecated' => true, + 'title' => '', + 'example' => '', + ], + ], + [ + 'name' => 'AkProven', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'default' => '', + 'deprecated' => true, + 'title' => '', + 'example' => '', + ], + ], + [ + 'name' => 'mock', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to include submodules. Valid values: -true: includes submodules. -false (default): does not include submodules.', + 'type' => 'boolean', + 'required' => false, + 'default' => 'false', + 'title' => '', + 'example' => 'false', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopCompatibleResult<QuotaInfo>', + 'description' => 'PopCompatibleResult', + 'type' => 'object', + 'properties' => [ + 'billingPolicy' => [ + 'description' => 'The order information.', + 'type' => 'object', + 'properties' => [ + 'billingMethod' => [ + 'title' => '', + 'description' => 'The billing method.'."\n" + ."\n" + .'- subscription: indicates a subscription quota.'."\n" + ."\n" + .'- payasyougo: indicates a pay-as-you-go quota.', + 'type' => 'string', + 'example' => 'subscription'."\n", + ], + 'odpsSpecCode' => [ + 'description' => 'The specifications of the order.', + 'type' => 'string', + 'title' => '', + 'example' => 'OdpsStandard', + ], + 'orderId' => [ + 'description' => 'The order ID.', + 'type' => 'string', + 'title' => '', + 'example' => '45245678', + ], + ], + 'title' => '', + 'example' => '', + ], + 'saleTag' => [ + 'description' => 'The identifier of the MaxCompute quota object. This identifier is the same as the identifier in the bill of Alibaba Cloud. This parameter is used in tagging scenarios.', + 'type' => 'object', + 'properties' => [ + 'resourceIds' => [ + 'description' => 'The identifier of the MaxCompute quota object. This identifier also exists in the billing subsystem of Alibaba Cloud. You can use this identifier to associate the costs of a quota object with a tag.', + 'type' => 'array', + 'items' => [ + 'description' => 'The identifier of the MaxCompute quota object. This identifier also exists in the billing subsystem of Alibaba Cloud. You can use this identifier to associate the costs of a quota object with a tag.', + 'type' => 'string', + 'title' => '', + 'example' => '"aaaaaaa-bbbb-4fd0-a8eb-50861590f7dd"'."\n", + ], + 'title' => '', + 'example' => '', + ], + 'resourceType' => [ + 'description' => 'The type of the object. Currently, only quota and project are supported.', + 'type' => 'string', + 'title' => '', + 'example' => '"quota"', + ], + ], + 'title' => '', + 'example' => '', + ], + 'cluster' => [ + 'description' => 'The cluster ID.', + 'type' => 'string', + 'title' => '', + 'example' => 'AT-120N', + ], + 'createTime' => [ + 'description' => 'The time when the resource was created.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '2022-09-06T02:14:44Z'."\n", + ], + 'creatorId' => [ + 'description' => 'The creator of the resource. This parameter is the UID of an Alibaba Cloud account.', + 'type' => 'string', + 'title' => '', + 'example' => '672863518'."\n", + ], + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => '0b87b7a316654730544735643e9200', + ], + 'id' => [ + 'description' => 'The quota ID.', + 'type' => 'string', + 'title' => '', + 'example' => '0', + ], + 'name' => [ + 'description' => 'The quota name.', + 'type' => 'string', + 'title' => '', + 'example' => 'quota_a'."\n", + ], + 'nickName' => [ + 'description' => 'The alias of the quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'quota_nickname', + ], + 'parameter' => [ + 'description' => 'The description of the quota.', + 'type' => 'object', + 'title' => '', + 'example' => '{"minCU":10, '."\n" + .'"adhocCU":0,'."\n" + .'"maxCU":10,'."\n" + .'"schedulerType":"Fair",'."\n" + .'}', + ], + 'parentId' => [ + 'description' => 'The ID of the parent resource.', + 'type' => 'string', + 'title' => '', + 'example' => 'null', + ], + 'regionId' => [ + 'description' => 'The region ID.', + 'type' => 'string', + 'title' => '', + 'example' => 'cn-beijing', + ], + 'scheduleInfo' => [ + 'description' => 'The time-sharing information.', + 'type' => 'object', + 'properties' => [ + 'currPlan' => [ + 'description' => 'The quota plan that is in effect based on the scheduling plan.', + 'type' => 'string', + 'title' => '', + 'example' => 'planA', + ], + 'currTime' => [ + 'description' => 'The time when the currPlan was scheduled.', + 'type' => 'string', + 'title' => '', + 'example' => '0800', + ], + 'nextPlan' => [ + 'description' => 'The quota plan that is about to take effect based on the scheduling plan.', + 'type' => 'string', + 'title' => '', + 'example' => 'planB', + ], + 'nextTime' => [ + 'description' => 'The time when the next\\_plan is scheduled.', + 'type' => 'string', + 'title' => '', + 'example' => '1700', + ], + 'oncePlan' => [ + 'description' => 'The quota plan that takes effect immediately.'."\n" + .'This parameter is not empty if a user triggers a plan that is different from the curr\\_plan to take effect immediately.', + 'type' => 'string', + 'title' => '', + 'example' => 'planC', + ], + 'onceTime' => [ + 'description' => 'The time when the immediate-effect plan was triggered.', + 'type' => 'string', + 'title' => '', + 'example' => '1500', + ], + 'operatorName' => [ + 'description' => 'The name of the operator.', + 'type' => 'string', + 'title' => '', + 'example' => 'userA', + ], + 'timezone' => [ + 'description' => 'The time zone.', + 'type' => 'string', + 'title' => '', + 'example' => 'UTC+8', + ], + ], + 'title' => '', + 'example' => '', + ], + 'status' => [ + 'description' => 'The resource status.', + 'type' => 'string', + 'title' => '', + 'example' => 'ON', + ], + 'subQuotaInfoList' => [ + 'description' => 'The information about the level-2 quotas.', + 'type' => 'array', + 'items' => [ + 'description' => 'The data.', + 'type' => 'object', + 'properties' => [ + 'billingPolicy' => [ + 'description' => 'The order information.', + 'type' => 'object', + 'properties' => [ + 'billingMethod' => [ + 'title' => '', + 'description' => 'The billing method.'."\n" + ."\n" + .'- subscription: indicates a subscription quota.'."\n" + ."\n" + .'- payasyougo: indicates a pay-as-you-go quota.', + 'type' => 'string', + 'example' => 'subscription', + ], + 'odpsSpecCode' => [ + 'description' => 'The specifications of the order.', + 'type' => 'string', + 'title' => '', + 'example' => 'OdpsStandard'."\n", + ], + 'orderId' => [ + 'description' => 'The order ID.', + 'type' => 'string', + 'title' => '', + 'example' => '45245678'."\n", + ], + ], + 'title' => '', + 'example' => '', + ], + 'saleTag' => [ + 'description' => 'The identifier of the MaxCompute quota object. This identifier is the same as the identifier in the bill of Alibaba Cloud. This parameter is used in tagging scenarios.', + 'type' => 'object', + 'properties' => [ + 'resourceIds' => [ + 'description' => 'The identifier of the MaxCompute quota object. This identifier also exists in the billing subsystem of Alibaba Cloud. You can use this identifier to associate the costs of a quota object with a tag.', + 'type' => 'array', + 'items' => [ + 'description' => 'The identifier of the MaxCompute quota object. This identifier also exists in the billing subsystem of Alibaba Cloud. You can use this identifier to associate the costs of a quota object with a tag.', + 'type' => 'string', + 'title' => '', + 'example' => '"aaaaaaa-bbbb-4fd0-a8eb-50861590f7dd"'."\n", + ], + 'title' => '', + 'example' => '', + ], + 'resourceType' => [ + 'description' => 'The type of the object. Currently, only quota and project are supported.', + 'type' => 'string', + 'title' => '', + 'example' => '"quota"', + ], + ], + 'title' => '', + 'example' => '', + ], + 'cluster' => [ + 'description' => 'The cluster ID.', + 'type' => 'string', + 'title' => '', + 'example' => 'AT-120N'."\n", + ], + 'createTime' => [ + 'description' => 'The time when the resource was created.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '2022-09-06T02:14:44Z'."\n", + ], + 'creatorId' => [ + 'description' => 'The creator of the resource. This parameter is the UID of an Alibaba Cloud account.', + 'type' => 'string', + 'title' => '', + 'example' => '672863518'."\n", + ], + 'id' => [ + 'description' => 'The level-2 quota ID.', + 'type' => 'string', + 'title' => '', + 'example' => '1000048'."\n", + ], + 'name' => [ + 'description' => 'The name of the level-2 quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'subquotaA'."\n", + ], + 'nickName' => [ + 'description' => 'The alias of the level-2 quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'subquotaA'."\n", + ], + 'parameter' => [ + 'description' => 'The description of the quota.', + 'type' => 'object', + 'example' => '{"minCU":10, '."\n" + .'"adhocCU":0,'."\n" + .'"maxCU":10,'."\n" + .'"schedulerType":"Fair",'."\n" + .'}', + 'properties' => [ + 'enablePriority' => [ + 'type' => 'boolean', + 'description' => 'Enables the priority feature.', + 'title' => '', + 'example' => 'true', + ], + 'forceReservedMin' => [ + 'type' => 'boolean', + 'description' => 'Specifies whether to enable exclusive use.', + 'title' => '', + 'example' => 'true', + ], + 'maxCU' => [ + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'description' => 'The upper limit of reserved computing units (CUs).', + 'title' => '', + 'example' => '50', + ], + 'minCU' => [ + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'description' => 'The guaranteed reserved CUs.', + 'title' => '', + 'example' => '50', + ], + 'schedulerType' => [ + 'type' => 'string', + 'description' => 'The scheduling policy.', + 'title' => '', + 'example' => 'Fifo/Fair', + ], + 'singleJobCULimit' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => 'The upper limit of CUs for a single job.', + 'title' => '', + 'example' => '10', + ], + 'elasticReservedCU' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => 'The value of elastic reserved CUs.', + 'title' => '', + 'example' => '50', + ], + ], + 'title' => '', + ], + 'parentId' => [ + 'description' => 'The ID of the parent resource.', + 'type' => 'string', + 'title' => '', + 'example' => '0', + ], + 'regionId' => [ + 'description' => 'The region ID.', + 'type' => 'string', + 'title' => '', + 'example' => 'cn-beijing', + ], + 'scheduleInfo' => [ + 'description' => 'The time-sharing information.', + 'type' => 'object', + 'properties' => [ + 'currPlan' => [ + 'description' => 'The quota plan that is in effect based on the scheduling plan.', + 'type' => 'string', + 'title' => '', + 'example' => 'planA', + ], + 'currTime' => [ + 'description' => 'The time when the currPlan was scheduled.', + 'type' => 'string', + 'title' => '', + 'example' => '0800', + ], + 'nextPlan' => [ + 'description' => 'The quota plan that is about to take effect based on the scheduling plan.', + 'type' => 'string', + 'title' => '', + 'example' => 'planB', + ], + 'nextTime' => [ + 'description' => 'The time when the next\\_plan is scheduled.', + 'type' => 'string', + 'title' => '', + 'example' => '1700', + ], + 'oncePlan' => [ + 'description' => 'The quota plan that takes effect immediately.'."\n" + .'This parameter is not empty if a user triggers a plan that is different from the curr\\_plan to take effect immediately.', + 'type' => 'string', + 'title' => '', + 'example' => 'planC', + ], + 'onceTime' => [ + 'description' => 'The time when the immediate-effect plan was triggered.', + 'type' => 'string', + 'title' => '', + 'example' => '1500', + ], + 'operatorName' => [ + 'description' => 'The name of the operator.', + 'type' => 'string', + 'title' => '', + 'example' => 'userA'."\n", + ], + 'timezone' => [ + 'description' => 'The time zone.', + 'type' => 'string', + 'title' => '', + 'example' => 'UTC+8', + ], + ], + 'title' => '', + 'example' => '', + ], + 'status' => [ + 'description' => 'The resource status.', + 'type' => 'string', + 'title' => '', + 'example' => 'ON'."\n", + ], + 'tag' => [ + 'description' => 'The resource tag of the quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'abc', + ], + 'tenantId' => [ + 'description' => 'The tenant ID.', + 'type' => 'string', + 'title' => '', + 'example' => '478403690625249', + ], + 'type' => [ + 'title' => '', + 'description' => 'This parameter corresponds to the resourceSystemType field of the control cluster.', + 'type' => 'string', + 'example' => 'FUXI_ONLINE', + ], + 'version' => [ + 'description' => 'The version number.', + 'type' => 'string', + 'title' => '', + 'example' => '1', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'tag' => [ + 'description' => 'The resource tag of the quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'abc', + ], + 'tenantId' => [ + 'description' => 'The tenant ID.', + 'type' => 'string', + 'title' => '', + 'example' => '478403690625249', + ], + 'type' => [ + 'title' => '', + 'description' => 'This parameter corresponds to the resourceSystemType field of the control cluster.', + 'type' => 'string', + 'example' => 'FUXI_ONLINE', + ], + 'version' => [ + 'description' => 'The version number.', + 'type' => 'string', + 'title' => '', + 'example' => '1', + ], + 'data' => [ + 'description' => 'The returned data.', + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The quota ID.', + 'type' => 'string', + 'title' => '', + 'example' => '0', + ], + 'name' => [ + 'description' => 'The quota name.', + 'type' => 'string', + 'title' => '', + 'example' => 'quota_a', + ], + 'nickName' => [ + 'description' => 'The alias of the quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'quota_nickname', + ], + 'type' => [ + 'title' => '', + 'description' => 'This parameter corresponds to the resourceSystemType field of the control cluster.', + 'type' => 'string', + 'example' => 'FUXI_ONLINE', + ], + 'status' => [ + 'description' => 'The resource status.', + 'type' => 'string', + 'title' => '', + 'example' => 'ON', + ], + 'saleTag' => [ + 'description' => 'The identifier of the MaxCompute quota object. This identifier is the same as the identifier in the bill of Alibaba Cloud. This parameter is used in tagging scenarios.', + 'type' => 'object', + 'properties' => [ + 'resourceIds' => [ + 'description' => 'The identifier of the MaxCompute quota object. This identifier also exists in the billing subsystem of Alibaba Cloud. You can use this identifier to associate the costs of a quota object with a tag.', + 'type' => 'array', + 'items' => [ + 'description' => 'The identifier of the MaxCompute quota object. This identifier also exists in the billing subsystem of Alibaba Cloud. You can use this identifier to associate the costs of a quota object with a tag.', + 'type' => 'string', + 'title' => '', + 'example' => '"aaaaaaa-bbbb-4fd0-a8eb-50861590f7dd"'."\n", + ], + 'title' => '', + 'example' => '', + ], + 'resourceType' => [ + 'description' => 'The type of the object. Currently, only quota and project are supported.', + 'type' => 'string', + 'title' => '', + 'example' => '"quota"'."\n", + ], + ], + 'title' => '', + 'example' => '', + ], + 'tenantId' => [ + 'description' => 'The tenant ID.', + 'type' => 'string', + 'title' => '', + 'example' => '478403690625249', + ], + 'regionId' => [ + 'description' => 'The region ID.', + 'type' => 'string', + 'title' => '', + 'example' => 'cn-beijing', + ], + 'parentId' => [ + 'description' => 'The ID of the parent resource.', + 'type' => 'string', + 'title' => '', + 'example' => 'null', + ], + 'cluster' => [ + 'description' => 'The cluster ID.', + 'type' => 'string', + 'title' => '', + 'example' => 'AT-120N', + ], + 'version' => [ + 'description' => 'The version number.', + 'type' => 'string', + 'title' => '', + 'example' => '1', + ], + 'billingPolicy' => [ + 'description' => 'The order information.', + 'type' => 'object', + 'properties' => [ + 'odpsSpecCode' => [ + 'description' => 'The specifications of the order.', + 'type' => 'string', + 'title' => '', + 'example' => 'OdpsStandard', + ], + 'orderId' => [ + 'description' => 'The order ID.', + 'type' => 'string', + 'title' => '', + 'example' => '45245678', + ], + 'billingMethod' => [ + 'title' => '', + 'description' => 'The billing method.'."\n" + ."\n" + .'- subscription: indicates a subscription quota.'."\n" + ."\n" + .'- payasyougo: indicates a pay-as-you-go quota.', + 'type' => 'string', + 'example' => 'subscription', + ], + ], + 'title' => '', + 'example' => '', + ], + 'scheduleInfo' => [ + 'description' => 'The time-sharing information.', + 'type' => 'object', + 'properties' => [ + 'currPlan' => [ + 'description' => 'The quota plan that is in effect based on the scheduling plan.', + 'type' => 'string', + 'title' => '', + 'example' => 'planA', + ], + 'currTime' => [ + 'description' => 'The time when the currPlan was scheduled.', + 'type' => 'string', + 'title' => '', + 'example' => '0800', + ], + 'nextPlan' => [ + 'description' => 'The quota plan that is about to take effect based on the scheduling plan.', + 'type' => 'string', + 'title' => '', + 'example' => 'planB', + ], + 'nextTime' => [ + 'description' => 'The time when the next\\_plan is scheduled.', + 'type' => 'string', + 'title' => '', + 'example' => '1700', + ], + 'oncePlan' => [ + 'description' => 'The quota plan that takes effect immediately.'."\n" + .'This parameter is not empty if a user triggers a plan that is different from the curr\\_plan to take effect immediately.', + 'type' => 'string', + 'title' => '', + 'example' => 'planC', + ], + 'onceTime' => [ + 'description' => 'The time when the immediate-effect plan was triggered.', + 'type' => 'string', + 'title' => '', + 'example' => '1500', + ], + 'operatorName' => [ + 'description' => 'The name of the operator.', + 'type' => 'string', + 'title' => '', + 'example' => 'userA', + ], + 'timezone' => [ + 'description' => 'The time zone.', + 'type' => 'string', + 'title' => '', + 'example' => 'UTC+8', + ], + ], + 'title' => '', + 'example' => '', + ], + 'parameter' => [ + 'description' => 'The description of the quota.', + 'type' => 'object', + 'title' => '', + 'example' => '{"minCU":10, '."\n" + .'"adhocCU":0,'."\n" + .'"maxCU":10,'."\n" + .'"schedulerType":"Fair",'."\n" + .'}', + ], + 'tag' => [ + 'description' => 'The resource tag of the quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'abc', + ], + 'createTime' => [ + 'description' => 'The time when the resource was created.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '2022-09-06T02:14:44Z', + ], + 'creatorId' => [ + 'description' => 'The creator of the resource. This parameter is the UID of an Alibaba Cloud account.', + 'type' => 'string', + 'title' => '', + 'example' => '672863518', + ], + 'subQuotaInfoList' => [ + 'description' => 'The information about the level-2 quotas.', + 'type' => 'array', + 'items' => [ + 'description' => 'The data.', + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The level-2 quota ID.', + 'type' => 'string', + 'title' => '', + 'example' => '1000048', + ], + 'name' => [ + 'description' => 'The name of the level-2 quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'subquotaA', + ], + 'saleTag' => [ + 'description' => 'The identifier of the MaxCompute quota object. This identifier is the same as the identifier in the bill of Alibaba Cloud. This parameter is used in tagging scenarios.', + 'type' => 'object', + 'properties' => [ + 'resourceIds' => [ + 'description' => 'The identifier of the MaxCompute quota object. This identifier also exists in the billing subsystem of Alibaba Cloud. You can use this identifier to associate the costs of a quota object with a tag.', + 'type' => 'array', + 'items' => [ + 'description' => 'The identifier of the MaxCompute quota object. This identifier also exists in the billing subsystem of Alibaba Cloud. You can use this identifier to associate the costs of a quota object with a tag.', + 'type' => 'string', + 'title' => '', + 'example' => '"aaaaaaa-bbbb-4fd0-a8eb-50861590f7dd"'."\n", + ], + 'title' => '', + 'example' => '', + ], + 'resourceType' => [ + 'description' => 'The type of the object. Currently, only quota and project are supported.', + 'type' => 'string', + 'title' => '', + 'example' => '"quota"'."\n", + ], + ], + 'title' => '', + 'example' => '', + ], + 'nickName' => [ + 'description' => 'The nickname of the level-2 quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'subquotaA', + ], + 'type' => [ + 'title' => '', + 'description' => 'This parameter corresponds to the resourceSystemType field of the control cluster.', + 'type' => 'string', + 'example' => 'FUXI_ONLINE', + ], + 'status' => [ + 'description' => 'The resource status.', + 'type' => 'string', + 'title' => '', + 'example' => 'ON', + ], + 'tenantId' => [ + 'description' => 'The tenant ID.', + 'type' => 'string', + 'title' => '', + 'example' => '478403690625249'."\n", + ], + 'regionId' => [ + 'description' => 'The region ID.', + 'type' => 'string', + 'title' => '', + 'example' => 'cn-beijing', + ], + 'parentId' => [ + 'description' => 'The ID of the parent resource.', + 'type' => 'string', + 'title' => '', + 'example' => '0', + ], + 'cluster' => [ + 'description' => 'The cluster ID.', + 'type' => 'string', + 'title' => '', + 'example' => 'AT-120N'."\n", + ], + 'version' => [ + 'description' => 'The version number.', + 'type' => 'string', + 'title' => '', + 'example' => '1', + ], + 'billingPolicy' => [ + 'description' => 'The order information.', + 'type' => 'object', + 'properties' => [ + 'odpsSpecCode' => [ + 'description' => 'The specifications of the order.', + 'type' => 'string', + 'title' => '', + 'example' => 'OdpsStandard', + ], + 'orderId' => [ + 'description' => 'The order ID.', + 'type' => 'string', + 'title' => '', + 'example' => '45245678', + ], + 'billingMethod' => [ + 'title' => '', + 'description' => 'The billing method.'."\n" + ."\n" + .'- subscription: indicates a subscription quota.'."\n" + ."\n" + .'- payasyougo: indicates a pay-as-you-go quota.', + 'type' => 'string', + 'example' => 'subscription', + ], + ], + 'title' => '', + 'example' => '', + ], + 'scheduleInfo' => [ + 'description' => 'The time-sharing information.', + 'type' => 'object', + 'properties' => [ + 'currPlan' => [ + 'description' => 'The quota plan that is in effect based on the scheduling plan.', + 'type' => 'string', + 'title' => '', + 'example' => 'planA', + ], + 'currTime' => [ + 'description' => 'The time when the currPlan was scheduled.', + 'type' => 'string', + 'title' => '', + 'example' => '0800', + ], + 'nextPlan' => [ + 'description' => 'The quota plan that is about to take effect based on the scheduling plan.', + 'type' => 'string', + 'title' => '', + 'example' => 'planB', + ], + 'nextTime' => [ + 'description' => 'The time when the next\\_plan is scheduled.', + 'type' => 'string', + 'title' => '', + 'example' => '1700', + ], + 'oncePlan' => [ + 'description' => 'The quota plan that takes effect immediately.'."\n" + .'This parameter is not empty if a user triggers a plan that is different from the curr\\_plan to take effect immediately.', + 'type' => 'string', + 'title' => '', + 'example' => 'planC', + ], + 'onceTime' => [ + 'description' => 'The time when the immediate-effect plan was triggered.', + 'type' => 'string', + 'title' => '', + 'example' => '1500', + ], + 'operatorName' => [ + 'description' => 'The name of the operator.', + 'type' => 'string', + 'title' => '', + 'example' => 'userA', + ], + 'timezone' => [ + 'description' => 'The time zone.', + 'type' => 'string', + 'title' => '', + 'example' => 'UTC+8', + ], + ], + 'title' => '', + 'example' => '', + ], + 'parameter' => [ + 'description' => 'The description of the quota.', + 'type' => 'object', + 'properties' => [ + 'enablePriority' => [ + 'type' => 'boolean', + 'description' => 'Enables the priority feature.', + 'title' => '', + 'example' => 'true', + ], + 'forceReservedMin' => [ + 'type' => 'boolean', + 'description' => 'Specifies whether to enable exclusive use.', + 'title' => '', + 'example' => 'true', + ], + 'maxCU' => [ + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'description' => 'The upper limit of reserved computing units (CUs).', + 'title' => '', + 'example' => '50', + ], + 'minCU' => [ + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'description' => 'The guaranteed reserved CUs.', + 'title' => '', + 'example' => '50', + ], + 'schedulerType' => [ + 'type' => 'string', + 'description' => 'The scheduling policy.', + 'title' => '', + 'example' => 'Fifo/Fair'."\n", + ], + 'singleJobCULimit' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => 'The upper limit of CUs for a single job.', + 'title' => '', + 'example' => '10', + ], + 'elasticReservedCU' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => 'The value of elastic reserved CUs.', + 'title' => '', + 'example' => '50', + ], + ], + 'title' => '', + 'example' => '', + ], + 'tag' => [ + 'description' => 'The resource tag of the quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'abc', + ], + 'createTime' => [ + 'description' => 'The time when the resource was created.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '2022-09-06T02:14:44Z'."\n", + ], + 'creatorId' => [ + 'description' => 'The creator of the resource. This parameter is the UID of an Alibaba Cloud account.', + 'type' => 'string', + 'title' => '', + 'example' => '672863518', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"billingPolicy\\": {\\n \\"billingMethod\\": \\"subscription\\\\n\\",\\n \\"odpsSpecCode\\": \\"OdpsStandard\\",\\n \\"orderId\\": \\"45245678\\"\\n },\\n \\"saleTag\\": {\\n \\"resourceIds\\": [\\n \\"\\\\\\"aaaaaaa-bbbb-4fd0-a8eb-50861590f7dd\\\\\\"\\\\n\\"\\n ],\\n \\"resourceType\\": \\"\\\\\\"quota\\\\\\"\\"\\n },\\n \\"cluster\\": \\"AT-120N\\",\\n \\"createTime\\": 0,\\n \\"creatorId\\": \\"672863518\\\\n\\",\\n \\"requestId\\": \\"0b87b7a316654730544735643e9200\\",\\n \\"id\\": \\"0\\",\\n \\"name\\": \\"quota_a\\\\n\\",\\n \\"nickName\\": \\"quota_nickname\\",\\n \\"parameter\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"parentId\\": \\"null\\",\\n \\"regionId\\": \\"cn-beijing\\",\\n \\"scheduleInfo\\": {\\n \\"currPlan\\": \\"planA\\",\\n \\"currTime\\": \\"0800\\",\\n \\"nextPlan\\": \\"planB\\",\\n \\"nextTime\\": \\"1700\\",\\n \\"oncePlan\\": \\"planC\\",\\n \\"onceTime\\": \\"1500\\",\\n \\"operatorName\\": \\"userA\\",\\n \\"timezone\\": \\"UTC+8\\"\\n },\\n \\"status\\": \\"ON\\",\\n \\"subQuotaInfoList\\": [\\n {\\n \\"billingPolicy\\": {\\n \\"billingMethod\\": \\"subscription\\",\\n \\"odpsSpecCode\\": \\"OdpsStandard\\\\n\\",\\n \\"orderId\\": \\"45245678\\\\n\\"\\n },\\n \\"saleTag\\": {\\n \\"resourceIds\\": [\\n \\"\\\\\\"aaaaaaa-bbbb-4fd0-a8eb-50861590f7dd\\\\\\"\\\\n\\"\\n ],\\n \\"resourceType\\": \\"\\\\\\"quota\\\\\\"\\"\\n },\\n \\"cluster\\": \\"AT-120N\\\\n\\",\\n \\"createTime\\": 0,\\n \\"creatorId\\": \\"672863518\\\\n\\",\\n \\"id\\": \\"1000048\\\\n\\",\\n \\"name\\": \\"subquotaA\\\\n\\",\\n \\"nickName\\": \\"subquotaA\\\\n\\",\\n \\"parameter\\": {\\n \\"enablePriority\\": true,\\n \\"forceReservedMin\\": true,\\n \\"maxCU\\": 50,\\n \\"minCU\\": 50,\\n \\"schedulerType\\": \\"Fifo/Fair\\",\\n \\"singleJobCULimit\\": 10,\\n \\"elasticReservedCU\\": 50\\n },\\n \\"parentId\\": \\"0\\",\\n \\"regionId\\": \\"cn-beijing\\",\\n \\"scheduleInfo\\": {\\n \\"currPlan\\": \\"planA\\",\\n \\"currTime\\": \\"0800\\",\\n \\"nextPlan\\": \\"planB\\",\\n \\"nextTime\\": \\"1700\\",\\n \\"oncePlan\\": \\"planC\\",\\n \\"onceTime\\": \\"1500\\",\\n \\"operatorName\\": \\"userA\\\\n\\",\\n \\"timezone\\": \\"UTC+8\\"\\n },\\n \\"status\\": \\"ON\\\\n\\",\\n \\"tag\\": \\"abc\\",\\n \\"tenantId\\": \\"478403690625249\\",\\n \\"type\\": \\"FUXI_ONLINE\\",\\n \\"version\\": \\"1\\"\\n }\\n ],\\n \\"tag\\": \\"abc\\",\\n \\"tenantId\\": \\"478403690625249\\",\\n \\"type\\": \\"FUXI_ONLINE\\",\\n \\"version\\": \\"1\\",\\n \\"data\\": {\\n \\"id\\": \\"0\\",\\n \\"name\\": \\"quota_a\\",\\n \\"nickName\\": \\"quota_nickname\\",\\n \\"type\\": \\"FUXI_ONLINE\\",\\n \\"status\\": \\"ON\\",\\n \\"saleTag\\": {\\n \\"resourceIds\\": [\\n \\"\\\\\\"aaaaaaa-bbbb-4fd0-a8eb-50861590f7dd\\\\\\"\\\\n\\"\\n ],\\n \\"resourceType\\": \\"\\\\\\"quota\\\\\\"\\\\n\\"\\n },\\n \\"tenantId\\": \\"478403690625249\\",\\n \\"regionId\\": \\"cn-beijing\\",\\n \\"parentId\\": \\"null\\",\\n \\"cluster\\": \\"AT-120N\\",\\n \\"version\\": \\"1\\",\\n \\"billingPolicy\\": {\\n \\"odpsSpecCode\\": \\"OdpsStandard\\",\\n \\"orderId\\": \\"45245678\\",\\n \\"billingMethod\\": \\"subscription\\"\\n },\\n \\"scheduleInfo\\": {\\n \\"currPlan\\": \\"planA\\",\\n \\"currTime\\": \\"0800\\",\\n \\"nextPlan\\": \\"planB\\",\\n \\"nextTime\\": \\"1700\\",\\n \\"oncePlan\\": \\"planC\\",\\n \\"onceTime\\": \\"1500\\",\\n \\"operatorName\\": \\"userA\\",\\n \\"timezone\\": \\"UTC+8\\"\\n },\\n \\"parameter\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"tag\\": \\"abc\\",\\n \\"createTime\\": 0,\\n \\"creatorId\\": \\"672863518\\",\\n \\"subQuotaInfoList\\": [\\n {\\n \\"id\\": \\"1000048\\",\\n \\"name\\": \\"subquotaA\\",\\n \\"saleTag\\": {\\n \\"resourceIds\\": [\\n \\"\\\\\\"aaaaaaa-bbbb-4fd0-a8eb-50861590f7dd\\\\\\"\\\\n\\"\\n ],\\n \\"resourceType\\": \\"\\\\\\"quota\\\\\\"\\\\n\\"\\n },\\n \\"nickName\\": \\"subquotaA\\",\\n \\"type\\": \\"FUXI_ONLINE\\",\\n \\"status\\": \\"ON\\",\\n \\"tenantId\\": \\"478403690625249\\\\n\\",\\n \\"regionId\\": \\"cn-beijing\\",\\n \\"parentId\\": \\"0\\",\\n \\"cluster\\": \\"AT-120N\\\\n\\",\\n \\"version\\": \\"1\\",\\n \\"billingPolicy\\": {\\n \\"odpsSpecCode\\": \\"OdpsStandard\\",\\n \\"orderId\\": \\"45245678\\",\\n \\"billingMethod\\": \\"subscription\\"\\n },\\n \\"scheduleInfo\\": {\\n \\"currPlan\\": \\"planA\\",\\n \\"currTime\\": \\"0800\\",\\n \\"nextPlan\\": \\"planB\\",\\n \\"nextTime\\": \\"1700\\",\\n \\"oncePlan\\": \\"planC\\",\\n \\"onceTime\\": \\"1500\\",\\n \\"operatorName\\": \\"userA\\",\\n \\"timezone\\": \\"UTC+8\\"\\n },\\n \\"parameter\\": {\\n \\"enablePriority\\": true,\\n \\"forceReservedMin\\": true,\\n \\"maxCU\\": 50,\\n \\"minCU\\": 50,\\n \\"schedulerType\\": \\"Fifo/Fair\\\\n\\",\\n \\"singleJobCULimit\\": 10,\\n \\"elasticReservedCU\\": 50\\n },\\n \\"tag\\": \\"abc\\",\\n \\"createTime\\": 0,\\n \\"creatorId\\": \\"672863518\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'GetQuota', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetQuota', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + ], + 'flowControl' => [ + 'flowControlList' => [ + [ + 'threshold' => '800', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'GetQuota', + ], + ], + ], + ], + 'GetQuotaPlan' => [ + 'path' => '/api/v1/quotas/{nickname}/plans/{planName}', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '142707', + 'abilityTreeNodes' => [ + 'FEATUREodpsZAKNHC', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'nickname', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the quota.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'quotaA', + ], + ], + [ + 'name' => 'planName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the quota plan.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'planA', + ], + ], + [ + 'name' => 'tenantId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the tenant.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '483212237127906', + ], + ], + [ + 'name' => 'region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-beijing', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<QuotaPlanDTO>', + 'description' => 'PopResult'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0be3e0aa16667684362147582e038f', + ], + 'data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the quota plan.'."\n", + 'type' => 'string', + 'example' => 'planA', + ], + 'createTime' => [ + 'description' => 'The time when the quota plan was created.'."\n", + 'type' => 'string', + 'example' => '2022-05-16T06:07:45Z', + ], + 'quota' => [ + 'description' => 'The details of the quota.'."\n", + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The ID of the quota.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'name' => [ + 'description' => 'The name of the quota.'."\n", + 'type' => 'string', + 'example' => 'quota_a'."\n", + ], + 'nickName' => [ + 'description' => 'The alias of the quota.'."\n", + 'type' => 'string', + 'example' => 'quota_nickname', + ], + 'type' => [ + 'title' => '', + 'description' => 'The type of the resource system. This parameter corresponds to the resourceSystemType parameter of the cluster.'."\n", + 'type' => 'string', + 'example' => 'FUXI_ONLINE', + ], + 'status' => [ + 'description' => 'The status of the resource.'."\n", + 'type' => 'string', + 'example' => 'ON', + ], + 'tenantId' => [ + 'description' => 'The ID of the tenant.'."\n", + 'type' => 'string', + 'example' => '478403690625249', + ], + 'regionId' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'example' => 'cn-beijing', + ], + 'parentId' => [ + 'description' => 'The ID of the parent resource.'."\n", + 'type' => 'string', + 'example' => 'null', + ], + 'cluster' => [ + 'description' => 'The ID of the cluster.'."\n", + 'type' => 'string', + 'example' => 'AT-120N'."\n", + ], + 'version' => [ + 'description' => 'The version number.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'billingPolicy' => [ + 'description' => 'The information of the order.'."\n", + 'type' => 'object', + 'properties' => [ + 'odpsSpecCode' => [ + 'description' => 'The specifications of the order.'."\n", + 'type' => 'string', + 'example' => 'OdpsStandard', + ], + 'orderId' => [ + 'description' => 'The ID of the order.'."\n", + 'type' => 'string', + 'example' => '45245678', + ], + 'billingMethod' => [ + 'title' => '', + 'description' => 'The billing method of the quota. Valid values:'."\n" + ."\n" + .'* subscription: a subscription quota.'."\n" + .'* payasyougo: a pay-as-you-go quota.'."\n", + 'type' => 'string', + 'example' => 'subscription', + ], + ], + ], + 'scheduleInfo' => [ + 'description' => 'The information of the scheduling plan.'."\n", + 'type' => 'object', + 'properties' => [ + 'currPlan' => [ + 'description' => 'The quota plan that takes effect based on the scheduling plan.'."\n", + 'type' => 'string', + 'example' => 'planA', + ], + 'currTime' => [ + 'description' => 'The time when the current quota plan is scheduled.'."\n", + 'type' => 'string', + 'example' => '0800', + ], + 'nextPlan' => [ + 'description' => 'The next quota plan that will take effect based on the scheduling plan.'."\n", + 'type' => 'string', + 'example' => 'planB', + ], + 'nextTime' => [ + 'description' => 'The time when the next quota plan is scheduled.'."\n", + 'type' => 'string', + 'example' => '1700', + ], + 'oncePlan' => [ + 'description' => 'If the quota plan that immediately takes effect is different from the current quota plan, this parameter is not empty.'."\n", + 'type' => 'string', + 'example' => 'planC', + ], + 'onceTime' => [ + 'description' => 'The time when the quota plan immediately takes effect.'."\n", + 'type' => 'string', + 'example' => '1500', + ], + 'operatorName' => [ + 'description' => 'The name of the operator.'."\n", + 'type' => 'string', + 'example' => 'userA', + ], + ], + ], + 'parameter' => [ + 'description' => 'The description of the quota.'."\n", + 'type' => 'object', + ], + 'tag' => [ + 'description' => 'The tag of the resource for the quota.'."\n", + 'type' => 'string', + 'example' => 'abc', + ], + 'createTime' => [ + 'description' => 'The time when the quota plan was created.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2022-09-06T02:14:44Z'."\n", + ], + 'creatorId' => [ + 'description' => 'The ID of the Alibaba Cloud account that is used to create the resource.'."\n", + 'type' => 'string', + 'example' => '672863518', + ], + 'subQuotaInfoList' => [ + 'description' => 'The information of the level-2 quota.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information of the level-2 quota.'."\n", + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The ID of the level-2 quota.'."\n", + 'type' => 'string', + 'example' => '1000048', + ], + 'name' => [ + 'description' => 'The name of the level-2 quota.'."\n", + 'type' => 'string', + 'example' => 'subquotaA', + ], + 'nickName' => [ + 'description' => 'The alias of the level-2 quota.'."\n", + 'type' => 'string', + 'example' => 'subquotaA', + ], + 'type' => [ + 'title' => '', + 'description' => 'The type of the resource system. This parameter corresponds to the resourceSystemType parameter of the cluster.'."\n", + 'type' => 'string', + 'example' => 'FUXI_ONLINE', + ], + 'status' => [ + 'description' => 'The status of the resource.'."\n", + 'type' => 'string', + 'example' => 'ON', + ], + 'tenantId' => [ + 'description' => 'The ID of the tenant.'."\n", + 'type' => 'string', + 'example' => '478403690625249', + ], + 'regionId' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'example' => 'cn-beijing', + ], + 'parentId' => [ + 'description' => 'The ID of the parent resource.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'cluster' => [ + 'description' => 'The ID of the cluster.'."\n", + 'type' => 'string', + 'example' => 'AT-120N'."\n", + ], + 'version' => [ + 'description' => 'The version number.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'billingPolicy' => [ + 'description' => 'The information of the order.'."\n", + 'type' => 'object', + 'properties' => [ + 'odpsSpecCode' => [ + 'description' => 'The specifications of the order.'."\n", + 'type' => 'string', + 'example' => 'OdpsStandard', + ], + 'orderId' => [ + 'description' => 'The ID of the order.'."\n", + 'type' => 'string', + 'example' => '45245678', + ], + 'billingMethod' => [ + 'title' => '', + 'description' => 'The billing method of the quota. Valid values:'."\n" + ."\n" + .'* subscription: a subscription quota.'."\n" + .'* payasyougo: a pay-as-you-go quota.'."\n", + 'type' => 'string', + 'example' => 'subscription', + ], + ], + ], + 'scheduleInfo' => [ + 'description' => 'The information of the scheduling plan.'."\n", + 'type' => 'object', + 'properties' => [ + 'currPlan' => [ + 'description' => 'The quota plan that takes effect based on the scheduling plan.'."\n", + 'type' => 'string', + 'example' => 'planA', + ], + 'currTime' => [ + 'description' => 'The time when the current quota plan is scheduled.'."\n", + 'type' => 'string', + 'example' => '0800', + ], + 'nextPlan' => [ + 'description' => 'The next quota plan that will take effect based on the scheduling plan.'."\n", + 'type' => 'string', + 'example' => 'planB', + ], + 'nextTime' => [ + 'description' => 'The time when the next quota plan is scheduled.'."\n", + 'type' => 'string', + 'example' => '1700', + ], + 'oncePlan' => [ + 'description' => 'If the quota plan that immediately takes effect is different from the current quota plan, this parameter is not empty.'."\n", + 'type' => 'string', + 'example' => 'planC', + ], + 'onceTime' => [ + 'description' => 'The time when the quota plan immediately takes effect.'."\n", + 'type' => 'string', + 'example' => '1500', + ], + 'operatorName' => [ + 'description' => 'The name of the operator.'."\n", + 'type' => 'string', + 'example' => 'userA', + ], + ], + ], + 'parameter' => [ + 'description' => 'The description of the quota.'."\n", + 'type' => 'object', + ], + 'tag' => [ + 'description' => 'The tag of the resource for the quota.'."\n", + 'type' => 'string', + 'example' => 'abc', + ], + 'createTime' => [ + 'description' => 'The time when the resource was created.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2022-09-06T02:14:44Z'."\n", + ], + 'creatorId' => [ + 'description' => 'The ID of the user who created the quota plan.'."\n", + 'type' => 'string', + 'example' => '672863518', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0be3e0aa16667684362147582e038f\\",\\n \\"data\\": {\\n \\"name\\": \\"planA\\",\\n \\"createTime\\": \\"2022-05-16T06:07:45Z\\",\\n \\"quota\\": {\\n \\"id\\": \\"0\\",\\n \\"name\\": \\"quota_a\\\\n\\",\\n \\"nickName\\": \\"quota_nickname\\",\\n \\"type\\": \\"FUXI_ONLINE\\",\\n \\"status\\": \\"ON\\",\\n \\"tenantId\\": \\"478403690625249\\",\\n \\"regionId\\": \\"cn-beijing\\",\\n \\"parentId\\": \\"null\\",\\n \\"cluster\\": \\"AT-120N\\\\n\\",\\n \\"version\\": \\"1\\",\\n \\"billingPolicy\\": {\\n \\"odpsSpecCode\\": \\"OdpsStandard\\",\\n \\"orderId\\": \\"45245678\\",\\n \\"billingMethod\\": \\"subscription\\"\\n },\\n \\"scheduleInfo\\": {\\n \\"currPlan\\": \\"planA\\",\\n \\"currTime\\": \\"0800\\",\\n \\"nextPlan\\": \\"planB\\",\\n \\"nextTime\\": \\"1700\\",\\n \\"oncePlan\\": \\"planC\\",\\n \\"onceTime\\": \\"1500\\",\\n \\"operatorName\\": \\"userA\\"\\n },\\n \\"parameter\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"tag\\": \\"abc\\",\\n \\"createTime\\": 0,\\n \\"creatorId\\": \\"672863518\\",\\n \\"subQuotaInfoList\\": [\\n {\\n \\"id\\": \\"1000048\\",\\n \\"name\\": \\"subquotaA\\",\\n \\"nickName\\": \\"subquotaA\\",\\n \\"type\\": \\"FUXI_ONLINE\\",\\n \\"status\\": \\"ON\\",\\n \\"tenantId\\": \\"478403690625249\\",\\n \\"regionId\\": \\"cn-beijing\\",\\n \\"parentId\\": \\"0\\",\\n \\"cluster\\": \\"AT-120N\\\\n\\",\\n \\"version\\": \\"1\\",\\n \\"billingPolicy\\": {\\n \\"odpsSpecCode\\": \\"OdpsStandard\\",\\n \\"orderId\\": \\"45245678\\",\\n \\"billingMethod\\": \\"subscription\\"\\n },\\n \\"scheduleInfo\\": {\\n \\"currPlan\\": \\"planA\\",\\n \\"currTime\\": \\"0800\\",\\n \\"nextPlan\\": \\"planB\\",\\n \\"nextTime\\": \\"1700\\",\\n \\"oncePlan\\": \\"planC\\",\\n \\"onceTime\\": \\"1500\\",\\n \\"operatorName\\": \\"userA\\"\\n },\\n \\"parameter\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"tag\\": \\"abc\\",\\n \\"createTime\\": 0,\\n \\"creatorId\\": \\"672863518\\"\\n }\\n ]\\n }\\n }\\n}","type":"json"}]', + 'title' => 'GetQuotaPlan', + 'summary' => 'Obtains the information of a quota plan.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetQuotaPlan', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + ], + ], + 'GetQuotaSchedule' => [ + 'path' => '/api/v1/quotas/{nickname}/schedule', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'nickname', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the quota.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'quotaA', + ], + ], + [ + 'name' => 'tenantId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the tenant.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '478403690625249', + ], + ], + [ + 'name' => 'region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-beijing', + ], + ], + [ + 'name' => 'displayTimezone', + 'in' => 'query', + 'schema' => [ + 'description' => 'The time zone.', + 'type' => 'string', + 'required' => false, + 'example' => 'UTC+8', + 'default' => 'UTC+8', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<List<QuotaScheduleDTO>>', + 'description' => 'PopResult\\<List>'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0bc059b716696296266308790e0d3e', + ], + 'httpCode' => [ + 'description' => 'Indicates whether the request was successful. If this parameter was not empty and the value of this parameter was not 200, the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => '* If the value of success was false, an error code was returned.'."\n" + .'* If the value of success was true, a null value was returned.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'errorMsg' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'errorMsg', + ], + 'data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The ID of the quota plan.'."\n", + 'type' => 'string', + 'example' => '63', + ], + 'type' => [ + 'description' => 'The type of the quota plan.'."\n", + 'type' => 'string', + 'example' => 'once', + ], + 'plan' => [ + 'description' => 'The name of the quota plan.'."\n", + 'type' => 'string', + 'example' => 'planA', + ], + 'condition' => [ + 'description' => 'The condition value.'."\n", + 'type' => 'object', + 'properties' => [ + 'at' => [ + 'description' => 'The time when the quota plan takes effect.'."\n", + 'type' => 'string', + 'example' => '0900', + ], + 'after' => [ + 'description' => 'The start time when the quota plan takes effect.'."\n", + 'type' => 'string', + 'example' => '2022-04-25T04:23:04Z'."\n", + ], + ], + ], + 'operator' => [ + 'description' => 'The name of the operator.'."\n", + 'type' => 'string', + 'example' => 'userA', + ], + 'timezone' => [ + 'description' => 'The time zone.', + 'type' => 'string', + 'example' => 'UTC+8', + ], + ], + ], + ], + ], + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0bc059b716696296266308790e0d3e\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"success\\",\\n \\"errorMsg\\": \\"errorMsg\\",\\n \\"data\\": [\\n {\\n \\"id\\": \\"63\\",\\n \\"type\\": \\"once\\",\\n \\"plan\\": \\"planA\\",\\n \\"condition\\": {\\n \\"at\\": \\"0900\\",\\n \\"after\\": \\"2022-04-25T04:23:04Z\\\\n\\"\\n },\\n \\"operator\\": \\"userA\\",\\n \\"timezone\\": \\"UTC+8\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'GetQuotaSchedule', + 'summary' => 'Obtains the scheduling plan for a quota plan.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetQuotaSchedule', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + ], + ], + 'GetQuotaUsage' => [ + 'path' => '/api/v1/quotas/{nickname}/usage', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '124741', + 'abilityTreeNodes' => [ + 'FEATUREodps2B6Z0N', + ], + ], + 'parameters' => [ + [ + 'name' => 'nickname', + 'in' => 'path', + 'schema' => [ + 'description' => 'The alias of the level-1 quota.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'os_quota_p', + ], + ], + [ + 'name' => 'tenantId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the tenant. You can log on to the MaxCompute console, and choose Tenants > Tenant Property from the left-side navigation pane to view the tenant ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '478403690625249', + ], + ], + [ + 'name' => 'region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-chengdu', + ], + ], + [ + 'name' => 'from', + 'in' => 'query', + 'schema' => [ + 'description' => 'The time when the query starts. The value is the log time that is specified when log data is written.'."\n" + ."\n" + .'* The time range that is specified in this operation is a left-closed, right-open interval. The interval includes the start time specified by the **from** parameter, but does not include the end time specified by the **to** parameter. If you set the **from** and **to** parameters to the same value, the time range is invalid and an error message is returned.'."\n" + .'* This value is a UNIX timestamp representing the number of seconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1669081045', + ], + ], + [ + 'name' => 'to', + 'in' => 'query', + 'schema' => [ + 'description' => 'The time when the query ends. The value is the log time that is specified when log data is written.'."\n" + ."\n" + .'* The time range that is specified in this operation is a left-closed, right-open interval. The interval includes the start time specified by the **from** parameter, but does not include the end time specified by the **to** parameter. If you set the **from** and **to** parameters to the same value, the time range is invalid and an error message is returned.'."\n" + .'* This value is a UNIX timestamp representing the number of seconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1669360870', + ], + ], + [ + 'name' => 'subQuotaNickname', + 'in' => 'query', + 'schema' => [ + 'description' => 'The alias of the level-2 quota.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ot_tunnel_quota', + ], + ], + [ + 'name' => 'aggMethod', + 'in' => 'query', + 'schema' => [ + 'description' => 'The aggregation algorithm. For a better page experience, up to 60 points can be displayed for each metric. If you select a time range longer than 1 hour, the chart uses the average value within the range (minutes of the selected time range/60) to aggregate data by default. You can change the aggregation algorithm based on your business requirements.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'max', + 'default' => 'avg', + ], + ], + [ + 'name' => 'productId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The quota type. Default value: ODPS.'."\n" + ."\n" + .'* ODPS: computing quota'."\n" + .'* TUNNEL: Tunnel quota'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [], + 'example' => 'ODPS', + 'default' => 'ODPS', + ], + ], + [ + 'name' => 'plotTypes', + 'in' => 'query', + 'style' => 'simple', + 'schema' => [ + 'description' => 'The types of the charts.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The type of the chart.'."\n" + ."\n" + .'When productId is set to ODPS, this parameter is optional and has the following valid values:'."\n" + ."\n" + .'* cpu: CPU resources.'."\n" + .'* memory: memory resources. If this parameter is not configured, both metrics are returned.'."\n" + ."\n" + .'When productId is set to TUNNEL, this parameter is required and has the following valid values:'."\n" + ."\n" + .'* request: the request parallelism.'."\n" + .'* throughput: the throughput.'."\n" + .'* error: the number of error requests.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cpu', + ], + 'required' => false, + ], + ], + [ + 'name' => 'yAxisTypes', + 'in' => 'query', + 'style' => 'simple', + 'schema' => [ + 'description' => 'The data metric fields.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The data metric field.'."\n" + ."\n" + .'You do not need to specify this parameter if the productId parameter is set to ODPS.'."\n" + ."\n" + .'You can enter a project name when productId is set to TUNNEL. In this case, the returned result is the information of the project dimension.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'your_project_name', + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<QuotaUsageResultDTO>', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '0b87b7a416652014358483492eea0b', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n" + ."\n" + .'* 1xx: informational response. The request is received and is being processed.'."\n" + .'* 2xx: success. The request is successfully received, understood, and accepted by the server.'."\n" + .'* 3xx: redirection. The request is redirected, and further actions are required to complete the request.'."\n" + .'* 4xx: client error. The request contains invalid request parameters and syntaxes, or specific request conditions cannot be met.'."\n" + .'* 5xx: server error. The server cannot meet requirements due to other reasons.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code.'."\n", + 'type' => 'string', + 'example' => 'OBJECT_NOT_EXIST', + ], + 'errorMsg' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'This object does not exist.', + ], + 'data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'metrics' => [ + 'description' => 'The metric results.'."\n", + 'type' => 'object', + 'example' => '', + ], + 'plot' => [ + 'description' => 'The information about the chart.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the chart.'."\n", + 'type' => 'object', + 'properties' => [ + 'title' => [ + 'description' => 'The title of the chart.'."\n", + 'type' => 'string', + 'example' => 'request', + ], + 'type' => [ + 'description' => 'The type of the chart.'."\n", + 'type' => 'string', + 'example' => 'request', + ], + 'yAxis' => [ + 'description' => 'The data metric field.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The data metric field.'."\n" + ."\n" + .'If the productId parameter is set to ODPS: CPU metric type or memory metric type'."\n" + ."\n" + .'If the productId parameter is set to TUNNEL and a project name is entered: project#operation#type'."\n", + 'type' => 'string', + 'example' => 'project1#download#request', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0b87b7a416652014358483492eea0b\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"OBJECT_NOT_EXIST\\",\\n \\"errorMsg\\": \\"This object does not exist.\\",\\n \\"data\\": {\\n \\"metrics\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"plot\\": [\\n {\\n \\"title\\": \\"request\\",\\n \\"type\\": \\"request\\",\\n \\"yAxis\\": [\\n \\"project1#download#request\\"\\n ]\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'GetQuotaUsage', + 'summary' => 'Queries quota resource consumption information.', + 'changeSet' => [ + [ + 'createdAt' => '2022-11-28T13:46:34.000Z', + 'description' => 'Request parameters changed, Response parameters changed', + ], + [ + 'createdAt' => '2022-10-13T14:34:44.000Z', + 'description' => 'Response parameters changed', + ], + [ + 'createdAt' => '2022-10-13T14:05:36.000Z', + 'description' => 'Response parameters changed', + ], + [ + 'createdAt' => '2022-08-22T06:32:05.000Z', + 'description' => 'Response parameters changed', + ], + [ + 'createdAt' => '2022-08-18T12:45:00.000Z', + 'description' => 'OpenAPI offline', + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetQuotaUsage', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#nickName}', + ], + ], + ], + ], + ], + ], + 'GetRoleAcl' => [ + 'path' => '/api/v1/projects/{projectName}/roles/{roleName}/roleAcl', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '153387', + 'abilityTreeNodes' => [ + 'FEATUREodpsTZPZOE', + ], + ], + 'parameters' => [ + [ + 'name' => 'projectName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the MaxCompute project.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'projectA', + ], + ], + [ + 'name' => 'roleName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the role.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'roleA', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<AclAction>', + 'description' => 'PopResult'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0a06dc0916696898838762018e9564', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code returned if the request failed.', + 'type' => 'string', + 'example' => '040002', + ], + 'errorMsg' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'error message', + ], + 'data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'table' => [ + 'description' => 'The table.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The table.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the table.'."\n", + 'type' => 'string', + 'example' => 'tableA', + ], + 'schemaName' => [ + 'description' => 'The Schema name.', + 'type' => 'string', + 'example' => 'default', + ], + 'actions' => [ + 'description' => 'The operations that were performed on the table.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The operations that were performed on the table.'."\n", + 'type' => 'string', + 'example' => 'describe', + ], + ], + ], + ], + ], + 'resource' => [ + 'description' => 'The resource.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The resource.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the resource.'."\n", + 'type' => 'string', + 'example' => 'resourceA', + ], + 'schemaName' => [ + 'description' => 'The Schema name.', + 'type' => 'string', + 'example' => 'default', + ], + 'actions' => [ + 'description' => 'The operations that were performed on the resource.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The operations that were performed on the resource.'."\n", + 'type' => 'string', + 'example' => 'read', + ], + ], + ], + ], + ], + 'function' => [ + 'description' => 'The function.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The function.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the function.'."\n", + 'type' => 'string', + 'example' => 'functionA', + ], + 'schemaName' => [ + 'description' => 'The Schema name.', + 'type' => 'string', + 'example' => 'default', + ], + 'actions' => [ + 'description' => 'The operations that were performed on the function.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The operations that were performed on the function.'."\n", + 'type' => 'string', + 'example' => 'read', + ], + ], + ], + ], + ], + 'project' => [ + 'description' => 'The project.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The project.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the MaxCompute project.'."\n", + 'type' => 'string', + 'example' => 'projectA', + ], + 'schemaName' => [ + 'description' => 'The Schema name.', + 'type' => 'string', + 'example' => 'default', + ], + 'actions' => [ + 'description' => 'The operations that were performed on the project.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The operations that were performed on the project.'."\n", + 'type' => 'string', + 'example' => 'list', + ], + ], + ], + ], + ], + 'instance' => [ + 'description' => 'The instance.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The instance.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the instance.'."\n", + 'type' => 'string', + 'example' => 'instanceA', + ], + 'schemaName' => [ + 'description' => 'The Schema name.', + 'type' => 'string', + 'example' => 'default', + ], + 'actions' => [ + 'description' => 'The operations that were performed on the instance.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The operations that were performed on the instance.'."\n", + 'type' => 'string', + 'example' => 'read', + ], + ], + ], + ], + ], + 'package' => [ + 'description' => 'The package.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The package.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the package.'."\n", + 'type' => 'string', + 'example' => 'packageA', + ], + 'schemaName' => [ + 'description' => 'The Schema name.', + 'type' => 'string', + 'example' => 'default', + ], + 'actions' => [ + 'description' => 'The operations that were performed on the package.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The operations that were performed on the package.'."\n", + 'type' => 'string', + 'example' => 'read', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0a06dc0916696898838762018e9564\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"040002\\",\\n \\"errorMsg\\": \\"error message\\",\\n \\"data\\": {\\n \\"table\\": [\\n {\\n \\"name\\": \\"tableA\\",\\n \\"schemaName\\": \\"default\\",\\n \\"actions\\": [\\n \\"describe\\"\\n ]\\n }\\n ],\\n \\"resource\\": [\\n {\\n \\"name\\": \\"resourceA\\",\\n \\"schemaName\\": \\"default\\",\\n \\"actions\\": [\\n \\"read\\"\\n ]\\n }\\n ],\\n \\"function\\": [\\n {\\n \\"name\\": \\"functionA\\",\\n \\"schemaName\\": \\"default\\",\\n \\"actions\\": [\\n \\"read\\"\\n ]\\n }\\n ],\\n \\"project\\": [\\n {\\n \\"name\\": \\"projectA\\",\\n \\"schemaName\\": \\"default\\",\\n \\"actions\\": [\\n \\"list\\"\\n ]\\n }\\n ],\\n \\"instance\\": [\\n {\\n \\"name\\": \\"instanceA\\",\\n \\"schemaName\\": \\"default\\",\\n \\"actions\\": [\\n \\"read\\"\\n ]\\n }\\n ],\\n \\"package\\": [\\n {\\n \\"name\\": \\"packageA\\",\\n \\"schemaName\\": \\"default\\",\\n \\"actions\\": [\\n \\"read\\"\\n ]\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'GetRoleAcl', + 'summary' => 'Obtains the ACL-based permissions that is granted to a project-level role.', + 'changeSet' => [ + [ + 'createdAt' => '2023-12-10T11:23:54.000Z', + 'description' => 'Response parameters changed', + ], + [ + 'createdAt' => '2022-09-20T11:53:08.000Z', + 'description' => 'OpenAPI offline', + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetRoleAcl', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + ], + ], + 'GetRoleAclOnObject' => [ + 'path' => '/api/v1/projects/{projectName}/roles/{roleName}/acl', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '144122', + 'abilityTreeNodes' => [ + 'FEATUREodpsTZPZOE', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'projectName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the MaxCompute project.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'projectA', + ], + ], + [ + 'name' => 'roleName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the role.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'roleA', + ], + ], + [ + 'name' => 'objectType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the object.'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'resource' => 'resource', + 'function' => 'function', + ' package' => ' package', + 'table' => 'table', + ], + 'example' => 'table', + ], + ], + [ + 'name' => 'objectName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the object.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'tableA', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ActionItem>', + 'description' => 'PopResult'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0bc1366d16686529650188023ef87f', + ], + 'data' => [ + 'description' => 'The returned data'."\n", + 'type' => 'object', + 'properties' => [ + 'actions' => [ + 'description' => 'The operations that were performed on the object.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The operations that were performed on the object.'."\n", + 'type' => 'string', + 'example' => 'describe', + ], + ], + ], + ], + ], + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0bc1366d16686529650188023ef87f\\",\\n \\"data\\": {\\n \\"actions\\": [\\n \\"describe\\"\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'GetRoleAclOnObject', + 'summary' => 'Obtains ACL-based permissions on an object that are granted to a project-level role.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetRoleAclOnObject', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + ], + ], + 'GetRolePolicy' => [ + 'path' => '/api/v1/projects/{projectName}/roles/{roleName}/policy', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '144119', + 'abilityTreeNodes' => [ + 'FEATUREodpsTZPZOE', + ], + ], + 'parameters' => [ + [ + 'name' => 'projectName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the MaxCompute project.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'projectA', + ], + ], + [ + 'name' => 'roleName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the role.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'roleA', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<String>', + 'description' => 'PopResult'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0bc1eeed16675342848904412e08dd', + ], + 'data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'string', + 'example' => '{'."\n" + .' "Statement": ['."\n" + .' {'."\n" + .' "Action": ['."\n" + .' "odps:*"'."\n" + .' ],'."\n" + .' "Effect": "Allow",'."\n" + .' "Resource": ['."\n" + .' "acs:odps:*:projects/{projectname}/authorization/packages"'."\n" + .' ]'."\n" + .' }'."\n" + .' ],'."\n" + .' "Version": "1"'."\n" + .'}'."\n", + ], + ], + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0bc1eeed16675342848904412e08dd\\",\\n \\"data\\": \\"{\\\\n \\\\\\"Statement\\\\\\": [\\\\n {\\\\n \\\\\\"Action\\\\\\": [\\\\n \\\\\\"odps:*\\\\\\"\\\\n ],\\\\n \\\\\\"Effect\\\\\\": \\\\\\"Allow\\\\\\",\\\\n \\\\\\"Resource\\\\\\": [\\\\n \\\\\\"acs:odps:*:projects/{projectname}/authorization/packages\\\\\\"\\\\n ]\\\\n }\\\\n ],\\\\n \\\\\\"Version\\\\\\": \\\\\\"1\\\\\\"\\\\n}\\\\n\\"\\n}","type":"json"}]', + 'title' => 'GetRolePolicy', + 'summary' => 'Obtains the policy that is attached to a project-level role.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetRolePolicy', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + ], + ], + 'GetRunningJobs' => [ + 'path' => '/api/v1/jobs/runningJobs', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + ], + 'parameters' => [ + [ + 'name' => 'from', + 'in' => 'query', + 'schema' => [ + 'description' => 'The time when the query starts. This parameter specifies the time when a job is submitted.'."\n" + ."\n" + .'* The time range that is specified by the **from** and **to** request parameters is a closed interval. The start time and end time are included in the range. If the value of **from** is the same as the value of **to**, the time range is invalid, and a null value is returned.'."\n" + .'* The value is a UNIX timestamp that represents the number of seconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1683785928', + ], + ], + [ + 'name' => 'to', + 'in' => 'query', + 'schema' => [ + 'description' => 'The time when the query ends. This parameter specifies the time when a job is submitted.'."\n" + ."\n" + .'* The time interval that is specified by the **from** and **to** request parameters is a closed interval. The start time and end time are included in the interval. If the value of **from** is the same as the value of **to**, the interval is invalid, and a null value is returned.'."\n" + .'* The value is a UNIX timestamp that represents the number of seconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1683612946', + ], + ], + [ + 'name' => 'jobOwnerList', + 'in' => 'query', + 'style' => 'simple', + 'schema' => [ + 'description' => 'The list of job executors.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The list of job executors.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[email protected]', + ], + 'required' => false, + ], + ], + [ + 'name' => 'quotaNicknameList', + 'in' => 'query', + 'style' => 'simple', + 'schema' => [ + 'description' => 'The list of nicknames of quotas that are used by jobs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The list of nicknames of quotas that are used by jobs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'my_quota', + ], + 'required' => false, + ], + ], + [ + 'name' => 'pageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'pageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10. Maximum value: 20.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ListRunningJobInfoDTO>', + 'description' => 'PopResult'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0bc3b4ab16684833172127321e2c25', + ], + 'httpCode' => [ + 'description' => 'Indicates whether the request was successful. If this parameter was not empty and the value of this parameter was not 200, the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => '* If the value of success was false, an error code was returned.'."\n" + .'* If the value of success was true, a null value was returned.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'errorMsg' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => '0A3B1FD2006A24C8D8BE65CDAC028298', + ], + 'data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'runningJobInfoList' => [ + 'description' => 'The list of jobs in the running state.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'instanceId' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'example' => '2023050206371544gomgtp3ljcr4', + ], + 'jobOwner' => [ + 'description' => 'The account that submits the job.'."\n", + 'type' => 'string', + 'example' => '[email protected]', + ], + 'project' => [ + 'description' => 'The name of the MaxCompute project.'."\n", + 'type' => 'string', + 'example' => 'project_20221021123044_981b', + ], + 'quotaNickname' => [ + 'description' => 'The nickname of the quota that is used by the job.'."\n", + 'type' => 'string', + 'example' => 'my_quota', + ], + 'cuSnapshot' => [ + 'description' => 'The compute unit (CU) snapshot proportion of the job.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '0.45', + ], + 'memorySnapshot' => [ + 'description' => 'The memory snapshot proportion of the job.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '0.45', + ], + 'submittedAtTime' => [ + 'description' => 'The time when the job is submitted.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1689746864', + ], + 'runningAtTime' => [ + 'description' => 'The time when the job starts to run.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1689746864', + ], + 'progress' => [ + 'description' => 'The progress of the job.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + ], + ], + ], + 'totalCount' => [ + 'description' => 'The total number of returned entries.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '64', + ], + 'pageNumber' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'pageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0bc3b4ab16684833172127321e2c25\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"success\\",\\n \\"errorMsg\\": \\"0A3B1FD2006A24C8D8BE65CDAC028298\\",\\n \\"data\\": {\\n \\"runningJobInfoList\\": [\\n {\\n \\"instanceId\\": \\"2023050206371544gomgtp3ljcr4\\",\\n \\"jobOwner\\": \\"[email protected]\\",\\n \\"project\\": \\"project_20221021123044_981b\\",\\n \\"quotaNickname\\": \\"my_quota\\",\\n \\"cuSnapshot\\": 0.45,\\n \\"memorySnapshot\\": 0.45,\\n \\"submittedAtTime\\": 1689746864,\\n \\"runningAtTime\\": 1689746864,\\n \\"progress\\": 0\\n }\\n ],\\n \\"totalCount\\": 64,\\n \\"pageNumber\\": 2,\\n \\"pageSize\\": 10\\n }\\n}","type":"json"}]', + 'title' => 'GetRunningJobs', + 'summary' => 'Obtains the running state data of jobs that are in the running state in a specified period of time.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:GetRunningJobs', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'GetStorageAmountSummary' => [ + 'path' => '/api/v1/observations/analysis/storage/amount', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '221235', + 'abilityTreeNodes' => [ + 'FEATUREodps2B6Z0N', + ], + ], + 'parameters' => [ + [ + 'name' => 'tenantId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The tenant ID. You can log on to the MaxCompute console and choose **Tenant Management** > **Tenant Properties** in the navigation pane on the left to view the tenant ID.', + 'type' => 'string', + 'required' => false, + 'example' => '478403690625249', + 'title' => '', + ], + ], + [ + 'name' => 'region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.', + 'type' => 'string', + 'required' => false, + 'example' => 'cn-shanghai', + 'title' => '', + ], + ], + [ + 'name' => 'date', + 'in' => 'query', + 'schema' => [ + 'description' => 'The date for which the statistics are collected. The statistics are collected on a daily basis. Specify the date in the YYYYMMDD format.', + 'type' => 'string', + 'required' => false, + 'example' => '20241205', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ObservationStorageSummaryInfo<Long>>', + 'description' => 'PopResult\\<ObservationStorageSummaryInfo>', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '688003E1-D1B4-5468-957E-2FFB3AC8D79B', + 'title' => '', + ], + 'httpCode' => [ + 'description' => 'Indicates whether the business is successful. If this parameter is not empty and the value is not 200, the business processing failed.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + 'title' => '', + ], + 'errorCode' => [ + 'description' => 'The business error code or an empty value.'."\n" + ."\n" + .'- If success is false, a business error code is returned.'."\n" + .'- If success is true, an empty value is returned.', + 'type' => 'string', + 'example' => 'success', + 'title' => '', + ], + 'errorMsg' => [ + 'description' => 'The error message.', + 'type' => 'string', + 'example' => 'this quota is not exist.', + 'title' => '', + ], + 'data' => [ + 'description' => 'The returned data.', + 'type' => 'object', + 'properties' => [ + 'date' => [ + 'description' => 'The date of the statistics.', + 'type' => 'string', + 'example' => '20241205', + 'title' => '', + ], + 'timestamp' => [ + 'description' => 'The timestamp. This API does not return this parameter.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '-', + 'title' => '', + ], + 'value' => [ + 'description' => 'The storage metrics. The metrics include the following:'."\n" + ."\n" + .'- projectAmount'."\n" + .'- schemaAmount'."\n" + .'- tableAmount'."\n" + .'- partitionAmount', + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => 'The storage amount value.', + 'example' => '16', + 'title' => '', + ], + 'title' => '', + ], + 'unit' => [ + 'description' => 'The unit of the storage metrics. This API does not return this parameter.', + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + 'description' => 'This API does not return this parameter.', + 'example' => '-', + 'title' => '', + ], + 'title' => '', + ], + ], + 'title' => '', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"688003E1-D1B4-5468-957E-2FFB3AC8D79B\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"success\\",\\n \\"errorMsg\\": \\"this quota is not exist.\\",\\n \\"data\\": {\\n \\"date\\": \\"20241205\\",\\n \\"timestamp\\": 0,\\n \\"value\\": {\\n \\"key\\": 16\\n },\\n \\"unit\\": {\\n \\"key\\": \\"-\\"\\n }\\n }\\n}","type":"json"}]', + 'title' => 'GetStorageAmountSummary', + 'summary' => 'Retrieves a summary of the total storage amount.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetStorageAmountSummary', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'flowControl' => [ + 'flowControlList' => [ + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'GetStorageAmountSummary', + ], + ], + ], + ], + 'GetStorageSizeSummary' => [ + 'path' => '/api/v1/observations/analysis/storage/size', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '221233', + 'abilityTreeNodes' => [ + 'FEATUREodps2B6Z0N', + ], + ], + 'parameters' => [ + [ + 'name' => 'tenantId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The tenant ID.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => '483212237127906', + ], + ], + [ + 'name' => 'region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'cn-chengdu', + ], + ], + [ + 'name' => 'date', + 'in' => 'query', + 'schema' => [ + 'description' => 'The date of statistics. The value is at the day level. The format is YYYYMMdd.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => '20241205', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ObservationStorageSummaryInfo<Double>>', + 'description' => 'PopResult\\<ObservationStorageSummaryInfo>', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => '0be3e0aa16667684362147582e038f', + ], + 'httpCode' => [ + 'description' => 'Indicates whether the business is successful. If this parameter is not empty and the value is not 200, the business fails.', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The business error code or an empty value.'."\n" + ."\n" + .'- If success is false, a business error code is returned.'."\n" + ."\n" + .'- If success is true, an empty value is returned.', + 'type' => 'string', + 'title' => '', + 'example' => 'success', + ], + 'errorMsg' => [ + 'description' => 'The description of the error.', + 'type' => 'string', + 'title' => '', + 'example' => 'this quota is not exist.', + ], + 'data' => [ + 'description' => 'The returned data.', + 'type' => 'object', + 'properties' => [ + 'date' => [ + 'description' => 'The date of statistics.', + 'type' => 'string', + 'title' => '', + 'example' => '20241205', + ], + 'timestamp' => [ + 'description' => 'The timestamp of the last data update.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '1749090705919', + ], + 'value' => [ + 'description' => 'The storage metrics. It includes:'."\n" + ."\n" + .'- lowFreqStorage'."\n" + ."\n" + .'- standardStorage'."\n" + ."\n" + .'- longTermStorage'."\n" + ."\n" + .'- totalStorage', + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'number', + 'format' => 'double', + 'description' => 'The usage of the storage metric.', + 'title' => '', + 'example' => '110.438238', + ], + 'title' => '', + 'example' => '', + ], + 'unit' => [ + 'description' => 'The unit of the storage metric usage. It includes:'."\n" + ."\n" + .'- lowFreqStorage'."\n" + ."\n" + .'- standardStorage'."\n" + ."\n" + .'- longTermStorage'."\n" + ."\n" + .'- totalStorage', + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + 'description' => 'The unit of the storage metric usage.', + 'title' => '', + 'example' => 'TB', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0be3e0aa16667684362147582e038f\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"success\\",\\n \\"errorMsg\\": \\"this quota is not exist.\\",\\n \\"data\\": {\\n \\"date\\": \\"20241205\\",\\n \\"timestamp\\": 1749090705919,\\n \\"value\\": {\\n \\"key\\": 110.438238\\n },\\n \\"unit\\": {\\n \\"key\\": \\"TB\\"\\n }\\n }\\n}","type":"json"}]', + 'title' => 'GetStorageSizeSummary', + 'summary' => 'Retrieves a summary of storage usage.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetStorageSizeSummary', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'flowControl' => [ + 'flowControlList' => [ + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'GetStorageSizeSummary', + ], + ], + ], + ], + 'GetStorageSummaryCompared' => [ + 'path' => '/api/v1/observations/analysis/storage/{type}/compared', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '224286', + 'abilityTreeNodes' => [ + 'FEATUREodps2B6Z0N', + ], + ], + 'parameters' => [ + [ + 'name' => 'tenantId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The tenant ID. You can log on to the MaxCompute console and choose **Tenant Property** in the navigation pane on the left to view the tenant ID.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => '483212237127906', + ], + ], + [ + 'name' => 'region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'cn-beijing', + ], + ], + [ + 'name' => 'beginDate', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start date.', + 'type' => 'string', + 'required' => true, + 'title' => '', + 'example' => '20250601', + ], + ], + [ + 'name' => 'endDate', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end date.', + 'type' => 'string', + 'required' => true, + 'title' => '', + 'example' => '20250604', + ], + ], + [ + 'name' => 'type', + 'in' => 'path', + 'schema' => [ + 'description' => 'The storage metric for comparison. Valid values:'."\n" + ."\n" + .'- size'."\n" + ."\n" + .'- amount', + 'type' => 'string', + 'required' => true, + 'title' => '', + 'example' => 'size', + ], + ], + [ + 'name' => 'projects', + 'in' => 'query', + 'style' => 'simple', + 'schema' => [ + 'description' => 'The list of projects.', + 'type' => 'array', + 'items' => [ + 'description' => 'The project name.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'prj', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ObservationStorageSummaryComparison>', + 'description' => 'PopResult', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => '0bc3b4b016674434996033675e71ee', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n" + ."\n" + .'- 1xx: informational response. The request is received and is being processed.'."\n" + ."\n" + .'- 2xx: success. The request is successfully received, understood, and accepted by the server.'."\n" + ."\n" + .'- 3xx: redirection. The request is redirected. You must take further action to complete the request.'."\n" + ."\n" + .'- 4xx: client error. The request contains invalid parameters or syntax, or fails to meet specific conditions.'."\n" + ."\n" + .'- 5xx: server error. The server cannot fulfill the request for other reasons.', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code.', + 'type' => 'string', + 'title' => '', + 'example' => 'success', + ], + 'errorMsg' => [ + 'description' => 'The error message.', + 'type' => 'string', + 'title' => '', + 'example' => 'plan \\"***\\" does not exist', + ], + 'data' => [ + 'description' => 'The data returned.', + 'type' => 'object', + 'properties' => [ + 'beginDate' => [ + 'description' => 'The start date.', + 'type' => 'string', + 'title' => '', + 'example' => '20250601', + ], + 'endDate' => [ + 'description' => 'The end date.', + 'type' => 'string', + 'title' => '', + 'example' => '20250604', + ], + 'rate' => [ + 'description' => 'The year-on-year (YoY) change rate of the storage usage from the start date to the end date. Valid values:'."\n" + ."\n" + .'- lowFreqStorageRate'."\n" + ."\n" + .'- totalStorageRate'."\n" + ."\n" + .'- standardStorageRate'."\n" + ."\n" + .'- longTermStorageRate', + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'number', + 'format' => 'double', + 'description' => 'The YoY change rate.', + 'title' => '', + 'example' => '0.06365304264561006', + ], + 'title' => '', + 'example' => '', + ], + 'value' => [ + 'description' => 'The change in the storage usage from the start date to the end date. Valid values:'."\n" + ."\n" + .'- lowFreqStorage'."\n" + ."\n" + .'- totalStorage'."\n" + ."\n" + .'- standardStorage'."\n" + ."\n" + .'- longTermStorage', + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'number', + 'format' => 'double', + 'description' => 'The change value.', + 'title' => '', + 'example' => '-13.437440000000606', + ], + 'title' => '', + 'example' => '', + ], + 'unit' => [ + 'description' => 'The unit of the change in the storage usage from the start date to the end date. Valid values:'."\n" + ."\n" + .'- lowFreqStorageUnit'."\n" + ."\n" + .'- totalStorageUnit'."\n" + ."\n" + .'- standardStorageUnit'."\n" + ."\n" + .'- longTermStorageUnit', + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + 'description' => 'The unit of the change value.', + 'title' => '', + 'example' => 'GB', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0bc3b4b016674434996033675e71ee\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"success\\",\\n \\"errorMsg\\": \\"plan \\\\\\\\\\\\\\"***\\\\\\\\\\\\\\" does not exist\\",\\n \\"data\\": {\\n \\"beginDate\\": \\"20250601\\",\\n \\"endDate\\": \\"20250604\\",\\n \\"rate\\": {\\n \\"key\\": 0.06365304264561006\\n },\\n \\"value\\": {\\n \\"key\\": -13.437440000000606\\n },\\n \\"unit\\": {\\n \\"key\\": \\"GB\\"\\n }\\n }\\n}","type":"json"}]', + 'title' => 'GetStorageSummaryCompared', + 'summary' => 'Retrieves the year-on-year (YoY) change in storage usage.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetStorageSummaryCompared', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'GetTableInfo' => [ + 'path' => '/api/v1/projects/{projectName}/tables/{tableName}', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '159623', + 'abilityTreeNodes' => [ + 'FEATUREodpsTZPZOE', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'projectName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the project to which the table or view belongs.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'projectA', + ], + ], + [ + 'name' => 'schemaName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the schema to which the table or view belongs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'default', + ], + ], + [ + 'name' => 'tableName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the table or view that you want to view.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'sale_detail', + ], + ], + [ + 'name' => 'type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the table or view that you want to view. Valid values:'."\n" + ."\n" + .'* **internal**: internal table'."\n" + .'* **external**: external table'."\n" + .'* **view**: view'."\n" + .'* **materializedView**: [materialize view](https://www.alibabacloud.com/help/maxcompute/user-guide/materialized-view-operations)'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [], + 'example' => 'internal', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<TableInfo>', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '0a06dd4516687375802853481ec9fd', + ], + 'data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the table or view.'."\n", + 'type' => 'string', + 'example' => 'sale_detail', + ], + 'owner' => [ + 'description' => 'The account information of the table or view owner.'."\n", + 'type' => 'string', + 'example' => '188785396123****', + ], + 'type' => [ + 'description' => 'The type of the table or view. Valid values:'."\n" + ."\n" + .'* **internal**: internal table'."\n" + .'* **external**: external table'."\n" + .'* **view**: view'."\n" + .'* **materializedView**: [materialize view](https://www.alibabacloud.com/help/maxcompute/user-guide/materialized-view-operations)'."\n", + 'type' => 'string', + 'example' => 'internal', + ], + 'schema' => [ + 'description' => 'The name of the schema to which the table or the view belongs.'."\n", + 'type' => 'string', + 'example' => 'default', + ], + 'creationTime' => [ + 'description' => 'The creation time.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2022-01-17T07:07:47Z', + ], + 'viewText' => [ + 'description' => 'The statement that generates the view. This response parameter is returned when type is set to view.'."\n", + 'type' => 'string', + 'example' => 'select shop_name, sum(total_price) from sale_detail group by shop_name', + ], + 'displayName' => [ + 'description' => 'The display name.'."\n", + 'type' => 'string', + 'example' => 'project_name.schema_name.table_name', + ], + 'projectName' => [ + 'description' => 'The name of the project to which the table or view belongs.'."\n", + 'type' => 'string', + 'example' => 'projectA', + ], + 'lastDDLTime' => [ + 'description' => 'The time when the data definition language (DDL) statement of the table or view was last modified.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2023-11-21T02:05:56Z', + ], + 'lastModifiedTime' => [ + 'description' => 'The time when data of the table or view was last modified.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2023-11-21T02:05:56Z', + ], + 'lastAccessTime' => [ + 'description' => 'The time when data of the table or view was last accessed.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2023-11-21T02:05:56Z', + ], + 'lifecycle' => [ + 'description' => 'The lifecycle. Unit: days.'."\n", + 'type' => 'string', + 'example' => '-1', + ], + 'isExternalTable' => [ + 'description' => 'Indicates whether the table is an external table. This response parameter is returned when type is set to external.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'size' => [ + 'description' => 'The data size of the non-partitioned table. If the table is a partitioned table, the system does not calculate the data size of the table. In this case, the value of this parameter is NULL. The PARTITIONS view includes the data size of each partition in a partitioned table. Unit: bytes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '5372', + ], + 'comment' => [ + 'description' => 'The comments of the table.'."\n", + 'type' => 'string', + 'example' => 'sale_detail', + ], + 'tableLabel' => [ + 'description' => 'The sensitivity-level label of the table. For more information, see [Label-based access control](https://www.alibabacloud.com/help/maxcompute/user-guide/label-based-access-control).'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'createTableDDL' => [ + 'description' => 'DDL statement to create a table.', + 'type' => 'string', + 'example' => 'create table if not exists sale_detail( shop_name STRING, customer_id STRING, total_price DOUBLE) partitioned by (sale_date STRING, region STRING);', + ], + 'nativeColumns' => [ + 'description' => 'The field information.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The field information.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The column name.', + 'type' => 'string', + 'example' => 'shop_name', + ], + 'type' => [ + 'description' => 'The column type.', + 'type' => 'string', + 'example' => 'STRING', + ], + 'label' => [ + 'description' => 'The sensitivity-level label of the column. For more information, see [Label-based access control](https://www.alibabacloud.com/help/maxcompute/user-guide/label-based-access-control).'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'comment' => [ + 'description' => 'The column comments.'."\n", + 'type' => 'string', + 'example' => 'The name of shop.', + ], + ], + ], + ], + 'partitionColumns' => [ + 'description' => 'The information about partition key columns. This response parameter is returned only for partitioned tables.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the partition key column.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The partition name.'."\n", + 'type' => 'string', + 'example' => 'sale_date', + ], + 'type' => [ + 'description' => 'The partition column type.', + 'type' => 'string', + 'example' => 'STRING', + ], + 'label' => [ + 'description' => 'The sensitivity-level label of the column. For more information, see [Label-based access control](https://www.alibabacloud.com/help/maxcompute/user-guide/label-based-access-control).'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'comment' => [ + 'description' => 'The comments of the partition key column.'."\n", + 'type' => 'string', + 'example' => 'Sale date.', + ], + ], + ], + ], + 'materializedView' => [ + 'description' => 'Indicates whether the table or view is a [materialize view](https://www.alibabacloud.com/help/maxcompute/user-guide/materialized-view-operations).'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'rewriteEnabled' => [ + 'description' => 'Indicates whether the query rewrite operation can be performed by using the materialized view. This response parameter is returned when type is set to materializedView.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'autoRefreshEnabled' => [ + 'description' => 'Indicates whether the materialized view is automatically refreshed. This response parameter is returned when type is set to materializedView.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'isOutdated' => [ + 'description' => 'Indicates whether data of the materialized view is invalid due to changes in the data of the source table. This response parameter is returned when type is set to materializedView.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'physicalSize' => [ + 'description' => 'The physical size of the table.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2763', + ], + 'fileNum' => [ + 'description' => 'The number of file of the table.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'storageHandler' => [ + 'description' => 'The storage handler of the external table. This response parameter is returned when type is set to external.'."\n", + 'type' => 'string', + 'example' => 'com.aliyun.odps.CsvStorageHandler', + ], + 'location' => [ + 'description' => 'The path of the external table. This response parameter is returned when type is set to external.'."\n", + 'type' => 'string', + 'example' => 'oss://oss-cn-hangzhou-internal.aliyuncs.com/oss-mc-test/Demo1/', + ], + 'odpsPropertiesRolearn' => [ + 'description' => 'The Alibaba Cloud Resource Name (ARN) of the role AliyunODPSDefaultRole in Resource Access Management (RAM). This response parameter is returned when type is set to external.'."\n", + 'type' => 'string', + 'example' => 'acs:ram::xxxxx:role/aliyunodpsdefaultrole', + ], + 'tablestoreColumnsMapping' => [ + 'description' => 'The columns of the Tablestore table to be accessed, including the primary key column and attribute column. This response parameter is returned when type is set to external.'."\n", + 'type' => 'string', + 'example' => ':o_orderkey,:o_orderdate,o_custkey,o_orderstatus,o_totalprice', + ], + 'tablesotreTableName' => [ + 'description' => 'The name of the Tablestore table to be accessed. This response parameter is returned when type is set to external.'."\n", + 'type' => 'string', + 'example' => 'ots_tpch_orders', + ], + 'odpsSqlTextOptionFlushHeader' => [ + 'description' => 'Indicates whether the table header is ignored. This response parameter is returned when type is set to external.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'odpsTextOptionHeaderLinesCount' => [ + 'description' => 'The first N rows that were ignored in the table header. This response parameter is returned when type is set to external.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'clusterInfo' => [ + 'description' => 'The clustering attribute. This response parameter is returned when the table is a clustered table.'."\n", + 'type' => 'object', + 'properties' => [ + 'clusterType' => [ + 'description' => 'The clustering type of the table. MaxCompute supports [hash clustering](https://www.alibabacloud.com/help/maxcompute/use-cases/hash-clustering) and'."\n" + ."\n" + .'[range clustering](https://www.alibabacloud.com/help/maxcompute/use-cases/range-clustering).'."\n", + 'type' => 'string', + 'example' => 'Hash', + ], + 'clusterCols' => [ + 'description' => 'The cluster keys.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The cluster keys.'."\n", + 'type' => 'string', + 'example' => 'col_1', + ], + ], + 'sortCols' => [ + 'description' => 'The condition by which the results are sorted.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The condition by which the results are sorted.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the sorting field.'."\n", + 'type' => 'string', + 'example' => 'col_2', + ], + 'order' => [ + 'description' => 'The sorting order.'."\n", + 'type' => 'string', + 'example' => 'DESC', + ], + ], + ], + ], + 'bucketNum' => [ + 'description' => 'Optional. The number of buckets in the clustered table. The value 0 indicates that the number of buckets dynamically changes when a job is running.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1024', + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0a06dd4516687375802853481ec9fd\\",\\n \\"data\\": {\\n \\"name\\": \\"sale_detail\\",\\n \\"owner\\": \\"188785396123****\\",\\n \\"type\\": \\"internal\\",\\n \\"schema\\": \\"default\\",\\n \\"creationTime\\": 0,\\n \\"viewText\\": \\"select shop_name, sum(total_price) from sale_detail group by shop_name\\",\\n \\"displayName\\": \\"project_name.schema_name.table_name\\",\\n \\"projectName\\": \\"projectA\\",\\n \\"lastDDLTime\\": 0,\\n \\"lastModifiedTime\\": 0,\\n \\"lastAccessTime\\": 0,\\n \\"lifecycle\\": \\"-1\\",\\n \\"isExternalTable\\": false,\\n \\"size\\": 5372,\\n \\"comment\\": \\"sale_detail\\",\\n \\"tableLabel\\": \\"0\\",\\n \\"createTableDDL\\": \\"create table if not exists sale_detail( shop_name STRING, customer_id STRING, total_price DOUBLE) partitioned by (sale_date STRING, region STRING);\\",\\n \\"nativeColumns\\": [\\n {\\n \\"name\\": \\"shop_name\\",\\n \\"type\\": \\"STRING\\",\\n \\"label\\": \\"0\\",\\n \\"comment\\": \\"The name of shop.\\"\\n }\\n ],\\n \\"partitionColumns\\": [\\n {\\n \\"name\\": \\"sale_date\\",\\n \\"type\\": \\"STRING\\",\\n \\"label\\": \\"0\\",\\n \\"comment\\": \\"Sale date.\\"\\n }\\n ],\\n \\"materializedView\\": false,\\n \\"rewriteEnabled\\": false,\\n \\"autoRefreshEnabled\\": false,\\n \\"isOutdated\\": false,\\n \\"physicalSize\\": 2763,\\n \\"fileNum\\": 200,\\n \\"storageHandler\\": \\"com.aliyun.odps.CsvStorageHandler\\",\\n \\"location\\": \\"oss://oss-cn-hangzhou-internal.aliyuncs.com/oss-mc-test/Demo1/\\",\\n \\"odpsPropertiesRolearn\\": \\"acs:ram::xxxxx:role/aliyunodpsdefaultrole\\",\\n \\"tablestoreColumnsMapping\\": \\":o_orderkey,:o_orderdate,o_custkey,o_orderstatus,o_totalprice\\",\\n \\"tablesotreTableName\\": \\"ots_tpch_orders\\",\\n \\"odpsSqlTextOptionFlushHeader\\": true,\\n \\"odpsTextOptionHeaderLinesCount\\": 1,\\n \\"clusterInfo\\": {\\n \\"clusterType\\": \\"Hash\\",\\n \\"clusterCols\\": [\\n \\"col_1\\"\\n ],\\n \\"sortCols\\": [\\n {\\n \\"name\\": \\"col_2\\",\\n \\"order\\": \\"DESC\\"\\n }\\n ],\\n \\"bucketNum\\": 1024\\n }\\n }\\n}","type":"json"}]', + 'title' => 'GetTableInfo', + 'summary' => 'Views the information about MaxCompute internal tables, views, external tables, clustered tables, or transactional tables.', + 'changeSet' => [ + [ + 'createdAt' => '2024-11-05T07:26:05.000Z', + 'description' => 'Response parameters changed', + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetTableInfo', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + ], + ], + 'GetTrustedProjects' => [ + 'path' => '/api/v1/projects/{projectName}/trustedProjects', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '142483', + 'abilityTreeNodes' => [ + 'FEATUREodpsTZPZOE', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'projectName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the MaxCompute project.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'odps_project', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<List<String>>', + 'description' => 'PopResult\\<List>'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0bc0590416675329272834336e4387', + ], + 'data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'string', + 'example' => 'json Array'."\n" + .'['."\n" + .'"project_A",'."\n" + .'"project_B"'."\n" + .']', + ], + ], + ], + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0bc0590416675329272834336e4387\\",\\n \\"data\\": [\\n \\"json Array\\\\n[\\\\n\\\\\\"project_A\\\\\\",\\\\n\\\\\\"project_B\\\\\\"\\\\n]\\"\\n ]\\n}","type":"json"}]', + 'title' => 'GetTrustedProjects', + 'summary' => 'Obtains the trusted projects of the current project.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetTrustedProjects', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'conditional', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + ], + ], + 'KillJobs' => [ + 'path' => '/api/v1/jobs/kill', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '165875', + 'abilityTreeNodes' => [ + 'FEATUREodpsDUKRZ1', + ], + ], + 'parameters' => [ + [ + 'name' => 'tenantId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the tenant.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '478403690625249', + ], + ], + [ + 'name' => 'region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region in which the instance resides.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'schema' => [ + 'description' => 'The request body parameters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '['."\n" + .' {'."\n" + .' "instanceId": "",'."\n" + .' "projectName": ""'."\n" + .' },'."\n" + .' {'."\n" + .' "instanceId": "",'."\n" + .' "projectName": ""'."\n" + .' }'."\n" + .']', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<String>', + 'description' => 'PopResult'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0abb7ede16814560741256732e91b6', + ], + 'httpCode' => [ + 'description' => 'Indicates whether the request was successful. If this parameter was not empty and the value of this parameter was not 200, the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0abb7ede16814560741256732e91b6\\",\\n \\"httpCode\\": 200,\\n \\"data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'KillJobs', + 'summary' => 'Terminates a running job.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:KillJobs', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'ListComputeMetricsByInstance' => [ + 'path' => '/api/v1/computeMetrics/listByInstance', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'abilityTreeCode' => '189037', + 'abilityTreeNodes' => [ + 'FEATUREodpsO212B7', + ], + ], + 'parameters' => [ + [ + 'name' => 'body', + 'in' => 'body', + 'style' => 'json', + 'schema' => [ + 'description' => 'Request body parameters.', + 'type' => 'object', + 'properties' => [ + 'region' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + 'projectNames' => [ + 'description' => 'The name of MaxCompute project.', + 'type' => 'array', + 'items' => [ + 'description' => 'The name of MaxCompute project.', + 'type' => 'string', + 'required' => false, + 'example' => 'odps_porject', + ], + 'required' => false, + ], + 'startDate' => [ + 'description' => 'The start time for the period.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1715393576201', + ], + 'endDate' => [ + 'description' => 'The end time for the period.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1718590596556', + ], + 'instanceId' => [ + 'description' => 'The job(instance) ID.', + 'type' => 'string', + 'required' => false, + 'example' => '20240730****ddlr', + ], + 'jobOwner' => [ + 'description' => 'The Alibaba Cloud account that is used to run the MaxCompute job.', + 'type' => 'string', + 'required' => false, + 'example' => 'ALIYUN$7632***@aliyun.com', + ], + 'signature' => [ + 'description' => 'The signature of the SQL job.', + 'type' => 'string', + 'required' => false, + 'example' => 'ghijkl789012', + ], + 'pageNumber' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + 'pageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + 'types' => [ + 'description' => 'Metering types.', + 'type' => 'array', + 'items' => [ + 'description' => 'Metering types.'."\n" + .'- ComputationSql: the metering data of SQL jobs that involve internal tables.'."\n" + ."\n" + .'- ComputationSqlOTS: the metering data of SQL jobs that involve Tablestore external tables.'."\n" + ."\n" + .'- ComputationSqlOSS: the metering data of SQL jobs that involve OSS external tables.'."\n" + ."\n" + .'- MapReduce: the metering data of MapReduce jobs.'."\n" + ."\n" + .'- spark: the metering data of Spark jobs.'."\n" + ."\n" + .'- mars: the metering data of Mars jobs.', + 'type' => 'string', + 'required' => false, + 'example' => 'SQL', + ], + 'required' => false, + ], + 'specCodes' => [ + 'description' => 'Specification types.', + 'type' => 'array', + 'items' => [ + 'description' => 'Specifications Type specifies the resource package that you select when you purchase the MaxCompute service.'."\n" + ."\n" + .'- OdpsStandard: the pay-as-you-go resource package.'."\n" + ."\n" + .'- OdpsSpot: the pay-as-you-go spot resource package.', + 'type' => 'string', + 'required' => false, + 'example' => 'OdpsStandard', + ], + 'required' => false, + ], + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ListResultDTO<InstanceComputeMetricDTO, DefaultPageInfo>>', + 'description' => 'PopResult<ListResultDTO<InstanceComputeMetricDTO, DefaultPageInfo>>', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0bc059b717363029839908920ea631', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n" + ."\n" + .'- 1xx: informational response. The request is received and is being processed.'."\n" + .'- 2xx: success. The request is successfully received, understood, and accepted by the server.'."\n" + .'- 3xx: redirection. The request is redirected, and further actions are required to complete the request.'."\n" + .'- 4xx: client error. The request contains invalid request parameters or syntaxes, or specific request conditions cannot be met.'."\n" + .'- 5xx: server error. The server cannot meet requirements due to other reasons.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code.'."\n", + 'type' => 'string', + 'example' => 'OBJECT_NOT_EXIST', + ], + 'errorMsg' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'This object does not exist.', + ], + 'data' => [ + 'description' => 'The data returned.', + 'type' => 'object', + 'properties' => [ + 'instanceComputeMetrics' => [ + 'description' => 'List of pay-as-you-go job compute usage.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'instanceId' => [ + 'description' => 'The job(instance) ID.', + 'type' => 'string', + 'example' => '20240730****ddlr', + ], + 'type' => [ + 'description' => 'Metering types.'."\n" + .'- ComputationSql: the metering data of SQL jobs that involve internal tables.'."\n" + ."\n" + .'- ComputationSqlOTS: the metering data of SQL jobs that involve Tablestore external tables.'."\n" + ."\n" + .'- ComputationSqlOSS: the metering data of SQL jobs that involve OSS external tables.'."\n" + ."\n" + .'- MapReduce: the metering data of MapReduce jobs.'."\n" + ."\n" + .'- spark: the metering data of Spark jobs.'."\n" + ."\n" + .'- mars: the metering data of Mars jobs.', + 'type' => 'string', + 'example' => 'ComputationSql', + ], + 'specCode' => [ + 'description' => 'Specifications Type, specifies the resource package that you select when you purchase the MaxCompute service.'."\n" + .'- OdpsStandard: the pay-as-you-go resource package.'."\n" + ."\n" + .'- OdpsSpot: the pay-as-you-go spot resource package.', + 'type' => 'string', + 'example' => 'OdpsStandard', + ], + 'jobOwner' => [ + 'description' => 'The owner of the job.', + 'type' => 'string', + 'example' => 'ALIYUN$7632***@aliyun.com', + ], + 'projectName' => [ + 'description' => 'The name of the project.', + 'type' => 'string', + 'example' => 'odps_porject', + ], + 'submitTime' => [ + 'description' => 'The submission time of the job.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1610432000000', + ], + 'endTime' => [ + 'description' => 'The end time of the job execution.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1710432000000', + ], + 'signature' => [ + 'description' => 'The signature of the SQL job.', + 'type' => 'string', + 'example' => 'pqrs12345tuv', + ], + 'usage' => [ + 'description' => 'The computing resource usage is calculated based on the following items:'."\n" + ."\n" + .'- Amount of scanned data in the unit of GB. For the jobs whose metering types are ComputationSql, ComputationSqlOTS, or ComputationSqlOSS, they are billed based on the amount of scanned data. The computing resource usage of such a job is calculated by using the following formula: Amount of scanned data × Complexity. The complexity is fixed at 1 for the jobs whose metering types are ComputationSqlOTS or ComputationSqlOSS.'."\n" + ."\n" + .'- CU-hours. For the jobs whose metering types are MapReduce, spark, or mars, they are billed based on CU-hours.', + 'type' => 'number', + 'format' => 'double', + 'example' => '1024', + ], + 'unit' => [ + 'description' => 'The unit of computing resource usage', + 'type' => 'string', + 'example' => 'GB', + ], + ], + ], + ], + 'totalCount' => [ + 'description' => 'The total number of results returned.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '64', + ], + 'pageNumber' => [ + 'description' => 'The current page number.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'pageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0bc059b717363029839908920ea631\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"OBJECT_NOT_EXIST\\",\\n \\"errorMsg\\": \\"This object does not exist.\\",\\n \\"data\\": {\\n \\"instanceComputeMetrics\\": [\\n {\\n \\"instanceId\\": \\"20240730****ddlr\\",\\n \\"type\\": \\"ComputationSql\\",\\n \\"specCode\\": \\"OdpsStandard\\",\\n \\"jobOwner\\": \\"ALIYUN$7632***@aliyun.com\\",\\n \\"projectName\\": \\"odps_porject\\",\\n \\"submitTime\\": 1610432000000,\\n \\"endTime\\": 1710432000000,\\n \\"signature\\": \\"pqrs12345tuv\\",\\n \\"usage\\": 1024,\\n \\"unit\\": \\"GB\\"\\n }\\n ],\\n \\"totalCount\\": 64,\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10\\n }\\n}","type":"json"}]', + 'title' => 'ListComputeMetricsByInstance', + 'summary' => 'Queries a list of computing resources used by a pay-as-you-go job.', + 'translator' => 'machine', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListComputeMetricsByInstance', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'ListComputeQuotaPlan' => [ + 'path' => '/api/v1/quotas/{nickname}/computeQuotaPlan', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'abilityTreeCode' => '258226', + 'abilityTreeNodes' => [ + 'FEATUREodpsZAKNHC', + ], + ], + 'parameters' => [ + [ + 'name' => 'nickname', + 'in' => 'path', + 'schema' => [ + 'description' => 'The nickname of the level-1 quota.', + 'type' => 'string', + 'required' => true, + 'example' => 'os_MyQuota_p', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ListQuotaPlansDTO>', + 'description' => 'PopResult', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '0bc3b4ae16685836687916212e7850', + 'title' => '', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code returned.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + 'title' => '', + ], + 'errorCode' => [ + 'description' => 'The error code.', + 'type' => 'string', + 'example' => 'OBJECT_NOT_EXIST', + 'title' => '', + ], + 'errorMsg' => [ + 'description' => 'The error message.', + 'type' => 'string', + 'example' => 'This object does not exist.', + 'title' => '', + ], + 'data' => [ + 'description' => 'The returned data.', + 'type' => 'object', + 'properties' => [ + 'planList' => [ + 'description' => 'The list of quota plans.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the quota plan.', + 'type' => 'string', + 'example' => 'planA', + 'title' => '', + ], + 'createTime' => [ + 'description' => 'The time when the plan was created.', + 'type' => 'string', + 'example' => '1731394621890', + 'title' => '', + ], + 'quota' => [ + 'description' => 'The quota properties.', + 'type' => 'object', + 'properties' => [ + 'subQuotaInfoList' => [ + 'description' => 'The list of level-2 quotas.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The ID of the level-2 quota.', + 'type' => 'string', + 'example' => '6790', + 'title' => '', + ], + 'name' => [ + 'description' => 'The name of the level-2 quota.', + 'type' => 'string', + 'example' => 'dp_cn_shanghai_1702627945_p', + 'title' => '', + ], + 'nickName' => [ + 'description' => 'The nickname of the level-2 quota.', + 'type' => 'string', + 'example' => 'os_MyQuota', + 'title' => '', + ], + 'type' => [ + 'description' => 'The quota type.', + 'type' => 'string', + 'title' => '', + 'example' => 'FUXI_ONLINE', + ], + 'status' => [ + 'description' => 'The resource status.', + 'type' => 'string', + 'example' => 'ON', + 'title' => '', + ], + 'tenantId' => [ + 'description' => 'The tenant ID.', + 'type' => 'string', + 'example' => '478403690625249', + 'title' => '', + ], + 'regionId' => [ + 'description' => 'The region ID.', + 'type' => 'string', + 'example' => 'cn-beijing', + 'title' => '', + ], + 'cluster' => [ + 'description' => 'The cluster ID.', + 'type' => 'string', + 'example' => 'AT-120N'."\n", + 'title' => '', + ], + 'version' => [ + 'description' => 'The version number.', + 'type' => 'string', + 'example' => '2056', + 'title' => '', + ], + 'parameter' => [ + 'description' => 'The quota configuration parameters.', + 'type' => 'object', + 'example' => '{'."\n" + .' "enablePriority": false,'."\n" + .' "minCU": 25,'."\n" + .' "adhocCU": 0,'."\n" + .' "elasticReservedCU": 0,'."\n" + .' "forceReservedMin": false,'."\n" + .' "maxCU": 50,'."\n" + .' "schedulerType": "Fifo"'."\n" + .'}', + 'properties' => [ + 'minCU' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'elasticReservedCU' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'maxCU' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + ], + 'createTime' => [ + 'description' => 'The time when the quota was created.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1730946421757', + 'title' => '', + ], + 'creatorId' => [ + 'description' => 'The creator of the resource. This is the UID of an Alibaba Cloud account.', + 'type' => 'string', + 'example' => '672863518', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'id' => [ + 'description' => 'The ID of the level-1 quota.', + 'type' => 'string', + 'example' => '186', + 'title' => '', + ], + 'name' => [ + 'description' => 'The name of the level-1 quota.', + 'type' => 'string', + 'example' => 'dp_cn_hangzhou_1717465943_p', + 'title' => '', + ], + 'nickName' => [ + 'description' => 'The nickname of the level-1 quota.', + 'type' => 'string', + 'example' => 'os_MyQuota_p', + 'title' => '', + ], + 'type' => [ + 'description' => 'This corresponds to the resourceSystemType field of the control cluster.', + 'type' => 'string', + 'title' => '', + 'example' => 'FUXI_ONLINE', + ], + 'status' => [ + 'description' => 'The resource status.', + 'type' => 'string', + 'example' => 'ON', + 'title' => '', + ], + 'tenantId' => [ + 'description' => 'The tenant ID.', + 'type' => 'string', + 'example' => '478403690625249', + 'title' => '', + ], + 'regionId' => [ + 'description' => 'The region ID.', + 'type' => 'string', + 'example' => 'cn-beijing', + 'title' => '', + ], + 'cluster' => [ + 'description' => 'The cluster ID.', + 'type' => 'string', + 'example' => 'AT-120N'."\n", + 'title' => '', + ], + 'version' => [ + 'description' => 'The version.', + 'type' => 'string', + 'example' => '2056', + 'title' => '', + ], + 'parameter' => [ + 'description' => 'The quota configuration parameters.', + 'type' => 'object', + 'example' => '{'."\n" + .' "enablePriority": false,'."\n" + .' "minCU": 25,'."\n" + .' "adhocCU": 0,'."\n" + .' "elasticReservedCU": 0,'."\n" + .' "forceReservedMin": false,'."\n" + .' "maxCU": 50,'."\n" + .' "schedulerType": "Fifo"'."\n" + .'}', + 'properties' => [ + 'minCU' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'elasticReservedCU' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'maxCU' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + ], + 'createTime' => [ + 'description' => 'The time when the quota was created.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1730247361356', + 'title' => '', + ], + 'creatorId' => [ + 'description' => 'The creator of the resource. This is the UID of an Alibaba Cloud account.', + 'type' => 'string', + 'example' => '672863518', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0bc3b4ae16685836687916212e7850\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"OBJECT_NOT_EXIST\\",\\n \\"errorMsg\\": \\"This object does not exist.\\",\\n \\"data\\": {\\n \\"planList\\": [\\n {\\n \\"name\\": \\"planA\\",\\n \\"createTime\\": \\"1731394621890\\",\\n \\"quota\\": {\\n \\"subQuotaInfoList\\": [\\n {\\n \\"id\\": \\"6790\\",\\n \\"name\\": \\"dp_cn_shanghai_1702627945_p\\",\\n \\"nickName\\": \\"os_MyQuota\\",\\n \\"type\\": \\"FUXI_ONLINE\\",\\n \\"status\\": \\"ON\\",\\n \\"tenantId\\": \\"478403690625249\\",\\n \\"regionId\\": \\"cn-beijing\\",\\n \\"cluster\\": \\"AT-120N\\\\n\\",\\n \\"version\\": \\"2056\\",\\n \\"parameter\\": {\\n \\"minCU\\": 0,\\n \\"elasticReservedCU\\": 0,\\n \\"maxCU\\": 0\\n },\\n \\"createTime\\": 1730946421757,\\n \\"creatorId\\": \\"672863518\\"\\n }\\n ],\\n \\"id\\": \\"186\\",\\n \\"name\\": \\"dp_cn_hangzhou_1717465943_p\\",\\n \\"nickName\\": \\"os_MyQuota_p\\",\\n \\"type\\": \\"FUXI_ONLINE\\",\\n \\"status\\": \\"ON\\",\\n \\"tenantId\\": \\"478403690625249\\",\\n \\"regionId\\": \\"cn-beijing\\",\\n \\"cluster\\": \\"AT-120N\\\\n\\",\\n \\"version\\": \\"2056\\",\\n \\"parameter\\": {\\n \\"minCU\\": 0,\\n \\"elasticReservedCU\\": 0,\\n \\"maxCU\\": 0\\n },\\n \\"createTime\\": 1730247361356,\\n \\"creatorId\\": \\"672863518\\"\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'ListComputeQuotaPlan', + 'summary' => 'Lists compute quota plans.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListQuotasPlans', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + ], + 'flowControl' => [ + 'flowControlList' => [ + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'ListComputeQuotaPlan', + ], + ], + ], + ], + 'ListFunctions' => [ + 'path' => '/api/v1/projects/{projectName}/functions', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'projectName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the MaxCompute project.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'odps_project', + ], + ], + [ + 'name' => 'schemaName', + 'in' => 'query', + 'schema' => [ + 'description' => 'the name of schema.', + 'type' => 'string', + 'required' => false, + 'example' => 'default', + ], + ], + [ + 'name' => 'prefix', + 'in' => 'query', + 'schema' => [ + 'description' => 'The names of the returned resources. The names must start with the value specified by the prefix parameter. If the prefix parameter is set to a, the names of the returned resources must start with a.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'a', + ], + ], + [ + 'name' => 'marker', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies the marker after which the returned list begins.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cHlvZHBzX3VkZl8xMDExNV8xNDU3NDI4NDkzKg==', + ], + ], + [ + 'name' => 'maxItem', + 'in' => 'query', + 'schema' => [ + 'description' => 'The maximum number of entries to return on each page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + 'default' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ListResultDTO<FunctionInfo, MarkerPageInfo>>', + 'description' => 'PopResult\\<ListResultDTO\\<FunctionInfo, MarkerPageInfo>>'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0be3e0b716671885050924814e3623', + ], + 'data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'functions' => [ + 'description' => 'The information about each function.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about each function.', + 'type' => 'object', + 'properties' => [ + 'displayName' => [ + 'description' => 'The display name of the function.', + 'type' => 'string', + 'example' => 'getdate', + ], + 'name' => [ + 'description' => 'The name of the function.'."\n", + 'type' => 'string', + 'example' => 'getdate', + ], + 'owner' => [ + 'description' => 'The owner of the function.'."\n", + 'type' => 'string', + 'example' => 'odpsowner', + ], + 'schema' => [ + 'description' => 'The schema of the function.'."\n", + 'type' => 'string', + 'example' => 'abc', + ], + 'resources' => [ + 'description' => 'The name of the resource that was associated with the function.'."\n", + 'type' => 'string', + 'example' => 'abc', + ], + 'creationTime' => [ + 'description' => 'The time when the function was created. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1664505167000', + ], + 'class' => [ + 'description' => 'The class in which the function was defined.'."\n", + 'type' => 'string', + 'example' => 'abc', + ], + ], + ], + ], + 'marker' => [ + 'description' => 'Indicates the marker after which the returned list begins.'."\n", + 'type' => 'string', + 'example' => 'cHlvZHBzX3VkZl8xMDExNV8xNDU3NDI4NDkzKg==', + ], + 'maxItem' => [ + 'description' => 'The maximum number of entries returned per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + ], + ], + ], + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0be3e0b716671885050924814e3623\\",\\n \\"data\\": {\\n \\"functions\\": [\\n {\\n \\"displayName\\": \\"getdate\\",\\n \\"name\\": \\"getdate\\",\\n \\"owner\\": \\"odpsowner\\",\\n \\"schema\\": \\"abc\\",\\n \\"resources\\": \\"abc\\",\\n \\"creationTime\\": 1664505167000,\\n \\"class\\": \\"abc\\"\\n }\\n ],\\n \\"marker\\": \\"cHlvZHBzX3VkZl8xMDExNV8xNDU3NDI4NDkzKg==\\",\\n \\"maxItem\\": 10\\n }\\n}","type":"json"}]', + 'title' => 'ListFunctions', + 'summary' => 'Obtains functions in a MaxCompute project.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListFunctions', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + ], + ], + 'ListJobInfos' => [ + 'summary' => 'Retrieves a list of jobs.', + 'path' => '/api/v1/jobs', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'produces' => [], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '165874', + 'abilityTreeNodes' => [ + 'FEATUREodpsDUKRZ1', + ], + ], + 'parameters' => [ + [ + 'name' => 'tenantId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The tenant ID.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => '478403690625249', + ], + ], + [ + 'name' => 'region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'cn-shanghai', + ], + ], + [ + 'name' => 'orderColumn', + 'in' => 'query', + 'schema' => [ + 'description' => 'The column to use for sorting.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'cuUsage', + ], + ], + [ + 'name' => 'ascOrder', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to sort the results in ascending or descending order.', + 'type' => 'boolean', + 'required' => false, + 'default' => 'true', + 'title' => '', + 'example' => 'true', + ], + ], + [ + 'name' => 'pageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'title' => '', + 'example' => '1', + ], + ], + [ + 'name' => 'pageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries to return on each page.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'title' => '', + 'example' => '10', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'style' => 'json', + 'schema' => [ + 'description' => 'The request body.', + 'type' => 'object', + 'properties' => [ + 'from' => [ + 'description' => 'The start UNIX timestamp.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'title' => '', + 'example' => '1672112000', + ], + 'to' => [ + 'description' => 'The end UNIX timestamp.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'title' => '', + 'example' => '1672112130', + ], + 'quotaNickname' => [ + 'description' => 'The nickname of the quota.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'quota_nickname', + ], + 'projectList' => [ + 'description' => 'The project name.', + 'type' => 'array', + 'items' => [ + 'description' => 'The project name.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'projectA', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'typeList' => [ + 'description' => 'The job type.', + 'type' => 'array', + 'items' => [ + 'description' => 'The job type.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'SQL', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'jobOwnerList' => [ + 'description' => 'The job owner.', + 'type' => 'array', + 'items' => [ + 'description' => 'The job owner.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'ALIYUN$7632***@aliyun.com', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'signatureList' => [ + 'description' => 'The job signature.', + 'type' => 'array', + 'items' => [ + 'description' => 'The job signature.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'signatureabc', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'extNodeIdList' => [ + 'description' => 'The upstream node ID.', + 'type' => 'array', + 'items' => [ + 'description' => 'The upstream node ID.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => '76358164', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'instanceIdList' => [ + 'description' => 'The job instance ID.', + 'type' => 'array', + 'items' => [ + 'description' => 'The job instance ID.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => '20241028****jkl', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'statusList' => [ + 'description' => 'The job status.', + 'type' => 'array', + 'items' => [ + 'description' => 'The job status.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'running', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'priorityList' => [ + 'description' => 'The job priority.', + 'type' => 'array', + 'items' => [ + 'description' => 'The job priority.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'title' => '', + 'example' => '0', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'sortByList' => [ + 'description' => 'The fields for multi-column sorting.', + 'type' => 'array', + 'items' => [ + 'description' => 'A field for multi-column sorting.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'cuUsage', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'sortOrderList' => [ + 'description' => 'The sort orders for multi-column sorting.', + 'type' => 'array', + 'items' => [ + 'description' => 'A sort order for multi-column sorting.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'desc', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'sceneTagList' => [ + 'description' => 'The smart diagnosis tag.', + 'type' => 'array', + 'items' => [ + 'description' => 'A smart diagnosis tag.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'SubscriptionLackResource', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'extNodeNameList' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'string', + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'taskNameList' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'string', + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'required' => false, + 'example' => '{'."\n" + .' "from":1672112000, '."\n" + .' "to":1672112130, '."\n" + .' "statusList":[], '."\n" + .' "quotaNickname":"quota_nickname", '."\n" + .' "projectList":[], '."\n" + .' "typeList":[], '."\n" + .' "jobOwnerList":[], '."\n" + .' "signatureList":[], '."\n" + .' "extNodeIdList":[], '."\n" + .' "instanceIdList":[], '."\n" + .' "priorityList":[], '."\n" + .' "settings":{'."\n" + .' "key":"value"'."\n" + .' }'."\n" + .'}', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ListJobInfoDTO>', + 'description' => 'PopResult\\<ListJobInfoDto>', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => '0bc13a9516807484336515320e38f5', + ], + 'httpCode' => [ + 'description' => 'Indicates whether the business logic was successful. A value other than 200 indicates a failure.', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'example' => '200', + ], + 'data' => [ + 'description' => 'The returned data.', + 'type' => 'object', + 'properties' => [ + 'totalCount' => [ + 'description' => 'The total number of entries returned.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '64', + ], + 'pageNumber' => [ + 'description' => 'The page number.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '2', + ], + 'pageSize' => [ + 'description' => 'The number of entries per page.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '10', + ], + 'jobInfoList' => [ + 'description' => 'The list of job information.', + 'type' => 'array', + 'items' => [ + 'description' => 'The job information.', + 'type' => 'object', + 'properties' => [ + 'tenantId' => [ + 'description' => 'The tenant ID.', + 'type' => 'string', + 'title' => '', + 'example' => '213065738244354', + ], + 'region' => [ + 'description' => 'The region ID.', + 'type' => 'string', + 'title' => '', + 'example' => 'cn-shanghai', + ], + 'cluster' => [ + 'description' => 'The cluster ID.', + 'type' => 'string', + 'title' => '', + 'example' => 'AY20A', + ], + 'instanceId' => [ + 'description' => 'The instance ID.', + 'type' => 'string', + 'title' => '', + 'example' => '20230410050036549gfmsdwf60gg', + ], + 'jobOwner' => [ + 'description' => 'The account that submitted the job.', + 'type' => 'string', + 'title' => '', + 'example' => '[email protected]', + ], + 'project' => [ + 'description' => 'The name of the MaxCompute project.', + 'type' => 'string', + 'title' => '', + 'example' => 'openrec_new', + ], + 'jobType' => [ + 'description' => 'The job type.', + 'type' => 'string', + 'title' => '', + 'example' => 'SQL', + ], + 'priority' => [ + 'description' => 'The priority.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '1', + ], + 'status' => [ + 'description' => 'The status.', + 'type' => 'string', + 'title' => '', + 'example' => 'running', + ], + 'quotaNickname' => [ + 'description' => 'The nickname of the quota that the job uses.', + 'type' => 'string', + 'title' => '', + 'example' => 'my_quota', + ], + 'quotaType' => [ + 'description' => 'The quota type.', + 'type' => 'string', + 'title' => '', + 'example' => 'subscription', + ], + 'cuUsage' => [ + 'description' => 'The total CUs used.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '10', + ], + 'memoryUsage' => [ + 'description' => 'The total memory used.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '40', + ], + 'cuSnapshot' => [ + 'description' => 'The proportion of CUs in the job snapshot.', + 'type' => 'number', + 'format' => 'double', + 'title' => '', + 'example' => '0.48', + ], + 'memorySnapshot' => [ + 'description' => 'The proportion of memory in the job snapshot.', + 'type' => 'number', + 'format' => 'double', + 'title' => '', + 'example' => '0.42', + ], + 'statusSnapshot' => [ + 'description' => 'The status of the job snapshot.', + 'type' => 'string', + 'title' => '', + 'example' => 'running', + ], + 'submittedAtTime' => [ + 'description' => 'The time when the job was submitted.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '1672112013', + ], + 'waitingTime' => [ + 'description' => 'The waiting time.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '100', + ], + 'runningAtTime' => [ + 'description' => 'The time when the job started to run.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '1672112113', + ], + 'runningTime' => [ + 'description' => 'The runtime.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '800', + ], + 'endAtTime' => [ + 'description' => 'The time when the job finished.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '0', + ], + 'totalTime' => [ + 'description' => 'The total runtime.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '900', + ], + 'signature' => [ + 'description' => 'The SQL signature.', + 'type' => 'string', + 'title' => '', + 'example' => 'i094KijGrN3kOXZ74kbexB77XQY=', + ], + 'extPlantFrom' => [ + 'description' => 'The upstream platform.', + 'type' => 'string', + 'title' => '', + 'example' => 'platform_3', + ], + 'extNodeId' => [ + 'description' => 'The ID of the DataWorks node.', + 'type' => 'string', + 'title' => '', + 'example' => 'node_4', + ], + 'extNodeOnDuty' => [ + 'description' => 'The person in charge of the execution.', + 'type' => 'string', + 'title' => '', + 'example' => 'duty_2', + ], + 'tags' => [ + 'description' => 'The tags.', + 'type' => 'string', + 'title' => '', + 'example' => '[]', + ], + 'sceneResults' => [ + 'description' => 'The smart diagnosis results.', + 'type' => 'array', + 'items' => [ + 'description' => 'The smart diagnosis results.', + 'type' => 'object', + 'properties' => [ + 'sceneTag' => [ + 'description' => 'The tag of the smart diagnosis result.', + 'type' => 'string', + 'title' => '', + 'example' => 'SubscriptionLackResource', + ], + 'scene' => [ + 'description' => 'The scenario of the smart diagnosis result.', + 'type' => 'string', + 'title' => '', + 'example' => 'LackResource', + ], + 'type' => [ + 'description' => 'The type of the smart diagnosis result.', + 'type' => 'string', + 'title' => '', + 'example' => 'warning', + ], + 'summary' => [ + 'description' => 'A summary of the smart diagnosis result.', + 'type' => 'string', + 'title' => '', + 'example' => 'Insufficient computing resources available for the job. Click to view details.', + ], + 'description' => [ + 'description' => 'The details of the smart diagnosis result.', + 'type' => 'string', + 'title' => '', + 'example' => 'This job uses annual and monthly computing resources. It may be that the job is waiting for resources due to the large amount of overall job running data, many resources requested, and low job priority. Please go to Resource Consumption to view the specific situation. You can also go to Cost Optimization to see if you need to adjust resource configuration.', + ], + 'params' => [ + 'description' => 'Information about the nodes that have data skew or data bloat. This parameter is returned only when the diagnosis scenario is data skew or data bloat.', + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + 'description' => 'Information about the nodes that have data skew or data bloat.', + 'title' => '', + 'example' => '"jobinsight_data_skew_node": "Worker M1#10000_0"', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'inputBytes' => [ + 'description' => 'The amount of data scanned by the job. Unit: bytes.', + 'type' => 'number', + 'format' => 'double', + 'title' => '', + 'example' => '1234', + ], + 'extPlatformId' => [ + 'type' => 'string', + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'extNodeName' => [ + 'type' => 'string', + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'taskName' => [ + 'type' => 'string', + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'title' => 'ListJobInfos', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + [ + 'threshold' => '500', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'ListJobInfos', + ], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListJobInfos', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0bc13a9516807484336515320e38f5\\",\\n \\"httpCode\\": 200,\\n \\"data\\": {\\n \\"totalCount\\": 64,\\n \\"pageNumber\\": 2,\\n \\"pageSize\\": 10,\\n \\"jobInfoList\\": [\\n {\\n \\"tenantId\\": \\"213065738244354\\",\\n \\"region\\": \\"cn-shanghai\\",\\n \\"cluster\\": \\"AY20A\\",\\n \\"instanceId\\": \\"20230410050036549gfmsdwf60gg\\",\\n \\"jobOwner\\": \\"[email protected]\\",\\n \\"project\\": \\"openrec_new\\",\\n \\"jobType\\": \\"SQL\\",\\n \\"priority\\": 1,\\n \\"status\\": \\"running\\",\\n \\"quotaNickname\\": \\"my_quota\\",\\n \\"quotaType\\": \\"subscription\\",\\n \\"cuUsage\\": 10,\\n \\"memoryUsage\\": 40,\\n \\"cuSnapshot\\": 0.48,\\n \\"memorySnapshot\\": 0.42,\\n \\"statusSnapshot\\": \\"running\\",\\n \\"submittedAtTime\\": 1672112013,\\n \\"waitingTime\\": 100,\\n \\"runningAtTime\\": 1672112113,\\n \\"runningTime\\": 800,\\n \\"endAtTime\\": 0,\\n \\"totalTime\\": 900,\\n \\"signature\\": \\"i094KijGrN3kOXZ74kbexB77XQY=\\",\\n \\"extPlantFrom\\": \\"platform_3\\",\\n \\"extNodeId\\": \\"node_4\\",\\n \\"extNodeOnDuty\\": \\"duty_2\\",\\n \\"tags\\": \\"[]\\",\\n \\"sceneResults\\": [\\n {\\n \\"sceneTag\\": \\"SubscriptionLackResource\\",\\n \\"scene\\": \\"LackResource\\",\\n \\"type\\": \\"warning\\",\\n \\"summary\\": \\"Insufficient computing resources available for the job. Click to view details.\\",\\n \\"description\\": \\"This job uses annual and monthly computing resources. It may be that the job is waiting for resources due to the large amount of overall job running data, many resources requested, and low job priority. Please go to Resource Consumption to view the specific situation. You can also go to Cost Optimization to see if you need to adjust resource configuration.\\",\\n \\"params\\": {\\n \\"key\\": \\"\\\\\\"jobinsight_data_skew_node\\\\\\": \\\\\\"Worker M1#10000_0\\\\\\"\\"\\n }\\n }\\n ],\\n \\"inputBytes\\": 1234,\\n \\"extPlatformId\\": \\"\\",\\n \\"extNodeName\\": \\"\\",\\n \\"taskName\\": \\"\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'ListJobMetric' => [ + 'path' => '/api/v1/jobs/metric', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'abilityTreeCode' => '261938', + 'abilityTreeNodes' => [ + 'FEATUREodps2B6Z0N', + ], + ], + 'parameters' => [ + [ + 'name' => 'startTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start time for the observation interval.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1735534322', + ], + ], + [ + 'name' => 'endTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end time for the observation interval.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1735536322', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'style' => 'json', + 'schema' => [ + 'description' => 'The request body parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'metric' => [ + 'description' => 'The name of observation metric.', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'inputBytes' => 'inputBytes', + 'memory' => 'memory', + 'num' => 'num', + 'inputBytesPerCu' => 'inputBytesPerCu', + 'cpu' => 'cpu', + 'runningTime' => 'runningTime', + ], + 'example' => 'num', + ], + 'type' => [ + 'description' => 'The type of observation metric.', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'p1' => 'only for metric runningTime', + 'p99' => 'only for metric runningTime', + 'total' => 'only for metric num,cpu,memory,inputBytes,inputBytesPerCu', + 'min' => 'only for metric runningTime', + 'avg' => 'only for metric runningTime', + 'max' => 'only for metric runningTime', + 'p5' => 'only for metric runningTime', + 'p90' => 'only for metric runningTime', + 'p50' => 'only for metric runningTime', + 'p95' => 'only for metric runningTime', + 'p10' => 'only for metric runningTime', + ], + 'example' => 'total', + ], + 'project' => [ + 'description' => 'The name of MaxCompute projects (for filtering).', + 'type' => 'array', + 'items' => [ + 'description' => 'The name of the MaxCompute project.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'project_a', + ], + 'required' => false, + ], + 'quota' => [ + 'description' => 'The nickname of computing Quota nickname used by the job (for filtering).', + 'type' => 'array', + 'items' => [ + 'description' => 'The nickname of computing Quota nickname used by the job', + 'type' => 'string', + 'required' => false, + 'example' => 'os_PayAsYouGoQuota'."\n", + ], + 'required' => false, + ], + 'period' => [ + 'description' => 'The monitoring statistical period.Unit:Second(s).', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'enumValueTitles' => [ + 3600 => '3600', + 86400 => '86400', + ], + 'example' => '3600', + ], + 'group' => [ + 'description' => 'Grouping basis.'."\n" + ."\n" + .'> Available values: project, quota, type, status. Meanings:'."\n" + .'>- project: Group and aggregate by project;'."\n" + .'>- quota: Group and aggregate by quota;'."\n" + .'>- type: Group and aggregate by job type;'."\n" + .'>- status: Group and aggregate by job status.', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'quota' => 'quota', + 'project' => 'project', + 'type' => 'type', + 'status' => 'status', + ], + 'example' => 'project', + ], + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ObservationMetric>', + 'description' => 'PopResult<ObservationMetric>', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '0be3e0aa16667684362147582e038f', + ], + 'httpCode' => [ + 'description' => 'HTTP status code.'."\n" + .'- 1xx: Informational response - Request received, processing continues.'."\n" + .'- 2xx: Success - The request has been successfully received, understood, and accepted by the server.'."\n" + .'- 3xx: Redirection - Further action must be taken to complete the request.'."\n" + .'- 4xx: Client error - The request contains bad syntax or cannot be fulfilled.'."\n" + .'- 5xx: Server error - The server failed to fulfill an apparently valid request.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code.'."\n", + 'type' => 'string', + 'example' => 'OBJECT_NOT_EXIST', + ], + 'errorMsg' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'This object does not exist.', + ], + 'data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'category' => [ + 'description' => 'The category of the metrics.', + 'type' => 'string', + 'example' => 'job', + ], + 'name' => [ + 'description' => 'The name of observation metric.', + 'type' => 'string', + 'example' => 'num', + ], + 'period' => [ + 'description' => 'The monitoring statistical period.Unit:Second(s).', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '3600', + ], + 'metrics' => [ + 'description' => 'Metric details.', + 'type' => 'array', + 'items' => [ + 'description' => 'Metric values.', + 'type' => 'object', + 'properties' => [ + 'metric' => [ + 'description' => 'Metric related information.', + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + 'description' => 'Metric information.'."\n" + ."\n" + .'> Possible values: type, project, quota, group.', + 'example' => '"type": "total"', + ], + ], + 'values' => [ + 'description' => 'Metric values information.', + 'type' => 'array', + 'items' => [ + 'description' => 'List of metric values.', + 'type' => 'array', + 'items' => [ + 'description' => 'The first column represents the timestamp and the second column represents the corresponding value.', + 'type' => 'number', + 'format' => 'double', + 'example' => '1736679600, 3', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0be3e0aa16667684362147582e038f\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"OBJECT_NOT_EXIST\\",\\n \\"errorMsg\\": \\"This object does not exist.\\",\\n \\"data\\": {\\n \\"category\\": \\"job\\",\\n \\"name\\": \\"num\\",\\n \\"period\\": 3600,\\n \\"metrics\\": [\\n {\\n \\"metric\\": {\\n \\"key\\": \\"\\\\\\"type\\\\\\": \\\\\\"total\\\\\\"\\"\\n },\\n \\"values\\": [\\n [\\n 0\\n ]\\n ]\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'ListJobMetric', + 'summary' => 'Queries a performance metric of the job that is complete.', + 'translator' => 'machine', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListJobMetric', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'ListJobSnapshotInfos' => [ + 'summary' => 'Retrieves job snapshot data at a specific point in time.', + 'path' => '/api/v1/jobs/snapshot', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '231738', + 'abilityTreeNodes' => [ + 'FEATUREodpsDUKRZ1', + ], + ], + 'parameters' => [ + [ + 'name' => 'tenantId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The tenant ID. To view the tenant ID, log on to the MaxCompute console. In the navigation pane on the left, choose Tenant Management > Tenant Properties.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => '478403690625249', + ], + ], + [ + 'name' => 'region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'cn-chengdu', + ], + ], + [ + 'name' => 'orderColumn', + 'in' => 'query', + 'schema' => [ + 'description' => 'The column to sort by. Valid values:'."\n" + ."\n" + .'- submittedAtTime'."\n" + ."\n" + .'- waitingTime'."\n" + ."\n" + .'- runningAtTime'."\n" + ."\n" + .'- runningTime'."\n" + ."\n" + .'- snapshotTime'."\n" + ."\n" + .'- totalTime'."\n" + ."\n" + .'- cpuUsage'."\n" + ."\n" + .'- memoryUsage'."\n" + ."\n" + .'- minCpuPct'."\n" + ."\n" + .'- minMemoryPct'."\n" + ."\n" + .'- priority'."\n" + ."\n" + .'- cpuRequest'."\n" + ."\n" + .'- memoryRequest'."\n" + ."\n" + .'- cpuUsageToRequestRatio'."\n" + ."\n" + .'- memoryUsageToRequestRatio', + 'type' => 'string', + 'required' => false, + 'default' => 'submittedAtTime', + 'title' => '', + 'example' => 'cpuUsage', + ], + ], + [ + 'name' => 'ascOrder', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to sort the results in ascending order.', + 'type' => 'boolean', + 'required' => false, + 'default' => 'false', + 'title' => '', + 'example' => 'true', + ], + ], + [ + 'name' => 'pageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'title' => '', + 'example' => '1', + ], + ], + [ + 'name' => 'pageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'title' => '', + 'example' => '10', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'style' => 'json', + 'schema' => [ + 'description' => 'The request body.', + 'type' => 'object', + 'properties' => [ + 'from' => [ + 'description' => 'The start UNIX timestamp.'."\n" + ."\n" + .'> This parameter is invalid. The end timestamp is the point in time for the snapshot that you want to view.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'title' => '', + 'example' => '1706840714', + ], + 'to' => [ + 'description' => 'The end UNIX timestamp.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'title' => '', + 'example' => '1706840714', + ], + 'quotaNickname' => [ + 'description' => 'The nickname of the computing quota that the job uses.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'quota_A', + ], + 'projectList' => [ + 'description' => 'The project name.', + 'type' => 'array', + 'items' => [ + 'description' => 'The project name.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'projectA', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'typeList' => [ + 'description' => 'The job type.', + 'type' => 'array', + 'items' => [ + 'description' => 'The job type.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'SQL', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'jobOwnerList' => [ + 'description' => 'The job owner.', + 'type' => 'array', + 'items' => [ + 'description' => 'The job owner.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'ALIYUN$7632***@aliyun.com', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'signatureList' => [ + 'description' => 'The signature of the SQL job.', + 'type' => 'array', + 'items' => [ + 'description' => 'The signature of the SQL job.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'signatureabc', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'extNodeIdList' => [ + 'description' => 'The upstream node ID.', + 'type' => 'array', + 'items' => [ + 'description' => 'The upstream node ID.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => '76358164', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'instanceIdList' => [ + 'description' => 'The job instance ID.', + 'type' => 'array', + 'items' => [ + 'description' => 'The job instance ID.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => '20241028****jkl', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'statusList' => [ + 'description' => 'The job status.', + 'type' => 'array', + 'items' => [ + 'description' => 'The job status.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'running', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'priorityList' => [ + 'description' => 'The job priority.', + 'type' => 'array', + 'items' => [ + 'description' => 'The job priority.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'title' => '', + 'example' => '9', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'sortByList' => [ + 'description' => 'The fields for multi-column sorting.', + 'type' => 'array', + 'items' => [ + 'description' => 'A field for multi-column sorting.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'cuUsage', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'sortOrderList' => [ + 'description' => 'The sort orders for multi-column sorting.', + 'type' => 'array', + 'items' => [ + 'description' => 'A sort order for multi-column sorting.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'desc', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ListJobSnapshotInfoDTO>', + 'description' => 'PopResult', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => '0b87b7e716665825896565060e87a4', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n" + ."\n" + .'- 1xx: Informational - The request has been received and the process is continuing.'."\n" + ."\n" + .'- 2xx: Success - The request was successfully received, understood, and accepted.'."\n" + ."\n" + .'- 3xx: Redirection - Further action must be taken to complete the request.'."\n" + ."\n" + .'- 4xx: Client Error - The request contains bad syntax or cannot be fulfilled.'."\n" + ."\n" + .'- 5xx: Server Error - The server failed to fulfill an apparently valid request.', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code.', + 'type' => 'string', + 'title' => '', + 'example' => 'OBJECT_NOT_EXIST', + ], + 'errorMsg' => [ + 'description' => 'The error message.', + 'type' => 'string', + 'title' => '', + 'example' => '异常信息', + ], + 'data' => [ + 'description' => 'The returned data.', + 'type' => 'object', + 'properties' => [ + 'jobInfoList' => [ + 'description' => 'The list of job snapshots.', + 'type' => 'array', + 'items' => [ + 'description' => 'The job snapshot information.', + 'type' => 'object', + 'properties' => [ + 'tenantId' => [ + 'description' => 'The tenant ID.', + 'type' => 'string', + 'title' => '', + 'example' => '213065738244354', + ], + 'region' => [ + 'description' => 'The region ID.', + 'type' => 'string', + 'title' => '', + 'example' => 'cn-chengdu', + ], + 'instanceId' => [ + 'description' => 'The job ID.', + 'type' => 'string', + 'title' => '', + 'example' => '20241028****jkl', + ], + 'jobOwner' => [ + 'description' => 'The job owner.', + 'type' => 'string', + 'title' => '', + 'example' => 'ALIYUN$7632***@aliyun.com', + ], + 'project' => [ + 'description' => 'The project name.', + 'type' => 'string', + 'title' => '', + 'example' => 'projectA', + ], + 'jobType' => [ + 'description' => 'The job type.', + 'type' => 'string', + 'title' => '', + 'example' => 'SQL', + ], + 'priority' => [ + 'description' => 'The job priority.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '9', + ], + 'status' => [ + 'description' => 'The job status.'."\n" + ."\n" + .'> The status of a snapshot job can only be \\`running\\`.', + 'type' => 'string', + 'title' => '', + 'example' => 'running', + ], + 'quotaNickname' => [ + 'description' => 'The nickname of the computing quota that the job uses.', + 'type' => 'string', + 'title' => '', + 'example' => 'quota_A', + ], + 'quotaType' => [ + 'description' => 'The quota type.', + 'type' => 'string', + 'title' => '', + 'example' => 'subscription', + ], + 'cpuUsage' => [ + 'description' => 'The CPU usage of the job at the snapshot time. Unit: cores.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '100', + ], + 'memoryUsage' => [ + 'description' => 'The memory usage of the job at the snapshot time. Unit: MB.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '409600', + ], + 'maxCpuPct' => [ + 'description' => 'This parameter is not used.', + 'type' => 'number', + 'format' => 'double', + 'title' => '', + 'example' => '-1', + ], + 'minCpuPct' => [ + 'description' => 'The CPU usage percentage of a subscription job at the snapshot time. This value is calculated by dividing the CPU usage by the sum of the reserved CPU guarantee and the elastic reserved CPU. This parameter is not available for pay-as-you-go jobs.', + 'type' => 'number', + 'format' => 'double', + 'title' => '', + 'example' => '0.6', + ], + 'maxMemoryPct' => [ + 'description' => 'This parameter is not used.', + 'type' => 'number', + 'format' => 'double', + 'title' => '', + 'example' => '-1', + ], + 'minMemoryPct' => [ + 'description' => 'The memory usage percentage of a subscription job at the observation time. This value is calculated by dividing the memory usage by the sum of the reserved memory guarantee and the elastic reserved memory. This parameter is not available for pay-as-you-go jobs.', + 'type' => 'number', + 'format' => 'double', + 'title' => '', + 'example' => '0.6', + ], + 'submittedAtTime' => [ + 'description' => 'The time when the job was submitted.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '1736821785', + ], + 'waitingTime' => [ + 'description' => 'The waiting duration, in seconds. This is the duration from when the job was submitted to when it started running. If the job has not started, this is the duration from the submission time to the snapshot time.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '20', + ], + 'runningAtTime' => [ + 'description' => 'The time when the job started running.'."\n" + ."\n" + .'> The time when the job acquired its first computing resource.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '1736821805', + ], + 'runningTime' => [ + 'description' => 'The runtime duration, in seconds. This is the duration from when the job started running to the snapshot time. If the job has not started, this parameter is empty.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '43', + ], + 'snapshotTime' => [ + 'description' => 'The snapshot time.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '1736821848', + ], + 'totalTime' => [ + 'description' => 'The total duration, in seconds. This is the duration from when the job was submitted to the snapshot time.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '63', + ], + 'signature' => [ + 'description' => 'The signature of the SQL job.', + 'type' => 'string', + 'title' => '', + 'example' => 'signatureabc', + ], + 'extPlantFrom' => [ + 'description' => 'The upstream platform.', + 'type' => 'string', + 'title' => '', + 'example' => 'Dataworks', + ], + 'extNodeId' => [ + 'description' => 'The upstream node ID.', + 'type' => 'string', + 'title' => '', + 'example' => '76358164', + ], + 'extNodeOnDuty' => [ + 'description' => 'The account ID of the task owner.', + 'type' => 'string', + 'title' => '', + 'example' => 'duty_2', + ], + 'cpuRequest' => [ + 'description' => 'The amount of CPU cores requested by the job at the snapshot time.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '200', + ], + 'memoryRequest' => [ + 'description' => 'The amount of memory requested by the job at the snapshot time, in MB.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '409600', + ], + 'cpuUsageToRequestRatio' => [ + 'description' => 'The CPU fulfillment ratio of the job at the snapshot time. This is calculated by dividing the CPU usage by the CPU request.', + 'type' => 'number', + 'format' => 'double', + 'title' => '', + 'example' => '0.5', + ], + 'memoryUsageToRequestRatio' => [ + 'description' => 'The memory fulfillment ratio of the job at the snapshot time. This is calculated by dividing the memory usage by the memory request.', + 'type' => 'number', + 'format' => 'double', + 'title' => '', + 'example' => '1', + ], + 'extPlatformId' => [ + 'type' => 'string', + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'totalCount' => [ + 'description' => 'The total number of entries returned.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '123', + ], + 'pageNumber' => [ + 'description' => 'The page number.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '1', + ], + 'pageSize' => [ + 'description' => 'The number of entries per page.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '10', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'title' => 'ListJobSnapshotInfos', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'ListJobSnapshotInfos', + ], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListJobSnapshotInfos', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0b87b7e716665825896565060e87a4\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"OBJECT_NOT_EXIST\\",\\n \\"errorMsg\\": \\"异常信息\\",\\n \\"data\\": {\\n \\"jobInfoList\\": [\\n {\\n \\"tenantId\\": \\"213065738244354\\",\\n \\"region\\": \\"cn-chengdu\\",\\n \\"instanceId\\": \\"20241028****jkl\\",\\n \\"jobOwner\\": \\"ALIYUN$7632***@aliyun.com\\",\\n \\"project\\": \\"projectA\\",\\n \\"jobType\\": \\"SQL\\",\\n \\"priority\\": 9,\\n \\"status\\": \\"running\\",\\n \\"quotaNickname\\": \\"quota_A\\",\\n \\"quotaType\\": \\"subscription\\",\\n \\"cpuUsage\\": 100,\\n \\"memoryUsage\\": 409600,\\n \\"maxCpuPct\\": -1,\\n \\"minCpuPct\\": 0.6,\\n \\"maxMemoryPct\\": -1,\\n \\"minMemoryPct\\": 0.6,\\n \\"submittedAtTime\\": 1736821785,\\n \\"waitingTime\\": 20,\\n \\"runningAtTime\\": 1736821805,\\n \\"runningTime\\": 43,\\n \\"snapshotTime\\": 1736821848,\\n \\"totalTime\\": 63,\\n \\"signature\\": \\"signatureabc\\",\\n \\"extPlantFrom\\": \\"Dataworks\\",\\n \\"extNodeId\\": \\"76358164\\",\\n \\"extNodeOnDuty\\": \\"duty_2\\",\\n \\"cpuRequest\\": 200,\\n \\"memoryRequest\\": 409600,\\n \\"cpuUsageToRequestRatio\\": 0.5,\\n \\"memoryUsageToRequestRatio\\": 1,\\n \\"extPlatformId\\": \\"\\"\\n }\\n ],\\n \\"totalCount\\": 123,\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10\\n }\\n}","type":"json"}]', + ], + 'ListMmsDataSources' => [ + 'summary' => 'Lists the MaxCompute Migration Assist (MMA) data sources.', + 'path' => '/api/v1/mms/datasources', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '182985', + 'abilityTreeNodes' => [ + 'FEATUREodpsN8WEG6', + ], + ], + 'parameters' => [ + [ + 'name' => 'name', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the data source.', + 'type' => 'string', + 'required' => false, + 'example' => 'demo', + 'title' => '', + ], + ], + [ + 'name' => 'type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the data source.', + 'enumValueTitles' => [ + 'HIVE' => 'HIVE', + 'BIGQUERY' => 'BIGQUERY', + 'MAXCOMPUTE' => 'MAXCOMPUTE', + ], + 'type' => 'string', + 'required' => false, + 'example' => 'BIGQUERY', + 'title' => '', + ], + ], + [ + 'name' => 'region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.', + 'type' => 'string', + 'required' => false, + 'example' => 'cn-shanghai', + 'title' => '', + ], + ], + [ + 'name' => 'pageNum', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. If you leave this parameter empty, all data sources are returned.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + 'title' => '', + ], + ], + [ + 'name' => 'pageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries to return on each page. If you leave this parameter empty, all data sources are returned.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ApiRes<PagedListDTO<DataSourceModel>>', + 'description' => 'The paginated data.', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => 'C1F7715F-D316-5AB6-BD02-5241083F4003', + 'title' => '', + ], + 'data' => [ + 'description' => 'The returned data.', + 'type' => 'object', + 'properties' => [ + 'total' => [ + 'description' => 'The total number of records.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '9', + 'title' => '', + ], + 'objectList' => [ + 'description' => 'The list of data sources.', + 'type' => 'array', + 'items' => [ + 'description' => 'The data source.', + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The data source ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2000015', + 'title' => '', + ], + 'region' => [ + 'description' => 'The region ID.', + 'type' => 'string', + 'example' => 'cn-beijing', + 'title' => '', + ], + 'name' => [ + 'description' => 'The name of the data source.', + 'type' => 'string', + 'example' => 'demo', + 'title' => '', + ], + 'dstProject' => [ + 'description' => 'The default destination MaxCompute project.', + 'type' => 'string', + 'example' => 'mms_test', + 'title' => '', + ], + 'dstProjects' => [ + 'type' => 'array', + 'items' => [ + 'description' => 'A destination MaxCompute project.', + 'type' => 'string', + 'example' => 'mms_test', + 'title' => '', + ], + 'description' => 'The list of destination MaxCompute projects.', + 'title' => '', + 'example' => '', + ], + 'type' => [ + 'title' => 'HIVE, OSS, MAXCOMPUTE, MOCK, HIVE_OSS', + 'description' => 'The type of the data source.', + 'enumValueTitles' => [ + 'HIVE' => 'HIVE', + 'BIGQUERY' => 'BIGQUERY', + 'MAXCOMPUTE' => 'MAXCOMPUTE', + ], + 'type' => 'string', + 'example' => 'BIGQUERY', + ], + 'networklink' => [ + 'description' => 'The MaxCompute network connectivity ID is the region ID.', + 'type' => 'string', + 'example' => 'vpc-2zebqp6uojhdla46677tl:cn-beijing'."\n", + 'title' => '', + ], + 'lastUpdateTime' => [ + 'description' => 'The last time when the metadata was synchronized.', + 'type' => 'string', + 'example' => '2024-12-17 15:44:17'."\n", + 'title' => '', + ], + 'dbNum' => [ + 'description' => 'The number of databases in the data source.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '3', + 'title' => '', + ], + 'tableNum' => [ + 'description' => 'The number of tables in the data source.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1000', + 'title' => '', + ], + 'partitionNum' => [ + 'description' => 'The number of partitions in the data source.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10000000', + 'title' => '', + ], + 'createTime' => [ + 'description' => 'The time when the data source was created.', + 'type' => 'string', + 'example' => '2024-12-17 09:29:58'."\n" + ."\n", + 'title' => '', + ], + 'status' => [ + 'title' => 'STOPPED, STARTING, STARTED, STOPPING, START_FAILED, STOP_FAILED', + 'description' => 'The status of the data source.', + 'enumValueTitles' => [ + 'STARTING' => 'STARTING', + 'STOPPED' => 'STOPPED', + 'STARTED' => 'STARTED', + 'START_FAILED' => 'START\\_FAILED', + 'STOPPING' => 'STOPPING', + 'STOP_FAILED' => 'STOP\\_FAILED', + ], + 'type' => 'string', + 'example' => 'STARTED', + ], + 'errMsg' => [ + 'description' => 'The reason why the data source instance failed to start or shut down. This parameter is returned only when the value of \\`status\\` is \\`START\\_FAILED\\` or \\`STOP\\_FAILED\\`.', + 'type' => 'string', + 'example' => 'unexpected exception'."\n", + 'title' => '', + ], + 'config' => [ + 'description' => 'The configurations of the data source.', + 'type' => 'array', + 'items' => [ + 'description' => 'The configurations of the data source.', + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the configuration.', + 'type' => 'string', + 'example' => '范围分区表迁移方式'."\n", + 'title' => '', + ], + 'key' => [ + 'description' => 'The English identifier for the configuration.', + 'type' => 'string', + 'example' => 'bigquery.range.partition.migrate.type'."\n", + 'title' => '', + ], + 'desc' => [ + 'description' => 'The description of the configuration.', + 'type' => 'string', + 'example' => '范围分区表迁移方式'."\n", + 'title' => '', + ], + 'placeHolder' => [ + 'description' => 'An example value for the configuration.', + 'type' => 'string', + 'example' => 'Cluster or Partition'."\n", + 'title' => '', + ], + 'type' => [ + 'description' => 'The type of the configuration. Valid values: \\`boolean\\`, \\`int\\`, \\`map\\`, \\`string\\`, \\`password\\`, and \\`file\\`.', + 'enumValueTitles' => [ + 'password' => 'password', + 'boolean' => 'boolean', + 'file' => 'file', + 'string' => 'string', + 'map' => 'map', + 'int' => 'int', + ], + 'type' => 'string', + 'example' => 'string', + 'title' => '', + ], + 'subType' => [ + 'description' => 'If \\`type\\` is set to \\`file\\`, \\`subType\\` specifies the file type, such as \\`.keytab\\`.', + 'type' => 'string', + 'example' => '.keytab', + 'title' => '', + ], + 'value' => [ + 'description' => 'The value of the configuration.', + 'type' => 'any', + 'example' => 'Partition'."\n", + 'title' => '', + ], + 'enums' => [ + 'description' => 'The enumerated values for the configuration.', + 'type' => 'array', + 'items' => [ + 'description' => 'An enumerated value for the configuration.', + 'type' => 'string', + 'example' => 'Partition', + 'title' => '', + ], + 'title' => '', + 'example' => '', + ], + 'required' => [ + 'description' => 'Indicates whether the configuration is required.', + 'type' => 'boolean', + 'example' => 'true', + 'title' => '', + ], + 'group' => [ + 'description' => 'The configuration group.', + 'type' => 'string', + 'example' => 'basic_group', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'agentIsOnline' => [ + 'description' => 'Indicates whether the data source instance or its associated agent is started.', + 'type' => 'boolean', + 'example' => 'true', + 'title' => '', + ], + 'tablesDoingNum' => [ + 'description' => 'The number of tables that are being migrated.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '18', + 'title' => '', + ], + 'tablesDoneNum' => [ + 'description' => 'The number of tables that have been migrated.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2323', + 'title' => '', + ], + 'tablesPartDoneNum' => [ + 'description' => 'The number of tables that are partially migrated.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '22', + 'title' => '', + ], + 'tablesFailedNum' => [ + 'description' => 'The number of tables that failed to be migrated.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + 'title' => '', + ], + 'partitionsDoingNum' => [ + 'description' => 'The number of partitions that are being migrated.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2332', + 'title' => '', + ], + 'partitionsDoneNum' => [ + 'description' => 'The number of partitions that have been migrated.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '23', + 'title' => '', + ], + 'partitionsFailedNum' => [ + 'description' => 'The number of partitions that failed to be migrated.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2323', + 'title' => '', + ], + 'scanId' => [ + 'description' => 'The ID of the metadata synchronization task.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1000253'."\n", + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'pageNum' => [ + 'description' => 'The page number.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'title' => '', + ], + 'pageSize' => [ + 'description' => 'The number of entries per page.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"C1F7715F-D316-5AB6-BD02-5241083F4003\\",\\n \\"data\\": {\\n \\"total\\": 9,\\n \\"objectList\\": [\\n {\\n \\"id\\": 2000015,\\n \\"region\\": \\"cn-beijing\\",\\n \\"name\\": \\"demo\\",\\n \\"dstProject\\": \\"mms_test\\",\\n \\"dstProjects\\": [\\n \\"mms_test\\"\\n ],\\n \\"type\\": \\"BIGQUERY\\",\\n \\"networklink\\": \\"vpc-2zebqp6uojhdla46677tl:cn-beijing\\\\n\\",\\n \\"lastUpdateTime\\": \\"2024-12-17 15:44:17\\\\n\\",\\n \\"dbNum\\": 3,\\n \\"tableNum\\": 1000,\\n \\"partitionNum\\": 10000000,\\n \\"createTime\\": \\"2024-12-17 09:29:58\\\\n\\\\n\\",\\n \\"status\\": \\"STARTED\\",\\n \\"errMsg\\": \\"unexpected exception\\\\n\\",\\n \\"config\\": [\\n {\\n \\"name\\": \\"范围分区表迁移方式\\\\n\\",\\n \\"key\\": \\"bigquery.range.partition.migrate.type\\\\n\\",\\n \\"desc\\": \\"范围分区表迁移方式\\\\n\\",\\n \\"placeHolder\\": \\"Cluster or Partition\\\\n\\",\\n \\"type\\": \\"string\\",\\n \\"subType\\": \\".keytab\\",\\n \\"value\\": \\"Partition\\\\n\\",\\n \\"enums\\": [\\n \\"Partition\\"\\n ],\\n \\"required\\": true,\\n \\"group\\": \\"basic_group\\"\\n }\\n ],\\n \\"agentIsOnline\\": true,\\n \\"tablesDoingNum\\": 18,\\n \\"tablesDoneNum\\": 2323,\\n \\"tablesPartDoneNum\\": 22,\\n \\"tablesFailedNum\\": 2,\\n \\"partitionsDoingNum\\": 2332,\\n \\"partitionsDoneNum\\": 23,\\n \\"partitionsFailedNum\\": 2323,\\n \\"scanId\\": 1000253\\n }\\n ],\\n \\"pageNum\\": 1,\\n \\"pageSize\\": 20\\n }\\n}","type":"json"}]', + 'title' => 'ListMmsDataSources', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListMmsDataSources', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'ListMmsDbs' => [ + 'summary' => 'List databases in the MMA data source.', + 'path' => '/api/v1/mms/datasources/{sourceId}/dbs', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '182982', + 'abilityTreeNodes' => [ + 'FEATUREodpsN8WEG6', + ], + ], + 'parameters' => [ + [ + 'name' => 'sourceId', + 'in' => 'path', + 'schema' => [ + 'description' => 'Data source ID', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '2000018', + 'title' => '', + ], + ], + [ + 'name' => 'name', + 'in' => 'query', + 'schema' => [ + 'description' => 'Data source name', + 'type' => 'string', + 'required' => false, + 'example' => 'demo', + 'title' => '', + ], + ], + [ + 'name' => 'status', + 'in' => 'query', + 'schema' => [ + 'description' => 'Data source status', + 'enumValueTitles' => [ + 'STARTING' => 'STARTING', + 'STARTTED' => 'STARTTED', + 'STOPPED' => 'STOPPED', + 'START_FAILED' => 'START\\_FAILED', + 'STOPPING' => 'STOPPING', + 'STOP_FAILED' => 'STOP\\_FAILED', + ], + 'type' => 'string', + 'required' => false, + 'example' => 'STARTED', + 'title' => '', + ], + ], + [ + 'name' => 'sorter', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'Sorting conditions', + 'type' => 'object', + 'properties' => [ + 'numRows' => [ + 'description' => 'Number of data rows in the database', + 'enumValueTitles' => [ + 'asc' => 'asc', + 'desc' => 'desc', + ], + 'type' => 'string', + 'required' => false, + 'example' => 'desc', + 'title' => '', + ], + 'size' => [ + 'description' => 'Size of data in the database', + 'enumValueTitles' => [ + 'asc' => 'asc', + 'desc' => 'desc', + ], + 'type' => 'string', + 'required' => false, + 'example' => 'asc', + 'title' => '', + ], + 'updateTime' => [ + 'description' => 'Update time', + 'type' => 'string', + 'required' => false, + 'example' => '2024-12-17 15:44:17', + 'title' => '', + ], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + ], + [ + 'name' => 'pageNum', + 'in' => 'query', + 'schema' => [ + 'description' => 'Page number', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + 'title' => '', + ], + ], + [ + 'name' => 'pageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'Number of records per page', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ApiRes<PagedListDTO<DataBaseModel>>', + 'description' => 'Return value', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'Request ID.', + 'type' => 'string', + 'example' => 'CF3F9978-260F-5204-94BE-30A4E6B54443', + 'title' => '', + ], + 'data' => [ + 'description' => 'Returned data.', + 'type' => 'object', + 'properties' => [ + 'total' => [ + 'description' => 'Total number of records.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '13', + 'title' => '', + ], + 'objectList' => [ + 'description' => 'Database list', + 'type' => 'array', + 'items' => [ + 'description' => 'Database information', + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'Database ID', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1530', + 'title' => '', + ], + 'name' => [ + 'description' => 'Database name', + 'type' => 'string', + 'example' => 'mms_test', + 'title' => '', + ], + 'description' => [ + 'description' => 'Database description', + 'type' => 'string', + 'example' => 'for mms test', + 'title' => '', + ], + 'owner' => [ + 'description' => 'Database owner', + 'type' => 'string', + 'example' => 'System user', + 'title' => '', + ], + 'location' => [ + 'description' => 'Database storage location', + 'type' => 'string', + 'example' => ' hdfs://master-1-1.c-6fc187819ed6bae0.cn-shanghai.emr.aliyuncs.com:9000/user/hive/warehouse ', + 'title' => '', + ], + 'extra' => [ + 'description' => 'Other information stored in JSON format', + 'type' => 'string', + 'example' => '{}', + 'title' => '', + ], + 'tables' => [ + 'description' => 'Number of tables', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + 'title' => '', + ], + 'tablesDoing' => [ + 'description' => 'Tables being migrated', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + 'title' => '', + ], + 'tablesDone' => [ + 'description' => 'Tables migrated', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + 'title' => '', + ], + 'tablesPartDone' => [ + 'description' => 'Partially migrated tables', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + 'title' => '', + ], + 'tablesFailed' => [ + 'description' => 'Failed tables', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + 'title' => '', + ], + 'partitions' => [ + 'description' => 'Number of partitions', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1000', + 'title' => '', + ], + 'partitionsDoing' => [ + 'description' => 'Partitions being migrated', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '400', + 'title' => '', + ], + 'partitionsDone' => [ + 'description' => 'Partitions migrated', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + 'title' => '', + ], + 'partitionsFailed' => [ + 'description' => 'Failed partitions', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + 'title' => '', + ], + 'sourceId' => [ + 'description' => 'Data source ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2000015', + 'title' => '', + ], + 'sourceName' => [ + 'description' => 'Data source name', + 'type' => 'string', + 'example' => 'demo', + 'title' => '', + ], + 'size' => [ + 'description' => 'Database data size in bytes', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2342342', + 'title' => '', + ], + 'numRows' => [ + 'description' => 'Number of database data rows', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '23232', + 'title' => '', + ], + 'updated' => [ + 'description' => 'Whether data is updated', + 'type' => 'boolean', + 'example' => 'true', + 'title' => '', + ], + 'lastDdlTime' => [ + 'description' => 'Last DDL Time', + 'type' => 'string', + 'example' => '2024-12-17 15:44:42'."\n", + 'title' => '', + ], + 'createTime' => [ + 'description' => 'Time created in MMS', + 'type' => 'string', + 'example' => '2024-12-17 15:44:42'."\n", + 'title' => '', + ], + 'updateTime' => [ + 'description' => 'Latest data update time', + 'type' => 'string', + 'example' => '2024-12-17 15:44:42'."\n", + 'title' => '', + ], + 'status' => [ + 'title' => 'INIT, DOING, FAILED, DONE, PART_DONE', + 'description' => 'Migration status: INIT, DOING, FAILED, DONE, PART\\_DONE', + 'enumValueTitles' => [ + 'PART_DONE' => 'Partially completed', + 'INIT' => 'Not migrated', + 'DONE' => 'Completed', + 'DOING' => 'Migrating', + 'FAILED' => 'Failed', + ], + 'type' => 'string', + 'example' => 'DOING', + ], + 'deleted' => [ + 'description' => 'Whether deleted', + 'type' => 'boolean', + 'example' => 'false', + 'title' => '', + ], + 'dstProjectName' => [ + 'description' => 'Target MaxCompute project name', + 'type' => 'string', + 'example' => 'mms_test', + 'title' => '', + ], + 'dstName' => [ + 'description' => 'The MaxCompute schema corresponding to the source database. If the target MaxCompute project does not have a schema layer enabled, this value is null. By default, it is consistent with the source database name.', + 'type' => 'string', + 'example' => 'default', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'pageSize' => [ + 'description' => 'Page size', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + 'title' => '', + ], + 'pageNum' => [ + 'description' => 'Page number', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"CF3F9978-260F-5204-94BE-30A4E6B54443\\",\\n \\"data\\": {\\n \\"total\\": 13,\\n \\"objectList\\": [\\n {\\n \\"id\\": 1530,\\n \\"name\\": \\"mms_test\\",\\n \\"description\\": \\"for mms test\\",\\n \\"owner\\": \\"System user\\",\\n \\"location\\": \\" hdfs://master-1-1.c-6fc187819ed6bae0.cn-shanghai.emr.aliyuncs.com:9000/user/hive/warehouse \\",\\n \\"extra\\": \\"{}\\",\\n \\"tables\\": 100,\\n \\"tablesDoing\\": 20,\\n \\"tablesDone\\": 20,\\n \\"tablesPartDone\\": 20,\\n \\"tablesFailed\\": 20,\\n \\"partitions\\": 1000,\\n \\"partitionsDoing\\": 400,\\n \\"partitionsDone\\": 200,\\n \\"partitionsFailed\\": 200,\\n \\"sourceId\\": 2000015,\\n \\"sourceName\\": \\"demo\\",\\n \\"size\\": 2342342,\\n \\"numRows\\": 23232,\\n \\"updated\\": true,\\n \\"lastDdlTime\\": \\"2024-12-17 15:44:42\\\\n\\",\\n \\"createTime\\": \\"2024-12-17 15:44:42\\\\n\\",\\n \\"updateTime\\": \\"2024-12-17 15:44:42\\\\n\\",\\n \\"status\\": \\"DOING\\",\\n \\"deleted\\": false,\\n \\"dstProjectName\\": \\"mms_test\\",\\n \\"dstName\\": \\"default\\"\\n }\\n ],\\n \\"pageSize\\": 10,\\n \\"pageNum\\": 1\\n }\\n}","type":"json"}]', + 'title' => 'ListMmsDbs', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListMmsDbs', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + ], + ], + 'ListMmsJobs' => [ + 'summary' => 'Lists migration jobs.', + 'path' => '/api/v1/mms/datasources/{sourceId}/jobs', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '182977', + 'abilityTreeNodes' => [ + 'FEATUREodpsN8WEG6', + ], + ], + 'parameters' => [ + [ + 'name' => 'sourceId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The data source ID.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '2000002', + 'title' => '', + ], + ], + [ + 'name' => 'name', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the data source.', + 'type' => 'string', + 'required' => false, + 'example' => 'demo', + 'title' => '', + ], + ], + [ + 'name' => 'srcDbName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the source database.', + 'type' => 'string', + 'required' => false, + 'example' => 'test_db_1', + 'title' => '', + ], + ], + [ + 'name' => 'srcTableName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the source table.', + 'type' => 'string', + 'required' => false, + 'example' => 'test_table_1', + 'title' => '', + ], + ], + [ + 'name' => 'dstDbName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The destination MaxCompute project.', + 'type' => 'string', + 'required' => false, + 'example' => 'mms_test', + 'title' => '', + ], + ], + [ + 'name' => 'dstTableName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The destination MaxCompute table.', + 'type' => 'string', + 'required' => false, + 'example' => 'test_table_1', + 'title' => '', + ], + ], + [ + 'name' => 'status', + 'in' => 'query', + 'schema' => [ + 'description' => 'The status of the migration job.', + 'enumValueTitles' => [ + 'INIT' => 'The migration has not started.', + 'DONE' => 'The migration is successful.', + 'DOING' => 'The migration is in progress.', + 'FAILED' => 'The migration failed.', + ], + 'type' => 'string', + 'required' => false, + 'example' => 'DOING', + 'title' => '', + ], + ], + [ + 'name' => 'stopped', + 'in' => 'query', + 'schema' => [ + 'description' => 'Indicates whether the job is stopped.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => 'false', + 'title' => '', + ], + ], + [ + 'name' => 'timerId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The timer ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + 'title' => '', + 'required' => false, + ], + ], + [ + 'name' => 'pageNum', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of the page to return.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + 'title' => '', + ], + ], + [ + 'name' => 'pageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of items to return per page.', + 'enumValueTitles' => [ + 'asc' => 'Ascending order.', + 'desc' => 'Descending order.', + ], + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + 'title' => '', + ], + ], + [ + 'name' => 'sorter.status', + 'in' => 'query', + 'schema' => [ + 'description' => 'Sorting by status', + 'enumValueTitles' => [ + 'asc' => 'Ascending', + 'desc' => 'Descending', + ], + 'type' => 'string', + 'required' => false, + 'example' => 'desc', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ApiRes<PagedListDTO<JobModel>>', + 'description' => 'The returned data.', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '1112E7C7-C65F-57A2-A7C7-3B178AA257B6', + 'title' => '', + ], + 'data' => [ + 'description' => 'The details of the returned data.', + 'type' => 'object', + 'properties' => [ + 'total' => [ + 'description' => 'The total number of records.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + 'title' => '', + ], + 'objectList' => [ + 'description' => 'The list of migration jobs.', + 'type' => 'array', + 'items' => [ + 'description' => 'The migration job object.', + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The migration job ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '18', + 'title' => '', + ], + 'name' => [ + 'description' => 'The name of the migration job.', + 'type' => 'string', + 'example' => 'migrate_db_1', + 'title' => '', + ], + 'sourceId' => [ + 'description' => 'The data source ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2000015', + 'title' => '', + ], + 'dbId' => [ + 'description' => 'The source database ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '196', + 'title' => '', + ], + 'sourceName' => [ + 'description' => 'The name of the data source.', + 'type' => 'string', + 'example' => 'demo', + 'title' => '', + ], + 'srcDbName' => [ + 'description' => 'The name of the source database.', + 'type' => 'string', + 'example' => 'test_db_1', + 'title' => '', + ], + 'srcSchemaName' => [ + 'description' => 'The source schema name. This is the schema in a Layer 3 namespace.', + 'type' => 'string', + 'example' => 'test_table_1', + 'title' => '', + ], + 'dstDbName' => [ + 'description' => 'The destination MaxCompute project.', + 'type' => 'string', + 'example' => 'mms_test', + 'title' => '', + ], + 'dstSchemaName' => [ + 'description' => 'The destination MaxCompute schema.', + 'type' => 'string', + 'example' => 'test_table_1', + 'title' => '', + ], + 'status' => [ + 'title' => 'INIT, DOING, FAILED, DONE', + 'description' => 'The status of the migration job.', + 'enumValueTitles' => [ + 'INIT' => 'The job has not started.', + 'DONE' => 'The job is complete.', + 'DOING' => 'The job is running.', + 'FAILED' => 'The job failed.', + ], + 'type' => 'string', + 'example' => 'DONE', + ], + 'type' => [ + 'title' => 'Database, Tables, Partitions', + 'description' => 'The migration scope. Valid values: Database, Tables, and Partitions.', + 'enumValueTitles' => [ + 'Partitions' => 'Migrates multiple partitions.', + 'Database' => 'Migrates a single database.', + 'Tables' => 'Migrates multiple tables.', + ], + 'type' => 'string', + 'example' => 'Tables', + ], + 'taskNum' => [ + 'description' => 'The number of migration tasks in the job.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + 'title' => '', + ], + 'stopped' => [ + 'description' => 'Indicates whether the migration job is stopped.', + 'type' => 'boolean', + 'example' => 'false', + 'title' => '', + ], + 'createTime' => [ + 'description' => 'Indicates whether the migration job is stopped.', + 'type' => 'string', + 'example' => '2024-12-17 15:44:17'."\n", + 'title' => '', + ], + 'taskDone' => [ + 'description' => 'The number of completed migration tasks.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + 'title' => '', + ], + 'config' => [ + 'type' => 'object', + 'properties' => [ + 'partitions' => [ + 'type' => 'array', + 'items' => [ + 'description' => 'The partition ID of a table to migrate.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '[123, 132]', + 'title' => '', + ], + 'description' => 'When type is set to Partitions, specify the partition IDs of the tables to migrate.', + 'title' => '', + 'example' => '', + ], + 'tables' => [ + 'type' => 'array', + 'items' => [ + 'description' => 'The name of a table to migrate.', + 'type' => 'string', + 'example' => '["student", "scores"]', + 'title' => '', + ], + 'description' => 'When type is set to Tables, specify the names of the tables to migrate.', + 'title' => '', + 'example' => '', + ], + 'taskType' => [ + 'description' => 'Deprecated. Valid values: MOCK, HIVE (hive udtf task), HIVE\\_DATAX (hive datax task), COPY\\_TASK (ODPS Copy Task), ODPS\\_INSERT\\_OVERWRITE (ODPS simple insert overwrite task), MC2MC\\_VERIFY, OSS, HIVE\\_OSS, HIVE\\_SPARK, and BIGQUERY.', + 'type' => 'string', + 'title' => '', + 'example' => 'BIGQUERY', + ], + 'tableBlackList' => [ + 'type' => 'array', + 'items' => [ + 'description' => 'When type is set to Database, the table to exclude from migration.', + 'type' => 'string', + 'example' => '["student", "scores"]', + 'title' => '', + ], + 'description' => 'When type is set to Database, specify the tables to exclude from migration.', + 'title' => '', + 'example' => '', + ], + 'tableWhiteList' => [ + 'type' => 'array', + 'items' => [ + 'description' => 'When type is set to Database, the table to migrate.', + 'type' => 'string', + 'example' => '["student", "scores"]', + 'title' => '', + ], + 'description' => 'When type is set to Database, specify the tables to migrate. If you do not specify tableWhiteList, all tables in the specified database are migrated.', + 'title' => '', + 'example' => '', + ], + 'partitionFilters' => [ + 'type' => 'object', + 'additionalProperties' => [ + 'description' => 'The partition filter expression. Example: p1 >= \'2022-03-04\' and (p2 = 10 or p3 > 20) and p4 in (\'abc\', \'cde\'). Notes:'."\n" + ."\n" + .'p1, p2, and p3 are partition names.'."\n" + ."\n" + .'Partition values are strings or numbers. Strings are enclosed in double or single quotes.'."\n" + ."\n" + .'Only string values are allowed for partition columns other than INT and BIGINT types.'."\n" + ."\n" + .'Comparison operators include the following: >, >=, =, <, <=, and <>.'."\n" + ."\n" + .'The IN operator is supported.'."\n" + ."\n" + .'Logical operators include AND and OR.'."\n" + ."\n" + .'Use parentheses to group conditions.', + 'type' => 'string', + 'example' => '{'."\n" + .'"student": "p1 >= \'2022-03-04\' and (p2 = 10 or p3 > 20) and p4 in (\'abc\', \'cde\')" '."\n" + .'}', + 'title' => '', + ], + 'description' => 'The partition filter expression. Specify the partition filter expression for each table.', + 'title' => '', + 'example' => '', + ], + 'schemaOnly' => [ + 'description' => 'Deprecated.', + 'type' => 'boolean', + 'example' => 'false', + 'title' => '', + ], + 'tableMapping' => [ + 'type' => 'object', + 'additionalProperties' => [ + 'description' => 'The mapping from a source table name to a destination table name.', + 'type' => 'string', + 'example' => '{\'a\': \'a1\'}', + 'title' => '', + ], + 'description' => 'The mapping from source table names to destination table names.', + 'title' => '', + 'example' => '', + ], + 'increment' => [ + 'description' => 'Enable incremental migration. Only new or modified partitions are migrated. Modified partitions are re-migrated.', + 'type' => 'boolean', + 'example' => 'true', + 'title' => '', + ], + 'enableVerification' => [ + 'description' => 'Enable verification. The current method runs SELECT COUNT on both the source and destination and compares the row counts.', + 'type' => 'boolean', + 'example' => 'true', + 'title' => '', + ], + 'tunnelQuota' => [ + 'description' => 'Deprecated.', + 'type' => 'string', + 'example' => 'Depcreated', + 'title' => '', + ], + 'columnMapping' => [ + 'type' => 'object', + 'additionalProperties' => [ + 'description' => 'The mapping from a source column name to a destination column name.', + 'type' => 'string', + 'example' => '{"c-1": "c_1"}', + 'title' => '', + ], + 'description' => 'The mapping from source column names to destination column names.', + 'title' => '', + 'example' => '', + ], + 'others' => [ + 'description' => 'Other configuration settings.', + 'type' => 'object', + 'example' => '{"spark.executor.mem": "2g"}', + 'title' => '', + ], + ], + 'description' => 'The configuration of the migration job.', + 'title' => '', + 'example' => '', + ], + 'eta' => [ + 'description' => 'The estimated completion time of the migration. A smaller eta value increases the priority of the migration job.', + 'type' => 'string', + 'example' => '2025-05-06', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'pageNum' => [ + 'description' => 'The page number.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'title' => '', + ], + 'pageSize' => [ + 'description' => 'The number of entries returned on each page.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"1112E7C7-C65F-57A2-A7C7-3B178AA257B6\\",\\n \\"data\\": {\\n \\"total\\": 100,\\n \\"objectList\\": [\\n {\\n \\"id\\": 18,\\n \\"name\\": \\"migrate_db_1\\",\\n \\"sourceId\\": 2000015,\\n \\"dbId\\": 196,\\n \\"sourceName\\": \\"demo\\",\\n \\"srcDbName\\": \\"test_db_1\\",\\n \\"srcSchemaName\\": \\"test_table_1\\",\\n \\"dstDbName\\": \\"mms_test\\",\\n \\"dstSchemaName\\": \\"test_table_1\\",\\n \\"status\\": \\"DONE\\",\\n \\"type\\": \\"Tables\\",\\n \\"taskNum\\": 10,\\n \\"stopped\\": false,\\n \\"createTime\\": \\"2024-12-17 15:44:17\\\\n\\",\\n \\"taskDone\\": 10,\\n \\"config\\": {\\n \\"partitions\\": [\\n 0\\n ],\\n \\"tables\\": [\\n \\"[\\\\\\"student\\\\\\", \\\\\\"scores\\\\\\"]\\"\\n ],\\n \\"taskType\\": \\"BIGQUERY\\",\\n \\"tableBlackList\\": [\\n \\"[\\\\\\"student\\\\\\", \\\\\\"scores\\\\\\"]\\"\\n ],\\n \\"tableWhiteList\\": [\\n \\"[\\\\\\"student\\\\\\", \\\\\\"scores\\\\\\"]\\"\\n ],\\n \\"partitionFilters\\": {\\n \\"key\\": \\"{\\\\n\\\\\\"student\\\\\\": \\\\\\"p1 >= \'2022-03-04\' and (p2 = 10 or p3 > 20) and p4 in (\'abc\', \'cde\')\\\\\\" \\\\n}\\"\\n },\\n \\"schemaOnly\\": false,\\n \\"tableMapping\\": {\\n \\"key\\": \\"{\'a\': \'a1\'}\\"\\n },\\n \\"increment\\": true,\\n \\"enableVerification\\": true,\\n \\"tunnelQuota\\": \\"Depcreated\\",\\n \\"columnMapping\\": {\\n \\"key\\": \\"{\\\\\\"c-1\\\\\\": \\\\\\"c_1\\\\\\"}\\"\\n },\\n \\"others\\": {\\n \\"spark.executor.mem\\": \\"2g\\"\\n }\\n },\\n \\"eta\\": \\"2025-05-06\\"\\n }\\n ],\\n \\"pageNum\\": 1,\\n \\"pageSize\\": 10\\n }\\n}","type":"json"}]', + 'title' => 'ListMmsJobs', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListMmsJobs', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + ], + ], + 'ListMmsPartitions' => [ + 'summary' => 'Lists the partitions in a MaxCompute Migration Assist (MMA) data source.', + 'path' => '/api/v1/mms/datasources/{sourceId}/partitions', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '182996', + 'abilityTreeNodes' => [ + 'FEATUREodpsN8WEG6', + ], + ], + 'parameters' => [ + [ + 'name' => 'sourceId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The data source ID.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '200018', + 'title' => '', + ], + ], + [ + 'name' => 'dbId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database ID.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '2', + 'title' => '', + ], + ], + [ + 'name' => 'dbName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database name.', + 'type' => 'string', + 'required' => false, + 'example' => 'd1', + 'title' => '', + ], + ], + [ + 'name' => 'updated', + 'in' => 'query', + 'schema' => [ + 'description' => 'Filters partitions whose metadata has been updated.', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + 'title' => '', + ], + ], + [ + 'name' => 'tableName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The table name.', + 'type' => 'string', + 'required' => false, + 'example' => 't1', + 'title' => '', + ], + ], + [ + 'name' => 'tableId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the table that contains the partition.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20323', + 'title' => '', + 'required' => false, + ], + ], + [ + 'name' => 'value', + 'in' => 'query', + 'schema' => [ + 'description' => 'The partition value.', + 'type' => 'string', + 'required' => false, + 'example' => 'p1=1/p2=abc', + 'title' => '', + ], + ], + [ + 'name' => 'status', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The migration status.', + 'type' => 'array', + 'items' => [ + 'description' => 'The migration status.', + 'enumValueTitles' => [ + 'INIT' => 'Not migrated.', + 'DONE' => 'Succeeded.', + 'DOING' => 'Migrating.', + 'FAILED' => 'Failed.', + ], + 'type' => 'string', + 'required' => false, + 'example' => '["DONE", "FAILED"]', + 'title' => '', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + ], + [ + 'name' => 'lastDdlTimeStart', + 'in' => 'query', + 'schema' => [ + 'description' => 'The minimum lastDdlTime value.', + 'type' => 'string', + 'required' => false, + 'example' => '2024-12-17 15:44:42'."\n", + 'title' => '', + ], + ], + [ + 'name' => 'lastDdlTimeEnd', + 'in' => 'query', + 'schema' => [ + 'description' => 'The maximum lastDdlTime value.', + 'type' => 'string', + 'required' => false, + 'example' => '2024-12-17 19:44:42'."\n", + 'title' => '', + ], + ], + [ + 'name' => 'pageNum', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number to return.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + 'title' => '', + ], + ], + [ + 'name' => 'pageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries to return per page.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '100', + 'title' => '', + ], + ], + [ + 'name' => 'sorter.numRows', + 'in' => 'query', + 'schema' => [ + 'description' => 'Sorts by number of rows.', + 'enumValueTitles' => [ + 'asc' => 'Ascending.', + 'desc' => 'Descending.', + ], + 'type' => 'string', + 'required' => false, + 'example' => 'desc', + 'title' => '', + ], + ], + [ + 'name' => 'sorter.size', + 'in' => 'query', + 'schema' => [ + 'description' => 'Sorts by data size.', + 'enumValueTitles' => [ + 'asc' => 'Ascending.', + 'desc' => 'Descending.', + ], + 'type' => 'string', + 'required' => false, + 'example' => 'asc', + 'title' => '', + ], + ], + [ + 'name' => 'sorter.lastDdlTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'Sorts by lastDdlTime.', + 'enumValueTitles' => [ + 'asc' => 'Ascending.', + 'desc' => 'Descending.', + ], + 'type' => 'string', + 'required' => false, + 'example' => 'desc', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ApiRes<PagedListDTO<PartitionModel>>', + 'description' => 'The return value.', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => 'D9F872FD-5DDE-30A6-8C8A-1B8C6A81059F', + 'title' => '', + ], + 'data' => [ + 'description' => 'The returned data.', + 'type' => 'object', + 'properties' => [ + 'total' => [ + 'description' => 'The total number of partitions.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1000', + 'title' => '', + ], + 'objectList' => [ + 'description' => 'The list of partitions.', + 'type' => 'array', + 'items' => [ + 'description' => 'The partition object.', + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The partition ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2323', + 'title' => '', + ], + 'dbId' => [ + 'description' => 'The ID of the database that contains the partition. The term "database" refers to different metadata layers across data sources. For example, it maps to Dataset in BigQuery, Database in Hive, Schema in Databricks, and Schema in MaxCompute.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '196', + 'title' => '', + ], + 'tableId' => [ + 'description' => 'The table ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '23', + 'title' => '', + ], + 'dbName' => [ + 'description' => 'The database name. The term "database" refers to different metadata layers across data sources. For example, it maps to Dataset in BigQuery, Database in Hive, Schema in Databricks, and Schema in MaxCompute.', + 'type' => 'string', + 'example' => 'd1', + 'title' => '', + ], + 'tableName' => [ + 'description' => 'The table name.', + 'type' => 'string', + 'example' => 't1', + 'title' => '', + ], + 'value' => [ + 'description' => 'The partition value.', + 'type' => 'string', + 'example' => 'p1=1/p2=abc'."\n", + 'title' => '', + ], + 'dstProjectName' => [ + 'description' => 'The destination MaxCompute project name.', + 'type' => 'string', + 'example' => 'mms_test', + 'title' => '', + ], + 'dstSchemaName' => [ + 'description' => 'The destination MaxCompute schema name. This field is empty for MaxCompute projects that do not use schemas.', + 'type' => 'string', + 'example' => 'default', + 'title' => '', + ], + 'dstTableName' => [ + 'description' => 'The destination MaxCompute table name.', + 'type' => 'string', + 'example' => 'default', + 'title' => '', + ], + 'dstValue' => [ + 'description' => 'The destination MaxCompute partition value. By default, this matches the source partition value.', + 'type' => 'string', + 'example' => 'p1=1/p2=abc', + 'title' => '', + ], + 'sourceId' => [ + 'description' => 'The data source ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200018', + 'title' => '', + ], + 'sourceName' => [ + 'description' => 'The data source name.', + 'type' => 'string', + 'example' => 'demo', + 'title' => '', + ], + 'size' => [ + 'description' => 'The data size in bytes.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '23223', + 'title' => '', + ], + 'numRows' => [ + 'description' => 'The number of rows.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2323', + 'title' => '', + ], + 'updated' => [ + 'description' => 'Indicates whether the metadata has been updated.', + 'type' => 'boolean', + 'example' => 'false', + 'title' => '', + ], + 'lastDdlTime' => [ + 'description' => 'The time when the DDL was last changed.', + 'type' => 'string', + 'example' => '2024-12-17 15:44:42'."\n", + 'title' => '', + ], + 'status' => [ + 'title' => 'INIT, DOING, FAILED, DONE, PART_DONE', + 'description' => 'The migration status.', + 'enumValueTitles' => [ + 'INIT' => 'Not migrated.', + 'DONE' => 'Succeeded.', + 'DOING' => 'Migrating.', + 'FAILED' => 'Failed.', + ], + 'type' => 'string', + 'example' => 'DONE', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'pageNum' => [ + 'description' => 'The page number.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'title' => '', + ], + 'pageSize' => [ + 'description' => 'The number of entries per page.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"D9F872FD-5DDE-30A6-8C8A-1B8C6A81059F\\",\\n \\"data\\": {\\n \\"total\\": 1000,\\n \\"objectList\\": [\\n {\\n \\"id\\": 2323,\\n \\"dbId\\": 196,\\n \\"tableId\\": 23,\\n \\"dbName\\": \\"d1\\",\\n \\"tableName\\": \\"t1\\",\\n \\"value\\": \\"p1=1/p2=abc\\\\n\\",\\n \\"dstProjectName\\": \\"mms_test\\",\\n \\"dstSchemaName\\": \\"default\\",\\n \\"dstTableName\\": \\"default\\",\\n \\"dstValue\\": \\"p1=1/p2=abc\\",\\n \\"sourceId\\": 200018,\\n \\"sourceName\\": \\"demo\\",\\n \\"size\\": 23223,\\n \\"numRows\\": 2323,\\n \\"updated\\": false,\\n \\"lastDdlTime\\": \\"2024-12-17 15:44:42\\\\n\\",\\n \\"status\\": \\"DONE\\"\\n }\\n ],\\n \\"pageNum\\": 1,\\n \\"pageSize\\": 10\\n }\\n}","type":"json"}]', + 'title' => 'ListMmsPartitions', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListMmsPartitions', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + ], + ], + 'ListMmsTables' => [ + 'summary' => 'Lists the tables in a MaxCompute Migration Assist (MMA) data source.', + 'path' => '/api/v1/mms/datasources/{sourceId}/tables', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '182987', + 'abilityTreeNodes' => [ + 'FEATUREodpsN8WEG6', + ], + ], + 'parameters' => [ + [ + 'name' => 'sourceId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The ID of the data source.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '2000015', + 'title' => '', + ], + ], + [ + 'name' => 'onlyName', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to return only the names of the tables.', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + 'title' => '', + ], + ], + [ + 'name' => 'dbId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the database.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '197', + 'title' => '', + ], + ], + [ + 'name' => 'dbName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the database.', + 'type' => 'string', + 'required' => false, + 'example' => 'mms_test', + 'title' => '', + ], + ], + [ + 'name' => 'name', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the table.', + 'type' => 'string', + 'required' => false, + 'example' => 'test', + 'title' => '', + ], + ], + [ + 'name' => 'dstProjectName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the destination MaxCompute project.', + 'type' => 'string', + 'example' => 'mms_test', + 'title' => '', + 'required' => false, + ], + ], + [ + 'name' => 'dstSchemaName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the destination MaxCompute schema. This parameter is null if the destination MaxCompute project does not have a schema layer.', + 'type' => 'string', + 'example' => 'default', + 'title' => '', + 'required' => false, + ], + ], + [ + 'name' => 'dstName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the destination MaxCompute table.', + 'type' => 'string', + 'example' => 'test', + 'title' => '', + 'required' => false, + ], + ], + [ + 'name' => 'type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The table type.', + 'type' => 'string', + 'required' => false, + 'example' => 'MANAGED_TABLE', + 'title' => '', + ], + ], + [ + 'name' => 'hasPartitions', + 'in' => 'query', + 'schema' => [ + 'description' => 'The partitioned table.', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'title' => '', + ], + ], + [ + 'name' => 'status', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The migration status.', + 'type' => 'array', + 'items' => [ + 'description' => 'The migration status.', + 'enumValueTitles' => [ + 'PART_DONE' => 'The migration is partially successful.', + 'INIT' => 'The migration has not started.', + 'DONE' => 'The migration is successful.', + 'DOING' => 'The migration is in progress.', + 'FAILED' => 'The migration failed.', + ], + 'type' => 'string', + 'required' => false, + 'example' => '["DONE", "FAILED"]', + 'title' => '', + ], + 'required' => false, + 'title' => '', + 'example' => 'test', + ], + ], + [ + 'name' => 'lastDdlTimeStart', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start of the time range for lastDdlTime.', + 'type' => 'string', + 'required' => false, + 'example' => '2024-12-17 15:44:42'."\n", + 'title' => '', + ], + ], + [ + 'name' => 'lastDdlTimeEnd', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range for lastDdlTime.', + 'type' => 'string', + 'required' => false, + 'example' => '2024-12-19 15:44:42'."\n", + 'title' => '', + ], + ], + [ + 'name' => 'pageNum', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + 'title' => '', + ], + ], + [ + 'name' => 'pageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries to return on each page.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + 'title' => '', + ], + ], + [ + 'name' => 'sorter.numRows', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sort order for the number of rows.', + 'enumValueTitles' => [ + 'asc' => 'ascending order.', + 'desc' => 'descending order.', + ], + 'type' => 'string', + 'required' => false, + 'example' => 'desc', + 'title' => '', + ], + ], + [ + 'name' => 'sorter.size', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sort order for the data size.', + 'enumValueTitles' => [ + 'asc' => 'ascending order.', + 'desc' => 'descending order.', + ], + 'type' => 'string', + 'required' => false, + 'example' => 'asc'."\n", + 'title' => '', + ], + ], + [ + 'name' => 'sorter.lastDdlTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sort order for lastDdlTime.', + 'enumValueTitles' => [ + 'asc' => 'ascending order.', + 'desc' => 'descending order.', + ], + 'type' => 'string', + 'required' => false, + 'example' => 'desc', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ApiRes<PagedListDTO<TableModel>>', + 'description' => 'The return value.', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => 'E7FB14F1-4ACD-5C73-A755-B302D70AB9AD', + 'title' => '', + ], + 'data' => [ + 'description' => 'The returned data.', + 'type' => 'object', + 'properties' => [ + 'total' => [ + 'description' => 'The total number of records.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + 'title' => '', + ], + 'objectList' => [ + 'description' => 'The list of tables.', + 'type' => 'array', + 'items' => [ + 'description' => 'The table information.', + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The table ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1003476', + 'title' => '', + ], + 'dbId' => [ + 'description' => 'The database ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '196', + 'title' => '', + ], + 'dbName' => [ + 'description' => 'The database name.', + 'type' => 'string', + 'example' => 'demo', + 'title' => '', + ], + 'name' => [ + 'description' => 'The table name.', + 'type' => 'string', + 'example' => 'test', + 'title' => '', + ], + 'dstProjectName' => [ + 'description' => 'The name of the destination MaxCompute project.', + 'type' => 'string', + 'example' => 'mms_test', + 'title' => '', + ], + 'dstSchemaName' => [ + 'description' => 'The name of the destination MaxCompute schema. This parameter is null if the destination MaxCompute project does not have a schema layer.', + 'type' => 'string', + 'example' => 'default', + 'title' => '', + ], + 'dstName' => [ + 'description' => 'The name of the destination MaxCompute table. By default, this name is the same as the source table name.', + 'type' => 'string', + 'example' => 'test', + 'title' => '', + ], + 'type' => [ + 'description' => 'The table type.', + 'type' => 'string', + 'example' => 'MANAGED_TABLE', + 'title' => '', + ], + 'hasPartitions' => [ + 'description' => 'Indicates whether the table is a partitioned table.', + 'type' => 'boolean', + 'example' => 'true', + 'title' => '', + ], + 'schema' => [ + 'description' => 'The table schema.', + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The table name.', + 'type' => 'string', + 'example' => 'test', + 'title' => '', + ], + 'comment' => [ + 'description' => 'The comment on the table.', + 'type' => 'string', + 'example' => 'for mms test', + 'title' => '', + ], + 'columns' => [ + 'description' => 'All non-partition key columns of the table.', + 'type' => 'array', + 'items' => [ + 'description' => 'A non-partition key column.', + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The column name.', + 'type' => 'string', + 'example' => 'user_id', + 'title' => '', + ], + 'type' => [ + 'description' => 'The column type.', + 'type' => 'string', + 'example' => 'bigint', + 'title' => '', + ], + 'comment' => [ + 'description' => 'The comment on the column.', + 'type' => 'string', + 'example' => 'user id', + 'title' => '', + ], + 'defaultValue' => [ + 'description' => 'The default value of the column.', + 'type' => 'string', + 'example' => '""', + 'title' => '', + ], + 'nullable' => [ + 'description' => 'Indicates whether the column can be null.', + 'type' => 'boolean', + 'example' => 'false', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'partitions' => [ + 'description' => 'All partition key columns.', + 'type' => 'array', + 'items' => [ + 'description' => 'A partition key column.', + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The column name.', + 'type' => 'string', + 'example' => 'p1', + 'title' => '', + ], + 'type' => [ + 'description' => 'The column type.', + 'type' => 'string', + 'example' => 'string', + 'title' => '', + ], + 'comment' => [ + 'description' => 'The comment on the column.', + 'type' => 'string', + 'example' => '第一分区', + 'title' => '', + ], + 'defaultValue' => [ + 'description' => 'The default value of the column.', + 'type' => 'string', + 'example' => 'abc', + 'title' => '', + ], + 'nullable' => [ + 'description' => 'Indicates whether the column can be null.', + 'type' => 'boolean', + 'example' => 'false', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'owner' => [ + 'description' => 'The owner of the table.', + 'type' => 'string', + 'example' => 'Hive', + 'title' => '', + ], + 'location' => [ + 'description' => 'The storage location of the table.', + 'type' => 'string', + 'example' => '| hdfs://master-1-1.c-c127cd184bb029ea.cn-zhangjiakou.emr.aliyuncs.com:9000/user/hive/warehouse/demo', + 'title' => '', + ], + 'inputFormat' => [ + 'description' => 'The input format.', + 'type' => 'string', + 'example' => 'org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat ', + 'title' => '', + ], + 'outputFormat' => [ + 'description' => 'The output format.', + 'type' => 'string', + 'example' => 'org.apache.hadoop.hive.ql.io.parquet.MapredParquetOutputFormat', + 'title' => '', + ], + 'serde' => [ + 'description' => 'The serializer/deserializer (SerDe).', + 'type' => 'string', + 'example' => 'org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe', + 'title' => '', + ], + 'extra' => [ + 'description' => 'Other information stored in JSON format.', + 'type' => 'string', + 'example' => '{"mapkey.delim":":","collection.delim":",","serialization.format":"|","field.delim":"|"} ', + 'title' => '', + ], + 'partitions' => [ + 'description' => 'The number of partitions.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + 'title' => '', + ], + 'partitionsDoing' => [ + 'description' => 'The number of partitions that are being migrated.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + 'title' => '', + ], + 'partitionsDone' => [ + 'description' => 'The number of partitions that are migrated.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '60', + 'title' => '', + ], + 'partitionsFailed' => [ + 'description' => 'The number of partitions that failed to be migrated.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '40', + 'title' => '', + ], + 'sourceId' => [ + 'description' => 'The ID of the data source.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2000028', + 'title' => '', + ], + 'sourceName' => [ + 'description' => 'The name of the data source.', + 'type' => 'string', + 'example' => 'demo ', + 'title' => '', + ], + 'size' => [ + 'description' => 'The data size in bytes.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2985028', + 'title' => '', + ], + 'numRows' => [ + 'description' => 'The number of rows.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '232323', + 'title' => '', + ], + 'updated' => [ + 'description' => 'Indicates whether the metadata is updated.', + 'type' => 'boolean', + 'example' => 'true', + 'title' => '', + ], + 'lastDdlTime' => [ + 'description' => 'The last DDL time.', + 'type' => 'string', + 'example' => '2024-12-17 15:44:42'."\n", + 'title' => '', + ], + 'status' => [ + 'title' => 'INIT, DOING, FAILED, DONE, PART_DONE', + 'description' => 'The migration status.', + 'enumValueTitles' => [ + 'PART_DONE' => 'The migration is partially successful.', + 'INIT' => 'The migration has not started.', + 'DONE' => 'The migration is successful.', + 'DOING' => 'The migration is in progress.', + 'FAILED' => 'The migration failed.', + ], + 'type' => 'string', + 'example' => 'DONE', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'pageNum' => [ + 'description' => 'The page number.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'title' => '', + ], + 'pageSize' => [ + 'description' => 'The number of entries per page.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"E7FB14F1-4ACD-5C73-A755-B302D70AB9AD\\",\\n \\"data\\": {\\n \\"total\\": 100,\\n \\"objectList\\": [\\n {\\n \\"id\\": 1003476,\\n \\"dbId\\": 196,\\n \\"dbName\\": \\"demo\\",\\n \\"name\\": \\"test\\",\\n \\"dstProjectName\\": \\"mms_test\\",\\n \\"dstSchemaName\\": \\"default\\",\\n \\"dstName\\": \\"test\\",\\n \\"type\\": \\"MANAGED_TABLE\\",\\n \\"hasPartitions\\": true,\\n \\"schema\\": {\\n \\"name\\": \\"test\\",\\n \\"comment\\": \\"for mms test\\",\\n \\"columns\\": [\\n {\\n \\"name\\": \\"user_id\\",\\n \\"type\\": \\"bigint\\",\\n \\"comment\\": \\"user id\\",\\n \\"defaultValue\\": \\"\\\\\\"\\\\\\"\\",\\n \\"nullable\\": false\\n }\\n ],\\n \\"partitions\\": [\\n {\\n \\"name\\": \\"p1\\",\\n \\"type\\": \\"string\\",\\n \\"comment\\": \\"第一分区\\",\\n \\"defaultValue\\": \\"abc\\",\\n \\"nullable\\": false\\n }\\n ]\\n },\\n \\"owner\\": \\"Hive\\",\\n \\"location\\": \\"| hdfs://master-1-1.c-c127cd184bb029ea.cn-zhangjiakou.emr.aliyuncs.com:9000/user/hive/warehouse/demo\\",\\n \\"inputFormat\\": \\"org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat \\",\\n \\"outputFormat\\": \\"org.apache.hadoop.hive.ql.io.parquet.MapredParquetOutputFormat\\",\\n \\"serde\\": \\"org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe\\",\\n \\"extra\\": \\"{\\\\\\"mapkey.delim\\\\\\":\\\\\\":\\\\\\",\\\\\\"collection.delim\\\\\\":\\\\\\",\\\\\\",\\\\\\"serialization.format\\\\\\":\\\\\\"|\\\\\\",\\\\\\"field.delim\\\\\\":\\\\\\"|\\\\\\"} \\",\\n \\"partitions\\": 100,\\n \\"partitionsDoing\\": 20,\\n \\"partitionsDone\\": 60,\\n \\"partitionsFailed\\": 40,\\n \\"sourceId\\": 2000028,\\n \\"sourceName\\": \\"demo \\",\\n \\"size\\": 2985028,\\n \\"numRows\\": 232323,\\n \\"updated\\": true,\\n \\"lastDdlTime\\": \\"2024-12-17 15:44:42\\\\n\\",\\n \\"status\\": \\"DONE\\"\\n }\\n ],\\n \\"pageNum\\": 1,\\n \\"pageSize\\": 20\\n }\\n}","type":"json"}]', + 'title' => 'ListMmsTables', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListMmsTables', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + ], + ], + 'ListMmsTaskLogs' => [ + 'summary' => 'Lists the execution logs for a specific migration task.', + 'path' => '/api/v1/mms/datasources/{sourceId}/tasks/{taskId}/logs', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '182978', + 'abilityTreeNodes' => [ + 'FEATUREodpsN8WEG6', + ], + ], + 'parameters' => [ + [ + 'name' => 'sourceId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The data source ID.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'title' => '', + 'example' => '2000015', + ], + ], + [ + 'name' => 'taskId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The migration task ID.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'title' => '', + 'example' => '4032', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ApiRes<List<TaskLog>>', + 'description' => 'The data returned.', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => 'A3AE5649-EF90-54BD-86D0-C632FA950988', + ], + 'data' => [ + 'description' => 'A list of logs.', + 'type' => 'array', + 'items' => [ + 'description' => 'A migration task log object.', + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The log ID.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '10000', + ], + 'sourceId' => [ + 'description' => 'The data source ID.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '2000015', + ], + 'taskId' => [ + 'description' => 'The migration task ID.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '4023', + ], + 'status' => [ + 'title' => 'INIT, SCHEMA_DOING, SCHEMA_DONE, SCHEMA_FAILED, DATA_DOING, DATA_DONE, DATA_FAILED, VERIFICATION_DOING, VERIFICATION_DONE, VERIFICATION_FAILED, DONE', + 'description' => 'The migration task status.', + 'type' => 'string', + 'enumValueTitles' => [ + 'INIT' => 'The task is pending.', + 'DATA_DONG' => 'Data migration is successful.', + 'DONE' => 'The task is successful.', + 'SCHEMA_DONE' => 'Schema migration is successful.', + 'SCHEMA_DOING' => 'The schema is being migrated.', + 'SCHEMA_FAILED' => 'Schema migration failed.', + 'DATA_DOING' => 'Data is being migrated.', + 'DATA_FAILED' => 'Data migration failed.', + ], + 'example' => 'DATA_DOING', + ], + 'action' => [ + 'description' => 'The operation performed by the migration task.', + 'type' => 'string', + 'title' => '', + 'example' => "\n" + .'create schema if not exists mms_test.default;', + ], + 'msg' => [ + 'description' => 'The result of the migration task operation.', + 'type' => 'string', + 'title' => '', + 'example' => 'ok', + ], + 'createTime' => [ + 'description' => 'The time when the log was created.', + 'type' => 'string', + 'title' => '', + 'example' => '2024-12-17 15:44:00'."\n", + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'title' => 'ListMmsTaskLogs', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListMmsTaskLogs', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"A3AE5649-EF90-54BD-86D0-C632FA950988\\",\\n \\"data\\": [\\n {\\n \\"id\\": 10000,\\n \\"sourceId\\": 2000015,\\n \\"taskId\\": 4023,\\n \\"status\\": \\"DATA_DOING\\",\\n \\"action\\": \\"\\\\ncreate schema if not exists mms_test.default;\\",\\n \\"msg\\": \\"ok\\",\\n \\"createTime\\": \\"2024-12-17 15:44:00\\\\n\\"\\n }\\n ]\\n}","type":"json"}]', + ], + 'ListMmsTasks' => [ + 'summary' => 'Retrieves a list of migration tasks.', + 'path' => '/api/v1/mms/datasources/{sourceId}/tasks', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '182975', + 'abilityTreeNodes' => [ + 'FEATUREodpsN8WEG6', + ], + ], + 'parameters' => [ + [ + 'name' => 'sourceId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The ID of the data source.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '2000028', + 'title' => '', + ], + ], + [ + 'name' => 'jobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the migration job.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + 'title' => '', + ], + ], + [ + 'name' => 'jobName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the job.', + 'type' => 'string', + 'required' => false, + 'example' => 'test1', + 'title' => '', + ], + ], + [ + 'name' => 'srcDbName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the source database.', + 'type' => 'string', + 'required' => false, + 'example' => 'test_db_1', + 'title' => '', + ], + ], + [ + 'name' => 'srcTableName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the source table.', + 'type' => 'string', + 'required' => false, + 'example' => 'test_table_1', + 'title' => '', + ], + ], + [ + 'name' => 'dstDbName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The destination MaxCompute project.', + 'type' => 'string', + 'required' => false, + 'example' => 'mms_test', + 'title' => '', + ], + ], + [ + 'name' => 'dstTableName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The destination MaxCompute table.', + 'type' => 'string', + 'required' => false, + 'example' => 'test_table_1', + 'title' => '', + ], + ], + [ + 'name' => 'status', + 'in' => 'query', + 'schema' => [ + 'description' => 'The status of the migration task.', + 'enumValueTitles' => [ + 'INIT' => '未执行', + 'DONE' => '成功', + 'VERIFICATION_FAILED' => '数据校验失败', + 'SCHEMA_DONE' => '迁移 schema 成功', + 'SCHEMA_DOING' => '迁移 schema 中', + 'VERIFICATION_DOING' => '数据校验中', + 'SCHEMA_FAILED' => '迁移 schema 失败', + 'VERIFICATION_DONE' => '数据校验成功', + 'DATA_DOING' => '迁移数据中', + 'DATA_DONE' => '迁移数据成功', + 'DATA_FAILED' => '迁移数据失败', + ], + 'type' => 'string', + 'required' => false, + 'example' => 'DATA_DOING', + 'title' => '', + ], + ], + [ + 'name' => 'partition', + 'in' => 'query', + 'schema' => [ + 'description' => 'The partition value. This parameter is used to filter migration tasks by a specific partition value.', + 'type' => 'string', + 'required' => false, + 'example' => 'p1=1/p2=abc', + 'title' => '', + ], + ], + [ + 'name' => 'pageNum', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + 'title' => '', + ], + ], + [ + 'name' => 'pageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + 'title' => '', + ], + ], + [ + 'name' => 'sorter.startTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'Sorts tasks by start time.', + 'enumValueTitles' => [ + 'asc' => '升序', + 'desc' => '降序', + ], + 'type' => 'string', + 'required' => false, + 'example' => 'desc', + 'title' => '', + ], + ], + [ + 'name' => 'sorter.status', + 'in' => 'query', + 'schema' => [ + 'description' => 'Sorts tasks by status.', + 'enumValueTitles' => [ + 'asc' => '升序', + 'desc' => '降序', + ], + 'type' => 'string', + 'required' => false, + 'example' => 'asc', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ApiRes<PagedListDTO<TaskModel>>', + 'description' => 'The returned data.', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '373A5CB2-8570-53BE-A98F-729B11D7A8B0', + 'title' => '', + ], + 'data' => [ + 'description' => 'The returned data.', + 'type' => 'object', + 'properties' => [ + 'total' => [ + 'description' => 'The total number of records.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + 'title' => '', + ], + 'objectList' => [ + 'description' => 'The list of migration tasks.', + 'type' => 'array', + 'items' => [ + 'description' => 'The migration task object.', + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The ID of the migration task.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2323', + 'title' => '', + ], + 'jobId' => [ + 'description' => 'The ID of the migration job.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '87', + 'title' => '', + ], + 'sourceId' => [ + 'description' => 'The ID of the data source.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2000028', + 'title' => '', + ], + 'dbId' => [ + 'description' => 'The ID of the source database.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '196', + 'title' => '', + ], + 'tableId' => [ + 'description' => 'The ID of the source table.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '23', + 'title' => '', + ], + 'jobName' => [ + 'description' => 'The name of the migration job.', + 'type' => 'string', + 'example' => 'test_odps_spark', + 'title' => '', + ], + 'sourceName' => [ + 'description' => 'The name of the data source.', + 'type' => 'string', + 'example' => 'demo ', + 'title' => '', + ], + 'srcDbName' => [ + 'description' => 'The name of the source database.', + 'type' => 'string', + 'example' => 'db_1', + 'title' => '', + ], + 'srcSchemaName' => [ + 'description' => 'The name of the source schema. This parameter specifies the schema in a Layer 3 namespace.', + 'type' => 'string', + 'example' => 'default', + 'title' => '', + ], + 'srcTableName' => [ + 'description' => 'The name of the source table.', + 'type' => 'string', + 'example' => 'table_1', + 'title' => '', + ], + 'dstDbName' => [ + 'description' => 'The destination MaxCompute project.', + 'type' => 'string', + 'example' => 'mms_test', + 'title' => '', + ], + 'dstSchemaName' => [ + 'description' => 'The destination MaxCompute schema.', + 'type' => 'string', + 'example' => 'default', + 'title' => '', + ], + 'dstTableName' => [ + 'description' => 'The destination MaxCompute table.', + 'type' => 'string', + 'example' => 'table_1', + 'title' => '', + ], + 'type' => [ + 'title' => 'MOCK, HIVE: hive udtf task, HIVE_DATAX: hive datax task, COPY_TASK: odps Copy Task, ODPS_INSERT_OVERWRITE: odps simple insert overwrite task, MC2MC_VERIFY, OSS, HIVE_OSS', + 'description' => 'The task type.', + 'enumValueTitles' => [ + 'HIVE' => '通过 HIve UDTF 迁移', + 'BIGQUERY' => '通过 Read Api 迁移', + ], + 'type' => 'string', + 'example' => 'BIGQUERY', + ], + 'status' => [ + 'title' => 'INIT, SCHEMA_DOING, SCHEMA_DONE, SCHEMA_FAILED, DATA_DOING, DATA_DONE, DATA_FAILED, VERIFICATION_DOING, VERIFICATION_DONE, VERIFICATION_FAILED, DONE', + 'description' => 'The status of the migration task.', + 'enumValueTitles' => [ + 'INIT' => '未运行', + 'DONE' => '成功', + 'SCHEMA_DONE' => '迁移 schema 成功', + 'SCHEMA_DOING' => '迁移 schema 中', + 'SCHEMA_FAILED' => '迁移 schema 失败', + 'DATA_DOING' => '数据迁移中', + 'DATA_DONE' => '数据迁移成功', + 'DATA_FAILED' => '数据迁移失败', + ], + 'type' => 'string', + 'example' => 'DATA_DOING', + ], + 'running' => [ + 'description' => 'Indicates whether the task is running.', + 'type' => 'boolean', + 'example' => 'true', + 'title' => '', + ], + 'stopped' => [ + 'description' => 'Indicates whether the task is stopped.', + 'type' => 'boolean', + 'example' => 'false', + 'title' => '', + ], + 'retriedTimes' => [ + 'description' => 'The number of retries.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'title' => '', + ], + 'startTime' => [ + 'description' => 'The start time of the task.', + 'type' => 'string', + 'example' => '2024-10-25 06:21:01', + 'title' => '', + ], + 'endTime' => [ + 'description' => 'The end time of the task.', + 'type' => 'string', + 'example' => '2024-10-25 07:21:01'."\n", + 'title' => '', + ], + 'createTime' => [ + 'description' => 'The time when the task was created.', + 'type' => 'string', + 'example' => '2024-10-25 04:21:01'."\n", + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'pageNum' => [ + 'description' => 'The page number.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'title' => '', + ], + 'pageSize' => [ + 'description' => 'The number of entries per page.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"373A5CB2-8570-53BE-A98F-729B11D7A8B0\\",\\n \\"data\\": {\\n \\"total\\": 100,\\n \\"objectList\\": [\\n {\\n \\"id\\": 2323,\\n \\"jobId\\": 87,\\n \\"sourceId\\": 2000028,\\n \\"dbId\\": 196,\\n \\"tableId\\": 23,\\n \\"jobName\\": \\"test_odps_spark\\",\\n \\"sourceName\\": \\"demo \\",\\n \\"srcDbName\\": \\"db_1\\",\\n \\"srcSchemaName\\": \\"default\\",\\n \\"srcTableName\\": \\"table_1\\",\\n \\"dstDbName\\": \\"mms_test\\",\\n \\"dstSchemaName\\": \\"default\\",\\n \\"dstTableName\\": \\"table_1\\",\\n \\"type\\": \\"BIGQUERY\\",\\n \\"status\\": \\"DATA_DOING\\",\\n \\"running\\": true,\\n \\"stopped\\": false,\\n \\"retriedTimes\\": 1,\\n \\"startTime\\": \\"2024-10-25 06:21:01\\",\\n \\"endTime\\": \\"2024-10-25 07:21:01\\\\n\\",\\n \\"createTime\\": \\"2024-10-25 04:21:01\\\\n\\"\\n }\\n ],\\n \\"pageNum\\": 1,\\n \\"pageSize\\": 10\\n }\\n}","type":"json"}]', + 'title' => 'ListMmsTasks', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListMmsTasks', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + ], + ], + 'ListPackages' => [ + 'path' => '/api/v1/projects/{projectName}/packages', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'abilityTreeCode' => '144118', + 'abilityTreeNodes' => [ + 'FEATUREodpsTZPZOE', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'projectName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the MaxCompute project.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'projectA', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ListPackagesDTO>', + 'description' => 'PopResult'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0bc3b4aa16677927210252786e4cb6', + ], + 'data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'createdPackages' => [ + 'description' => 'The packages that were created.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The packages that were created.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the package.'."\n", + 'type' => 'string', + 'example' => 'packageA', + ], + 'createTime' => [ + 'description' => 'The time when the package was created.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2022-08-02T02:30:34Z', + ], + ], + ], + ], + 'installedPackages' => [ + 'description' => 'The packages that were installed.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The packages that were installed.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the package.'."\n", + 'type' => 'string', + 'example' => 'packageB', + ], + 'sourceProject' => [ + 'description' => 'The project to which the package belongs. This parameter is required if the package is installed in the MaxCompute project.'."\n", + 'type' => 'string', + 'example' => 'projectB', + ], + 'status' => [ + 'description' => 'The status of the package.'."\n", + 'type' => 'string', + 'example' => 'OK', + ], + 'installTime' => [ + 'description' => 'The time when the package was installed.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2022-09-02T02:30:34Z'."\n", + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0bc3b4aa16677927210252786e4cb6\\",\\n \\"data\\": {\\n \\"createdPackages\\": [\\n {\\n \\"name\\": \\"packageA\\",\\n \\"createTime\\": 0\\n }\\n ],\\n \\"installedPackages\\": [\\n {\\n \\"name\\": \\"packageB\\",\\n \\"sourceProject\\": \\"projectB\\",\\n \\"status\\": \\"OK\\",\\n \\"installTime\\": 0\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'ListPackages', + 'summary' => 'Queries the packages in a MaxCompute project.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListPackages', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + ], + ], + 'ListProjectUsers' => [ + 'path' => '/api/v1/projects/{projectName}/users', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '151440', + 'abilityTreeNodes' => [ + 'FEATUREodpsTZPZOE', + ], + ], + 'parameters' => [ + [ + 'name' => 'projectName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the MaxCompute project.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'projectA', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ListUsersDTO>', + 'description' => 'PopResult'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '0b87b7b316643495896551555e855b', + ], + 'data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'users' => [ + 'description' => 'An array that contains users.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The users.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the user.'."\n", + 'type' => 'string', + 'example' => 'userA', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0b87b7b316643495896551555e855b\\",\\n \\"data\\": {\\n \\"users\\": [\\n {\\n \\"name\\": \\"userA\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'ListProjectUsers', + 'summary' => 'Queries a list of users in a project.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:ListProjectUsers', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + ], + ], + 'ListProjects' => [ + 'path' => '/api/v1/projects', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'abilityTreeCode' => '137543', + 'abilityTreeNodes' => [ + 'FEATUREodpsTZPZOE', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'tenantId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The tenant ID. You can log on to the [MaxCompute console](https://maxcompute.console.aliyun.com), and choose **Tenants** > **Tenant Property** from the left-side navigation pane to view the tenant ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '549532154333697', + ], + ], + [ + 'name' => 'region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-beijing', + ], + ], + [ + 'name' => 'quotaNickName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The quota nickname. You can log on to the [MaxCompute console](https://maxcompute.console.aliyun.com), choose **Workspace** > **Quotas** from the left-side navigation pane, and then view the quota nickname on the **Quotas** page.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'quotaA', + ], + ], + [ + 'name' => 'quotaName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The quota name that is automatically generated. You can log on to the [MaxCompute console](https://maxcompute.console.aliyun.com), choose **Workspace** > **Quotas** from the left-side navigation pane, and then view the quota name on the **Quotas** page.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '"hsajkdgbkaubh"', + ], + ], + [ + 'name' => 'prefix', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies the marker after which the returned list begins.', + 'type' => 'string', + 'required' => false, + 'example' => 'a', + ], + ], + [ + 'name' => 'marker', + 'in' => 'query', + 'schema' => [ + 'description' => 'The maximum number of entries to return on each page.', + 'type' => 'string', + 'required' => false, + 'example' => 'cHlvZHBzX3VkZl8xMDExNV8xNDU3NDI4NDkzKg==', + ], + ], + [ + 'name' => 'maxItem', + 'in' => 'query', + 'schema' => [ + 'description' => 'The maximum number of entries per page. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + 'default' => '10', + ], + ], + [ + 'name' => 'saleTags', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID and billing method of the default computing quota.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '"aaaa-bbbb"', + ], + ], + [ + 'name' => 'type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The project type. Valid values:'."\n" + ."\n" + .'* **managed**: internal project'."\n" + .'* **external**: external project'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '"managed"', + ], + ], + [ + 'name' => 'listSystemCatalog', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to list the built-in **SYSTEM_CATALOG** projects that are used to provide data such as project metadata and historical usage data. For more information, see [Tenant-level Information Schema](https://www.alibabacloud.com/help/zh/maxcompute/user-guide/tenant-level-information-schema).'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true: The built-in SYSTEM_CATALOG projects are listed.'."\n" + .'* false: The built-in SYSTEM_CATALOG projects are not listed.'."\n", + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => [ + 'true' => '', + 'false' => '', + ], + 'example' => 'true', + 'default' => 'false', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ListResultDTO<ProjectInfo, MarkerPageInfo>>', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '0b16399216671970335563173e2340', + ], + 'data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'projects' => [ + 'description' => 'The list of projects.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The project information.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the project.'."\n", + 'type' => 'string', + 'example' => 'odps_project', + ], + 'owner' => [ + 'description' => 'The account information of the project owner.'."\n", + 'type' => 'string', + 'example' => '1139815775606813', + ], + 'type' => [ + 'description' => 'The project type. Valid values:'."\n" + ."\n" + .'* **managed**: internal project'."\n" + .'* **external**: external project'."\n", + 'type' => 'string', + 'example' => 'managed', + ], + 'comment' => [ + 'description' => 'The project description.'."\n", + 'type' => 'string', + 'example' => 'maxcompute projects'."\n", + ], + 'defaultQuota' => [ + 'description' => 'The default computing quota that is used to allocate computing resources. If you do not specify a computing quota for your project, the jobs that are initiated by your project consume the computing resources in the default quota. For more information about how to use computing resources, see [Use quota groups for computing resources](https://www.alibabacloud.com/help/zh/maxcompute/user-guide/use-of-computing-resources)'."\n", + 'type' => 'string', + 'example' => 'quotaA', + ], + 'status' => [ + 'description' => 'The project status. Valid values:'."\n" + ."\n" + .'* **AVAILABLE**'."\n" + .'* **READONLY**'."\n" + .'* **FROZEN**'."\n" + .'* **DELETING**'."\n", + 'type' => 'string', + 'example' => 'AVAILABLE', + ], + 'costStorage' => [ + 'description' => 'The total storage usage. The storage space that is occupied by your project, which is the logical storage space after your project data is collected and compressed.'."\n", + 'type' => 'string', + 'example' => '16489027', + ], + 'regionId' => [ + 'title' => '', + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-beijing', + ], + 'createdTime' => [ + 'title' => '', + 'description' => 'The creation time.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1704380838000', + ], + 'properties' => [ + 'description' => 'The basic properties of the project.'."\n", + 'type' => 'object', + 'properties' => [ + 'timezone' => [ + 'description' => 'The time zone that is used by your project. The time zone is the same as the time zone specified by `odps.sql.timezone`.'."\n", + 'type' => 'string', + 'example' => 'Asia/Shanghai'."\n", + ], + 'retentionDays' => [ + 'description' => 'The retention period for backup data. Unit: days. During the retention period, you can restore data of the version in use to the backup data of any version. Valid values: \\[0,30]. Default value: 1. The value 0 indicates that the backup feature is disabled.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'allowFullScan' => [ + 'description' => 'Indicates whether a full table scan is allowed in the project. A full table scan occupies a large number of resources, which reduces data processing efficiency. By default, the full table scan feature is disabled.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'typeSystem' => [ + 'description' => 'The data type edition. Valid values:'."\n" + ."\n" + .'* **1**: MaxCompute V1.0 data type edition'."\n" + .'* **2**: MaxCompute V2.0 data type edition'."\n" + .'* **hive**: Hive-compatible data type edition'."\n" + ."\n" + .'For more information about the differences among the three data type editions, see [Data type editions](https://www.alibabacloud.com/help/zh/maxcompute/user-guide/data-type-editions).'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'enableDecimal2' => [ + 'description' => 'Indicates whether the DECIMAL type of the MaxCompute V2.0 data type edition is enabled.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'sqlMeteringMax' => [ + 'description' => 'The maximum consumption threshold of a single SQL statement. Formula: Amount of scanned data (GB) × Complexity.'."\n", + 'type' => 'string', + 'example' => '1500', + ], + 'tableLifecycle' => [ + 'description' => 'The table lifecycle properties.'."\n", + 'type' => 'object', + 'properties' => [ + 'type' => [ + 'description' => 'The lifecycle type. Valid values:'."\n" + ."\n" + .'* **mandatory**: The lifecycle clause is required in a table creation statement.'."\n" + .'* **optional**: The lifecycle clause is optional in a table creation statement. If you do not configure a lifecycle for a table, the table does not expire.'."\n" + .'* **inherit**: If you do not configure a lifecycle for a table when you create the table, the value of the odps.table.lifecycle.value parameter is used as the table lifecycle by default.'."\n", + 'type' => 'string', + 'example' => 'optional', + ], + 'value' => [ + 'description' => 'The table lifecycle. Unit: days. Valid values: 1 to 37231. Default value: 37231.'."\n", + 'type' => 'string', + 'example' => '37231'."\n", + ], + ], + ], + 'encryption' => [ + 'description' => 'The storage encryption properties.'."\n", + 'type' => 'object', + 'properties' => [ + 'enable' => [ + 'description' => 'Indicates whether the data encryption feature needs to be enabled for the project. For more information about data encryption, see'."\n" + ."\n" + .'[Storage encryption](https://www.alibabacloud.com/help/zh/maxcompute/security-and-compliance/storage-encryption).'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'algorithm' => [ + 'description' => 'The data encryption algorithm that is supported by the key. Valid values: AES256, AESCTR, and RC4.'."\n", + 'type' => 'string', + 'example' => 'SHA1', + ], + 'key' => [ + 'description' => 'The type of key that is used for data encryption. You can select MaxCompute Default Key or Bring Your Own Key (BYOK) as the key type. If you select MaxCompute Default Key, the default key that is created by MaxCompute is used.'."\n", + 'type' => 'string', + 'example' => 'dafault', + ], + ], + ], + 'tunnelQuota' => [ + 'description' => 'The [Tunnel](https://www.alibabacloud.com/help/zh/maxcompute/user-guide/overview-of-dts) resource group that is bound to the project.'."\n" + ."\n" + .'* Default resource group: The Tunnel shared resource group is used. You cannot use the subscription-based Tunnel resource group for the project. The default resource group is automatically used by the Tunnel service of your project, regardless of the parameter setting.'."\n" + .'* Subscription-based Tunnel resource group: You can use the subscription-based Tunnel resource group for the project.'."\n", + 'type' => 'string', + 'example' => 'quota_tunnel', + ], + 'enableTunnelQuotaRoute' => [ + 'description' => 'Indicates whether the routing of the Tunnel resource group is enabled.'."\n" + ."\n" + .'* true: The data transfer tasks that are submitted by the project by default use the Tunnel resource group that is bound to the project.'."\n" + .'* false: The data transfer tasks that are submitted by the project by default use the Tunnel shared resource group.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'externalProjectProperties' => [ + 'description' => 'The properties of the external project.'."\n", + 'type' => 'object', + 'properties' => [ + 'isExternalCatalogBound' => [ + 'description' => 'Indicates whether the external project is an external project for [data lakehouse solution 2.0](https://www.alibabacloud.com/help/zh/maxcompute/user-guide/lake-warehouse-integrated-2-0-use-guide).'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + ], + ], + ], + 'securityProperties' => [ + 'description' => 'The permission properties.'."\n", + 'type' => 'object', + 'properties' => [ + 'usingAcl' => [ + 'description' => 'Indicates whether the [ACL-based access control](https://www.alibabacloud.com/help/zh/maxcompute/user-guide/acl-based-access-control) feature is enabled. By default, this feature is enabled.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'usingPolicy' => [ + 'description' => 'Indicates whether the [policy-based access control](https://www.alibabacloud.com/help/zh/maxcompute/user-guide/policy-based-access-control-1) feature is enabled. By default, this feature is enabled.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'objectCreatorHasAccessPermission' => [ + 'description' => 'Indicates whether to allow the object creator to have the access permissions on the object. The default value is true, which indicates that the object creator has the access permissions on the object.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'objectCreatorHasGrantPermission' => [ + 'description' => 'Indicates whether the object creator has the authorization permissions on the object. The default value is true, which indicates that the object creator has the authorization permissions on the object.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'labelSecurity' => [ + 'description' => 'Indicates whether the [label-based access control](https://www.alibabacloud.com/help/zh/maxcompute/user-guide/label-based-access-control) feature is enabled. By default, this feature is disabled.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'enableDownloadPrivilege' => [ + 'description' => 'Indicates whether the [download control](https://www.alibabacloud.com/help/zh/maxcompute/user-guide/label-based-access-control) feature is enabled. By default, this feature is disabled.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'projectProtection' => [ + 'description' => 'The properties of the [data protection mechanism](https://www.alibabacloud.com/help/zh/maxcompute/security-and-compliance/project-data-protection).'."\n", + 'type' => 'object', + 'properties' => [ + 'protected' => [ + 'description' => 'Indicates whether the [data protection mechanism](https://www.alibabacloud.com/help/zh/maxcompute/security-and-compliance/project-data-protection) is enabled for the project. This allows or denies data transfer across projects. By default, the data protection mechanism is disabled.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'exceptionPolicy' => [ + 'description' => 'If you enable the project data protection mechanism, you can configure exception or trusted projects. This allows specified users to transfer data of a specified object to a specified project. The project data protection mechanism does not take effect in all the situations that are specified in the exception policy.'."\n", + 'type' => 'string', + 'example' => '{'."\n" + .' "Version": "1",'."\n" + .' "Statement": ['."\n" + .' {'."\n" + .' "Effect": "Allow",'."\n" + .' "Principal": "",'."\n" + .' "Action": ['."\n" + .' "odps:[, , ...]"'."\n" + .' ],'."\n" + .' "Resource": "acs:odps:*:",'."\n" + .' "Condition": {'."\n" + .' "StringEquals": {'."\n" + .' "odps:TaskType": ['."\n" + .' ""'."\n" + .' ]'."\n" + .' }'."\n" + .' }'."\n" + .' }'."\n" + .' ]'."\n" + .'}', + ], + ], + ], + ], + ], + 'ipWhiteList' => [ + 'description' => 'The information about the IP address whitelist.'."\n", + 'type' => 'object', + 'properties' => [ + 'ipList' => [ + 'description' => 'The IP address whitelist for access over the Internet or the network for interconnecting with other Alibaba Cloud services.'."\n" + ."\n" + .'> If you configure only the IP address whitelist for access over the Internet or the network for interconnecting with other Alibaba Cloud services, the access over the Internet or the network for interconnecting with other Alibaba Cloud services is subject to configurations, and access over a virtual private cloud (VPC) is not allowed.'."\n", + 'type' => 'string', + 'example' => '10.88.111.3', + ], + 'vpcIpList' => [ + 'description' => 'The IP address whitelist for access over a VPC.'."\n" + ."\n" + .'> If you configure only the IP address whitelist for access over a VPC, the access over a VPC is subject to configurations, and the access over the Internet or the network for interconnecting with other Alibaba Cloud services is not allowed.'."\n", + 'type' => 'string', + 'example' => '10.88.111.3', + ], + ], + ], + 'saleTag' => [ + 'description' => 'The instance ID and billing method of the default computing quota.'."\n", + 'type' => 'object', + 'properties' => [ + 'resourceId' => [ + 'description' => 'The instance ID of the default computing quota.'."\n", + 'type' => 'string', + 'example' => '"aaaa-bbbb"', + ], + 'resourceType' => [ + 'description' => 'The billing method of the default computing quota.'."\n", + 'type' => 'string', + 'example' => '"project"', + ], + ], + ], + 'threeTierModel' => [ + 'description' => 'Indicates whether data storage by schema is supported. MaxCompute supports the schema feature. This feature allows you to classify objects such as tables, resources, and user-defined functions (UDFs) in a project by schema. You can create multiple schemas in a project. For more information, see [Schema-related operations](https://www.alibabacloud.com/help/zh/maxcompute/user-guide/schema-related-operations).'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true: supported'."\n" + .'* false: not supported'."\n", + 'type' => 'boolean', + 'enumValueTitles' => [ + 'true' => '', + 'false' => '', + ], + 'example' => 'true', + ], + ], + ], + ], + 'marker' => [ + 'description' => 'Indicates the marker after which the returned list begins.', + 'type' => 'string', + 'example' => 'cHlvZHBzX3VkZl8xMDExNV8xNDU3NDI4NDkzKg==', + ], + 'maxItem' => [ + 'description' => 'The maximum number of entries returned per page.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'NextToken' => [ + 'description' => 'A pagination token. Only continuous page turning is supported. If NextToken is not empty, the next page exists. The value of NextToken can be used in the next request to retrieve a new page of results.'."\n", + 'type' => 'string', + 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kvikyUl3ChyRxN+qLPvtOb', + ], + ], + ], + ], + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0b16399216671970335563173e2340\\",\\n \\"data\\": {\\n \\"projects\\": [\\n {\\n \\"name\\": \\"odps_project\\",\\n \\"owner\\": \\"1139815775606813\\",\\n \\"type\\": \\"managed\\",\\n \\"comment\\": \\"maxcompute projects\\\\n\\",\\n \\"defaultQuota\\": \\"quotaA\\",\\n \\"status\\": \\"AVAILABLE\\",\\n \\"costStorage\\": \\"16489027\\",\\n \\"regionId\\": \\"cn-beijing\\",\\n \\"createdTime\\": 1704380838000,\\n \\"properties\\": {\\n \\"timezone\\": \\"Asia/Shanghai\\\\n\\",\\n \\"retentionDays\\": 1,\\n \\"allowFullScan\\": false,\\n \\"typeSystem\\": \\"2\\",\\n \\"enableDecimal2\\": true,\\n \\"sqlMeteringMax\\": \\"1500\\",\\n \\"tableLifecycle\\": {\\n \\"type\\": \\"optional\\",\\n \\"value\\": \\"37231\\\\n\\"\\n },\\n \\"encryption\\": {\\n \\"enable\\": true,\\n \\"algorithm\\": \\"SHA1\\",\\n \\"key\\": \\"dafault\\"\\n },\\n \\"tunnelQuota\\": \\"quota_tunnel\\",\\n \\"enableTunnelQuotaRoute\\": true,\\n \\"externalProjectProperties\\": {\\n \\"isExternalCatalogBound\\": \\"true\\"\\n }\\n },\\n \\"securityProperties\\": {\\n \\"usingAcl\\": true,\\n \\"usingPolicy\\": true,\\n \\"objectCreatorHasAccessPermission\\": true,\\n \\"objectCreatorHasGrantPermission\\": true,\\n \\"labelSecurity\\": false,\\n \\"enableDownloadPrivilege\\": false,\\n \\"projectProtection\\": {\\n \\"protected\\": true,\\n \\"exceptionPolicy\\": \\"{\\\\n \\\\\\"Version\\\\\\": \\\\\\"1\\\\\\",\\\\n \\\\\\"Statement\\\\\\": [\\\\n {\\\\n \\\\\\"Effect\\\\\\": \\\\\\"Allow\\\\\\",\\\\n \\\\\\"Principal\\\\\\": \\\\\\"\\\\\\",\\\\n \\\\\\"Action\\\\\\": [\\\\n \\\\\\"odps:[, , ...]\\\\\\"\\\\n ],\\\\n \\\\\\"Resource\\\\\\": \\\\\\"acs:odps:*:\\\\\\",\\\\n \\\\\\"Condition\\\\\\": {\\\\n \\\\\\"StringEquals\\\\\\": {\\\\n \\\\\\"odps:TaskType\\\\\\": [\\\\n \\\\\\"\\\\\\"\\\\n ]\\\\n }\\\\n }\\\\n }\\\\n ]\\\\n}\\"\\n }\\n },\\n \\"ipWhiteList\\": {\\n \\"ipList\\": \\"10.88.111.3\\",\\n \\"vpcIpList\\": \\"10.88.111.3\\"\\n },\\n \\"saleTag\\": {\\n \\"resourceId\\": \\"\\\\\\"aaaa-bbbb\\\\\\"\\",\\n \\"resourceType\\": \\"\\\\\\"project\\\\\\"\\"\\n },\\n \\"threeTierModel\\": true\\n }\\n ],\\n \\"marker\\": \\"cHlvZHBzX3VkZl8xMDExNV8xNDU3NDI4NDkzKg==\\",\\n \\"maxItem\\": 10,\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6kvikyUl3ChyRxN+qLPvtOb\\"\\n }\\n}","type":"json"}]', + 'title' => 'ListProjects', + 'summary' => 'Queries a list of MaxCompute projects.', + 'changeSet' => [ + [ + 'createdAt' => '2024-09-12T08:31:50.000Z', + 'description' => 'Response parameters changed', + ], + [ + 'createdAt' => '2024-07-31T07:43:55.000Z', + 'description' => 'Response parameters changed', + ], + [ + 'createdAt' => '2024-01-08T05:32:02.000Z', + 'description' => 'Response parameters changed', + ], + [ + 'createdAt' => '2023-11-14T07:01:39.000Z', + 'description' => 'Request parameters changed, Response parameters changed', + ], + [ + 'createdAt' => '2023-09-21T03:13:39.000Z', + 'description' => 'Response parameters changed', + ], + [ + 'createdAt' => '2023-08-23T11:03:02.000Z', + 'description' => 'Request parameters changed', + ], + [ + 'createdAt' => '2023-01-09T08:15:17.000Z', + 'description' => 'Request parameters changed, Response parameters changed', + ], + [ + 'createdAt' => '2022-11-14T09:44:49.000Z', + 'description' => 'Response parameters changed', + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListProjects', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'conditional', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/*', + ], + ], + ], + ], + ], + ], + 'ListQuotas' => [ + 'path' => '/api/v1/quotas', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '124145', + 'abilityTreeNodes' => [ + 'FEATUREodpsZAKNHC', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'tenantId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'deprecated' => true, + 'title' => '', + 'example' => '', + ], + ], + [ + 'name' => 'region', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'deprecated' => true, + 'title' => '', + 'example' => '', + ], + ], + [ + 'name' => 'productId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'default' => 'ODPS', + 'deprecated' => true, + 'title' => '', + 'example' => '', + ], + ], + [ + 'name' => 'billingType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The billing method.', + 'type' => 'string', + 'required' => false, + 'default' => 'subscription', + 'title' => '', + 'example' => 'subscription', + ], + ], + [ + 'name' => 'saleTags', + 'in' => 'query', + 'schema' => [ + 'description' => 'The cost allocation tags that are used to filter quotas. You can create cost allocation tags in the Tag service.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => '{"tag":"this_is_tag_demo"}', + ], + ], + [ + 'name' => 'marker', + 'in' => 'query', + 'schema' => [ + 'description' => 'The token that specifies the position from which to start returning results. The results are sorted in alphabetical order.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'cHlvZHBzX3VkZl8xMDExNV8xNDU3NDI4NDkzKg==', + ], + ], + [ + 'name' => 'maxItem', + 'in' => 'query', + 'schema' => [ + 'description' => 'The maximum number of entries to return on each page.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'title' => '', + 'example' => '100', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopCompatibleResult<ListQuotasDTO>', + 'description' => 'PopCompatibleResult', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.', + 'type' => 'string', + 'title' => '', + 'example' => '0bc12e6f16677875480593081d2956', + ], + 'quotaInfoList' => [ + 'description' => 'The list of quotas.', + 'type' => 'array', + 'items' => [ + 'description' => 'The list of quotas.', + 'type' => 'object', + 'properties' => [ + 'billingPolicy' => [ + 'description' => 'The billing information.', + 'type' => 'object', + 'properties' => [ + 'billingMethod' => [ + 'title' => '', + 'description' => 'The billing method.'."\n" + ."\n" + .'- subscription: The subscription billing method.'."\n" + ."\n" + .'- payasyougo: The pay-as-you-go billing method.', + 'type' => 'string', + 'example' => 'subscription', + ], + 'odpsSpecCode' => [ + 'description' => 'The specifications of the order.', + 'type' => 'string', + 'title' => '', + 'example' => 'OdpsStandard ', + ], + 'orderId' => [ + 'description' => 'The ID of the order.', + 'type' => 'string', + 'title' => '', + 'example' => '45245678', + ], + ], + 'title' => '', + 'example' => '', + ], + 'saleTag' => [ + 'description' => 'The sales tag of the quota. This tag is the same as the billing identifier and is used for cost allocation.', + 'type' => 'object', + 'properties' => [ + 'resourceIds' => [ + 'description' => 'The IDs of the resources. This ID is also used in the billing system. You can use this ID to associate the costs of a quota with a tag.', + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the MaxCompute quota.', + 'type' => 'string', + 'title' => '', + 'example' => '"aaaaaaa-bbbb-4fd0-a8eb-50861590f7dd"', + ], + 'title' => '', + 'example' => '', + ], + 'resourceType' => [ + 'description' => 'The type of the resource. Valid values: quota and project.', + 'type' => 'string', + 'title' => '', + 'example' => '"project"', + ], + ], + 'title' => '', + 'example' => '', + ], + 'cluster' => [ + 'description' => 'The ID of the cluster.', + 'type' => 'string', + 'title' => '', + 'example' => 'AT-120N'."\n", + ], + 'createTime' => [ + 'description' => 'The time when the quota was created.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '2022-09-06T02:14:44Z'."\n", + ], + 'creatorId' => [ + 'description' => 'The ID of the account that created the quota. This ID is an Alibaba Cloud account UID.', + 'type' => 'string', + 'title' => '', + 'example' => '672863518'."\n", + ], + 'id' => [ + 'description' => 'The ID of the quota.', + 'type' => 'string', + 'title' => '', + 'example' => '0', + ], + 'name' => [ + 'description' => 'The name of the quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'quota_a'."\n", + ], + 'nickName' => [ + 'description' => 'The alias of the quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'quota_nickname'."\n", + ], + 'parameter' => [ + 'description' => 'The parameters of the quota.', + 'type' => 'object', + 'title' => '', + 'example' => '{"minCU":10, '."\n" + .'"adhocCU":0,'."\n" + .'"maxCU":10,'."\n" + .'"schedulerType":"Fair",'."\n" + .'}', + ], + 'parentId' => [ + 'description' => 'The ID of the parent resource.', + 'type' => 'string', + 'title' => '', + 'example' => 'null', + ], + 'regionId' => [ + 'description' => 'The ID of the region.', + 'type' => 'string', + 'title' => '', + 'example' => 'cn-beijing', + ], + 'scheduleInfo' => [ + 'description' => 'The time-based scheduling information.', + 'type' => 'object', + 'properties' => [ + 'currPlan' => [ + 'description' => 'The quota plan that is currently in effect.', + 'type' => 'string', + 'title' => '', + 'example' => 'planA', + ], + 'currTime' => [ + 'description' => 'The time when the current plan took effect.', + 'type' => 'string', + 'title' => '', + 'example' => '0800', + ], + 'nextPlan' => [ + 'description' => 'The next quota plan that is scheduled to take effect.', + 'type' => 'string', + 'title' => '', + 'example' => 'planB', + ], + 'nextTime' => [ + 'description' => 'The time when the next plan is scheduled to take effect.', + 'type' => 'string', + 'title' => '', + 'example' => '1700', + ], + 'oncePlan' => [ + 'description' => 'The quota plan that takes effect immediately. This parameter is returned only when a user triggers an immediate plan that is different from the current plan.', + 'type' => 'string', + 'title' => '', + 'example' => 'planC', + ], + 'onceTime' => [ + 'description' => 'The time when the immediate plan was triggered.', + 'type' => 'string', + 'title' => '', + 'example' => '1500', + ], + 'operatorName' => [ + 'description' => 'The name of the operator.', + 'type' => 'string', + 'title' => '', + 'example' => 'userA', + ], + 'timezone' => [ + 'description' => 'The time zone.', + 'type' => 'string', + 'title' => '', + 'example' => 'UTC+8', + ], + ], + 'title' => '', + 'example' => '', + ], + 'status' => [ + 'description' => 'The status of the quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'ON '."\n", + ], + 'subQuotaInfoList' => [ + 'description' => 'The information about the sub-quotas.', + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the sub-quotas.', + 'type' => 'object', + 'properties' => [ + 'saleTag' => [ + 'description' => 'The sales tag of the quota. This tag is the same as the billing identifier and is used for cost allocation.', + 'type' => 'object', + 'properties' => [ + 'resourceIds' => [ + 'description' => 'The IDs of the resources. This ID is also used in the billing system. You can use this ID to associate the costs of a quota with a tag.', + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the MaxCompute quota.', + 'type' => 'string', + 'title' => '', + 'example' => '"aaaaaaa-bbbb-4fd0-a8eb-50861590f7dd"'."\n", + ], + 'title' => '', + 'example' => '', + ], + 'resourceType' => [ + 'description' => 'The type of the resource. Valid values: quota and project.', + 'type' => 'string', + 'title' => '', + 'example' => '"quota"', + ], + ], + 'title' => '', + 'example' => '', + ], + 'billingPolicy' => [ + 'description' => 'The billing information.', + 'type' => 'object', + 'properties' => [ + 'billingMethod' => [ + 'title' => '', + 'description' => 'The billing method.'."\n" + ."\n" + .'- subscription: The subscription billing method.'."\n" + ."\n" + .'- payasyougo: The pay-as-you-go billing method.', + 'type' => 'string', + 'example' => 'subscription'."\n", + ], + 'odpsSpecCode' => [ + 'description' => 'The specifications of the order.', + 'type' => 'string', + 'title' => '', + 'example' => 'OdpsStandard ', + ], + 'orderId' => [ + 'description' => 'The ID of the order.', + 'type' => 'string', + 'title' => '', + 'example' => '45245678'."\n", + ], + ], + 'title' => '', + 'example' => '', + ], + 'cluster' => [ + 'description' => 'The ID of the cluster.', + 'type' => 'string', + 'title' => '', + 'example' => 'AT-120N', + ], + 'createTime' => [ + 'description' => 'The time when the quota was created.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '2022-09-06T02:14:44Z'."\n", + ], + 'creatorId' => [ + 'description' => 'The ID of the account that created the quota. This ID is an Alibaba Cloud account UID.', + 'type' => 'string', + 'title' => '', + 'example' => '672863518'."\n", + ], + 'id' => [ + 'description' => 'The ID of the sub-quota.', + 'type' => 'string', + 'title' => '', + 'example' => '1000048', + ], + 'name' => [ + 'description' => 'The name of the sub-quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'subquotaA'."\n", + ], + 'nickName' => [ + 'description' => 'The alias of the sub-quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'subquotaA'."\n", + ], + 'parameter' => [ + 'description' => 'The quota description.', + 'type' => 'object', + 'example' => '{"minCU":10, '."\n" + .'"adhocCU":0,'."\n" + .'"maxCU":10,'."\n" + .'"schedulerType":"Fair",'."\n" + .'}', + 'properties' => [ + 'enablePriority' => [ + 'type' => 'boolean', + 'description' => 'Indicates whether to enable priority-based scheduling.', + 'title' => '', + 'example' => 'true', + ], + 'forceReservedMin' => [ + 'type' => 'boolean', + 'description' => 'Indicates whether the resource is exclusive.', + 'title' => '', + 'example' => 'true', + ], + 'maxCU' => [ + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'description' => 'The maximum reserved computing units (CUs).', + 'title' => '', + 'example' => '50', + ], + 'minCU' => [ + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'description' => 'The minimum reserved CUs.', + 'title' => '', + 'example' => '50', + ], + 'schedulerType' => [ + 'type' => 'string', + 'description' => 'The scheduling policy.', + 'title' => '', + 'example' => 'Fifo/Fair'."\n", + ], + 'singleJobCULimit' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => 'The maximum CUs for a single job.', + 'title' => '', + 'example' => '10', + ], + 'elasticReservedCU' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => 'The elastically reserved CUs.', + 'title' => '', + 'example' => '50', + ], + 'slotNum' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'adhocSlot' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'minGu' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'maxGu' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'autoScaleCPULimit' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + ], + 'parentId' => [ + 'description' => 'The ID of the parent resource.', + 'type' => 'string', + 'title' => '', + 'example' => '0', + ], + 'regionId' => [ + 'description' => 'The ID of the region.', + 'type' => 'string', + 'title' => '', + 'example' => 'cn-beijing', + ], + 'scheduleInfo' => [ + 'description' => 'The time-based scheduling information.', + 'type' => 'object', + 'properties' => [ + 'currPlan' => [ + 'description' => 'The quota plan that is currently in effect.', + 'type' => 'string', + 'title' => '', + 'example' => 'planA', + ], + 'currTime' => [ + 'description' => 'The time when the current plan took effect.', + 'type' => 'string', + 'title' => '', + 'example' => '0800', + ], + 'nextPlan' => [ + 'description' => 'The next quota plan that is scheduled to take effect.', + 'type' => 'string', + 'title' => '', + 'example' => 'planB', + ], + 'nextTime' => [ + 'description' => 'The time when the next plan is scheduled to take effect.', + 'type' => 'string', + 'title' => '', + 'example' => '1700', + ], + 'oncePlan' => [ + 'description' => 'The quota plan that takes effect immediately. This parameter is returned only when a user triggers an immediate plan that is different from the current plan.', + 'type' => 'string', + 'title' => '', + 'example' => 'planC', + ], + 'onceTime' => [ + 'description' => 'The time when the immediate plan was triggered.', + 'type' => 'string', + 'title' => '', + 'example' => '1500', + ], + 'operatorName' => [ + 'description' => 'The name of the operator.', + 'type' => 'string', + 'title' => '', + 'example' => 'userA', + ], + 'timezone' => [ + 'description' => 'The time zone.', + 'type' => 'string', + 'title' => '', + 'example' => 'UTC+8', + ], + ], + 'title' => '', + 'example' => '', + ], + 'status' => [ + 'description' => 'The status of the quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'ON', + ], + 'tag' => [ + 'description' => 'The tag of the quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'abc', + ], + 'tenantId' => [ + 'description' => 'The ID of the tenant.', + 'type' => 'string', + 'title' => '', + 'example' => '280747109771520'."\n", + ], + 'type' => [ + 'title' => '', + 'description' => 'The type of the resource system. This parameter corresponds to the resourceSystemType parameter of the control cluster.', + 'type' => 'string', + 'example' => 'FUXI_ONLINE'."\n", + ], + 'version' => [ + 'description' => 'The version number.', + 'type' => 'string', + 'title' => '', + 'example' => '1', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'tag' => [ + 'description' => 'The tag of the quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'abc', + ], + 'tenantId' => [ + 'description' => 'The ID of the tenant.', + 'type' => 'string', + 'title' => '', + 'example' => '280747109771520'."\n", + ], + 'type' => [ + 'title' => '', + 'description' => 'The type of the resource system. This parameter corresponds to the resourceSystemType parameter of the control cluster.', + 'type' => 'string', + 'example' => 'FUXI_ONLINE'."\n", + ], + 'version' => [ + 'description' => 'The version number.', + 'type' => 'string', + 'title' => '', + 'example' => '1', + ], + 'Tags' => [ + 'description' => 'The tags.', + 'type' => 'array', + 'items' => [ + 'description' => 'The tags.', + 'type' => 'object', + 'properties' => [ + 'TagValue' => [ + 'description' => 'The value of the tag.', + 'type' => 'string', + 'title' => '', + 'example' => '1', + ], + 'TagKey' => [ + 'description' => 'The key of the tag.', + 'type' => 'string', + 'title' => '', + 'example' => 'Department', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'marker' => [ + 'description' => 'The token that specifies the position from which to start returning results. The results are sorted in alphabetical order.', + 'type' => 'string', + 'title' => '', + 'example' => 'cHlvZHBzX3VkZl8xMDExNV8xNDU3NDI4NDkzKg==', + ], + 'maxItem' => [ + 'description' => 'The maximum number of entries returned on each page.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '10', + ], + 'data' => [ + 'description' => 'The data returned.', + 'type' => 'object', + 'properties' => [ + 'quotaInfoList' => [ + 'description' => 'The list of quotas.', + 'type' => 'array', + 'items' => [ + 'description' => 'The list of quotas.', + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The ID of the quota.', + 'type' => 'string', + 'title' => '', + 'example' => '0'."\n", + ], + 'name' => [ + 'description' => 'The name of the quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'quota_a'."\n", + ], + 'nickName' => [ + 'description' => 'The alias of the quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'quota_nickname', + ], + 'type' => [ + 'title' => '', + 'description' => 'The type of the resource system. This parameter corresponds to the resourceSystemType parameter of the control cluster.', + 'type' => 'string', + 'example' => 'FUXI_ONLINE', + ], + 'status' => [ + 'description' => 'The status of the quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'ON', + ], + 'tenantId' => [ + 'description' => 'The ID of the tenant.', + 'type' => 'string', + 'title' => '', + 'example' => '280747109771520', + ], + 'regionId' => [ + 'description' => 'The ID of the region.', + 'type' => 'string', + 'title' => '', + 'example' => 'cn-beijing', + ], + 'parentId' => [ + 'description' => 'The ID of the parent resource.', + 'type' => 'string', + 'title' => '', + 'example' => 'null', + ], + 'cluster' => [ + 'description' => 'The ID of the cluster.', + 'type' => 'string', + 'title' => '', + 'example' => 'AT-120N', + ], + 'version' => [ + 'description' => 'The version number.', + 'type' => 'string', + 'title' => '', + 'example' => '1', + ], + 'billingPolicy' => [ + 'description' => 'The billing information.', + 'type' => 'object', + 'properties' => [ + 'odpsSpecCode' => [ + 'description' => 'The specifications of the order.', + 'type' => 'string', + 'title' => '', + 'example' => 'OdpsStandard ', + ], + 'orderId' => [ + 'description' => 'The ID of the order.', + 'type' => 'string', + 'title' => '', + 'example' => '45245678'."\n", + ], + 'billingMethod' => [ + 'title' => '', + 'description' => 'The billing method.'."\n" + ."\n" + .'- subscription: The subscription billing method.'."\n" + ."\n" + .'- payasyougo: The pay-as-you-go billing method.', + 'type' => 'string', + 'example' => 'subscription', + ], + ], + 'title' => '', + 'example' => '', + ], + 'scheduleInfo' => [ + 'description' => 'The time-based scheduling information.', + 'type' => 'object', + 'properties' => [ + 'currPlan' => [ + 'description' => 'The quota plan that is currently in effect.', + 'type' => 'string', + 'title' => '', + 'example' => 'planA'."\n", + ], + 'currTime' => [ + 'description' => 'The time when the current plan took effect.', + 'type' => 'string', + 'title' => '', + 'example' => '0800', + ], + 'nextPlan' => [ + 'description' => 'The next quota plan that is scheduled to take effect.', + 'type' => 'string', + 'title' => '', + 'example' => 'planB', + ], + 'nextTime' => [ + 'description' => 'The time when the next plan is scheduled to take effect.', + 'type' => 'string', + 'title' => '', + 'example' => '1700', + ], + 'oncePlan' => [ + 'description' => 'The quota plan that takes effect immediately. This parameter is returned only when a user triggers an immediate plan that is different from the current plan.', + 'type' => 'string', + 'title' => '', + 'example' => 'planC', + ], + 'onceTime' => [ + 'description' => 'The time when the immediate plan was triggered.', + 'type' => 'string', + 'title' => '', + 'example' => '1500', + ], + 'operatorName' => [ + 'description' => 'The name of the operator.', + 'type' => 'string', + 'title' => '', + 'example' => 'userA', + ], + 'timezone' => [ + 'description' => 'The time zone.', + 'type' => 'string', + 'title' => '', + 'example' => 'UTC+8', + ], + ], + 'title' => '', + 'example' => '', + ], + 'parameter' => [ + 'description' => 'The quota description.', + 'type' => 'object', + 'title' => '', + 'example' => '{"minCU":10, '."\n" + .'"adhocCU":0,'."\n" + .'"maxCU":10,'."\n" + .'"schedulerType":"Fair",'."\n" + .'}', + ], + 'tag' => [ + 'description' => 'The tag of the quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'abc', + ], + 'createTime' => [ + 'description' => 'The time when the quota was created.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '2022-09-06T02:14:44Z'."\n", + ], + 'creatorId' => [ + 'description' => 'The ID of the account that created the quota. This ID is an Alibaba Cloud account UID.', + 'type' => 'string', + 'title' => '', + 'example' => '672863518'."\n", + ], + 'saleTag' => [ + 'description' => 'The sales tag of the quota. This tag is the same as the billing identifier and is used for cost allocation.', + 'type' => 'object', + 'properties' => [ + 'resourceIds' => [ + 'description' => 'The IDs of the resources. This ID is also used in the billing system. You can use this ID to associate the costs of a quota with a tag.', + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the MaxCompute quota.', + 'type' => 'string', + 'title' => '', + 'example' => '"aaaaaaa-bbbb-4fd0-a8eb-50861590f7dd"'."\n", + ], + 'title' => '', + 'example' => '', + ], + 'resourceType' => [ + 'description' => 'The type of the resource. Valid values: quota and project.', + 'type' => 'string', + 'title' => '', + 'example' => '"quota"'."\n", + ], + ], + 'title' => '', + 'example' => '', + ], + 'subQuotaInfoList' => [ + 'description' => 'The information about the sub-quotas.', + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the sub-quotas.', + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The ID of the sub-quota.', + 'type' => 'string', + 'title' => '', + 'example' => '1000048', + ], + 'name' => [ + 'description' => 'The name of the sub-quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'subquotaA'."\n", + ], + 'nickName' => [ + 'description' => 'The alias of the sub-quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'subquotaA'."\n", + ], + 'type' => [ + 'title' => '', + 'description' => 'The type of the resource system. This parameter corresponds to the resourceSystemType parameter of the control cluster.', + 'type' => 'string', + 'example' => 'FUXI_ONLINE'."\n", + ], + 'status' => [ + 'description' => 'The status of the quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'ON', + ], + 'tenantId' => [ + 'description' => 'The ID of the tenant.', + 'type' => 'string', + 'title' => '', + 'example' => '280747109771520'."\n", + ], + 'regionId' => [ + 'description' => 'The ID of the region.', + 'type' => 'string', + 'title' => '', + 'example' => 'cn-beijing', + ], + 'parentId' => [ + 'description' => 'The ID of the parent resource.', + 'type' => 'string', + 'title' => '', + 'example' => '0', + ], + 'cluster' => [ + 'description' => 'The ID of the cluster.', + 'type' => 'string', + 'title' => '', + 'example' => 'AT-120N', + ], + 'version' => [ + 'description' => 'The version number.', + 'type' => 'string', + 'title' => '', + 'example' => '1', + ], + 'billingPolicy' => [ + 'description' => 'The billing information.', + 'type' => 'object', + 'properties' => [ + 'odpsSpecCode' => [ + 'description' => 'The specifications of the order.', + 'type' => 'string', + 'title' => '', + 'example' => 'OdpsStandard ', + ], + 'orderId' => [ + 'description' => 'The ID of the order.', + 'type' => 'string', + 'title' => '', + 'example' => '45245678'."\n", + ], + 'billingMethod' => [ + 'title' => '', + 'description' => 'The billing method.'."\n" + ."\n" + .'- subscription: The subscription billing method.'."\n" + ."\n" + .'- payasyougo: The pay-as-you-go billing method.', + 'type' => 'string', + 'example' => 'subscription', + ], + ], + 'title' => '', + 'example' => '', + ], + 'scheduleInfo' => [ + 'description' => 'The time-based scheduling information.', + 'type' => 'object', + 'properties' => [ + 'currPlan' => [ + 'description' => 'The quota plan that is currently in effect.', + 'type' => 'string', + 'title' => '', + 'example' => 'planA', + ], + 'currTime' => [ + 'description' => 'The time when the current plan took effect.', + 'type' => 'string', + 'title' => '', + 'example' => '0800', + ], + 'nextPlan' => [ + 'description' => 'The next quota plan that is scheduled to take effect.', + 'type' => 'string', + 'title' => '', + 'example' => 'planB', + ], + 'nextTime' => [ + 'description' => 'The time when the next plan is scheduled to take effect.', + 'type' => 'string', + 'title' => '', + 'example' => '1700', + ], + 'oncePlan' => [ + 'description' => 'The quota plan that takes effect immediately. This parameter is returned only if a user triggers an immediate plan that is different from `currPlan`.', + 'type' => 'string', + 'title' => '', + 'example' => 'planC', + ], + 'onceTime' => [ + 'description' => 'The time when the immediate-effect plan was triggered.', + 'type' => 'string', + 'title' => '', + 'example' => '1500', + ], + 'operatorName' => [ + 'description' => 'The name of the operator.', + 'type' => 'string', + 'title' => '', + 'example' => 'userA', + ], + 'timezone' => [ + 'description' => 'The time zone.', + 'type' => 'string', + 'title' => '', + 'example' => 'UTC+8', + ], + ], + 'title' => '', + 'example' => '', + ], + 'parameter' => [ + 'description' => 'The description of the quota.', + 'type' => 'object', + 'example' => '{"minCU":10, '."\n" + .'"adhocCU":0,'."\n" + .'"maxCU":10,'."\n" + .'"schedulerType":"Fair",'."\n" + .'}', + 'properties' => [ + 'enablePriority' => [ + 'type' => 'boolean', + 'description' => 'Specifies whether to enable priority-based scheduling.', + 'title' => '', + 'example' => 'true', + ], + 'forceReservedMin' => [ + 'type' => 'boolean', + 'description' => 'Specifies whether the resource is exclusive.', + 'title' => '', + 'example' => 'true', + ], + 'maxCU' => [ + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'description' => 'The upper limit of reserved CUs.', + 'title' => '', + 'example' => '50', + ], + 'minCU' => [ + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'description' => 'The minimum number of guaranteed reserved CUs.', + 'title' => '', + 'example' => '50', + ], + 'schedulerType' => [ + 'type' => 'string', + 'description' => 'The scheduling policy.', + 'title' => '', + 'example' => 'Fifo/Fair'."\n", + ], + 'singleJobCULimit' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => 'The upper limit of CUs for a single job.', + 'title' => '', + 'example' => '10', + ], + 'elasticReservedCU' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => 'The value of elastically reserved CUs.', + 'title' => '', + 'example' => '50', + ], + 'slotNum' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'adhocSlot' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'autoScaleCPULimit' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'minGu' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'maxGu' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + ], + 'tag' => [ + 'description' => 'The resource tag of the quota.', + 'type' => 'string', + 'title' => '', + 'example' => 'abc', + ], + 'createTime' => [ + 'description' => 'The time when the resource was created.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '2022-09-06T02:14:44Z'."\n", + ], + 'creatorId' => [ + 'description' => 'The creator of the resource. This is the UID of an Alibaba Cloud account.', + 'type' => 'string', + 'title' => '', + 'example' => '672863518'."\n", + ], + 'saleTag' => [ + 'description' => 'The identifier of the MaxCompute quota object. This identifier is the same as the one in the Alibaba Cloud bill and is used in tagging scenarios.', + 'type' => 'object', + 'properties' => [ + 'resourceIds' => [ + 'description' => 'The identifier of the MaxCompute quota object. This identifier also exists in the Alibaba Cloud sales subsystem. It associates the costs of the quota object with a tag.', + 'type' => 'array', + 'items' => [ + 'description' => 'The identifier of the MaxCompute quota object.', + 'type' => 'string', + 'title' => '', + 'example' => '"aaaaaaa-bbbb-4fd0-a8eb-50861590f7dd"'."\n", + ], + 'title' => '', + 'example' => '', + ], + 'resourceType' => [ + 'description' => 'The type of the object. Only \\`quota\\` and \\`project\\` are supported.', + 'type' => 'string', + 'title' => '', + 'example' => '"quota"'."\n", + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'Tags' => [ + 'description' => 'The tags.', + 'type' => 'array', + 'items' => [ + 'description' => 'The tag.', + 'type' => 'object', + 'properties' => [ + 'TagValue' => [ + 'description' => 'The tag value.', + 'type' => 'string', + 'title' => '', + 'example' => 'a12351qHDP6YEQMt', + ], + 'TagKey' => [ + 'description' => 'The tag key.', + 'type' => 'string', + 'title' => '', + 'example' => 'Department', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'marker' => [ + 'description' => 'The results are returned in alphabetical order, starting from the entry after the marker.', + 'type' => 'string', + 'title' => '', + 'example' => 'cHlvZHBzX3VkZl8xMDExNV8xNDU3NDI4NDkzKg==', + ], + 'maxItem' => [ + 'description' => 'The maximum number of entries returned per page.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '10', + ], + 'NextToken' => [ + 'description' => 'The token for the next page of results. If this parameter has a value, more results are available. To get the next page, include this value in the \\`NextToken\\` parameter of the next request.', + 'type' => 'string', + 'enumValueTitles' => [], + 'title' => '', + 'example' => '"abcde"', + ], + ], + 'title' => '', + 'example' => '', + ], + 'NextToken' => [ + 'description' => 'The token for the next page of results. This operation supports only consecutive paging. If the returned value is not empty, more data is available. To get the next page, use the returned value in your next request.', + 'type' => 'string', + 'title' => '', + 'example' => 'AAAAAdDWBF2w6Olxc+cMPjUtUMo/CvPe4IK7f7kIQFrIZjyc', + ], + ], + 'example' => '', + ], + ], + ], + 'title' => 'ListQuotas', + 'summary' => 'Retrieves a list of quotas.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + [ + 'threshold' => '300', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'ListQuotas', + ], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:ListQuotas', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0bc12e6f16677875480593081d2956\\",\\n \\"quotaInfoList\\": [\\n {\\n \\"billingPolicy\\": {\\n \\"billingMethod\\": \\"subscription\\",\\n \\"odpsSpecCode\\": \\"OdpsStandard \\",\\n \\"orderId\\": \\"45245678\\"\\n },\\n \\"saleTag\\": {\\n \\"resourceIds\\": [\\n \\"\\\\\\"aaaaaaa-bbbb-4fd0-a8eb-50861590f7dd\\\\\\"\\"\\n ],\\n \\"resourceType\\": \\"\\\\\\"project\\\\\\"\\"\\n },\\n \\"cluster\\": \\"AT-120N\\\\n\\",\\n \\"createTime\\": 0,\\n \\"creatorId\\": \\"672863518\\\\n\\",\\n \\"id\\": \\"0\\",\\n \\"name\\": \\"quota_a\\\\n\\",\\n \\"nickName\\": \\"quota_nickname\\\\n\\",\\n \\"parameter\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"parentId\\": \\"null\\",\\n \\"regionId\\": \\"cn-beijing\\",\\n \\"scheduleInfo\\": {\\n \\"currPlan\\": \\"planA\\",\\n \\"currTime\\": \\"0800\\",\\n \\"nextPlan\\": \\"planB\\",\\n \\"nextTime\\": \\"1700\\",\\n \\"oncePlan\\": \\"planC\\",\\n \\"onceTime\\": \\"1500\\",\\n \\"operatorName\\": \\"userA\\",\\n \\"timezone\\": \\"UTC+8\\"\\n },\\n \\"status\\": \\"ON \\\\n\\",\\n \\"subQuotaInfoList\\": [\\n {\\n \\"saleTag\\": {\\n \\"resourceIds\\": [\\n \\"\\\\\\"aaaaaaa-bbbb-4fd0-a8eb-50861590f7dd\\\\\\"\\\\n\\"\\n ],\\n \\"resourceType\\": \\"\\\\\\"quota\\\\\\"\\"\\n },\\n \\"billingPolicy\\": {\\n \\"billingMethod\\": \\"subscription\\\\n\\",\\n \\"odpsSpecCode\\": \\"OdpsStandard \\",\\n \\"orderId\\": \\"45245678\\\\n\\"\\n },\\n \\"cluster\\": \\"AT-120N\\",\\n \\"createTime\\": 0,\\n \\"creatorId\\": \\"672863518\\\\n\\",\\n \\"id\\": \\"1000048\\",\\n \\"name\\": \\"subquotaA\\\\n\\",\\n \\"nickName\\": \\"subquotaA\\\\n\\",\\n \\"parameter\\": {\\n \\"enablePriority\\": true,\\n \\"forceReservedMin\\": true,\\n \\"maxCU\\": 50,\\n \\"minCU\\": 50,\\n \\"schedulerType\\": \\"Fifo/Fair\\\\n\\",\\n \\"singleJobCULimit\\": 10,\\n \\"elasticReservedCU\\": 50,\\n \\"slotNum\\": 0,\\n \\"adhocSlot\\": 0,\\n \\"minGu\\": 0,\\n \\"maxGu\\": 0,\\n \\"autoScaleCPULimit\\": 0\\n },\\n \\"parentId\\": \\"0\\",\\n \\"regionId\\": \\"cn-beijing\\",\\n \\"scheduleInfo\\": {\\n \\"currPlan\\": \\"planA\\",\\n \\"currTime\\": \\"0800\\",\\n \\"nextPlan\\": \\"planB\\",\\n \\"nextTime\\": \\"1700\\",\\n \\"oncePlan\\": \\"planC\\",\\n \\"onceTime\\": \\"1500\\",\\n \\"operatorName\\": \\"userA\\",\\n \\"timezone\\": \\"UTC+8\\"\\n },\\n \\"status\\": \\"ON\\",\\n \\"tag\\": \\"abc\\",\\n \\"tenantId\\": \\"280747109771520\\\\n\\",\\n \\"type\\": \\"FUXI_ONLINE\\\\n\\",\\n \\"version\\": \\"1\\"\\n }\\n ],\\n \\"tag\\": \\"abc\\",\\n \\"tenantId\\": \\"280747109771520\\\\n\\",\\n \\"type\\": \\"FUXI_ONLINE\\\\n\\",\\n \\"version\\": \\"1\\",\\n \\"Tags\\": [\\n {\\n \\"TagValue\\": \\"1\\",\\n \\"TagKey\\": \\"Department\\"\\n }\\n ]\\n }\\n ],\\n \\"marker\\": \\"cHlvZHBzX3VkZl8xMDExNV8xNDU3NDI4NDkzKg==\\",\\n \\"maxItem\\": 10,\\n \\"data\\": {\\n \\"quotaInfoList\\": [\\n {\\n \\"id\\": \\"0\\\\n\\",\\n \\"name\\": \\"quota_a\\\\n\\",\\n \\"nickName\\": \\"quota_nickname\\",\\n \\"type\\": \\"FUXI_ONLINE\\",\\n \\"status\\": \\"ON\\",\\n \\"tenantId\\": \\"280747109771520\\",\\n \\"regionId\\": \\"cn-beijing\\",\\n \\"parentId\\": \\"null\\",\\n \\"cluster\\": \\"AT-120N\\",\\n \\"version\\": \\"1\\",\\n \\"billingPolicy\\": {\\n \\"odpsSpecCode\\": \\"OdpsStandard \\",\\n \\"orderId\\": \\"45245678\\\\n\\",\\n \\"billingMethod\\": \\"subscription\\"\\n },\\n \\"scheduleInfo\\": {\\n \\"currPlan\\": \\"planA\\\\n\\",\\n \\"currTime\\": \\"0800\\",\\n \\"nextPlan\\": \\"planB\\",\\n \\"nextTime\\": \\"1700\\",\\n \\"oncePlan\\": \\"planC\\",\\n \\"onceTime\\": \\"1500\\",\\n \\"operatorName\\": \\"userA\\",\\n \\"timezone\\": \\"UTC+8\\"\\n },\\n \\"parameter\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"tag\\": \\"abc\\",\\n \\"createTime\\": 0,\\n \\"creatorId\\": \\"672863518\\\\n\\",\\n \\"saleTag\\": {\\n \\"resourceIds\\": [\\n \\"\\\\\\"aaaaaaa-bbbb-4fd0-a8eb-50861590f7dd\\\\\\"\\\\n\\"\\n ],\\n \\"resourceType\\": \\"\\\\\\"quota\\\\\\"\\\\n\\"\\n },\\n \\"subQuotaInfoList\\": [\\n {\\n \\"id\\": \\"1000048\\",\\n \\"name\\": \\"subquotaA\\\\n\\",\\n \\"nickName\\": \\"subquotaA\\\\n\\",\\n \\"type\\": \\"FUXI_ONLINE\\\\n\\",\\n \\"status\\": \\"ON\\",\\n \\"tenantId\\": \\"280747109771520\\\\n\\",\\n \\"regionId\\": \\"cn-beijing\\",\\n \\"parentId\\": \\"0\\",\\n \\"cluster\\": \\"AT-120N\\",\\n \\"version\\": \\"1\\",\\n \\"billingPolicy\\": {\\n \\"odpsSpecCode\\": \\"OdpsStandard \\",\\n \\"orderId\\": \\"45245678\\\\n\\",\\n \\"billingMethod\\": \\"subscription\\"\\n },\\n \\"scheduleInfo\\": {\\n \\"currPlan\\": \\"planA\\",\\n \\"currTime\\": \\"0800\\",\\n \\"nextPlan\\": \\"planB\\",\\n \\"nextTime\\": \\"1700\\",\\n \\"oncePlan\\": \\"planC\\",\\n \\"onceTime\\": \\"1500\\",\\n \\"operatorName\\": \\"userA\\",\\n \\"timezone\\": \\"UTC+8\\"\\n },\\n \\"parameter\\": {\\n \\"enablePriority\\": true,\\n \\"forceReservedMin\\": true,\\n \\"maxCU\\": 50,\\n \\"minCU\\": 50,\\n \\"schedulerType\\": \\"Fifo/Fair\\\\n\\",\\n \\"singleJobCULimit\\": 10,\\n \\"elasticReservedCU\\": 50,\\n \\"slotNum\\": 0,\\n \\"adhocSlot\\": 0,\\n \\"autoScaleCPULimit\\": 0,\\n \\"minGu\\": 0,\\n \\"maxGu\\": 0\\n },\\n \\"tag\\": \\"abc\\",\\n \\"createTime\\": 0,\\n \\"creatorId\\": \\"672863518\\\\n\\",\\n \\"saleTag\\": {\\n \\"resourceIds\\": [\\n \\"\\\\\\"aaaaaaa-bbbb-4fd0-a8eb-50861590f7dd\\\\\\"\\\\n\\"\\n ],\\n \\"resourceType\\": \\"\\\\\\"quota\\\\\\"\\\\n\\"\\n }\\n }\\n ],\\n \\"Tags\\": [\\n {\\n \\"TagValue\\": \\"a12351qHDP6YEQMt\\",\\n \\"TagKey\\": \\"Department\\"\\n }\\n ]\\n }\\n ],\\n \\"marker\\": \\"cHlvZHBzX3VkZl8xMDExNV8xNDU3NDI4NDkzKg==\\",\\n \\"maxItem\\": 10,\\n \\"NextToken\\": \\"\\\\\\"abcde\\\\\\"\\"\\n },\\n \\"NextToken\\": \\"AAAAAdDWBF2w6Olxc+cMPjUtUMo/CvPe4IK7f7kIQFrIZjyc\\"\\n}","type":"json"}]', + ], + 'ListQuotasPlans' => [ + 'path' => '/api/v1/quotas/{nickname}/plans', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '142713', + 'abilityTreeNodes' => [ + 'FEATUREodpsZAKNHC', + ], + ], + 'parameters' => [ + [ + 'name' => 'nickname', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the quota.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'quotaA', + ], + ], + [ + 'name' => 'tenantId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the tenant.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '478403690625249', + ], + ], + [ + 'name' => 'region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-beijing', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ListQuotaPlansDTO>', + 'description' => 'PopResult'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0be3e0bd16661643917136451ebf55', + ], + 'data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'planList' => [ + 'description' => 'The list of quota plans.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the quota plan.'."\n", + 'type' => 'string', + 'example' => 'planA', + ], + 'createTime' => [ + 'description' => 'The time when the quota plan was created.'."\n", + 'type' => 'string', + 'example' => '2022-05-16T06:07:45Z'."\n", + ], + 'quota' => [ + 'description' => 'The details of the quota.'."\n", + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The ID of the quota.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'name' => [ + 'description' => 'The name of the quota.'."\n", + 'type' => 'string', + 'example' => 'quota_a', + ], + 'nickName' => [ + 'description' => 'The alias of the quota.'."\n", + 'type' => 'string', + 'example' => 'quota_nickname', + ], + 'type' => [ + 'title' => '', + 'description' => 'The type of the resource system. This parameter corresponds to the resourceSystemType parameter of the cluster.'."\n", + 'type' => 'string', + 'example' => 'FUXI_ONLINE', + ], + 'status' => [ + 'description' => 'The status of the resource.'."\n", + 'type' => 'string', + 'example' => 'ON', + ], + 'tenantId' => [ + 'description' => 'The ID of the tenant.'."\n", + 'type' => 'string', + 'example' => '478403690625249', + ], + 'regionId' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'example' => 'cn-beijing', + ], + 'parentId' => [ + 'description' => 'The ID of the parent resource.'."\n", + 'type' => 'string', + 'example' => 'null', + ], + 'cluster' => [ + 'description' => 'The ID of the cluster.'."\n", + 'type' => 'string', + 'example' => 'AT-120N'."\n", + ], + 'version' => [ + 'description' => 'The version number.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'billingPolicy' => [ + 'description' => 'The information of the order.'."\n", + 'type' => 'object', + 'properties' => [ + 'odpsSpecCode' => [ + 'description' => 'The specifications of the order.'."\n", + 'type' => 'string', + 'example' => 'OdpsStandard ', + ], + 'orderId' => [ + 'description' => 'The ID of the order.'."\n", + 'type' => 'string', + 'example' => '45245678', + ], + 'billingMethod' => [ + 'title' => '', + 'description' => 'The billing method of the quota. Valid values:'."\n" + ."\n" + .'* subscription: a subscription quota.'."\n" + .'* payasyougo: a pay-as-you-go quota.'."\n", + 'type' => 'string', + 'example' => 'subscription', + ], + ], + ], + 'scheduleInfo' => [ + 'description' => 'The information of the scheduling plan.'."\n", + 'type' => 'object', + 'properties' => [ + 'currPlan' => [ + 'description' => 'The quota plan that takes effect based on the scheduling plan.'."\n", + 'type' => 'string', + 'example' => 'planA', + ], + 'currTime' => [ + 'description' => 'The time when the current quota plan is scheduled.'."\n", + 'type' => 'string', + 'example' => '0800'."\n", + ], + 'nextPlan' => [ + 'description' => 'The next quota plan that will take effect based on the scheduling plan.'."\n", + 'type' => 'string', + 'example' => 'planB', + ], + 'nextTime' => [ + 'description' => 'The time when the next quota plan is scheduled.'."\n", + 'type' => 'string', + 'example' => '1700', + ], + 'oncePlan' => [ + 'description' => 'If the quota plan that immediately takes effect is different from the current quota plan, this parameter is not empty.'."\n", + 'type' => 'string', + 'example' => 'planC', + ], + 'onceTime' => [ + 'description' => 'The time when the quota plan immediately takes effect.'."\n", + 'type' => 'string', + 'example' => '1500', + ], + 'operatorName' => [ + 'description' => 'The name of the operator.'."\n", + 'type' => 'string', + 'example' => 'userA', + ], + ], + ], + 'parameter' => [ + 'description' => 'The description of the quota.'."\n", + 'type' => 'object', + ], + 'tag' => [ + 'description' => 'The tag of the resource for the quota.'."\n", + 'type' => 'string', + 'example' => 'abc', + ], + 'createTime' => [ + 'description' => 'The time when the quota plan was created.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2022-09-06T02:14:44Z'."\n", + ], + 'creatorId' => [ + 'description' => 'The ID of the Alibaba Cloud account that is used to create the resource.'."\n", + 'type' => 'string', + 'example' => '672863518', + ], + 'subQuotaInfoList' => [ + 'description' => 'The information of the level-2 quota.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information of the level-2 quota.'."\n", + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The ID of the level-2 quota.'."\n", + 'type' => 'string', + 'example' => '1000048', + ], + 'name' => [ + 'description' => 'The name of the level-2 quota.'."\n", + 'type' => 'string', + 'example' => 'subquotaA', + ], + 'nickName' => [ + 'description' => 'The nickname of the level-2 quota.'."\n", + 'type' => 'string', + 'example' => 'subquotaA', + ], + 'type' => [ + 'title' => '', + 'description' => 'The type of the resource system. This parameter corresponds to the resourceSystemType parameter of the cluster.'."\n", + 'type' => 'string', + 'example' => 'FUXI_ONLINE', + ], + 'status' => [ + 'description' => 'The status of the resource.'."\n", + 'type' => 'string', + 'example' => 'ON', + ], + 'tenantId' => [ + 'description' => 'The ID of the tenant.'."\n", + 'type' => 'string', + 'example' => '478403690625249', + ], + 'regionId' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'example' => 'cn-beijing', + ], + 'parentId' => [ + 'description' => 'The ID of the parent resource.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'cluster' => [ + 'description' => 'The ID of the cluster.'."\n", + 'type' => 'string', + 'example' => 'AT-120N'."\n", + ], + 'version' => [ + 'description' => 'The version number.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'billingPolicy' => [ + 'description' => 'The information of the order.'."\n", + 'type' => 'object', + 'properties' => [ + 'odpsSpecCode' => [ + 'description' => 'The specifications of the order.'."\n", + 'type' => 'string', + 'example' => 'OdpsStandard ', + ], + 'orderId' => [ + 'description' => 'The ID of the order.'."\n", + 'type' => 'string', + 'example' => '45245678', + ], + 'billingMethod' => [ + 'title' => '', + 'description' => 'The billing method of the quota. Valid values:'."\n" + ."\n" + .'* subscription: a subscription quota.'."\n" + .'* payasyougo: a pay-as-you-go quota.'."\n", + 'type' => 'string', + 'example' => 'subscription'."\n", + ], + ], + ], + 'scheduleInfo' => [ + 'description' => 'The information of the scheduling plan.'."\n", + 'type' => 'object', + 'properties' => [ + 'currPlan' => [ + 'description' => 'The quota plan that takes effect based on the scheduling plan.'."\n", + 'type' => 'string', + 'example' => 'planA', + ], + 'currTime' => [ + 'description' => 'The time when the current quota plan is scheduled.'."\n", + 'type' => 'string', + 'example' => '0800', + ], + 'nextPlan' => [ + 'description' => 'The next quota plan that will take effect based on the scheduling plan.'."\n", + 'type' => 'string', + 'example' => 'planB', + ], + 'nextTime' => [ + 'description' => 'The time when the next quota plan is scheduled.'."\n", + 'type' => 'string', + 'example' => '1700', + ], + 'oncePlan' => [ + 'description' => 'If the quota plan that immediately takes effect is different from the current quota plan, this parameter is not empty.'."\n", + 'type' => 'string', + 'example' => 'planC', + ], + 'onceTime' => [ + 'description' => 'The time when the quota plan immediately takes effect.'."\n", + 'type' => 'string', + 'example' => '1500', + ], + 'operatorName' => [ + 'description' => 'The name of the operator.'."\n", + 'type' => 'string', + 'example' => 'userA', + ], + ], + ], + 'parameter' => [ + 'description' => 'The description of the quota.'."\n", + 'type' => 'object', + ], + 'tag' => [ + 'description' => 'The tag of the resource for the quota.'."\n", + 'type' => 'string', + 'example' => 'abc', + ], + 'createTime' => [ + 'description' => 'The time when the quota plan was created.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2022-09-06T02:14:44Z'."\n", + ], + 'creatorId' => [ + 'description' => 'The ID of the Alibaba Cloud account that is used to create the resource.'."\n", + 'type' => 'string', + 'example' => '672863518', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0be3e0bd16661643917136451ebf55\\",\\n \\"data\\": {\\n \\"planList\\": [\\n {\\n \\"name\\": \\"planA\\",\\n \\"createTime\\": \\"2022-05-16T06:07:45Z\\\\n\\",\\n \\"quota\\": {\\n \\"id\\": \\"0\\",\\n \\"name\\": \\"quota_a\\",\\n \\"nickName\\": \\"quota_nickname\\",\\n \\"type\\": \\"FUXI_ONLINE\\",\\n \\"status\\": \\"ON\\",\\n \\"tenantId\\": \\"478403690625249\\",\\n \\"regionId\\": \\"cn-beijing\\",\\n \\"parentId\\": \\"null\\",\\n \\"cluster\\": \\"AT-120N\\\\n\\",\\n \\"version\\": \\"1\\",\\n \\"billingPolicy\\": {\\n \\"odpsSpecCode\\": \\"OdpsStandard \\",\\n \\"orderId\\": \\"45245678\\",\\n \\"billingMethod\\": \\"subscription\\"\\n },\\n \\"scheduleInfo\\": {\\n \\"currPlan\\": \\"planA\\",\\n \\"currTime\\": \\"0800\\\\n\\",\\n \\"nextPlan\\": \\"planB\\",\\n \\"nextTime\\": \\"1700\\",\\n \\"oncePlan\\": \\"planC\\",\\n \\"onceTime\\": \\"1500\\",\\n \\"operatorName\\": \\"userA\\"\\n },\\n \\"parameter\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"tag\\": \\"abc\\",\\n \\"createTime\\": 0,\\n \\"creatorId\\": \\"672863518\\",\\n \\"subQuotaInfoList\\": [\\n {\\n \\"id\\": \\"1000048\\",\\n \\"name\\": \\"subquotaA\\",\\n \\"nickName\\": \\"subquotaA\\",\\n \\"type\\": \\"FUXI_ONLINE\\",\\n \\"status\\": \\"ON\\",\\n \\"tenantId\\": \\"478403690625249\\",\\n \\"regionId\\": \\"cn-beijing\\",\\n \\"parentId\\": \\"0\\",\\n \\"cluster\\": \\"AT-120N\\\\n\\",\\n \\"version\\": \\"1\\",\\n \\"billingPolicy\\": {\\n \\"odpsSpecCode\\": \\"OdpsStandard \\",\\n \\"orderId\\": \\"45245678\\",\\n \\"billingMethod\\": \\"subscription\\\\n\\"\\n },\\n \\"scheduleInfo\\": {\\n \\"currPlan\\": \\"planA\\",\\n \\"currTime\\": \\"0800\\",\\n \\"nextPlan\\": \\"planB\\",\\n \\"nextTime\\": \\"1700\\",\\n \\"oncePlan\\": \\"planC\\",\\n \\"onceTime\\": \\"1500\\",\\n \\"operatorName\\": \\"userA\\"\\n },\\n \\"parameter\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"tag\\": \\"abc\\",\\n \\"createTime\\": 0,\\n \\"creatorId\\": \\"672863518\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'ListQuotasPlans', + 'summary' => 'Obtains quota plans.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:ListQuotasPlans', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + ], + ], + 'ListResources' => [ + 'path' => '/api/v1/projects/{projectName}/resources', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'projectName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the MaxCompute project.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'projectA', + ], + ], + [ + 'name' => 'schemaName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the schema.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'default', + ], + ], + [ + 'name' => 'name', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the resource.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'res'."\n", + ], + ], + [ + 'name' => 'marker', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies the marker after which the returned list begins.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cHlvZHBzX3VkZl8xMDExNV8xNDU3NDI4NDkzKg==', + ], + ], + [ + 'name' => 'maxItem', + 'in' => 'query', + 'schema' => [ + 'description' => 'The maximum number of entries to return on each page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + 'default' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ListResultDTO<ResourceInfo, MarkerPageInfo>>', + 'description' => 'PopResult\\<ListResultDTO\\<ResourceInfo, MarkerPageInfo>>'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0bc3b4ae16685836687916212e7850', + ], + 'data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'resources' => [ + 'description' => 'The list of resources.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The list of resources.'."\n", + 'type' => 'object', + 'properties' => [ + 'displayName' => [ + 'description' => 'The display name.'."\n", + 'type' => 'string', + 'example' => 'res_1'."\n", + ], + 'name' => [ + 'description' => 'The name of the resource.'."\n", + 'type' => 'string', + 'example' => 'res_1', + ], + 'owner' => [ + 'description' => 'The owner of the resource.'."\n", + 'type' => 'string', + 'example' => '1265860483008101', + ], + 'type' => [ + 'description' => 'The resource type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* file'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .'* py'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .'* jar'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .'* volumefile'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .'* table'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'file' => 'file', + 'py' => 'py', + 'jar' => 'jar', + 'volumefile' => 'volumefile', + 'table' => 'table', + ], + 'example' => 'file', + ], + 'schema' => [ + 'description' => 'The schema to which the resource belongs.'."\n", + 'type' => 'string', + 'example' => 'schemaA', + ], + 'lastUpdator' => [ + 'description' => 'The user who updated the resource.'."\n", + 'type' => 'string', + 'example' => '[email protected]', + ], + 'creationTime' => [ + 'description' => 'The time when the resource was created.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2022-01-29T03:34:09Z', + ], + 'lastModifiedTime' => [ + 'description' => 'The time when the resource was modified.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2023-04-18T06:15:05Z', + ], + 'comment' => [ + 'description' => 'The remarks.'."\n", + 'type' => 'string', + 'example' => 'file'."\n", + ], + 'size' => [ + 'description' => 'The size of the resource.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'contentMD5' => [ + 'description' => 'The Base64-encoded 128-bit MD5 hash value of the HTTP request body.'."\n", + 'type' => 'string', + 'example' => 'MACiECZtnLiNkNS1v5****=1', + ], + ], + ], + ], + 'marker' => [ + 'description' => 'Indicates the marker after which the returned list begins.'."\n", + 'type' => 'string', + 'example' => 'ZmN0X21vbnRoX3Rhb2Jhb19pbmRleCE=', + ], + 'maxItem' => [ + 'description' => 'The maximum number of entries returned per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + ], + ], + ], + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0bc3b4ae16685836687916212e7850\\",\\n \\"data\\": {\\n \\"resources\\": [\\n {\\n \\"displayName\\": \\"res_1\\\\n\\",\\n \\"name\\": \\"res_1\\",\\n \\"owner\\": \\"1265860483008101\\",\\n \\"type\\": \\"file\\",\\n \\"schema\\": \\"schemaA\\",\\n \\"lastUpdator\\": \\"[email protected]\\",\\n \\"creationTime\\": 0,\\n \\"lastModifiedTime\\": 0,\\n \\"comment\\": \\"file\\\\n\\",\\n \\"size\\": 10,\\n \\"contentMD5\\": \\"MACiECZtnLiNkNS1v5****=1\\"\\n }\\n ],\\n \\"marker\\": \\"ZmN0X21vbnRoX3Rhb2Jhb19pbmRleCE=\\",\\n \\"maxItem\\": 10\\n }\\n}","type":"json"}]', + 'title' => 'ListResources', + 'summary' => 'Obtains resources in a MaxCompute project.', + 'changeSet' => [ + [ + 'createdAt' => '2023-11-14T07:01:39.000Z', + 'description' => 'Request parameters changed, Response parameters changed', + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListResources', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + ], + ], + 'ListRoles' => [ + 'path' => '/api/v1/projects/{projectName}/roles', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'abilityTreeCode' => '144112', + 'abilityTreeNodes' => [ + 'FEATUREodpsTZPZOE', + ], + ], + 'parameters' => [ + [ + 'name' => 'projectName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the MaxCompute project.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'projectA', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ListRolesDTO>', + 'description' => 'PopResult'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0a06dfe716686526652451361e80ae', + ], + 'data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'roles' => [ + 'description' => 'The MaxCompute project-level roles.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The MaxCompute project-level roles.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the role.'."\n", + 'type' => 'string', + 'example' => 'roleA', + ], + 'type' => [ + 'description' => 'The type of the role.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'resource' => 'resource', + 'admin' => 'admin', + ], + 'example' => 'admin', + ], + 'policy' => [ + 'description' => 'The policy that is attached to the role.'."\n", + 'type' => 'string', + 'example' => '{'."\n" + .' "Statement": ['."\n" + .' {'."\n" + .' "Action": ['."\n" + .' "odps:*"'."\n" + .' ],'."\n" + .' "Effect": "Allow",'."\n" + .' "Resource": ['."\n" + .' "acs:odps:*:projects/{projectname}/authorization/packages"'."\n" + .' ]'."\n" + .' }'."\n" + .' ],'."\n" + .' "Version": "1"'."\n" + .'}', + ], + 'acl' => [ + 'description' => 'The ACL-based permissions that are granted to the role.'."\n", + 'type' => 'object', + 'properties' => [ + 'table' => [ + 'description' => 'The table.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The table.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the table.'."\n", + 'type' => 'string', + 'example' => 'tableA', + ], + 'actions' => [ + 'description' => 'The operations that were performed on the table.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The operations that were performed on the table.'."\n", + 'type' => 'string', + 'example' => 'describe', + ], + ], + ], + ], + ], + 'resource' => [ + 'description' => 'The resource.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The resource.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the resource.'."\n", + 'type' => 'string', + 'example' => 'resourceA', + ], + 'actions' => [ + 'description' => 'The operations that were performed on the resource.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The operations that were performed on the resource.'."\n", + 'type' => 'string', + 'example' => 'read', + ], + ], + ], + ], + ], + 'function' => [ + 'description' => 'The function.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The function.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the function.'."\n", + 'type' => 'string', + 'example' => 'functionA', + ], + 'actions' => [ + 'description' => 'The operations that were performed on the function.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The operations that were performed on the function.'."\n", + 'type' => 'string', + 'example' => 'read', + ], + ], + ], + ], + ], + 'package' => [ + 'description' => 'The package.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The package.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the package.'."\n", + 'type' => 'string', + 'example' => 'packageA', + ], + 'actions' => [ + 'description' => 'The operations that were performed on the package.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The operations that were performed on the package.'."\n", + 'type' => 'string', + 'example' => 'read', + ], + ], + ], + ], + ], + 'project' => [ + 'description' => 'The project.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The project.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the MaxCompute project.'."\n", + 'type' => 'string', + 'example' => 'projectA', + ], + 'actions' => [ + 'description' => 'The operations that were performed on the project.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The operations that were performed on the project.'."\n", + 'type' => 'string', + 'example' => 'list', + ], + ], + ], + ], + ], + 'instance' => [ + 'description' => 'The instance.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The instance.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the instance.'."\n", + 'type' => 'string', + 'example' => 'instanceA', + ], + 'actions' => [ + 'description' => 'The operations that were performed on the instance.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The operations that were performed on the instance.'."\n", + 'type' => 'string', + 'example' => 'read', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0a06dfe716686526652451361e80ae\\",\\n \\"data\\": {\\n \\"roles\\": [\\n {\\n \\"name\\": \\"roleA\\",\\n \\"type\\": \\"admin\\",\\n \\"policy\\": \\"{\\\\n \\\\\\"Statement\\\\\\": [\\\\n {\\\\n \\\\\\"Action\\\\\\": [\\\\n \\\\\\"odps:*\\\\\\"\\\\n ],\\\\n \\\\\\"Effect\\\\\\": \\\\\\"Allow\\\\\\",\\\\n \\\\\\"Resource\\\\\\": [\\\\n \\\\\\"acs:odps:*:projects/{projectname}/authorization/packages\\\\\\"\\\\n ]\\\\n }\\\\n ],\\\\n \\\\\\"Version\\\\\\": \\\\\\"1\\\\\\"\\\\n}\\",\\n \\"acl\\": {\\n \\"table\\": [\\n {\\n \\"name\\": \\"tableA\\",\\n \\"actions\\": [\\n \\"describe\\"\\n ]\\n }\\n ],\\n \\"resource\\": [\\n {\\n \\"name\\": \\"resourceA\\",\\n \\"actions\\": [\\n \\"read\\"\\n ]\\n }\\n ],\\n \\"function\\": [\\n {\\n \\"name\\": \\"functionA\\",\\n \\"actions\\": [\\n \\"read\\"\\n ]\\n }\\n ],\\n \\"package\\": [\\n {\\n \\"name\\": \\"packageA\\",\\n \\"actions\\": [\\n \\"read\\"\\n ]\\n }\\n ],\\n \\"project\\": [\\n {\\n \\"name\\": \\"projectA\\",\\n \\"actions\\": [\\n \\"list\\"\\n ]\\n }\\n ],\\n \\"instance\\": [\\n {\\n \\"name\\": \\"instanceA\\",\\n \\"actions\\": [\\n \\"read\\"\\n ]\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'ListRoles', + 'summary' => 'Obtains MaxCompute project-level roles.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListRoles', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + ], + ], + 'ListStoragePartitionsInfo' => [ + 'path' => '/api/v1/observations/analysis/storage/projects/{project}/tables/{table}/partitionsInfo', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '223396', + 'abilityTreeNodes' => [ + 'FEATUREodps2B6Z0N', + ], + ], + 'parameters' => [ + [ + 'name' => 'tenantId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the tenant. You can log on to the MaxCompute console, and choose **Tenants** > **Tenant Property** from the left-side navigation pane to view the tenant ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '40713753659****', + ], + ], + [ + 'name' => 'region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-beijing', + ], + ], + [ + 'name' => 'date', + 'in' => 'query', + 'schema' => [ + 'description' => 'The date on which the statistics are collected, in days. Set this parameter to a value in the YYYYMMdd format.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '20241205', + ], + ], + [ + 'name' => 'project', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the MaxCompute project.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'odps_project', + ], + ], + [ + 'name' => 'schema', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the schema.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'schema', + ], + ], + [ + 'name' => 'table', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the table.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'bank_data', + ], + ], + [ + 'name' => 'partitionPrefix', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the partition that you want to use for fuzzy match.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ds=20241201', + ], + ], + [ + 'name' => 'types', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The storage types.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The storage type.'."\n" + ."\n" + .'* standard'."\n" + .'* lowfrequency'."\n" + .'* longterm'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'standard', + ], + 'required' => false, + ], + ], + [ + 'name' => 'orderColumn', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sorting column.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'totalFrequency', + ], + ], + [ + 'name' => 'ascOrder', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to sort data in ascending order.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + 'default' => 'false', + ], + ], + [ + 'name' => 'pageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'pageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ListStoragePartitionsInfoDTO>', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '0be3e0bd16661643917136451ebf55', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n" + ."\n" + .'* 1xx: informational response. The request is received and is being processed.'."\n" + .'* 2xx: success. The request is successfully received, understood, and accepted by the server.'."\n" + .'* 3xx: redirection. The request is redirected, and further actions are required to complete the request.'."\n" + .'* 4xx: client error. The request contains invalid request parameters and syntaxes, or specific request conditions cannot be met.'."\n" + .'* 5xx: server error. The server cannot meet requirements due to other reasons.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code.'."\n", + 'type' => 'string', + 'example' => 'OBJECT_NOT_EXIST', + ], + 'errorMsg' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'This object does not exist.', + ], + 'data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'storagePartitionInfoList' => [ + 'description' => 'The partition storage information.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The partition storage information.'."\n", + 'type' => 'object', + 'properties' => [ + 'projectName' => [ + 'description' => 'The project name.'."\n", + 'type' => 'string', + 'example' => 'odps_project', + ], + 'schemaName' => [ + 'description' => 'The schema name.'."\n", + 'type' => 'string', + 'example' => 'schema', + ], + 'tableName' => [ + 'description' => 'The table name.'."\n", + 'type' => 'string', + 'example' => 'bank_data', + ], + 'partition' => [ + 'description' => 'The partition name.'."\n", + 'type' => 'string', + 'example' => 'ds=20241201', + ], + 'isPartitioned' => [ + 'description' => 'Indicates whether the table is a partitioned table. This operation returns the partition information. You do not need to take note of this parameter.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'type' => [ + 'description' => 'The type.'."\n", + 'type' => 'string', + 'example' => 'PARTITION', + ], + 'storageType' => [ + 'description' => 'The storage type.'."\n" + ."\n" + .'* standard'."\n" + .'* lowfrequency'."\n" + .'* longterm'."\n", + 'type' => 'string', + 'example' => 'standard', + ], + 'totalFrequency' => [ + 'description' => 'The access frequency.'."\n" + ."\n" + .'> '."\n" + ."\n" + .'* Access behaviors include:'."\n" + ."\n" + .'* The table is used as the input table of an SQL task.'."\n" + .'* The table is downloaded by Tunnel.'."\n" + .'* The table is read by calling the Storage API. The partition granularity of the partitioned table is not available. Each time an access operation is performed, the access frequency is incremented by 1.'."\n" + ."\n" + .'* The data collection method is upgraded from July 2023. If the data is not accessed after the upgrade or is accessed by using ALGO jobs or the direct read method of Hologres, the access frequency cannot be collected.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'totalInputAmount' => [ + 'description' => 'The total amount of accessed data.'."\n" + ."\n" + .'> The amount of data that is read by all access behaviors.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '1', + ], + 'totalInputAmountUnit' => [ + 'description' => 'The unit of the total amount of accessed data.'."\n", + 'type' => 'string', + 'example' => 'GB', + ], + 'fileCount' => [ + 'description' => 'The number of files.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'fileSize' => [ + 'description' => 'The storage size.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '1', + ], + 'fileSizeUnit' => [ + 'description' => 'The unit of the storage size.'."\n", + 'type' => 'string', + 'example' => 'GB', + ], + 'rate' => [ + 'description' => 'The change rate of the total storage usage compared with that of the recent {$recentDays} days. No value is returned.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '1%', + ], + 'lastAccessTime' => [ + 'description' => 'The time when the partition data was last accessed.'."\n" + ."\n" + .'> The data collection method is upgraded from July 2023. If the data is not accessed after the upgrade or is accessed by using ALGO jobs or the direct read method of Hologres, the last access time cannot be collected.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1694589365', + ], + ], + ], + ], + 'date' => [ + 'description' => 'The date on which the statistics are collected.'."\n", + 'type' => 'string', + 'example' => '20241205', + ], + 'totalCount' => [ + 'description' => 'The total number of returned entries.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '57', + ], + 'pageNumber' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'pageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0be3e0bd16661643917136451ebf55\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"OBJECT_NOT_EXIST\\",\\n \\"errorMsg\\": \\"This object does not exist.\\",\\n \\"data\\": {\\n \\"storagePartitionInfoList\\": [\\n {\\n \\"projectName\\": \\"odps_project\\",\\n \\"schemaName\\": \\"schema\\",\\n \\"tableName\\": \\"bank_data\\",\\n \\"partition\\": \\"ds=20241201\\",\\n \\"isPartitioned\\": false,\\n \\"type\\": \\"PARTITION\\",\\n \\"storageType\\": \\"standard\\",\\n \\"totalFrequency\\": 10,\\n \\"totalInputAmount\\": 1,\\n \\"totalInputAmountUnit\\": \\"GB\\",\\n \\"fileCount\\": 2,\\n \\"fileSize\\": 1,\\n \\"fileSizeUnit\\": \\"GB\\",\\n \\"rate\\": 0,\\n \\"lastAccessTime\\": 1694589365\\n }\\n ],\\n \\"date\\": \\"20241205\\",\\n \\"totalCount\\": 57,\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10\\n }\\n}","type":"json"}]', + 'title' => 'ListStoragePartitionsInfo', + 'summary' => 'Queries the storage details of a specific partition in a partitioned table in a MaxCompute project.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:ListStoragePartitionsInfo', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Storage', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:storage/{#project}', + ], + ], + ], + ], + ], + ], + 'ListStorageProjectsInfo' => [ + 'path' => '/api/v1/observations/analysis/storage/projectsInfo', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'abilityTreeCode' => '223394', + 'abilityTreeNodes' => [ + 'FEATUREodps2B6Z0N', + ], + ], + 'parameters' => [ + [ + 'name' => 'tenantId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The tenant ID. You can log on to the MaxCompute console and choose **Tenant Property** in the navigation pane on the left to view the tenant ID.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => '28074710977****', + ], + ], + [ + 'name' => 'region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'cn-chengdu', + ], + ], + [ + 'name' => 'projectPrefix', + 'in' => 'query', + 'schema' => [ + 'description' => 'The prefix of the MaxCompute project name.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'odps_project', + ], + ], + [ + 'name' => 'date', + 'in' => 'query', + 'schema' => [ + 'description' => 'The statistics collection date. The date is accurate to the day. The date must be in the `YYYYMMdd` format.', + 'type' => 'string', + 'required' => true, + 'title' => '', + 'example' => '20241205', + ], + ], + [ + 'name' => 'recentDays', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of days for year-over-year comparison.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'default' => '1', + 'title' => '', + 'example' => '1', + ], + ], + [ + 'name' => 'orderColumn', + 'in' => 'query', + 'schema' => [ + 'description' => 'The column to sort by. Valid values:'."\n" + ."\n" + .'- totalStorage'."\n" + ."\n" + .'- longTermStorage'."\n" + ."\n" + .'- lowFreqStorage'."\n" + ."\n" + .'- standardStorage'."\n" + ."\n" + .'- recycleBinStorage', + 'type' => 'string', + 'required' => false, + 'default' => 'totalStorage', + 'title' => '', + 'example' => 'totalStorage', + ], + ], + [ + 'name' => 'ascOrder', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to sort the results in ascending order.', + 'type' => 'boolean', + 'required' => false, + 'default' => 'false', + 'title' => '', + 'example' => 'false', + ], + ], + [ + 'name' => 'pageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries to return on each page.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'title' => '', + 'example' => '10', + ], + ], + [ + 'name' => 'pageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'title' => '', + 'example' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ListStorageProjectsInfoDTO>', + 'description' => 'PopResult', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => '0bc3b4b016674434996033675e71ee', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n" + ."\n" + .'- 1xx: an informational response. The request has been received and is being processed.'."\n" + ."\n" + .'- 2xx: a success response. The request has been successfully received, understood, and accepted by the server.'."\n" + ."\n" + .'- 3xx: a redirection response. The request is redirected. You must take further action to complete the request.'."\n" + ."\n" + .'- 4xx: a client error. The request contains invalid request parameters or syntax, or cannot be fulfilled.'."\n" + ."\n" + .'- 5xx: a server error. The server fails to fulfill the request for other reasons.', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code.', + 'type' => 'string', + 'title' => '', + 'example' => 'OBJECT_NOT_EXIST'."\n", + ], + 'errorMsg' => [ + 'description' => 'The error message.', + 'type' => 'string', + 'title' => '', + 'example' => 'this quota is not exist.', + ], + 'data' => [ + 'description' => 'The data.', + 'type' => 'object', + 'properties' => [ + 'storageProjectInfoList' => [ + 'description' => 'The list of project-level storage information.', + 'type' => 'array', + 'items' => [ + 'description' => 'The project-level storage information.', + 'type' => 'object', + 'properties' => [ + 'date' => [ + 'description' => 'The statistics collection date. The date is accurate to the day. The date must be in the `YYYYMMdd` format.', + 'type' => 'string', + 'title' => '', + 'example' => '20250528', + ], + 'projectName' => [ + 'description' => 'The name of the MaxCompute project.', + 'type' => 'string', + 'title' => '', + 'example' => 'max_testproject', + ], + 'totalStorage' => [ + 'description' => 'The total storage usage.', + 'type' => 'number', + 'format' => 'double', + 'title' => '', + 'example' => '1', + ], + 'totalStorageUnit' => [ + 'description' => 'The unit of the total storage usage.', + 'type' => 'string', + 'title' => '', + 'example' => 'TB', + ], + 'standardStorage' => [ + 'description' => 'The Standard storage usage.', + 'type' => 'number', + 'format' => 'double', + 'title' => '', + 'example' => '500', + ], + 'standardStorageUnit' => [ + 'description' => 'The unit of the Standard storage usage.', + 'type' => 'string', + 'title' => '', + 'example' => 'GB', + ], + 'longTermStorage' => [ + 'description' => 'The Long Term storage usage.', + 'type' => 'number', + 'format' => 'double', + 'title' => '', + 'example' => '300', + ], + 'longTermStorageUnit' => [ + 'description' => 'The unit of the Long Term storage usage.', + 'type' => 'string', + 'title' => '', + 'example' => 'GB', + ], + 'lowFreqStorage' => [ + 'description' => 'The IA storage class usage.', + 'type' => 'number', + 'format' => 'double', + 'title' => '', + 'example' => '200', + ], + 'lowFreqStorageUnit' => [ + 'description' => 'The unit of the IA storage class usage.', + 'type' => 'string', + 'title' => '', + 'example' => 'GB', + ], + 'recycleBinStorage' => [ + 'description' => 'The recycle bin storage usage.', + 'type' => 'number', + 'format' => 'double', + 'title' => '', + 'example' => '0', + ], + 'recycleBinStorageUnit' => [ + 'description' => 'The unit of the recycle bin storage usage.', + 'type' => 'string', + 'title' => '', + 'example' => 'B', + ], + 'rate' => [ + 'description' => 'The year-over-year change rate of the total storage usage in the last {$recentDays} days.', + 'type' => 'number', + 'format' => 'double', + 'title' => '', + 'example' => '0.011872406445069006', + ], + 'timestamp' => [ + 'description' => 'The timestamp of the last data update.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '1749105045512', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'date' => [ + 'description' => 'The statistics collection date.', + 'type' => 'string', + 'title' => '', + 'example' => '20241205', + ], + 'totalCount' => [ + 'description' => 'The total number of returned entries.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '60', + ], + 'pageNumber' => [ + 'description' => 'The page number.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '2', + ], + 'pageSize' => [ + 'description' => 'The number of entries on each page.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '10', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0bc3b4b016674434996033675e71ee\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"OBJECT_NOT_EXIST\\\\n\\",\\n \\"errorMsg\\": \\"this quota is not exist.\\",\\n \\"data\\": {\\n \\"storageProjectInfoList\\": [\\n {\\n \\"date\\": \\"20250528\\",\\n \\"projectName\\": \\"max_testproject\\",\\n \\"totalStorage\\": 1,\\n \\"totalStorageUnit\\": \\"TB\\",\\n \\"standardStorage\\": 500,\\n \\"standardStorageUnit\\": \\"GB\\",\\n \\"longTermStorage\\": 300,\\n \\"longTermStorageUnit\\": \\"GB\\",\\n \\"lowFreqStorage\\": 200,\\n \\"lowFreqStorageUnit\\": \\"GB\\",\\n \\"recycleBinStorage\\": 0,\\n \\"recycleBinStorageUnit\\": \\"B\\",\\n \\"rate\\": 0.011872406445069006,\\n \\"timestamp\\": 1749105045512\\n }\\n ],\\n \\"date\\": \\"20241205\\",\\n \\"totalCount\\": 60,\\n \\"pageNumber\\": 2,\\n \\"pageSize\\": 10\\n }\\n}","type":"json"}]', + 'title' => 'ListStorageProjectsInfo', + 'summary' => 'Retrieves the storage details of projects.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListStorageProjectsInfo', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'ListStorageTablesInfo' => [ + 'path' => '/api/v1/observations/analysis/storage/projects/{project}/tablesInfo', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '223395', + 'abilityTreeNodes' => [ + 'FEATUREodps2B6Z0N', + ], + ], + 'parameters' => [ + [ + 'name' => 'tenantId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the tenant. You can log on to the MaxCompute console, and choose **Tenants** > **Tenant Property** from the left-side navigation pane to view the tenant ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '28074710977****', + ], + ], + [ + 'name' => 'region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-beijing', + ], + ], + [ + 'name' => 'date', + 'in' => 'query', + 'schema' => [ + 'description' => 'The date on which the statistics are collected, in days. Set this parameter to a value in the `YYYYMMdd` format.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '20241205', + ], + ], + [ + 'name' => 'recentDays', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of recent days for comparison.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'project', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the MaxCompute project.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'odps_project', + ], + ], + [ + 'name' => 'schema', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the schema.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'schema', + ], + ], + [ + 'name' => 'tablePrefix', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the table that you want to use for fuzzy match.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'bank', + ], + ], + [ + 'name' => 'types', + 'in' => 'query', + 'style' => 'simple', + 'schema' => [ + 'description' => 'The storage types.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The storage type.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'standardStorage', + ], + 'required' => false, + ], + ], + [ + 'name' => 'orderColumn', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sorting column.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'totalFrequency', + ], + ], + [ + 'name' => 'ascOrder', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to sort data in ascending order.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + 'default' => 'false', + ], + ], + [ + 'name' => 'pageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'pageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ListStorageTablesInfoDTO>', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '0bc12e6a16679892465424670db3eb', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n" + ."\n" + .'* 1xx: informational response. The request is received and is being processed.'."\n" + .'* 2xx: success. The request is successfully received, understood, and accepted by the server.'."\n" + .'* 3xx: redirection. The request is redirected, and further actions are required to complete the request.'."\n" + .'* 4xx: client error. The request contains invalid request parameters and syntaxes, or specific request conditions cannot be met.'."\n" + .'* 5xx: server error. The server cannot meet requirements due to other reasons.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code.'."\n", + 'type' => 'string', + 'example' => 'OBJECT_NOT_EXIST', + ], + 'errorMsg' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'This object does not exist.'."\n", + ], + 'data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'storageTableInfoList' => [ + 'description' => 'The table storage information.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The table storage information.'."\n", + 'type' => 'object', + 'properties' => [ + 'date' => [ + 'description' => 'The date on which the statistics are collected. This value is not returned.'."\n", + 'type' => 'string', + 'example' => '20241205', + ], + 'projectName' => [ + 'description' => 'The project name.'."\n", + 'type' => 'string', + 'example' => 'odps_project', + ], + 'schemaName' => [ + 'description' => 'The schema name.'."\n", + 'type' => 'string', + 'example' => 'schema', + ], + 'tableName' => [ + 'description' => 'The table name.'."\n", + 'type' => 'string', + 'example' => 'bank_data', + ], + 'isPartitioned' => [ + 'description' => 'Indicates whether the table is a partitioned table.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'storageType' => [ + 'description' => 'The table storage type.'."\n" + ."\n" + .'* standard'."\n" + .'* lowfrequency'."\n" + .'* longterm'."\n" + .'* unknown: This value is returned when the table is a partitioned table. You can call the ListStoragePartitionsInfo operation to query the storage type of each partition.'."\n", + 'type' => 'string', + 'example' => 'standard', + ], + 'lastAccessTime' => [ + 'description' => 'The time when the table was last accessed. This value is returned when the table is a non-partitioned table.'."\n" + ."\n" + .'> The data collection method is upgraded from July 2023. If the data is not accessed after the upgrade or is accessed by using ALGO jobs or the direct read method of Hologres, the last access time cannot be collected.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1694589365', + ], + 'totalStorageFileCount' => [ + 'description' => 'The total number of files.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'totalStorage' => [ + 'description' => 'The total storage usage. For a partitioned table, this parameter indicates the sum of the storage usage of all partitions. If the storage types of partitions are different, the value is the sum of the storage usage of each storage type.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '600', + ], + 'totalStorageUnit' => [ + 'description' => 'The unit of storage usage.'."\n", + 'type' => 'string', + 'example' => 'KB', + ], + 'rate' => [ + 'description' => 'The change rate of the total storage usage compared with that of the recent {$recentDays} days.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'standardStorageFileCount' => [ + 'description' => 'The number of standard storage files.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'standardStorage' => [ + 'description' => 'The storage usage at the standard storage tier.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '600', + ], + 'standardStorageUnit' => [ + 'description' => 'The unit of the storage usage at the standard storage tier.'."\n", + 'type' => 'string', + 'example' => 'KB', + ], + 'longTermStorageFileCount' => [ + 'description' => 'The number of long-term storage files.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'longTermStorage' => [ + 'description' => 'The storage usage at the long-term storage tier.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'longTermStorageUnit' => [ + 'description' => 'The unit of the storage usage at the long-term storage tier.'."\n", + 'type' => 'string', + 'example' => 'B', + ], + 'lowFreqStorageFileCount' => [ + 'description' => 'The number of low-frequency storage files.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'lowFreqStorage' => [ + 'description' => 'The storage usage at the low-frequency tier.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'lowFreqStorageUnit' => [ + 'description' => 'The unit of the storage usage at the low-frequency storage tier.'."\n", + 'type' => 'string', + 'example' => 'B', + ], + 'totalFrequency' => [ + 'description' => 'The access frequency.'."\n" + ."\n" + .'> '."\n" + ."\n" + .'* Access behaviors include:'."\n" + ."\n" + .'* The table is used as the input table of an SQL task.'."\n" + .'* The table is downloaded by Tunnel.'."\n" + .'* The table is read by calling the Storage API. The partition granularity of the partitioned table is not available. Each time an access operation is performed, the access frequency is incremented by 1.'."\n" + ."\n" + .'* The data collection method is upgraded from July 2023. If the data is not accessed after the upgrade or is accessed by using ALGO jobs or the direct read method of Hologres, the access frequency cannot be collected.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'totalInputAmount' => [ + 'description' => 'The total amount of accessed data.'."\n" + ."\n" + .'> The amount of data that is read by all access behaviors.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '1', + ], + 'totalInputAmountUnit' => [ + 'description' => 'The unit of the total amount of accessed data.'."\n", + 'type' => 'string', + 'example' => 'GB', + ], + ], + ], + ], + 'date' => [ + 'description' => 'The date on which the statistics are collected.'."\n", + 'type' => 'string', + 'example' => '20241205', + ], + 'totalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'pageNumber' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'pageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0bc12e6a16679892465424670db3eb\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"OBJECT_NOT_EXIST\\",\\n \\"errorMsg\\": \\"This object does not exist.\\\\n\\",\\n \\"data\\": {\\n \\"storageTableInfoList\\": [\\n {\\n \\"date\\": \\"20241205\\",\\n \\"projectName\\": \\"odps_project\\",\\n \\"schemaName\\": \\"schema\\",\\n \\"tableName\\": \\"bank_data\\",\\n \\"isPartitioned\\": false,\\n \\"storageType\\": \\"standard\\",\\n \\"lastAccessTime\\": 1694589365,\\n \\"totalStorageFileCount\\": 2,\\n \\"totalStorage\\": 600,\\n \\"totalStorageUnit\\": \\"KB\\",\\n \\"rate\\": 0,\\n \\"standardStorageFileCount\\": 2,\\n \\"standardStorage\\": 600,\\n \\"standardStorageUnit\\": \\"KB\\",\\n \\"longTermStorageFileCount\\": 0,\\n \\"longTermStorage\\": 0,\\n \\"longTermStorageUnit\\": \\"B\\",\\n \\"lowFreqStorageFileCount\\": 0,\\n \\"lowFreqStorage\\": 0,\\n \\"lowFreqStorageUnit\\": \\"B\\",\\n \\"totalFrequency\\": 10,\\n \\"totalInputAmount\\": 1,\\n \\"totalInputAmountUnit\\": \\"GB\\"\\n }\\n ],\\n \\"date\\": \\"20241205\\",\\n \\"totalCount\\": 1,\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10\\n }\\n}","type":"json"}]', + 'title' => 'ListStorageTablesInfo', + 'summary' => 'Queries the table storage details of a MaxCompute project.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:ListStorageTablesInfo', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Storage', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:storage/{#project}', + ], + ], + ], + ], + ], + ], + 'ListTables' => [ + 'path' => '/api/v1/projects/{projectName}/tables', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'abilityTreeCode' => '143060', + 'abilityTreeNodes' => [ + 'FEATUREodpsTZPZOE', + ], + ], + 'parameters' => [ + [ + 'name' => 'projectName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the MaxCompute project.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'projectA', + ], + ], + [ + 'name' => 'prefix', + 'in' => 'query', + 'schema' => [ + 'description' => 'The names of the returned resources. The names must start with the value specified by the prefix parameter. If the prefix parameter is set to a, the names of the returned resources must start with a.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'a', + ], + ], + [ + 'name' => 'marker', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies the marker after which the returned list begins.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Y29tbWlzc2lvbl9leHRlcm5hbF91cmdlXzFfd3Ih', + ], + ], + [ + 'name' => 'maxItem', + 'in' => 'query', + 'schema' => [ + 'description' => 'The maximum number of entries to return on each page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + 'default' => '10', + ], + ], + [ + 'name' => 'type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the table.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'internal' => 'internal', + 'external' => 'external', + ], + 'example' => 'internal', + ], + ], + [ + 'name' => 'schemaName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the schema.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'default', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ListResultDTO<TableInfo, MarkerPageInfo>>', + 'description' => 'PopResult\\<ListResultDTO\\<TableInfo, MarkerPageInfo>>'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '0a06dd4516687375802853481ec9fd', + ], + 'data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'tables' => [ + 'description' => 'The information about tables.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about tables.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the table.'."\n", + 'type' => 'string', + 'example' => 'dim_odps'."\n", + ], + 'owner' => [ + 'description' => 'The owner of the table.'."\n", + 'type' => 'string', + 'example' => '1887853961230110', + ], + 'type' => [ + 'description' => 'The type of the table.'."\n", + 'type' => 'string', + 'example' => 'internal'."\n", + ], + 'schema' => [ + 'description' => 'The schema to which the table belongs.'."\n", + 'type' => 'string', + 'example' => 'default', + ], + 'creationTime' => [ + 'description' => 'The time when the table was created.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2022-01-17T07:07:47Z', + ], + 'displayName' => [ + 'description' => 'The display name of the table.'."\n", + 'type' => 'string', + 'example' => 'sale_detail', + ], + ], + ], + ], + 'marker' => [ + 'description' => 'Indicates the marker after which the returned list begins.'."\n", + 'type' => 'string', + 'example' => 'cHlvZHBzX3VkZl8xMDExNV8xNDU3NDI4NDkzKg==', + ], + 'maxItem' => [ + 'description' => 'The maximum number of entries returned per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + ], + ], + ], + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0a06dd4516687375802853481ec9fd\\",\\n \\"data\\": {\\n \\"tables\\": [\\n {\\n \\"name\\": \\"dim_odps\\\\n\\",\\n \\"owner\\": \\"1887853961230110\\",\\n \\"type\\": \\"internal\\\\n\\",\\n \\"schema\\": \\"default\\",\\n \\"creationTime\\": 0,\\n \\"displayName\\": \\"sale_detail\\"\\n }\\n ],\\n \\"marker\\": \\"cHlvZHBzX3VkZl8xMDExNV8xNDU3NDI4NDkzKg==\\",\\n \\"maxItem\\": 10\\n }\\n}","type":"json"}]', + 'title' => 'ListTables', + 'summary' => 'Obtains tables in a MaxCompute project.', + 'changeSet' => [ + [ + 'createdAt' => '2024-09-23T03:28:20.000Z', + 'description' => 'Response parameters changed', + ], + [ + 'createdAt' => '2023-11-14T07:01:39.000Z', + 'description' => 'Request parameters changed, Response parameters changed', + ], + [ + 'createdAt' => '2022-11-28T13:46:34.000Z', + 'description' => 'Request parameters changed', + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListTables', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + ], + ], + 'ListTunnelQuotaTimer' => [ + 'path' => '/api/v1/tunnel/{nickname}/timers', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'abilityTreeCode' => '254735', + 'abilityTreeNodes' => [ + 'FEATUREodpsZAKNHC', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'nickname', + 'in' => 'path', + 'schema' => [ + 'description' => 'The alias of the level-1 Tunnel quota.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'ot_tunnel_quota_p'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<List<TunnelQuotaTimerDTO>>', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '0be3e0b716671885050924814e3623', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n" + ."\n" + .'* 1xx: informational response. The request is received and is being processed.'."\n" + .'* 2xx: success. The request is successfully received, understood, and accepted by the server.'."\n" + .'* 3xx: redirection. The request is redirected, and further actions are required to complete the request.'."\n" + .'* 4xx: client error. The request contains invalid request parameters or syntaxes, or specific request conditions cannot be met.'."\n" + .'* 5xx: server error. The server cannot meet requirements due to other reasons.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code.'."\n", + 'type' => 'string', + 'example' => 'OBJECT_NOT_EXIST', + ], + 'errorMsg' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'This object does not exist.', + ], + 'data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'beginTime' => [ + 'description' => 'The start time of the time-specific configuration.'."\n", + 'type' => 'string', + 'example' => '00:00', + ], + 'endTime' => [ + 'description' => 'The end time of the time-specific configuration.'."\n", + 'type' => 'string', + 'example' => '08:00', + ], + 'timezone' => [ + 'description' => 'The time zone property for the time-specific configuration.'."\n", + 'type' => 'string', + 'example' => 'Asia/Shanghai', + ], + 'tunnelQuotaParameter' => [ + 'description' => 'The parameters for the time-specific configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'slotNum' => [ + 'description' => 'The number of reserved slots.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + ], + 'elasticReservedSlotNum' => [ + 'description' => 'The number of elastically reserved slots.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0be3e0b716671885050924814e3623\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"OBJECT_NOT_EXIST\\",\\n \\"errorMsg\\": \\"This object does not exist.\\",\\n \\"data\\": [\\n {\\n \\"beginTime\\": \\"00:00\\",\\n \\"endTime\\": \\"08:00\\",\\n \\"timezone\\": \\"Asia/Shanghai\\",\\n \\"tunnelQuotaParameter\\": {\\n \\"slotNum\\": 100,\\n \\"elasticReservedSlotNum\\": 100\\n }\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListTunnelQuotaTimer', + 'summary' => 'Displays the time-specific configuration of an exclusive resource group for Tunnel (referred to as Tunnel quota).', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListQuotaTimers', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'ListUsers' => [ + 'path' => '/api/v1/users', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'abilityTreeCode' => '144479', + 'abilityTreeNodes' => [ + 'FEATUREodpsRZY2HN', + ], + ], + 'parameters' => [ + [ + 'name' => 'pageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of the page to return.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'pageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries to return on each page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ListResultDTO<UserAccount, DefaultPageInfo>>', + 'description' => 'PopResult\\<ListResultDTO\\<UserAccount, DefaultPageInfo>>'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0a06dd4816687424611405643e3730', + ], + 'data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'users' => [ + 'description' => 'The users.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The users.'."\n", + 'type' => 'object', + 'properties' => [ + 'accountId' => [ + 'description' => 'The ID of the Alibaba Cloud account.'."\n", + 'type' => 'string', + 'example' => '167835629082', + ], + 'accountName' => [ + 'description' => 'The username of the account.'."\n", + 'type' => 'string', + 'example' => 'Bob@', + ], + 'displayName' => [ + 'description' => 'The display name.'."\n", + 'type' => 'string', + 'example' => 'Bob', + ], + 'accountType' => [ + 'description' => 'The type of the account.'."\n", + 'type' => 'string', + 'example' => 'ALIYUN', + ], + 'tenantId' => [ + 'description' => 'The ID of the tenant.'."\n", + 'type' => 'string', + 'example' => '1567253789', + ], + ], + ], + ], + 'totalCount' => [ + 'description' => 'The total number of returned entries.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '64', + ], + 'pageNumber' => [ + 'description' => 'The page number of the returned page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'pageSize' => [ + 'description' => 'The number of entries returned per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0a06dd4816687424611405643e3730\\",\\n \\"data\\": {\\n \\"users\\": [\\n {\\n \\"accountId\\": \\"167835629082\\",\\n \\"accountName\\": \\"Bob@\\",\\n \\"displayName\\": \\"Bob\\",\\n \\"accountType\\": \\"ALIYUN\\",\\n \\"tenantId\\": \\"1567253789\\"\\n }\\n ],\\n \\"totalCount\\": 64,\\n \\"pageNumber\\": 2,\\n \\"pageSize\\": 10\\n }\\n}","type":"json"}]', + 'title' => 'ListUsers', + 'summary' => 'Obtains users in a MaxCompute project.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListUsers', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'ListUsersByRole' => [ + 'path' => '/api/v1/projects/{projectName}/roles/{roleName}/users', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'abilityTreeCode' => '144126', + 'abilityTreeNodes' => [ + 'FEATUREodpsS3AG2F', + ], + ], + 'parameters' => [ + [ + 'name' => 'projectName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the MaxCompute project.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'projectA', + ], + ], + [ + 'name' => 'roleName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the role.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'roleA', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ListUsersDTO>', + 'description' => 'PopResult'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0be3e0bb16654558425251398e27a9', + ], + 'data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'users' => [ + 'description' => 'The users.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The users.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the user.'."\n", + 'type' => 'string', + 'example' => 'ALIYUN${account_name}', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0be3e0bb16654558425251398e27a9\\",\\n \\"data\\": {\\n \\"users\\": [\\n {\\n \\"name\\": \\"ALIYUN${account_name}\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'ListUsersByRole', + 'summary' => 'Obtains information about the users who are assigned a project-level role.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListUsersByRole', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + ], + ], + 'QueryQuota' => [ + 'path' => '/api/v1/quotas/{nickname}/query', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '228019', + 'abilityTreeNodes' => [ + 'FEATUREodpsZAKNHC', + ], + ], + 'parameters' => [ + [ + 'name' => 'nickname', + 'in' => 'path', + 'schema' => [ + 'description' => 'The quota name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '%E9%BB%98%E8%AE%A4%E9%A2%84%E4%BB%98%E8%B4%B9Quota_p'."\n" + ."\n" + .'# The Chinese name must be encoded and escaped by using UTF-8 URL encoding.', + ], + ], + [ + 'name' => 'tenantId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The tenant ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '483212237127906', + ], + ], + [ + 'name' => 'region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-chengdu', + ], + ], + [ + 'name' => 'AkProven', + 'in' => 'query', + 'schema' => [ + 'description' => 'The trusted AccessKey pairs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'null', + 'default' => '', + ], + ], + [ + 'name' => 'mock', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to include submodules. Valid values: true and false. -true: The request includes submodules. -false (default): The request does not include submodules.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + 'default' => 'false', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopCompatibleResult<QuotaInfo>', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '0bc1eeed16675342848904412e08dd', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'errorMsg' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'Exception information', + ], + 'data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'subQuotaInfoList' => [ + 'description' => 'The level-2 quotas.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The ID of the level-2 quota.'."\n", + 'type' => 'string', + 'example' => '1000048', + ], + 'name' => [ + 'description' => 'The name of the level-2 quota.'."\n", + 'type' => 'string', + 'example' => 'subquotaA', + ], + 'nickName' => [ + 'description' => 'The nickname of the level-2 quota.'."\n", + 'type' => 'string', + 'example' => 'subquotaA', + ], + 'type' => [ + 'title' => '', + 'description' => 'This parameter corresponds to the resourceSystemType field.'."\n", + 'type' => 'string', + 'example' => 'FUXI_ONLINE', + ], + 'status' => [ + 'description' => 'The status of the resource.'."\n", + 'type' => 'string', + 'example' => 'ON', + ], + 'tenantId' => [ + 'description' => 'The tenant ID.'."\n", + 'type' => 'string', + 'example' => '478403690625249'."\n", + ], + 'regionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-beijing', + ], + 'parentId' => [ + 'description' => 'The parent resource ID.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'cluster' => [ + 'description' => 'The cluster ID.'."\n", + 'type' => 'string', + 'example' => 'AT-120N'."\n", + ], + 'version' => [ + 'description' => 'The version number.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'billingPolicy' => [ + 'description' => 'The order information.'."\n", + 'type' => 'object', + 'properties' => [ + 'odpsSpecCode' => [ + 'description' => 'The order specifications.'."\n", + 'type' => 'string', + 'example' => 'OdpsStandard', + ], + 'orderId' => [ + 'description' => 'The order ID.'."\n", + 'type' => 'string', + 'example' => '880c0d0d-5d79-4217-b683-8e8bdd2a2523', + ], + 'instanceId' => [ + 'title' => '', + 'description' => 'In MaxCompute, instanceId and orderId are considered the same.'."\n", + 'type' => 'string', + 'example' => '880c0d0d-5d79-4217-b683-8e8bdd2a2523', + ], + 'billingMethod' => [ + 'title' => '', + 'description' => 'The billing method. Valid values:'."\n" + ."\n" + .'* subscription: the subscription quota.'."\n" + .'* payasyougo: the pay-as-you-go quota.'."\n", + 'type' => 'string', + 'example' => 'subscription', + ], + ], + ], + 'scheduleInfo' => [ + 'description' => 'The information about the scheduling plan.'."\n", + 'type' => 'object', + 'properties' => [ + 'currPlan' => [ + 'description' => 'The current quota plan that has taken effect based on the scheduling plan.'."\n", + 'type' => 'string', + 'example' => 'planA', + ], + 'currTime' => [ + 'description' => 'The time when the plan specified by currPlan is scheduled.'."\n", + 'type' => 'string', + 'example' => '0800', + ], + 'nextPlan' => [ + 'description' => 'The quota plan that will take effect based on the scheduling plan.'."\n", + 'type' => 'string', + 'example' => 'planB', + ], + 'nextTime' => [ + 'description' => 'The time when the plan specified by nextPlan is scheduled.'."\n", + 'type' => 'string', + 'example' => '1700', + ], + 'oncePlan' => [ + 'description' => 'The quota plan that immediately takes effect. If the quota plan specified by this parameter is triggered and the plan is different from the plan specified by currPlan, this parameter is not empty.'."\n", + 'type' => 'string', + 'example' => 'planC', + ], + 'onceTime' => [ + 'description' => 'The time when the quota plan specified by oncePlan is scheduled.'."\n", + 'type' => 'string', + 'example' => '1500', + ], + 'operatorName' => [ + 'description' => 'The operator name.'."\n", + 'type' => 'string', + 'example' => 'userA', + ], + 'timezone' => [ + 'description' => 'The time zone of the project.'."\n", + 'type' => 'string', + 'example' => 'UTC+8', + ], + ], + ], + 'parameter' => [ + 'description' => 'The quota description.'."\n", + 'type' => 'object', + 'example' => '{\'maxCU\': 10, \'minCU\': 10, \'adhocCU\': 0, \'schedulerType\': \'Fifo\'}', + ], + 'tag' => [ + 'description' => 'The resource tag of a quota.'."\n", + 'type' => 'string', + 'example' => 'abc', + ], + 'createTime' => [ + 'description' => 'The time when the resource was created.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1688653978768', + ], + 'creatorId' => [ + 'description' => 'The ID of the Alibaba Cloud account that is used to create the quota plan.'."\n", + 'type' => 'string', + 'example' => '672863518', + ], + 'groupName' => [ + 'description' => 'The role group name.'."\n", + 'type' => 'string', + 'example' => 'abc', + ], + 'saleTag' => [ + 'description' => 'The identifiers of MaxCompute quota objects. The identifiers are the same as those in the Alibaba Cloud sales bill. This parameter is used for tags.'."\n", + 'type' => 'object', + 'properties' => [ + 'resourceIds' => [ + 'description' => 'The identifier of a MaxCompute quota object. This identifier exists in the Alibaba Cloud sales bill. You can use this identifier to associate the cost of a quota object with a tag.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The identifier of a MaxCompute quota object. This identifier exists in the Alibaba Cloud sales bill. You can use this identifier to associate the cost of a quota object with a tag.'."\n", + 'type' => 'string', + 'example' => '"aaaaaaa-bbbb-4fd0-a8eb-50861590f7dd"'."\n", + ], + ], + 'resourceType' => [ + 'description' => 'The object type. Valid values: quota and project.'."\n", + 'type' => 'string', + 'example' => '"quota"'."\n", + ], + ], + ], + ], + ], + ], + 'id' => [ + 'description' => 'The quota ID.'."\n", + 'type' => 'string', + 'example' => '2523', + ], + 'name' => [ + 'description' => 'The quota name.'."\n", + 'type' => 'string', + 'example' => 'quota_a', + ], + 'nickName' => [ + 'description' => 'The quota alias.'."\n", + 'type' => 'string', + 'example' => 'quota_nickname', + ], + 'type' => [ + 'title' => '', + 'description' => 'This parameter corresponds to the resourceSystemType field.'."\n", + 'type' => 'string', + 'example' => 'FUXI_OFFLINE', + ], + 'status' => [ + 'description' => 'The status of the resource.'."\n", + 'type' => 'string', + 'example' => 'ON', + ], + 'tenantId' => [ + 'description' => 'The tenant ID.'."\n", + 'type' => 'string', + 'example' => '478403690625249', + ], + 'regionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-beijing', + ], + 'parentId' => [ + 'description' => 'The parent resource ID.'."\n", + 'type' => 'string', + 'example' => 'null', + ], + 'cluster' => [ + 'description' => 'The ID of the Managed Service for Prometheus cluster.'."\n", + 'type' => 'string', + 'example' => 'AT-120N', + ], + 'version' => [ + 'description' => 'The version number.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'billingPolicy' => [ + 'description' => 'The order information.'."\n", + 'type' => 'object', + 'properties' => [ + 'odpsSpecCode' => [ + 'description' => 'The order specifications.'."\n", + 'type' => 'string', + 'example' => 'OdpsStandard', + ], + 'orderId' => [ + 'description' => 'The order ID.'."\n", + 'type' => 'string', + 'example' => '880c0d0d-5d79-4217-b683-8e8bdd2a2523', + ], + 'instanceId' => [ + 'title' => '', + 'description' => 'In MaxCompute, instanceId and orderId are considered the same.'."\n", + 'type' => 'string', + 'example' => '880c0d0d-5d79-4217-b683-8e8bdd2a2523', + ], + 'billingMethod' => [ + 'title' => '', + 'description' => 'The billing method. Valid values:'."\n" + ."\n" + .'* subscription: the subscription quota.'."\n" + .'* payasyougo: the pay-as-you-go quota.'."\n", + 'type' => 'string', + 'example' => 'subscription', + ], + ], + ], + 'scheduleInfo' => [ + 'description' => 'The information about the scheduling plan.'."\n", + 'type' => 'object', + 'properties' => [ + 'currPlan' => [ + 'description' => 'The current quota plan that has taken effect based on the scheduling plan.'."\n", + 'type' => 'string', + 'example' => 'planA', + ], + 'currTime' => [ + 'description' => 'The time when the plan specified by currPlan is scheduled.'."\n", + 'type' => 'string', + 'example' => '0800', + ], + 'nextPlan' => [ + 'description' => 'The quota plan that will take effect based on the scheduling plan.'."\n", + 'type' => 'string', + 'example' => 'planB', + ], + 'nextTime' => [ + 'description' => 'The time when the plan specified by nextPlan is scheduled.'."\n", + 'type' => 'string', + 'example' => '1700', + ], + 'oncePlan' => [ + 'description' => 'The quota plan that immediately takes effect. If the quota plan specified by this parameter is triggered and the plan is different from the plan specified by currPlan, this parameter is not empty.'."\n", + 'type' => 'string', + 'example' => 'planC', + ], + 'onceTime' => [ + 'description' => 'The time when the quota plan specified by oncePlan is scheduled.'."\n", + 'type' => 'string', + 'example' => '1500', + ], + 'operatorName' => [ + 'description' => 'The operator name.'."\n", + 'type' => 'string', + 'example' => 'userA', + ], + 'timezone' => [ + 'description' => 'The time zone of the project.'."\n", + 'type' => 'string', + 'example' => 'UTC+8', + ], + ], + ], + 'parameter' => [ + 'description' => 'The quota description.'."\n", + 'type' => 'object', + 'example' => '{"minCU":10, '."\n" + .'"adhocCU":0,'."\n" + .'"maxCU":10,'."\n" + .'"schedulerType":"Fair",'."\n" + .'}', + ], + 'tag' => [ + 'description' => 'The resource tag of a quota.'."\n", + 'type' => 'string', + 'example' => 'abc', + ], + 'createTime' => [ + 'description' => 'The time when the resource was created.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1714356241163', + ], + 'creatorId' => [ + 'description' => 'The ID of the Alibaba Cloud account that is used to create the quota plan.'."\n", + 'type' => 'string', + 'example' => '1248953767546358', + ], + 'groupName' => [ + 'description' => 'The group name.'."\n", + 'type' => 'string', + 'example' => 'abc', + ], + 'saleTag' => [ + 'description' => 'The identifiers of MaxCompute quota objects. The identifiers are the same as those in the Alibaba Cloud sales bill. This parameter is used for tags.'."\n", + 'type' => 'object', + 'properties' => [ + 'resourceIds' => [ + 'description' => 'The identifier of a MaxCompute quota object. This identifier exists in the Alibaba Cloud sales bill. You can use this identifier to associate the cost of a quota object with a tag.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The identifier of a MaxCompute quota object. This identifier exists in the Alibaba Cloud sales bill. You can use this identifier to associate the cost of a quota object with a tag.'."\n", + 'type' => 'string', + 'example' => '"aaaaaaa-bbbb-4fd0-a8eb-50861590f7dd"'."\n", + ], + ], + 'resourceType' => [ + 'description' => 'The object type. Valid values: quota and project.'."\n", + 'type' => 'string', + 'example' => 'project', + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0bc1eeed16675342848904412e08dd\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"success\\",\\n \\"errorMsg\\": \\"Exception information\\",\\n \\"data\\": {\\n \\"subQuotaInfoList\\": [\\n {\\n \\"id\\": \\"1000048\\",\\n \\"name\\": \\"subquotaA\\",\\n \\"nickName\\": \\"subquotaA\\",\\n \\"type\\": \\"FUXI_ONLINE\\",\\n \\"status\\": \\"ON\\",\\n \\"tenantId\\": \\"478403690625249\\\\n\\",\\n \\"regionId\\": \\"cn-beijing\\",\\n \\"parentId\\": \\"0\\",\\n \\"cluster\\": \\"AT-120N\\\\n\\",\\n \\"version\\": \\"1\\",\\n \\"billingPolicy\\": {\\n \\"odpsSpecCode\\": \\"OdpsStandard\\",\\n \\"orderId\\": \\"880c0d0d-5d79-4217-b683-8e8bdd2a2523\\",\\n \\"instanceId\\": \\"880c0d0d-5d79-4217-b683-8e8bdd2a2523\\",\\n \\"billingMethod\\": \\"subscription\\"\\n },\\n \\"scheduleInfo\\": {\\n \\"currPlan\\": \\"planA\\",\\n \\"currTime\\": \\"0800\\",\\n \\"nextPlan\\": \\"planB\\",\\n \\"nextTime\\": \\"1700\\",\\n \\"oncePlan\\": \\"planC\\",\\n \\"onceTime\\": \\"1500\\",\\n \\"operatorName\\": \\"userA\\",\\n \\"timezone\\": \\"UTC+8\\"\\n },\\n \\"parameter\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"tag\\": \\"abc\\",\\n \\"createTime\\": 1688653978768,\\n \\"creatorId\\": \\"672863518\\",\\n \\"groupName\\": \\"abc\\",\\n \\"saleTag\\": {\\n \\"resourceIds\\": [\\n \\"\\\\\\"aaaaaaa-bbbb-4fd0-a8eb-50861590f7dd\\\\\\"\\\\n\\"\\n ],\\n \\"resourceType\\": \\"\\\\\\"quota\\\\\\"\\\\n\\"\\n }\\n }\\n ],\\n \\"id\\": \\"2523\\",\\n \\"name\\": \\"quota_a\\",\\n \\"nickName\\": \\"quota_nickname\\",\\n \\"type\\": \\"FUXI_OFFLINE\\",\\n \\"status\\": \\"ON\\",\\n \\"tenantId\\": \\"478403690625249\\",\\n \\"regionId\\": \\"cn-beijing\\",\\n \\"parentId\\": \\"null\\",\\n \\"cluster\\": \\"AT-120N\\",\\n \\"version\\": \\"1\\",\\n \\"billingPolicy\\": {\\n \\"odpsSpecCode\\": \\"OdpsStandard\\",\\n \\"orderId\\": \\"880c0d0d-5d79-4217-b683-8e8bdd2a2523\\",\\n \\"instanceId\\": \\"880c0d0d-5d79-4217-b683-8e8bdd2a2523\\",\\n \\"billingMethod\\": \\"subscription\\"\\n },\\n \\"scheduleInfo\\": {\\n \\"currPlan\\": \\"planA\\",\\n \\"currTime\\": \\"0800\\",\\n \\"nextPlan\\": \\"planB\\",\\n \\"nextTime\\": \\"1700\\",\\n \\"oncePlan\\": \\"planC\\",\\n \\"onceTime\\": \\"1500\\",\\n \\"operatorName\\": \\"userA\\",\\n \\"timezone\\": \\"UTC+8\\"\\n },\\n \\"parameter\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"tag\\": \\"abc\\",\\n \\"createTime\\": 1714356241163,\\n \\"creatorId\\": \\"1248953767546358\\",\\n \\"groupName\\": \\"abc\\",\\n \\"saleTag\\": {\\n \\"resourceIds\\": [\\n \\"\\\\\\"aaaaaaa-bbbb-4fd0-a8eb-50861590f7dd\\\\\\"\\\\n\\"\\n ],\\n \\"resourceType\\": \\"project\\"\\n }\\n }\\n}","type":"json"}]', + 'title' => 'QueryQuota', + 'summary' => 'Queries the information about a specified level-1 quota group.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:QueryQuota', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + ], + ], + 'QueryQuotaMetric' => [ + 'summary' => 'Queries the time series data of resource consumption for a quota.', + 'path' => '/api/v1/observations/quota/{metric}', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREodps2B6Z0N', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'startTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start of the time range to query.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1735534322', + 'title' => '', + ], + ], + [ + 'name' => 'endTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1735536322', + 'title' => '', + ], + ], + [ + 'name' => 'metric', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the metric. Valid values: cpu and memory.', + 'type' => 'string', + 'required' => true, + 'example' => 'cpu', + 'title' => '', + ], + ], + [ + 'name' => 'strategy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The aggregation strategy for the data. The default value is max. Valid values: max and avg.'."\n" + ."\n" + .'Data is collected at one-minute intervals. If you query a long time range, the system may use an interval longer than one minute and aggregate the data. This parameter specifies how the data is aggregated.', + 'type' => 'string', + 'default' => 'max', + 'required' => false, + 'example' => 'max', + 'title' => '', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'style' => 'json', + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'nickname' => [ + 'description' => 'The nickname of the level-1 quota. This parameter is required.', + 'type' => 'string', + 'required' => false, + 'example' => 'os_sns_p', + 'title' => '', + ], + 'subQuotaNickname' => [ + 'description' => 'The nickname of the level-2 quota.', + 'type' => 'string', + 'required' => false, + 'example' => 'os_sns', + 'title' => '', + ], + 'interval' => [ + 'description' => 'The fixed interval in seconds. If you leave this parameter empty, the system uses an automatic interval policy.'."\n" + ."\n" + .'- Automatic interval policy: The interval is 60 seconds for a time range within 6 hours, 300 seconds for a time range within 24 hours, 900 seconds for a time range within 72 hours, and 1,800 seconds for a time range longer than 72 hours.'."\n" + ."\n" + .'- Specified interval: Valid values are 60, 300, and 900. The query time range must be within 72 hours.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '60', + 'title' => '', + ], + 'subMetric' => [ + 'type' => 'string', + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'description' => 'The request body.', + 'required' => false, + 'title' => '', + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '0b87b7b316643495896551555e855b', + 'title' => '', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n" + ."\n" + .'- 1xx: informational response. The request was received and is being processed.'."\n" + ."\n" + .'- 2xx: success. The request was successfully received, understood, and accepted by the server.'."\n" + ."\n" + .'- 3xx: redirection. The request was redirected. Further action needs to be taken to complete the request.'."\n" + ."\n" + .'- 4xx: client error. The request contains incorrect request parameters or syntax, or specific request conditions cannot be met.'."\n" + ."\n" + .'- 5xx: server error. The server failed to fulfill the request for other reasons.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + 'title' => '', + ], + 'errorCode' => [ + 'description' => 'The error code.', + 'type' => 'string', + 'example' => 'success', + 'title' => '', + ], + 'errorMsg' => [ + 'description' => 'The error message.', + 'type' => 'string', + 'example' => 'plan \\"***\\" does not exist', + 'title' => '', + ], + 'data' => [ + 'type' => 'object', + 'properties' => [ + 'category' => [ + 'description' => 'This parameter is not supported.', + 'type' => 'string', + 'example' => '不支持。', + 'title' => '', + ], + 'name' => [ + 'description' => 'The name of the metric.', + 'type' => 'string', + 'example' => 'cpu', + 'title' => '', + ], + 'period' => [ + 'description' => 'The step size of the monitoring data.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '60', + 'title' => '', + ], + 'metrics' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'metric' => [ + 'type' => 'object', + 'additionalProperties' => [ + 'description' => 'The metadata of the metric.'."\n" + ."\n" + .'- unit: The unit of the metadata. If the metric is cpu, the unit is Core. If the metric is memory, the unit is GB.'."\n" + ."\n" + .'- type: The type of the metadata. If the metric is cpu, the valid metadata types are totalMaxCpu, totalUsedCpu, adhocCpu, adhocUsedCpu, maxCpu, minCpu, requestCpu, usedCpu, elasticMaxCpu, and elasticUsedCpu. If the metric is memory, the valid metadata types are totalMaxMem, totalUsedMem, adhocMem, adhocUsedMem, elasticMaxMem, elasticUsedMem, maxMem, minMem, and usedMem.', + 'type' => 'string', + 'example' => 'totalUsedCpu', + 'title' => '', + ], + 'description' => 'The metadata of the metric.', + 'title' => '', + 'example' => '', + ], + 'values' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'array', + 'items' => [ + 'description' => 'An array of two elements. The first element is the timestamp and the second element is the value.', + 'type' => 'number', + 'format' => 'double', + 'example' => '[1757571840,10]', + 'title' => '', + ], + 'description' => 'An array of two elements. The first element is the timestamp and the second element is the value.', + 'title' => '', + 'example' => '', + ], + 'description' => 'The time series data.', + 'title' => '', + 'example' => '', + ], + ], + 'description' => 'The metric value.', + 'title' => '', + 'example' => '', + ], + 'description' => 'The metric values.', + 'title' => '', + 'example' => '', + ], + ], + 'description' => 'The returned data.', + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'description' => 'PopResult\\<ObservationMetricDto>', + 'example' => '', + ], + ], + ], + 'title' => 'QueryQuotaMetric', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:QueryQuotaMetric', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quota/{#metric}', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0b87b7b316643495896551555e855b\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"success\\",\\n \\"errorMsg\\": \\"plan \\\\\\\\\\\\\\"***\\\\\\\\\\\\\\" does not exist\\",\\n \\"data\\": {\\n \\"category\\": \\"不支持。\\",\\n \\"name\\": \\"cpu\\",\\n \\"period\\": 60,\\n \\"metrics\\": [\\n {\\n \\"metric\\": {\\n \\"key\\": \\"totalUsedCpu\\"\\n },\\n \\"values\\": [\\n [\\n 0\\n ]\\n ]\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'QueryStorageMetric' => [ + 'summary' => 'Queries time-series metrics of data storage.', + 'path' => '/api/v1/observations/storage/{metric}', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREodps2B6Z0N', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'startTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start of the time range to query.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'title' => '', + 'example' => '1735534322', + ], + ], + [ + 'name' => 'endTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'title' => '', + 'example' => '1735536322', + ], + ], + [ + 'name' => 'metric', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the metric. Valid value:'."\n" + ."\n" + .'- summary', + 'type' => 'string', + 'required' => true, + 'title' => '', + 'example' => 'summary', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'style' => 'json', + 'schema' => [ + 'description' => 'The request body.', + 'type' => 'object', + 'properties' => [ + 'projectList' => [ + 'description' => 'The names of the projects.', + 'type' => 'array', + 'items' => [ + 'description' => 'The project name.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'projectA', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'typeList' => [ + 'description' => 'The storage class. Valid values include the following:'."\n" + ."\n" + .'- totalStorage'."\n" + ."\n" + .'- longTermStorage'."\n" + ."\n" + .'- lowFreqStorage'."\n" + ."\n" + .'- standardStorage'."\n" + ."\n" + .'- recycleBinStorage', + 'type' => 'array', + 'items' => [ + 'description' => 'The storage class.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'totalStorage', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ObservationMetricDTO>', + 'description' => 'PopResult\\<ObservationMetricDto>', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => '0be3e0bb16654558425251398e27a9', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n" + ."\n" + .'- 1xx: Informational - The request was received and is being processed.'."\n" + ."\n" + .'- 2xx: Success - The request was successfully received, understood, and accepted by the server.'."\n" + ."\n" + .'- 3xx: Redirection - The request was redirected. Further action is needed to complete the request.'."\n" + ."\n" + .'- 4xx: Client error - The request contains incorrect parameters or syntax, or cannot be fulfilled.'."\n" + ."\n" + .'- 5xx: Server error - The server failed to fulfill the request for other reasons.', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code.', + 'type' => 'string', + 'title' => '', + 'example' => 'success', + ], + 'errorMsg' => [ + 'description' => 'The error message.', + 'type' => 'string', + 'title' => '', + 'example' => '0A3B1FD2006A24C8D8BE65CDAC028298', + ], + 'data' => [ + 'description' => 'The data returned.', + 'type' => 'object', + 'properties' => [ + 'category' => [ + 'description' => 'The category of the metric.', + 'type' => 'string', + 'title' => '', + 'example' => 'storage', + ], + 'name' => [ + 'description' => 'The name of the metric.', + 'type' => 'string', + 'title' => '', + 'example' => 'summary', + ], + 'period' => [ + 'description' => 'The step size of the monitoring data.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '3600', + ], + 'metrics' => [ + 'description' => 'The metric values.', + 'type' => 'array', + 'items' => [ + 'description' => 'The metric values.', + 'type' => 'object', + 'properties' => [ + 'metric' => [ + 'description' => 'The metadata of the metric.', + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + 'description' => 'The metric information. This includes:'."\n" + ."\n" + .'- unit'."\n" + ."\n" + .'- type', + 'title' => '', + 'example' => '"unit":"GB" "type":"standardStorage"', + ], + 'title' => '', + 'example' => '', + ], + 'values' => [ + 'description' => 'The time series data.', + 'type' => 'array', + 'items' => [ + 'description' => 'An array of two elements: a timestamp and a value.', + 'type' => 'array', + 'items' => [ + 'description' => 'An array of two elements: a timestamp and a value.', + 'type' => 'number', + 'format' => 'double', + 'title' => '', + 'example' => '174853440,'."\n" + .'2.345719', + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0be3e0bb16654558425251398e27a9\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"success\\",\\n \\"errorMsg\\": \\"0A3B1FD2006A24C8D8BE65CDAC028298\\",\\n \\"data\\": {\\n \\"category\\": \\"storage\\",\\n \\"name\\": \\"summary\\",\\n \\"period\\": 3600,\\n \\"metrics\\": [\\n {\\n \\"metric\\": {\\n \\"key\\": \\"\\\\\\"unit\\\\\\":\\\\\\"GB\\\\\\"\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"type\\\\\\":\\\\\\"standardStorage\\\\\\"\\"\\n },\\n \\"values\\": [\\n [\\n 0\\n ]\\n ]\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'QueryStorageMetric', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:QueryStorageMetric', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Storage', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:storage/{#metric}', + ], + ], + ], + ], + ], + ], + 'QueryTunnelMetric' => [ + 'summary' => 'Queries metric data for the Tunnel Data Transmission Service within a specified time range.', + 'path' => '/api/v1/observations/tunnel/{metric}', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'consumes' => [], + 'produces' => [], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREodps2B6Z0N', + ], + ], + 'parameters' => [ + [ + 'name' => 'startTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start of the time range for the query.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'title' => '', + 'example' => '1735534322', + ], + ], + [ + 'name' => 'endTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range for the query.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'title' => '', + 'example' => '1735536322', + ], + ], + [ + 'name' => 'metric', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the metric.', + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'request' => 'request', + 'slot_max' => 'slot\\_max', + 'slot_usage' => 'slot\\_usage', + 'throughput' => 'throughput', + 'throughput_speed' => 'throughput\\_speed', + ], + 'title' => '', + 'example' => 'slot_usage', + ], + ], + [ + 'name' => 'strategy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The data aggregation policy. The default value is `max`.'."\n" + ."\n" + .'Data is collected at a frequency of 1 minute. If you query data over a long time range, the automatic step size for data display may exceed 1 minute. In this case, metrics are aggregated. This parameter specifies the aggregation logic.', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'avg' => 'avg', + 'max' => 'max', + ], + 'default' => 'max', + 'title' => '', + 'example' => 'max', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'style' => 'json', + 'schema' => [ + 'description' => 'The request body parameters.', + 'type' => 'object', + 'properties' => [ + 'quotaNickname' => [ + 'description' => 'The nickname of the level-2 Tunnel quota.'."\n" + ."\n" + .'The nickname of a shared quota is `default`.'."\n" + ."\n" + .'The format of a dedicated quota nickname is `quotaNickname#subQuotaNickname`.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'default', + ], + 'project' => [ + 'description' => 'The name of the project.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'project_a', + ], + 'tableList' => [ + 'description' => 'A list of table names.'."\n" + ."\n" + .'The tables belong to a project. Therefore, if `tableList` is not empty, `project` cannot be empty.', + 'type' => 'array', + 'items' => [ + 'description' => 'The name of the table.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'tab_name', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'operationList' => [ + 'description' => 'A list of operation types.', + 'type' => 'array', + 'items' => [ + 'description' => 'The operation type. Valid values include the following:'."\n" + ."\n" + .'upload: Tunnel batch upload'."\n" + ."\n" + .'download: Tunnel batch download'."\n" + ."\n" + .'stream\\_upload: Tunnel stream upload'."\n" + ."\n" + .'max\\_storage\\_read: Storage API download'."\n" + ."\n" + .'download\\_instance: Tunnel instance download'."\n" + ."\n" + .'upsert: Tunnel upsert upload'."\n" + ."\n" + .'max\\_storage\\_write: Storage API upload'."\n" + ."\n" + .'table\\_preview: Preview download', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'download' => 'download', + 'max_storage_read' => 'max\\_storage\\_read', + 'max_storage_write' => 'max\\_storage\\_write', + 'upload' => 'upload', + 'upsert' => 'upsert', + 'table_preview' => 'table\\_preview', + 'download_instance' => 'download\\_instance', + 'stream_upload' => 'stream\\_upload', + ], + 'title' => '', + 'example' => 'upload', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'codeList' => [ + 'description' => 'A list of HTTP status codes for requests.', + 'type' => 'array', + 'items' => [ + 'description' => 'An HTTP status code.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'title' => '', + 'example' => '403', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'groupList' => [ + 'description' => 'A list of grouping criteria.', + 'type' => 'array', + 'items' => [ + 'description' => 'The grouping criterion. Valid values include the following:'."\n" + ."\n" + .'quota'."\n" + ."\n" + .'project'."\n" + ."\n" + .'table'."\n" + ."\n" + .'operation'."\n" + ."\n" + .'ip (Supported only when `metric` is `throughput`)'."\n" + ."\n" + .'code (Supported only when `metric` is `request`)', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'quota', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'topN' => [ + 'description' => 'The maximum number of data entries to return.'."\n" + ."\n" + .'This parameter takes effect when the grouping criterion includes `table` or `ip`.'."\n" + ."\n" + .'The default value is 10. The maximum value is 100.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'title' => '', + 'example' => '10', + ], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ObservationMetricDTO>', + 'description' => 'PopResult', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => '0bc3b4b016674434996033675e71ee', + ], + 'httpCode' => [ + 'description' => 'Indicates whether the operation was successful. If this parameter is not empty and the value is not 200, the operation failed.', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code.', + 'type' => 'string', + 'title' => '', + 'example' => 'success', + ], + 'errorMsg' => [ + 'description' => 'The error message.', + 'type' => 'string', + 'title' => '', + 'example' => '0A3B1E82006A23A918C70905BF08AEC7', + ], + 'data' => [ + 'description' => 'The returned data.', + 'type' => 'object', + 'properties' => [ + 'category' => [ + 'description' => 'The category of the metric.', + 'type' => 'string', + 'title' => '', + 'example' => 'tunnel', + ], + 'name' => [ + 'description' => 'The name of the metric.', + 'type' => 'string', + 'title' => '', + 'example' => 'slot_usage', + ], + 'period' => [ + 'description' => 'The step size of the monitoring data.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '60', + ], + 'metrics' => [ + 'description' => 'The metric values.', + 'type' => 'array', + 'items' => [ + 'description' => 'A metric value.', + 'type' => 'object', + 'properties' => [ + 'metric' => [ + 'description' => 'The metadata of the metric.', + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + 'description' => 'The metadata. The key is the grouping criterion, and the value is the corresponding metadata.', + 'title' => '', + 'example' => '"project":"prjName"', + ], + 'title' => '', + 'example' => '', + ], + 'values' => [ + 'description' => 'A list of metric values.', + 'type' => 'array', + 'items' => [ + 'description' => 'An array of two elements: a timestamp and a value.', + 'type' => 'array', + 'items' => [ + 'description' => 'The timestamp and the metric value.', + 'type' => 'number', + 'format' => 'double', + 'title' => '', + 'example' => '[1745220780,1]', + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0bc3b4b016674434996033675e71ee\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"success\\",\\n \\"errorMsg\\": \\"0A3B1E82006A23A918C70905BF08AEC7\\",\\n \\"data\\": {\\n \\"category\\": \\"tunnel\\",\\n \\"name\\": \\"slot_usage\\",\\n \\"period\\": 60,\\n \\"metrics\\": [\\n {\\n \\"metric\\": {\\n \\"key\\": \\"\\\\\\"project\\\\\\":\\\\\\"prjName\\\\\\"\\"\\n },\\n \\"values\\": [\\n [\\n 0\\n ]\\n ]\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'QueryTunnelMetric', + 'description' => '- You can use this API to query various Tunnel metrics, such as slot usage (`slot_usage`), slot usage limit (`slot_max`), throughput (`throughput`), throughput rate (`throughput_speed`), and number of requests (`request`).'."\n" + ."\n" + .'- The `startTime` and `endTime` parameters are required. They specify the start and end of the time range for the query. The values are UNIX timestamps in seconds.'."\n" + ."\n" + .'- The `metric` parameter is also required. It specifies the type of metric to query.'."\n" + ."\n" + .'- Depending on the value of `metric`, you may need to specify additional parameters for filtering to refine your query. These parameters include `quotaNickname`, `project`, `tableList`, `operationList`, `codeList`, `groupList`, and `topN`.'."\n" + ."\n" + .'- For some `metric` values, you must specify other parameters. For example, if `groupList` contains `table` or `ip`, you must specify the `project` parameter and other required parameters. In this case, the system returns only the top N results.'."\n" + ."\n" + .'- The `strategy` parameter defines the data aggregation logic. This logic is used when the automatic step size exceeds 60 seconds over a long time range. The default value is `max`.'."\n" + ."\n" + .'- Ensure all parameters meet the requirements in this document to prevent request failures.', + 'requestParamsDescription' => 'slot\\_usage'."\n" + ."\n" + .'- Description: Slot usage.'."\n" + ."\n" + .'- Supported optional filtering parameters: quotaNickname, project, tableList, operationList, groupList, and topN.'."\n" + ."\n" + .' - At least one of `quotaNickname` or `project` must be specified.'."\n" + ."\n" + .' - The `tableList` and `topN` parameters are applicable only if `project` is specified and `groupList` contains `table`.'."\n" + ."\n" + .'- Supported groupList values: quota, project, table, and operation.'."\n" + ."\n" + .' - You must specify `groupList`. This parameter specifies the granularity of the data display.'."\n" + ."\n" + .' - If quotaNickname is set to default, groupList must contain project. This is because shared quotas are at the project level.'."\n" + ."\n" + .' - If groupList contains table, you must specify the project parameter. The system then returns only the top N time series data.'."\n" + ."\n" + .'slot\\_max'."\n" + ."\n" + .'- Description: Slot usage limit.'."\n" + ."\n" + .'- The quotaNickname parameter is required.'."\n" + ."\n" + .' - If quotaNickname is set to default, you must specify the project parameter. This is because shared quotas are at the project level.'."\n" + ."\n" + .'- Supported groupList values: quota and project.'."\n" + ."\n" + .'throughput'."\n" + ."\n" + .'- Description: Throughput.'."\n" + ."\n" + .'- Supported optional filtering parameters: quotaNickname, project, tableList, operationList, groupList, and topN.'."\n" + ."\n" + .' - At least one of `quotaNickname` or `project` must be specified.'."\n" + ."\n" + .' - The `tableList` and `topN` parameters are applicable only if `project` is specified and `groupList` contains `table` or ip.'."\n" + ."\n" + .'- Supported groupList values: quota, project, table, ip, and operation.'."\n" + ."\n" + .' - You must specify `groupList`. This parameter specifies the granularity of the data display.'."\n" + ."\n" + .' - If groupList contains table, you must specify the project parameter. The system then returns only the top N time series data.'."\n" + ."\n" + .' - If groupList contains ip, you must specify the project and tableList parameters. The system then returns only the top N time series data.'."\n" + ."\n" + .'throughput\\_speed'."\n" + ."\n" + .'- Description: Throughput rate.'."\n" + ."\n" + .'- Supported optional filtering parameters: quotaNickname, project, tableList, operationList, groupList, and topN.'."\n" + ."\n" + .' - At least one of `quotaNickname` or `project` must be specified.'."\n" + ."\n" + .' - The `tableList` and `topN` parameters are applicable only if `project` is specified and `groupList` contains `table`.'."\n" + ."\n" + .'- Supported groupList values: quota, project, table, and operation.'."\n" + ."\n" + .' - You must specify `groupList`. This parameter specifies the granularity of the data display.'."\n" + ."\n" + .' - If groupList contains table, you must specify the project parameter. The system then returns only the top N time series data.'."\n" + ."\n" + .'request'."\n" + ."\n" + .'- Description: Number of requests.'."\n" + ."\n" + .'- Supported optional filtering parameters: quotaNickname, project, tableList, operationList, codeList, groupList, and topN.'."\n" + ."\n" + .' - At least one of `quotaNickname` or `project` must be specified.'."\n" + ."\n" + .' - The `tableList` and `topN` parameters are applicable only if \\`project\\` is specified and `groupList` contains `table`.'."\n" + ."\n" + .'- Supported groupList values: quota, project, table, operation, and code.'."\n" + ."\n" + .' - You must specify `groupList`. This parameter specifies the granularity of the data display.'."\n" + ."\n" + .' - If groupList contains table, you must specify the project parameter. The system then returns only the top N time series data.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + [ + 'threshold' => '400', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'QueryTunnelMetric', + ], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:QueryTunnelMetric', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Tunnel', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:tunnel/{#metric}', + ], + ], + ], + ], + ], + ], + 'QueryTunnelMetricDetail' => [ + 'summary' => 'Queries detailed data for the Tunnel Data Transmission Service within a specified time range.', + 'path' => '/api/v1/observations/tunnel/{metric}/detail', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'produces' => [], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREodps2B6Z0N', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'startTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start of the time range to query.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1735534322', + 'title' => '', + ], + ], + [ + 'name' => 'endTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1735536322', + 'title' => '', + ], + ], + [ + 'name' => 'metric', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the metric.', + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'slot_usage_detail' => 'slot\\_usage\\_detail', + 'throughput_summary' => 'throughput\\_summary', + 'throughput_detail' => 'throughput\\_detail', + ], + 'example' => 'slot_usage_detail', + 'title' => '', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'style' => 'json', + 'schema' => [ + 'description' => 'The request body parameters.', + 'type' => 'object', + 'properties' => [ + 'quotaNickname' => [ + 'description' => 'The nickname of the level-2 quota for the tunnel.'."\n" + ."\n" + .'The nickname of the shared quota is default.'."\n" + ."\n" + .'The nickname of the exclusive quota is in the quotaNickname#subQuotaNickname format.', + 'type' => 'string', + 'required' => false, + 'example' => 'quota_A', + 'title' => '', + ], + 'project' => [ + 'description' => 'The name of the project.', + 'type' => 'string', + 'required' => false, + 'example' => 'project_a', + 'title' => '', + ], + 'tableList' => [ + 'description' => 'The list of table names.'."\n" + ."\n" + .'The tables belong to a project. Therefore, if tableList is not empty, project cannot be empty.', + 'type' => 'array', + 'items' => [ + 'description' => 'The name of the table.', + 'type' => 'string', + 'required' => false, + 'example' => 'tab_name', + 'title' => '', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'operationList' => [ + 'description' => 'The list of operation types.', + 'type' => 'array', + 'items' => [ + 'description' => 'The operation type. Valid values:'."\n" + ."\n" + .'upload: Tunnel Batch upload'."\n" + ."\n" + .'download: Tunnel Batch download'."\n" + ."\n" + .'stream\\_upload: Tunnel Stream upload'."\n" + ."\n" + .'max\\_storage\\_read: Storage API download'."\n" + ."\n" + .'download\\_instance: Tunnel Instance download'."\n" + ."\n" + .'upsert: Tunnel Upsert upload'."\n" + ."\n" + .'max\\_storage\\_write: Storage API upload'."\n" + ."\n" + .'table\\_preview: Preview download', + 'type' => 'string', + 'required' => false, + 'example' => 'upload', + 'title' => '', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'groupList' => [ + 'description' => 'The list of grouping bases.', + 'type' => 'array', + 'items' => [ + 'description' => 'The grouping basis. Valid values:'."\n" + ."\n" + .'quota'."\n" + ."\n" + .'project'."\n" + ."\n" + .'table'."\n" + ."\n" + .'operation'."\n" + ."\n" + .'ip (supported only when metric is set to throughput\\_detail)', + 'type' => 'string', + 'required' => false, + 'example' => 'quota', + 'title' => '', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'orderColumn' => [ + 'description' => 'The column to sort by.', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'avgValue' => 'avgValue', + 'minValue' => 'minValue', + 'maxValue' => 'maxValue', + 'sumValue' => 'sumValue', + ], + 'example' => 'maxValue', + 'title' => '', + ], + 'ascOrder' => [ + 'description' => 'Specifies whether to sort the results in ascending order.', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + 'title' => '', + ], + 'limit' => [ + 'description' => 'The maximum number of entries to return. The default value is 10. The maximum value is 100.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + 'title' => '', + ], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<ObservationDetailDTO>', + 'description' => 'PopResult', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '0a06dd4516687375802853481ec9fd', + 'title' => '', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code returned.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + 'title' => '', + ], + 'errorCode' => [ + 'description' => 'The error code.', + 'type' => 'string', + 'example' => 'OBJECT_NOT_EXIST', + 'title' => '', + ], + 'errorMsg' => [ + 'description' => 'The error message.', + 'type' => 'string', + 'example' => 'plan \\"***\\" does not exist', + 'title' => '', + ], + 'data' => [ + 'description' => 'The returned data.', + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of the metric.', + 'type' => 'string', + 'example' => 'tableA', + 'title' => '', + ], + 'metrics' => [ + 'description' => 'The metric values.', + 'type' => 'array', + 'items' => [ + 'description' => 'The metric value.', + 'type' => 'object', + 'properties' => [ + 'metric' => [ + 'description' => 'The metadata of the metric.', + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + 'description' => 'The metadata. The key is the grouping basis, and the value is the corresponding metadata.', + 'example' => '"project":"prjName"', + 'title' => '', + ], + 'title' => '', + 'example' => '', + ], + 'value' => [ + 'description' => 'The numeric information of the metric.', + 'type' => 'object', + 'example' => '"avgValue":"11.5"', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0a06dd4516687375802853481ec9fd\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"OBJECT_NOT_EXIST\\",\\n \\"errorMsg\\": \\"plan \\\\\\\\\\\\\\"***\\\\\\\\\\\\\\" does not exist\\",\\n \\"data\\": {\\n \\"name\\": \\"tableA\\",\\n \\"metrics\\": [\\n {\\n \\"metric\\": {\\n \\"key\\": \\"\\\\\\"project\\\\\\":\\\\\\"prjName\\\\\\"\\"\\n },\\n \\"value\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'QueryTunnelMetricDetail', + 'description' => '- This operation queries various Tunnel metrics, such as slot usage details (`slot_usage_detail`), throughput details (`throughput_detail`), and a throughput summary (`throughput_summary`).'."\n" + ."\n" + .'- The `quotaNickname` and `project` parameters cannot both be empty.'."\n" + ."\n" + .'- If the groupList parameter contains `table` or `ip`, you must specify the `project` parameter. If the `groupList` parameter contains `ip`, you must also specify the `tableList` parameter.'."\n" + ."\n" + .'- The orderColumn parameter can be set to `maxValue`, `minValue`, `avgValue`, or `sumValue`. The `sumValue` option is valid only for `throughput_summary`. By default, this parameter is empty, which means that no sorting is performed.'."\n" + ."\n" + .'- The default value of the `ascOrder` parameter is `false`, which indicates that the results are sorted in descending order.'."\n" + ."\n" + .'- The `limit` parameter specifies the maximum number of entries to return. The default value is 10, and the maximum value is 100.', + 'requestParamsDescription' => ' ', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:QueryTunnelMetricDetail', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Tunnel', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:tunnel/{#metric}', + ], + ], + ], + ], + ], + 'flowControl' => [ + 'flowControlList' => [ + [ + 'threshold' => '400', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'QueryTunnelMetricDetail', + ], + ], + ], + ], + 'RetryMmsJob' => [ + 'summary' => 'Retries a data migration job.', + 'path' => '/api/v1/mms/datasources/{sourceId}/jobs/{jobId}/retry', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '182974', + 'abilityTreeNodes' => [ + 'FEATUREodpsN8WEG6', + ], + ], + 'parameters' => [ + [ + 'name' => 'sourceId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The ID of the data source.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'title' => '', + 'example' => '2000015', + ], + ], + [ + 'name' => 'jobId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The ID of the migration job.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'title' => '', + 'example' => '78', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ApiRes<Long>', + 'description' => 'ApiRes', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.', + 'type' => 'string', + 'title' => '', + 'example' => '7F5DAD1C-9EC2-5FE5-97CF-BCE21B4ABA29', + ], + 'data' => [ + 'description' => 'The returned result.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '78', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"7F5DAD1C-9EC2-5FE5-97CF-BCE21B4ABA29\\",\\n \\"data\\": 78\\n}","type":"json"}]', + 'title' => 'RetryMmsJob', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:RetryMmsJob', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + ], + 'StartMmsJob' => [ + 'summary' => 'Starts a data migration job.', + 'path' => '/api/v1/mms/datasources/{sourceId}/jobs/{jobId}/start', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '182989', + 'abilityTreeNodes' => [ + 'FEATUREodpsN8WEG6', + ], + ], + 'parameters' => [ + [ + 'name' => 'sourceId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The ID of the data source.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'title' => '', + 'example' => '2000015', + ], + ], + [ + 'name' => 'jobId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The ID of the migration job.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'title' => '', + 'example' => '88', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ApiRes<Long>', + 'description' => 'ApiRes', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.', + 'type' => 'string', + 'title' => '', + 'example' => '5CA6292A-E301-5CD8-B4E2-AF060F99147B', + ], + 'data' => [ + 'description' => 'The ID of the migration job.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '88', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"5CA6292A-E301-5CD8-B4E2-AF060F99147B\\",\\n \\"data\\": 88\\n}","type":"json"}]', + 'title' => 'StartMmsJob', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:StartMmsJob', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + ], + 'StopMmsJob' => [ + 'summary' => 'Stops a data migration job.', + 'path' => '/api/v1/mms/datasources/{sourceId}/jobs/{jobId}/stop', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '182973', + 'abilityTreeNodes' => [ + 'FEATUREodpsN8WEG6', + ], + ], + 'parameters' => [ + [ + 'name' => 'sourceId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The data source ID.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'title' => '', + 'example' => '2000015', + ], + ], + [ + 'name' => 'jobId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The migration job ID.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'title' => '', + 'example' => '88', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ApiRes<Long>', + 'description' => 'ApiRes', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => '8023D058-62B7-5C49-8EB6-AD9BA7942BC5', + ], + 'data' => [ + 'description' => 'The data migration ID.', + 'type' => 'integer', + 'format' => 'int64', + 'title' => '', + 'example' => '88', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"8023D058-62B7-5C49-8EB6-AD9BA7942BC5\\",\\n \\"data\\": 88\\n}","type":"json"}]', + 'title' => 'StopMmsJob', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:StopMmsJob', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + ], + 'SumStorageMetricsByDate' => [ + 'path' => '/api/v1/storageMetrics/sumByDate', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + 'http', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'body', + 'in' => 'body', + 'style' => 'json', + 'schema' => [ + 'description' => 'The request body parameters.', + 'type' => 'object', + 'properties' => [ + 'userId' => [ + 'description' => 'The user UID.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => '12345', + ], + 'region' => [ + 'description' => 'The region ID.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'cn-hangzhou', + ], + 'projectNames' => [ + 'description' => 'The project names.', + 'type' => 'array', + 'items' => [ + 'description' => 'The project name.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'prj', + ], + 'required' => false, + 'title' => '', + ], + 'startDate' => [ + 'description' => 'The start date. The value is a millisecond-level timestamp. This parameter is required.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'title' => '', + 'example' => '1715393576201', + ], + 'endDate' => [ + 'description' => 'The end date. The value is a millisecond-level timestamp. This parameter is required.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'title' => '', + 'example' => '1718590596556', + ], + 'statsType' => [ + 'description' => 'The type of storage usage statistics. This parameter is required. Valid values:'."\n" + ."\n" + .'- PROJECT'."\n" + .'- STORAGE\\_TYPE', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'PROJECT', + ], + ], + 'required' => false, + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => 'PopResult\\<List>', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => '0abb781a17411408145995819e0dae', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n" + ."\n" + .'- 1xx: Informational response. The request has been received and is being processed.'."\n" + .'- 2xx: Success. The action was successfully received, understood, and accepted by the server.'."\n" + .'- 3xx: Redirection. The request was redirected, and further action is required to complete the request.'."\n" + .'- 4xx: Client error. The request contains invalid request parameters or syntax, or specific request conditions cannot be met.'."\n" + .'- 5xx: Server error. The server failed to fulfill the request for other reasons.', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code.', + 'type' => 'string', + 'title' => '', + 'example' => 'success', + ], + 'errorMsg' => [ + 'description' => 'The error message.', + 'type' => 'string', + 'title' => '', + 'example' => 'this quota is not exist.', + ], + 'data' => [ + 'description' => 'The returned data.', + 'type' => 'array', + 'items' => [ + 'description' => 'The data returned for the request.', + 'type' => 'object', + 'properties' => [ + 'storageType' => [ + 'description' => 'The storage class. Valid values:'."\n" + ."\n" + .'- Storage. Standard storage.'."\n" + .'- LowFreqStorage. IA storage class.'."\n" + .'- ColdStorage. Archive storage.', + 'type' => 'string', + 'title' => '', + 'example' => 'Storage', + ], + 'dateTime' => [ + 'description' => 'The date of the statistics. The format is yyyyMMdd.', + 'type' => 'string', + 'title' => '', + 'example' => '20250719', + ], + 'usage' => [ + 'description' => 'The total storage usage.', + 'type' => 'string', + 'title' => '', + 'example' => '329.503338', + ], + 'unit' => [ + 'description' => 'The unit of the total storage usage.', + 'type' => 'string', + 'title' => '', + 'example' => 'GB', + ], + 'itemStorageMetrics' => [ + 'description' => 'A list of storage usage for the specified type.', + 'type' => 'array', + 'items' => [ + 'description' => 'The storage usage for the specified type.', + 'type' => 'object', + 'properties' => [ + 'itemName' => [ + 'description' => 'If the specified type is PROJECT, this parameter indicates the project name. If the specified type is STORAGE\\_TYPE, this parameter indicates the storage class.', + 'type' => 'string', + 'title' => '', + 'example' => 'prj', + ], + 'usage' => [ + 'description' => 'The storage usage.', + 'type' => 'string', + 'title' => '', + 'example' => '300.560392', + ], + 'percentage' => [ + 'description' => 'The percentage of the storage usage.', + 'type' => 'number', + 'format' => 'double', + 'title' => '', + 'example' => '91.22', + ], + ], + 'title' => '', + ], + 'title' => '', + ], + ], + 'title' => '', + ], + 'title' => '', + ], + ], + ], + ], + ], + 'title' => 'SumStorageMetricsByDate', + 'summary' => 'Retrieves the storage information for each category or project on a specified date.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'odps:SumStorageMetricsByDate', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0abb781a17411408145995819e0dae\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"success\\",\\n \\"errorMsg\\": \\"this quota is not exist.\\",\\n \\"data\\": [\\n {\\n \\"storageType\\": \\"Storage\\",\\n \\"dateTime\\": \\"20250719\\",\\n \\"usage\\": \\"329.503338\\",\\n \\"unit\\": \\"GB\\",\\n \\"itemStorageMetrics\\": [\\n {\\n \\"itemName\\": \\"prj\\",\\n \\"usage\\": \\"300.560392\\",\\n \\"percentage\\": 91.22\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', + ], + 'UpdateComputeQuotaPlan' => [ + 'path' => '/api/v1/quotas/{nickname}/computeQuotaPlan', + 'methods' => [ + 'put', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '257598', + 'abilityTreeNodes' => [ + 'FEATUREodps2FOXFI', + ], + ], + 'parameters' => [ + [ + 'name' => 'nickname', + 'in' => 'path', + 'schema' => [ + 'description' => 'The nickname of level-1 compute quota.', + 'type' => 'string', + 'required' => true, + 'example' => 'os_ComputeQuota_p', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'style' => 'json', + 'schema' => [ + 'description' => 'The request body parameter.'."\n", + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The name of quota plan.', + 'type' => 'string', + 'required' => true, + 'example' => 'planA', + ], + 'quota' => [ + 'description' => 'The parameters of quota plan.', + 'type' => 'object', + 'properties' => [ + 'parameter' => [ + 'description' => 'The parameters of level-1 quota.', + 'type' => 'object', + 'properties' => [ + 'elasticReservedCU' => [ + 'description' => 'The value of elastic Reserved CUs in the level-1 quota.'."\n" + .'> The default value is 0. The maximum value of this parameter must be equal to the number of subscription-based reserved CUs and cannot exceed 10,000 CUs.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '50', + ], + ], + 'required' => false, + ], + 'subQuotaInfoList' => [ + 'description' => 'The list of level-2 quotas.', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'nickName' => [ + 'description' => 'The nickname of the level-2 quota.', + 'type' => 'string', + 'required' => true, + 'example' => 'os_ComputeQuota', + ], + 'parameter' => [ + 'description' => 'The parameters of the level-2 quota.', + 'type' => 'object', + 'properties' => [ + 'elasticReservedCU' => [ + 'description' => 'The value of elastic Reserved CUs.'."\n" + .'> The total number of elastically reserved CUs in all the level-2 quotas is equal to the number of elastically reserved CUs in the level-1 quota.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '50', + ], + 'maxCU' => [ + 'description' => 'The value of maxCU in Reserved CUs.'."\n" + .'> The value of maxCU must be less than or equal to the value of maxCU in the level-1 quota that you purchased.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '50', + ], + 'minCU' => [ + 'description' => 'The value of minCU in Reserved CUs.'."\n" + .'> '."\n" + .'>- The total value of minCU in all the level-2 quotas is equal to the value of minCU in the level-1 quota.'."\n" + .'>- The value of minCU must be less than or equal to the value of maxCU in the level-2 quota and less than or equal to the value of minCU in the level-1 quota that you purchased.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '50', + ], + ], + 'required' => false, + ], + ], + 'required' => false, + ], + 'required' => false, + ], + ], + 'required' => false, + ], + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<String>', + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '0be3e0aa16667684362147582e038f', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n" + ."\n" + .'- 1xx: informational response. The request is received and is being processed.'."\n" + .'- 2xx: success. The request is successfully received, understood, and accepted by the server.'."\n" + .'- 3xx: redirection. The request is redirected, and further actions are required to complete the request.'."\n" + .'- 4xx: client error. The request contains invalid request parameters or syntaxes, or specific request conditions cannot be met.'."\n" + .'- 5xx: server error. The server cannot meet requirements due to other reasons.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code.', + 'type' => 'string', + 'example' => 'QUOTA_PLAN_NOT_FOUND', + ], + 'errorMsg' => [ + 'description' => 'The error message.', + 'type' => 'string', + 'example' => 'plan \\"***\\" does not exist', + ], + 'data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0be3e0aa16667684362147582e038f\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"QUOTA_PLAN_NOT_FOUND\\",\\n \\"errorMsg\\": \\"plan \\\\\\\\\\\\\\"***\\\\\\\\\\\\\\" does not exist\\",\\n \\"data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'UpdateComputeQuotaPlan', + 'summary' => 'Update the ComputeQuotaPlan.', + 'description' => 'Please ensure that before using this interface, you have fully understood the <props="china">[Pricing and Charges](https://help.aliyun.com/zh/maxcompute/product-overview/computing-pricing-1)</props>'."\n" + .'<props="intl">[Pricing and Charges](https://www.alibabacloud.com/help/maxcompute/product-overview/computing-pricing-1)</props> of MaxCompute Elastic Reserved CU.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:UpdateQuotaPlan', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + ], + ], + 'UpdateComputeQuotaSchedule' => [ + 'path' => '/api/v1/quotas/{nickname}/computeQuotaSchedule', + 'methods' => [ + 'put', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '255380', + 'abilityTreeNodes' => [ + 'FEATUREodpsZAKNHC', + ], + ], + 'parameters' => [ + [ + 'name' => 'nickname', + 'in' => 'path', + 'schema' => [ + 'description' => 'The nickname of the level-1 quota.', + 'type' => 'string', + 'required' => true, + 'title' => '', + 'example' => 'os_ComputeQuota_p', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'style' => 'json', + 'schema' => [ + 'description' => 'The request body parameters.', + 'type' => 'array', + 'items' => [ + 'description' => 'The request body parameters.', + 'type' => 'object', + 'properties' => [ + 'condition' => [ + 'description' => 'The condition for the plan to take effect.', + 'type' => 'object', + 'properties' => [ + 'at' => [ + 'description' => 'The time when the plan takes effect.', + 'type' => 'string', + 'required' => true, + 'title' => '', + 'example' => '10:00', + ], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'type' => [ + 'description' => 'The type.'."\n" + ."\n" + .'><notice>'."\n" + ."\n" + .'Only daily is supported.'."\n" + ."\n" + .'></notice>', + 'type' => 'string', + 'required' => true, + 'docRequired' => false, + 'title' => '', + 'example' => 'daily', + ], + 'plan' => [ + 'description' => 'The name of the quota plan.', + 'type' => 'string', + 'required' => true, + 'title' => '', + 'example' => 'planA', + ], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + ], + [ + 'name' => 'scheduleTimezone', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + 'description' => 'The time zone.'."\n" + ."\n" + .'> The default value is UTC+8.', + 'title' => '', + 'example' => 'UTC+8', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<String>', + 'description' => 'The parameters that are returned for the request.', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => '0be3e0aa16667684362147582e038f', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n" + ."\n" + .'- 1xx: an informational response. The request was received and is being processed.'."\n" + ."\n" + .'- 2xx: a success response. The request was successfully received, understood, and accepted by the server.'."\n" + ."\n" + .'- 3xx: a redirection response. The request was redirected. You must take further action to complete the request.'."\n" + ."\n" + .'- 4xx: a client error. The request contains invalid request parameters or syntax, or cannot be fulfilled for a specific reason.'."\n" + ."\n" + .'- 5xx: a server error. The server cannot fulfill the request for other reasons.', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code.', + 'type' => 'string', + 'title' => '', + 'example' => 'QUOTA_PLAN_NOT_FOUND', + ], + 'errorMsg' => [ + 'description' => 'The error message.', + 'type' => 'string', + 'title' => '', + 'example' => 'plan \\"***\\" does not exist', + ], + 'data' => [ + 'description' => 'The returned result.', + 'type' => 'string', + 'title' => '', + 'example' => 'success', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0be3e0aa16667684362147582e038f\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"QUOTA_PLAN_NOT_FOUND\\",\\n \\"errorMsg\\": \\"plan \\\\\\\\\\\\\\"***\\\\\\\\\\\\\\" does not exist\\",\\n \\"data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'UpdateComputeQuotaSchedule', + 'summary' => 'Updates the time-based schedule for a computing quota.', + 'description' => 'Before you call this operation, ensure that you understand the <props="china">[billing methods and pricing](https://help.aliyun.com/zh/maxcompute/product-overview/computing-pricing-1)</props><props="intl">[billing methods and pricing](https://www.alibabacloud.com/help/maxcompute/product-overview/computing-pricing-1)</props> of reserved compute units (CUs) in MaxCompute.', + 'requestParamsDescription' => '><notice>'."\n" + ."\n" + .'You must configure the plan to start at 00:00.'."\n" + ."\n" + .'></notice>', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:UpdateQuotaSchedule', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + ], + 'flowControl' => [ + 'flowControlList' => [ + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'UpdateComputeQuotaSchedule', + ], + ], + ], + ], + 'UpdateComputeSubQuota' => [ + 'path' => '/api/v1/quotas/{nickname}/computeSubQuota', + 'methods' => [ + 'put', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '255780', + 'abilityTreeNodes' => [ + 'FEATUREodps2FOXFI', + ], + ], + 'parameters' => [ + [ + 'name' => 'nickname', + 'in' => 'path', + 'schema' => [ + 'description' => 'The nickname of level-1 compute quota.', + 'type' => 'string', + 'required' => true, + 'example' => 'os_ComputeQuota_p', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'style' => 'json', + 'schema' => [ + 'description' => 'The request body parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'subQuotaInfoList' => [ + 'description' => 'The list of level-2 quotas.', + 'type' => 'array', + 'items' => [ + 'description' => 'The list of level-2 quotas.', + 'type' => 'object', + 'properties' => [ + 'nickName' => [ + 'description' => 'The nickname of the level-2 quota.', + 'type' => 'string', + 'required' => true, + 'example' => 'os_ComputeQuota', + ], + 'parameter' => [ + 'description' => 'The parameters of the level-2 quota.', + 'type' => 'object', + 'properties' => [ + 'enablePriority' => [ + 'description' => 'Specifies whether to enable the priority feature.', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + 'forceReservedMin' => [ + 'description' => 'Specifies whether the quota is strongly exclusive.', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + 'maxCU' => [ + 'description' => 'The value of minCU in Reserved CUs.'."\n" + .'> The value of maxCU must be less than or equal to the value of maxCU in the level-1 quota that you purchased.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '50', + ], + 'minCU' => [ + 'description' => 'The value of maxCU in Reserved CUs.'."\n" + .'> '."\n" + .'>- The total value of minCU in all the level-2 quotas is equal to the value of minCU in the level-1 quota.'."\n" + .'>- The value of minCU must be less than or equal to the value of maxCU in the level-2 quota and less than or equal to the value of minCU in the level-1 quota that you purchased.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '50', + ], + 'schedulerType' => [ + 'description' => 'Scheduling policy of the quota.', + 'type' => 'string', + 'required' => false, + 'example' => 'Fifo/Fair', + ], + 'singleJobCULimit' => [ + 'description' => 'The upper limit for CUs that can be concurrently used by a job scheduled to the quota.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + 'required' => false, + ], + 'type' => [ + 'description' => 'The type of quota.'."\n" + ."\n" + .'> '."\n" + .'> - FUXI_OFFLINE(default) : Quotas of this type are used to run batch jobs.', + 'type' => 'string', + 'required' => false, + 'example' => 'FUXI_OFFLINE', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<String>', + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0b57ff7616612271051086500ea3ce', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n" + ."\n" + .'- 1xx: informational response. The request is received and is being processed.'."\n" + .'- 2xx: success. The request is successfully received, understood, and accepted by the server.'."\n" + .'- 3xx: redirection. The request is redirected, and further actions are required to complete the request.'."\n" + .'- 4xx: client error. The request contains invalid request parameters or syntaxes, or specific request conditions cannot be met.'."\n" + .'- 5xx: server error. The server cannot meet requirements due to other reasons.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code.', + 'type' => 'string', + 'example' => 'OBJECT_NOT_EXIST', + ], + 'errorMsg' => [ + 'description' => 'The error message.', + 'type' => 'string', + 'example' => 'this quota is not exist.', + ], + 'data' => [ + 'description' => 'The returned result.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0b57ff7616612271051086500ea3ce\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"OBJECT_NOT_EXIST\\",\\n \\"errorMsg\\": \\"this quota is not exist.\\",\\n \\"data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'UpdateComputeSubQuota', + 'summary' => 'Updates the basic configuration of a MaxCompute quota. For example, you can call this operation to add or delete a level-2 quota, define the basic attributes of a level-2 quota, and define the configuration of compute units (CUs) for a quota plan that is in effect.', + 'requestParamsDescription' => '><danger>'."\n" + ."\n" + .'- The configuration submitted by UpdateComputeSubQuota is the final form of Quota;'."\n" + ."\n" + .'- UpdateComputeSubQuota must be configured with the default level-2 quota;'."\n" + ."\n" + .'- When the input parameter contains a non-existent level-2 quota, a new level-2 quota will be created;'."\n" + ."\n" + .'- If an existing level-2 quota is not declared in the input parameter, it will be deleted;'."\n" + ."\n" + .'- If the configuration parameters of the existing level-2 quota are inconsistent, the configuration of the level-2 quota will be updated.></danger>', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:UpdateSubQuotas', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + ], + ], + 'UpdateMmsDataSource' => [ + 'summary' => 'Refreshes the metadata of a MaxCompute Migration Assist (MMA) data source.', + 'path' => '/api/v1/mms/datasources/{sourceId}', + 'methods' => [ + 'put', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '182994', + 'abilityTreeNodes' => [ + 'FEATUREodpsN8WEG6', + ], + ], + 'parameters' => [ + [ + 'name' => 'sourceId', + 'in' => 'path', + 'schema' => [ + 'description' => 'The ID of the data source.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '2000017', + 'title' => '', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'style' => 'json', + 'schema' => [ + 'description' => 'The request body parameters.', + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'description' => 'The new name of the data source.', + 'type' => 'string', + 'required' => false, + 'example' => 'dept1', + 'title' => '', + ], + 'action' => [ + 'title' => 'UPDATE_CONFIG, START, STOP, RENAME', + 'description' => 'The type of the update operation:'."\n" + ."\n" + .'1. UPDATE\\_CONFIG: updates the data source configuration.'."\n" + .'2. START: starts the data source instance.'."\n" + .'3. STOP: shuts down the data source instance.'."\n" + .'4. RENAME: renames the data source.', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'RENAME' => 'RENAME', + 'STOP' => 'STOP', + 'UPDATE_CONFIG' => 'UPDATE_CONFIG', + 'START' => 'START', + ], + 'example' => 'UPDATE_CONFIG', + ], + 'test' => [ + 'description' => 'Tests the data source configuration.', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'title' => '', + ], + 'config' => [ + 'description' => 'The data source configuration. The configuration items vary based on the data source.', + 'type' => 'object', + 'required' => false, + 'additionalProperties' => [ + 'type' => 'any', + 'description' => 'The key is a string and the value is a configuration item of any type.', + 'example' => '{"mc.sql.hints": {"odps.sql.decimal.odps2": true}}', + 'title' => '', + ], + 'title' => '', + ], + ], + 'required' => false, + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ApiRes<UpdateDataSourceDTO>', + 'description' => 'The returned data.', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '76CE80C8-7392-5591-BCC8-610AFBF78ADF', + 'title' => '', + ], + 'data' => [ + 'description' => 'The result of the request.', + 'type' => 'object', + 'properties' => [ + 'sourceId' => [ + 'description' => 'The ID of the data source.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2000017', + 'title' => '', + ], + 'asyncTaskId' => [ + 'description' => 'The ID of the asynchronous task. When you test the data source configuration, this ID is used to obtain the test result.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + 'title' => '', + ], + ], + 'title' => '', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"76CE80C8-7392-5591-BCC8-610AFBF78ADF\\",\\n \\"data\\": {\\n \\"sourceId\\": 2000017,\\n \\"asyncTaskId\\": 100\\n }\\n}","type":"json"}]', + 'title' => 'UpdateMmsDataSource', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:UpdateMmsDataSource', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + ], + 'UpdatePackage' => [ + 'path' => '/api/v1/projects/{projectName}/packages/{packageName}', + 'methods' => [ + 'put', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '144114', + 'abilityTreeNodes' => [ + 'FEATUREodpsTZPZOE', + ], + ], + 'parameters' => [ + [ + 'name' => 'projectName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the MaxCompute project.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'projectA', + ], + ], + [ + 'name' => 'packageName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the package.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'packageA', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'schema' => [ + 'description' => 'The request body parameters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "add": {'."\n" + .' "allowedProjectList": ['."\n" + .' {'."\n" + .' "label": "2",'."\n" + .' "project": "project_name"'."\n" + .' }'."\n" + .' ],'."\n" + .' "resourceList": {'."\n" + .' "table": ['."\n" + .' {'."\n" + .' "name": "table_name",'."\n" + .' "actions": ['."\n" + .' "Describe",'."\n" + .' "Select"'."\n" + .' ]'."\n" + .' },'."\n" + .' {'."\n" + .' "name": "table_name",'."\n" + .' "actions": ['."\n" + .' "Describe",'."\n" + .' "Select"'."\n" + .' ]'."\n" + .' }'."\n" + .' ],'."\n" + .' "resource": ['."\n" + .' {'."\n" + .' "name": "",'."\n" + .' "actions": []'."\n" + .' },'."\n" + .' {'."\n" + .' "name": "",'."\n" + .' "actions": []'."\n" + .' }'."\n" + .' ],'."\n" + .' "function": ['."\n" + .' {'."\n" + .' "name": "",'."\n" + .' "actions": []'."\n" + .' },'."\n" + .' {'."\n" + .' "name": "",'."\n" + .' "actions": []'."\n" + .' }'."\n" + .' ]'."\n" + .' }'."\n" + .' },'."\n" + .' "remove": {'."\n" + .' "allowedProjectList": ['."\n" + .' {'."\n" + .' "project": "project_name"'."\n" + .' },'."\n" + .' {'."\n" + .' "project": "project_2"'."\n" + .' }'."\n" + .' ],'."\n" + .' "resourceList": {'."\n" + .' "table": ['."\n" + .' {'."\n" + .' "name": "table_name"'."\n" + .' },'."\n" + .' {'."\n" + .' "name": "table_name"'."\n" + .' }'."\n" + .' ],'."\n" + .' "resource": ['."\n" + .' {'."\n" + .' "name": ""'."\n" + .' },'."\n" + .' {'."\n" + .' "name": ""'."\n" + .' }'."\n" + .' ],'."\n" + .' "function": ['."\n" + .' {'."\n" + .' "name": ""'."\n" + .' },'."\n" + .' {'."\n" + .' "name": ""'."\n" + .' }'."\n" + .' ]'."\n" + .' }'."\n" + .' }'."\n" + .'}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<String>', + 'description' => 'PopResult'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0bc1ec4016697018733156991e0888', + ], + 'data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0bc1ec4016697018733156991e0888\\",\\n \\"data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'UpdatePackage', + 'summary' => 'Updates the objects in a package and projects in which the package can be installed.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:UpdatePackage', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + ], + ], + 'UpdateProjectBasicMeta' => [ + 'path' => '/api/v1/projects/{projectName}/meta', + 'methods' => [ + 'put', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '142939', + 'abilityTreeNodes' => [ + 'FEATUREodpsTZPZOE', + ], + ], + 'parameters' => [ + [ + 'name' => 'projectName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the project.', + 'type' => 'string', + 'required' => true, + 'example' => 'odps_project', + 'title' => '', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'style' => 'json', + 'schema' => [ + 'description' => 'The request body.', + 'type' => 'object', + 'properties' => [ + 'comment' => [ + 'description' => 'The description of the project.', + 'type' => 'string', + 'required' => false, + 'example' => 'BI_Analysis', + 'title' => '', + ], + 'properties' => [ + 'description' => 'The basic properties of the project.', + 'type' => 'object', + 'properties' => [ + 'allowFullScan' => [ + 'description' => 'Specifies whether to allow full table scans in the project. A full table scan consumes a large amount of resources. To improve processing efficiency, this feature is disabled by default.', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + 'title' => '', + ], + 'enableDecimal2' => [ + 'description' => 'Specifies whether to enable the Decimal data type of MaxCompute V2.0 for the project.', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'title' => '', + ], + 'enableTunnelQuotaRoute' => [ + 'description' => 'Specifies whether to enable resource group-based routing for Data Transmission Service.'."\n" + ."\n" + .'- true: Data transmission tasks submitted in the project use the attached Data Transmission Service resource group by default.'."\n" + ."\n" + .'- false: Data transmission tasks submitted in the project use the shared Data Transmission Service resource group by default.', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'title' => '', + ], + 'encryption' => [ + 'description' => 'The storage encryption properties.', + 'type' => 'object', + 'properties' => [ + 'enable' => [ + 'description' => 'Specifies whether to enable data encryption for the project. For more information about data encryption, see'."\n" + .'<props="intl">[Storage encryption](https://www.alibabacloud.com/help/zh/maxcompute/security-and-compliance/storage-encryption)</props>.', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'title' => '', + ], + 'key' => [ + 'description' => 'The type of key used for data encryption. This can be the default MaxCompute key or a Bring-Your-Own-Key (BYOK). The default MaxCompute key is created within MaxCompute.', + 'type' => 'string', + 'required' => false, + 'example' => 'default', + 'title' => '', + ], + 'algorithm' => [ + 'description' => 'The encryption algorithm. The key supports algorithms such as AES256, AESCTR, and RC4.', + 'type' => 'string', + 'required' => false, + 'example' => 'AES256', + 'title' => '', + ], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'retentionDays' => [ + 'description' => 'The number of days to retain backup data. During this period, you can restore the current version to any backup version.'."\n" + .'The value must be an integer from 0 to 30. The default value is 1. A value of 0 disables the backup feature.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + 'title' => '', + ], + 'sqlMeteringMax' => [ + 'description' => 'The maximum consumption threshold for a single SQL job.'."\n" + .'Unit: Scanned data (GB) × Complexity.', + 'type' => 'string', + 'required' => false, + 'example' => '1500', + 'title' => '', + ], + 'tableLifecycle' => [ + 'description' => 'The lifecycle properties of the table.', + 'type' => 'object', + 'properties' => [ + 'type' => [ + 'description' => 'The lifecycle type. Valid values:'."\n" + ."\n" + .'- **mandatory**: The Lifecycle clause is required. You must set a lifecycle for the table.'."\n" + ."\n" + .'- **optional**: The Lifecycle clause is optional when you create a table. If you do not set a lifecycle for the table, the table never expires.'."\n" + ."\n" + .'- **inherit**: If you do not set a lifecycle for the table when you create it, the lifecycle of the table is the value of odps.table.lifecycle.value.', + 'type' => 'string', + 'required' => false, + 'example' => 'optional', + 'title' => '', + ], + 'value' => [ + 'description' => 'The lifecycle of the table in days. The value must be an integer from 1 to 37231. The default value is 37231.', + 'type' => 'string', + 'required' => false, + 'example' => '37231', + 'title' => '', + ], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'timezone' => [ + 'description' => 'The time zone of the project. This is the `odps.sql.timezone` property.', + 'type' => 'string', + 'required' => false, + 'example' => 'Asia/Shanghai'."\n", + 'title' => '', + ], + 'tunnelQuota' => [ + 'description' => 'The <props="intl">[Data Transmission Service](https://www.alibabacloud.com/help/zh/maxcompute/user-guide/overview-of-dts)</props> resource group attached to the project.'."\n" + ."\n" + .'- Default (shared Data Transmission Service resource group): The project is not allowed to use a subscription Data Transmission Service resource group. Regardless of the value of the default Data Transmission Service resource group, data transmission tasks submitted in the project automatically use the Default resource group.'."\n" + ."\n" + .'- Subscription Data Transmission Service resource group: The project is allowed to use a subscription Data Transmission Service resource group.', + 'type' => 'string', + 'required' => false, + 'example' => 'Default', + 'title' => '', + ], + 'typeSystem' => [ + 'description' => 'The data type edition. Valid values:'."\n" + ."\n" + .'- **1**: Edition 1.0'."\n" + ."\n" + .'- **2**: Edition 2.0'."\n" + ."\n" + .'- **hive**: Hive-compatible edition'."\n" + ."\n" + .'For more information about the differences between the data type editions, see <props="intl">[Data type editions](https://www.alibabacloud.com/help/zh/maxcompute/user-guide/data-type-editions)</props>.', + 'type' => 'string', + 'required' => false, + 'example' => '2.0', + 'title' => '', + ], + 'enableDr' => [ + 'type' => 'boolean', + 'description' => '', + 'required' => false, + 'title' => '', + 'example' => '', + ], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + ], + 'required' => false, + 'example' => '{'."\n" + .'"status":"", // AVAILABLE 表示恢复项目,FROZEN 冻结项目'."\n" + .'"comment": "",'."\n" + .'"propertis": {}'."\n" + .'}'."\n" + ."\n" + .'- 注: comment 如果不更新就给 null。如果給空字符串就会改成空'."\n" + ."\n" + .'具体properties 属性kv与 GetProject 中返回的properties 一致。'."\n" + .'按需修改提交,不要每次提交全部属性列表'."\n" + .'如果是重置,则相关value置为空字符串即可。', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<String>', + 'description' => 'The response parameters.', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '0b87b7e216652820458545253e8b0a', + 'title' => '', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n" + ."\n" + .'- 1xx: Informational response - The request has been received and is being processed.'."\n" + ."\n" + .'- 2xx: Success - The request was successfully received, understood, and accepted.'."\n" + ."\n" + .'- 3xx: Redirection - The request was redirected. Further action is needed to complete the request.'."\n" + ."\n" + .'- 4xx: Client error - The request contains incorrect request parameters or syntax, or cannot be fulfilled.'."\n" + ."\n" + .'- 5xx: Server error - The server failed to fulfill the request for other reasons.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + 'title' => '', + ], + 'errorCode' => [ + 'description' => 'The error code.', + 'type' => 'string', + 'example' => 'OBJECT_NOT_EXIST', + 'title' => '', + ], + 'errorMsg' => [ + 'description' => 'The error message.', + 'type' => 'string', + 'example' => 'This object does not exist.'."\n", + 'title' => '', + ], + 'data' => [ + 'description' => 'The result of the request.', + 'type' => 'string', + 'example' => 'success', + 'title' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0b87b7e216652820458545253e8b0a\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"OBJECT_NOT_EXIST\\",\\n \\"errorMsg\\": \\"This object does not exist.\\\\n\\",\\n \\"data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'UpdateProjectBasicMeta', + 'summary' => 'Modifies the basic information of a project.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:UpdateProjectBasicMeta', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + ], + 'flowControl' => [ + 'flowControlList' => [ + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'UpdateProjectBasicMeta', + ], + ], + ], + ], + 'UpdateProjectDefaultQuota' => [ + 'path' => '/api/v1/projects/{projectName}/quota', + 'methods' => [ + 'put', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '142942', + 'abilityTreeNodes' => [ + 'FEATUREodpsTZPZOE', + ], + ], + 'parameters' => [ + [ + 'name' => 'projectName', + 'in' => 'path', + 'schema' => [ + 'description' => 'Project name.', + 'type' => 'string', + 'required' => true, + 'example' => 'odps_project', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'style' => 'json', + 'schema' => [ + 'description' => 'Request body parameters.', + 'type' => 'object', + 'properties' => [ + 'quota' => [ + 'description' => 'The default computing quota that is used to allocate computing resources, the jobs that are initiated by this project consume the computing resources in the default quota.', + 'type' => 'string', + 'required' => false, + 'example' => 'os_PayAsYouGoQuota'."\n", + ], + ], + 'required' => false, + 'example' => '{'."\n" + .' "quota":"" //quotaNickName'."\n" + .'}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<String>', + 'description' => 'The response parameters.', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '0a06dfe716674588654372173ec0da', + ], + 'data' => [ + 'description' => 'The data returned.', + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0a06dfe716674588654372173ec0da\\",\\n \\"data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'UpdateProjectDefaultQuota', + 'summary' => 'Updates the default computing quota of a project.', + 'translator' => 'machine', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:UpdateProjectDefaultQuota', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + ], + ], + 'UpdateProjectIpWhiteList' => [ + 'path' => '/api/v1/projects/{projectName}/ipWhiteList', + 'methods' => [ + 'put', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '142941', + 'abilityTreeNodes' => [ + 'FEATUREodpsTZPZOE', + ], + ], + 'parameters' => [ + [ + 'name' => 'projectName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the MaxCompute project.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'odps_project', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'schema' => [ + 'description' => 'The request body parameters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'json {"ipWhiteList":{"ipList": "", // The IP address whitelists are of the STRING data type. Separate multiple IP address whitelists with commas (,). "vpcIpList": "", //} }'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<String>', + 'description' => 'PopResult'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0bc12e4316675560945192024e1044', + ], + 'data' => [ + 'description' => 'The returned result.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0bc12e4316675560945192024e1044\\",\\n \\"data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'UpdateProjectIpWhiteList', + 'summary' => 'Modifies the IP address whitelist of a MaxCompute project.', + 'translator' => 'machine', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:UpdateProjectIpWhiteList', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + ], + ], + 'UpdateProjectModelTier' => [ + 'summary' => 'Upgrades a project\'s Layer 2 model to a Layer 3 model.', + 'path' => '/api/v1/projects/{projectName}/modelTier', + 'methods' => [ + 'put', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '204095', + 'abilityTreeNodes' => [ + 'FEATUREodpsTZPZOE', + ], + ], + 'parameters' => [ + [ + 'name' => 'projectName', + 'in' => 'path', + 'schema' => [ + 'type' => 'string', + 'required' => true, + 'title' => '', + 'description' => 'The name of the project.', + 'example' => 'projectA', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'type' => 'string', + 'description' => 'The request ID.', + 'title' => '', + 'example' => '73207140-0FD5-588A-B11A-3CE093924196', + ], + 'httpCode' => [ + 'type' => 'integer', + 'format' => 'int32', + 'description' => 'Indicates whether the operation was successful. A value other than 200 indicates that the operation failed.', + 'title' => '', + 'example' => '200', + ], + 'errorCode' => [ + 'type' => 'string', + 'description' => '- If the request fails, an error code is returned.'."\n" + ."\n" + .'- If the request is successful, this parameter is empty.', + 'title' => '', + 'example' => 'OBJECT_NOT_EXIST', + ], + 'errorMsg' => [ + 'type' => 'string', + 'description' => 'The error message.', + 'title' => '', + 'example' => 'this project is not exist.', + ], + 'data' => [ + 'type' => 'string', + 'description' => 'The data returned.', + 'title' => '', + 'example' => '"data":{'."\n" + .' "data":"success",'."\n" + .' "requestId":"****"'."\n" + .' }', + ], + ], + 'title' => '', + 'description' => 'The response parameters.', + 'example' => '', + ], + ], + ], + 'title' => 'UpdateProjectModelTier', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"73207140-0FD5-588A-B11A-3CE093924196\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"OBJECT_NOT_EXIST\\",\\n \\"errorMsg\\": \\"this project is not exist.\\",\\n \\"data\\": \\"\\\\\\"data\\\\\\":{\\\\n\\\\t\\\\t\\\\\\"data\\\\\\":\\\\\\"success\\\\\\",\\\\n\\\\t\\\\t\\\\\\"requestId\\\\\\":\\\\\\"****\\\\\\"\\\\n\\\\t}\\"\\n}","type":"json"}]', + ], + 'UpdateQuotaPlan' => [ + 'path' => '/api/v1/quotas/{nickname}/plans/{planName}', + 'methods' => [ + 'put', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '142710', + 'abilityTreeNodes' => [ + 'FEATUREodpsZAKNHC', + ], + ], + 'parameters' => [ + [ + 'name' => 'nickname', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the quota.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'quotaA', + ], + ], + [ + 'name' => 'planName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the quota plan.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'planA', + ], + ], + [ + 'name' => 'tenantId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the tenant.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '478403690625249', + ], + ], + [ + 'name' => 'region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'schema' => [ + 'description' => 'The request body parameters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{ "name": "planA", // The quota is a level-1 quota. You can select only the fields that are related to the quota plan. "quota": { "name": "a", "nickName": "aaa_nick", "tenantId": "10001", "regionId": "cn-hangzhou", "parentId": "0", "cluster": "AT-ODPS-TEST3", "parameter": { "minCU": 40, "maxCU": 40, "adhocCU": 0, "elasticMinCU": 40, "elasticMaxCU": 40, "enablePreemptiveScheduling": false, "forceReservedMin":true, "enablePriority":false, "singleJobCULimit":100, "adhocQuotaBeginTimeInSec": 1345, "adhocQuotaEndTimeInSec": 1234, "ignoreAdhocQuota":false }, "subQuotaInfoList": \\[ { "nickName": "WlmFuxiSecondaryOnlineQuotaTest", "name": "WlmFuxiSecondaryOnlineQuotaTest", "type": "FUXI_ONLINE", "tenantId": "10001", "regionId": "cn-hangzhou", "cluster": "AT-ODPS-TEST3", "parameter": { "minCU": 40, "maxCU": 40, "adhocCU": 0, "elasticMinCU": 40, "elasticMaxCU": 40, "enablePreemptiveScheduling": false, "forceReservedMin":true, "enablePriority":false, "singleJobCULimit":100, "adhocQuotaBeginTimeInSec": 1345, "adhocQuotaEndTimeInSec": 1234, "ignoreAdhocQuota":false } } ] } }'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<String>', + 'description' => 'PopResult'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0a06dfe516688379832875789e2c65', + ], + 'data' => [ + 'description' => 'The returned result.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0a06dfe516688379832875789e2c65\\",\\n \\"data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'UpdateQuotaPlan', + 'summary' => 'Updates a quota plan.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:UpdateQuotaPlan', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + ], + ], + 'UpdateQuotaSchedule' => [ + 'path' => '/api/v1/quotas/{nickname}/schedule', + 'methods' => [ + 'put', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '142712', + 'abilityTreeNodes' => [ + 'FEATUREodpsZAKNHC', + ], + ], + 'parameters' => [ + [ + 'name' => 'nickname', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the quota.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'quotaA', + ], + ], + [ + 'name' => 'tenantId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the tenant.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '478403690625249', + ], + ], + [ + 'name' => 'region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-chengdu', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'schema' => [ + 'description' => 'The request body parameters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '\\# The quota plan immediately takes effect. \\[ { "type": "once", "plan": "planA", "operator":"userA" } ] # The quota plan is scheduled on a regular basis. \\[ { "id": "etl_time", "type": "daily", "condition": { "at": "0800", "after": "2022-04-25T04:23:04Z" // optional }, "plan": "planA" }, { "id": "bi", "type": "daily", "condition": { "at": "0900", "after": "2022-04-25T04:23:04Z" // optional }, "plan": "planB" }, ]'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<String>', + 'description' => 'PopResult'."\n", + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0a06dfe516691014920015940e1c9d', + ], + 'data' => [ + 'description' => 'The returned result.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0a06dfe516691014920015940e1c9d\\",\\n \\"data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'UpdateQuotaSchedule', + 'summary' => 'Updates the scheduling plan for a quota plan.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:UpdateQuotaSchedule', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + ], + ], + 'UpdateTunnelQuotaTimer' => [ + 'path' => '/api/v1/tunnel/{nickname}/timers', + 'methods' => [ + 'put', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '254734', + 'abilityTreeNodes' => [ + 'FEATUREodpsZAKNHC', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'nickname', + 'in' => 'path', + 'schema' => [ + 'description' => 'The nickname of the level-1 exclusive resource group for Data Transmission Service (Tunnel Quota).', + 'type' => 'string', + 'required' => true, + 'title' => '', + 'example' => 'ot_tunnel_quota_p'."\n", + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'style' => 'json', + 'schema' => [ + 'description' => 'The request body.', + 'type' => 'array', + 'items' => [ + 'description' => 'The request body.', + 'type' => 'object', + 'properties' => [ + 'beginTime' => [ + 'description' => 'The start time of the time-based configuration.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => '00:00', + ], + 'endTime' => [ + 'description' => 'The end time of the time-based configuration.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => '08:00', + ], + 'tunnelQuotaParameter' => [ + 'description' => 'The parameters of the time-based configuration.', + 'type' => 'object', + 'properties' => [ + 'slotNum' => [ + 'description' => 'The number of reserved concurrent slots.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'title' => '', + 'example' => '100', + ], + 'elasticReservedSlotNum' => [ + 'description' => 'The number of elastic reserved concurrent slots.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'title' => '', + 'example' => '100', + ], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + ], + [ + 'name' => 'timezone', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'description' => 'The time zone.', + 'required' => false, + 'title' => '', + 'example' => 'Asia/Shanghai', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<String>', + 'description' => 'The returned parameters.', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => '0bc12e4316675560945192024e1044', + ], + 'httpCode' => [ + 'description' => 'The HTTP status code.'."\n" + ."\n" + .'- 1xx: informational response. The request was received and is being processed.'."\n" + ."\n" + .'- 2xx: success. The request was successfully received, understood, and accepted by the server.'."\n" + ."\n" + .'- 3xx: redirection. The request is redirected. You must take further action to complete the request.'."\n" + ."\n" + .'- 4xx: client error. The request contains invalid request parameters or syntax, or cannot be fulfilled.'."\n" + ."\n" + .'- 5xx: server error. The server cannot fulfill the request for other reasons.', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'example' => '200', + ], + 'errorCode' => [ + 'description' => 'The error code.', + 'type' => 'string', + 'title' => '', + 'example' => 'OBJECT_NOT_EXIST'."\n", + ], + 'errorMsg' => [ + 'description' => 'The error message.', + 'type' => 'string', + 'title' => '', + 'example' => 'This object does not exist.'."\n", + ], + 'data' => [ + 'description' => 'The returned result.', + 'type' => 'string', + 'title' => '', + 'example' => 'success', + ], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0bc12e4316675560945192024e1044\\",\\n \\"httpCode\\": 200,\\n \\"errorCode\\": \\"OBJECT_NOT_EXIST\\\\n\\",\\n \\"errorMsg\\": \\"This object does not exist.\\\\n\\",\\n \\"data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'UpdateTunnelQuotaTimer', + 'summary' => 'Updates the time-based auto-scaling configuration for an exclusive resource group for Data Transmission Service (Tunnel Quota).', + 'description' => 'Before you call this operation, ensure that you fully understand the <props="china">[billing methods and pricing](https://help.aliyun.com/zh/maxcompute/product-overview/data-transfer-fees-hourly-billing)</props><props="intl">[billing methods and pricing](https://www.alibabacloud.com/help/maxcompute/product-overview/data-transfer-fees-hourly-billing)</props> for exclusive Data Transmission Service resource groups and elastic reserved computing resources.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:UpdateQuotaTimers', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'flowControl' => [ + 'flowControlList' => [ + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'UpdateTunnelQuotaTimer', + ], + ], + ], + ], + 'UpdateUsersToRole' => [ + 'summary' => 'Adds or removes users from a project role.', + 'path' => '/api/v1/projects/{projectName}/roles/{roleName}/users', + 'methods' => [ + 'put', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREodpsZAKNHC', + ], + ], + 'parameters' => [ + [ + 'name' => 'projectName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the MaxCompute project.', + 'type' => 'string', + 'required' => true, + 'title' => '', + 'example' => 'project_a', + ], + ], + [ + 'name' => 'roleName', + 'in' => 'path', + 'schema' => [ + 'description' => 'The name of the project role.', + 'type' => 'string', + 'required' => true, + 'title' => '', + 'example' => 'admin', + ], + ], + [ + 'name' => 'body', + 'in' => 'body', + 'style' => 'json', + 'schema' => [ + 'description' => 'The request body.', + 'type' => 'object', + 'properties' => [ + 'add' => [ + 'description' => 'The action to add users to the project role.', + 'type' => 'array', + 'items' => [ + 'description' => 'The list of accounts.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => '["ALIYUN$test1","ALIYUN$test2"]', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'remove' => [ + 'description' => 'The action to remove users from the project role.', + 'type' => 'array', + 'items' => [ + 'description' => 'The list of accounts.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => '["ALIYUN$test3","ALIYUN$test4"]', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PopResult<String>', + 'description' => 'PopResult', + 'type' => 'object', + 'properties' => [ + 'requestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => '0a032a1317254153012687347ef4ee', + ], + 'data' => [ + 'description' => 'The returned result.', + 'type' => 'string', + 'title' => '', + 'example' => 'success', + ], + ], + 'example' => '', + ], + ], + ], + 'title' => 'UpdateUsersToRole', + 'extraInfo' => '><notice>该接口只针对Project的角色管理操作></notice>', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:UpdateUsersToRole', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0a032a1317254153012687347ef4ee\\",\\n \\"data\\": \\"success\\"\\n}","type":"json"}]', + ], + ], + 'endpoints' => [ + [ + 'regionId' => 'cn-wulanchabu', + 'regionName' => 'China (Ulanqab)', + 'areaId' => 'asiaPacific', + 'areaName' => 'Asia Pacific', + 'public' => 'maxcompute.cn-wulanchabu.aliyuncs.com', + 'endpoint' => 'maxcompute.cn-wulanchabu.aliyuncs.com', + 'vpc' => 'maxcompute-vpc.cn-wulanchabu.aliyuncs.com', + ], + [ + 'regionId' => 'cn-beijing', + 'regionName' => 'China (Beijing)', + 'areaId' => 'asiaPacific', + 'areaName' => 'Asia Pacific', + 'public' => 'maxcompute.cn-beijing.aliyuncs.com', + 'endpoint' => 'maxcompute.cn-beijing.aliyuncs.com', + 'vpc' => 'maxcompute-vpc.cn-beijing.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shanghai', + 'regionName' => 'China (Shanghai)', + 'areaId' => 'asiaPacific', + 'areaName' => 'Asia Pacific', + 'public' => 'maxcompute.cn-shanghai.aliyuncs.com', + 'endpoint' => 'maxcompute.cn-shanghai.aliyuncs.com', + 'vpc' => 'maxcompute-vpc.cn-shanghai.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hongkong', + 'regionName' => 'China (Hong Kong)', + 'areaId' => 'asiaPacific', + 'areaName' => 'Asia Pacific', + 'public' => 'maxcompute.cn-hongkong.aliyuncs.com', + 'endpoint' => 'maxcompute.cn-hongkong.aliyuncs.com', + 'vpc' => 'maxcompute-vpc.cn-hongkong.aliyuncs.com', + ], + [ + 'regionId' => 'cn-zhangjiakou', + 'regionName' => 'China (Zhangjiakou)', + 'areaId' => 'asiaPacific', + 'areaName' => 'Asia Pacific', + 'public' => 'maxcompute.cn-zhangjiakou.aliyuncs.com', + 'endpoint' => 'maxcompute.cn-zhangjiakou.aliyuncs.com', + 'vpc' => 'maxcompute-vpc.cn-zhangjiakou.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shenzhen', + 'regionName' => 'China (Shenzhen)', + 'areaId' => 'asiaPacific', + 'areaName' => 'Asia Pacific', + 'public' => 'maxcompute.cn-shenzhen.aliyuncs.com', + 'endpoint' => 'maxcompute.cn-shenzhen.aliyuncs.com', + 'vpc' => 'maxcompute-vpc.cn-shenzhen.aliyuncs.com', + ], + [ + 'regionId' => 'ap-northeast-1', + 'regionName' => 'Japan (Tokyo)', + 'areaId' => 'asiaPacific', + 'areaName' => 'Asia Pacific', + 'public' => 'maxcompute.ap-northeast-1.aliyuncs.com', + 'endpoint' => 'maxcompute.ap-northeast-1.aliyuncs.com', + 'vpc' => 'maxcompute-vpc.ap-northeast-1.aliyuncs.com', + ], + [ + 'regionId' => 'cn-chengdu', + 'regionName' => 'China (Chengdu)', + 'areaId' => 'asiaPacific', + 'areaName' => 'Asia Pacific', + 'public' => 'maxcompute.cn-chengdu.aliyuncs.com', + 'endpoint' => 'maxcompute.cn-chengdu.aliyuncs.com', + 'vpc' => 'maxcompute-vpc.cn-chengdu.aliyuncs.com', + ], + [ + 'regionId' => 'ap-southeast-1', + 'regionName' => 'Singapore', + 'areaId' => 'asiaPacific', + 'areaName' => 'Asia Pacific', + 'public' => 'maxcompute.ap-southeast-1.aliyuncs.com', + 'endpoint' => 'maxcompute.ap-southeast-1.aliyuncs.com', + 'vpc' => 'maxcompute-vpc.ap-southeast-1.aliyuncs.com', + ], + [ + 'regionId' => 'ap-southeast-3', + 'regionName' => 'Malaysia (Kuala Lumpur)', + 'areaId' => 'asiaPacific', + 'areaName' => 'Asia Pacific', + 'public' => 'maxcompute.ap-southeast-3.aliyuncs.com', + 'endpoint' => 'maxcompute.ap-southeast-3.aliyuncs.com', + 'vpc' => 'maxcompute-vpc.ap-southeast-3.aliyuncs.com', + ], + [ + 'regionId' => 'ap-southeast-5', + 'regionName' => 'Indonesia (Jakarta)', + 'areaId' => 'asiaPacific', + 'areaName' => 'Asia Pacific', + 'public' => 'maxcompute.ap-southeast-5.aliyuncs.com', + 'endpoint' => 'maxcompute.ap-southeast-5.aliyuncs.com', + 'vpc' => 'maxcompute-vpc.ap-southeast-5.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hangzhou', + 'regionName' => 'China (Hangzhou)', + 'areaId' => 'asiaPacific', + 'areaName' => 'Asia Pacific', + 'public' => 'maxcompute.cn-hangzhou.aliyuncs.com', + 'endpoint' => 'maxcompute.cn-hangzhou.aliyuncs.com', + 'vpc' => 'maxcompute-vpc.cn-hangzhou.aliyuncs.com', + ], + [ + 'regionId' => 'us-east-1', + 'regionName' => 'US (Virginia)', + 'areaId' => 'europeAmerica', + 'areaName' => 'Europe & Americas', + 'public' => 'maxcompute.us-east-1.aliyuncs.com', + 'endpoint' => 'maxcompute.us-east-1.aliyuncs.com', + 'vpc' => 'maxcompute-vpc.us-east-1.aliyuncs.com', + ], + [ + 'regionId' => 'eu-west-1', + 'regionName' => 'UK (London)', + 'areaId' => 'europeAmerica', + 'areaName' => 'Europe & Americas', + 'public' => 'maxcompute.eu-west-1.aliyuncs.com', + 'endpoint' => 'maxcompute.eu-west-1.aliyuncs.com', + 'vpc' => 'maxcompute-vpc.eu-west-1.aliyuncs.com', + ], + [ + 'regionId' => 'us-west-1', + 'regionName' => 'US (Silicon Valley)', + 'areaId' => 'europeAmerica', + 'areaName' => 'Europe & Americas', + 'public' => 'maxcompute.us-west-1.aliyuncs.com', + 'endpoint' => 'maxcompute.us-west-1.aliyuncs.com', + 'vpc' => 'maxcompute-vpc.us-west-1.aliyuncs.com', + ], + [ + 'regionId' => 'eu-central-1', + 'regionName' => 'Germany (Frankfurt)', + 'areaId' => 'europeAmerica', + 'areaName' => 'Europe & Americas', + 'public' => 'maxcompute.eu-central-1.aliyuncs.com', + 'endpoint' => 'maxcompute.eu-central-1.aliyuncs.com', + 'vpc' => 'maxcompute-vpc.eu-central-1.aliyuncs.com', + ], + [ + 'regionId' => 'me-east-1', + 'regionName' => 'UAE (Dubai)', + 'areaId' => 'middleEast', + 'areaName' => 'Middle East', + 'public' => 'maxcompute.aliyuncs.com', + 'endpoint' => 'maxcompute.aliyuncs.com', + 'vpc' => 'maxcompute-vpc.me-east-1.aliyuncs.com', + ], + [ + 'regionId' => 'me-central-1', + 'regionName' => 'Saudi Arabia (Riyadh)', + 'areaId' => 'middleEast', + 'areaName' => 'Middle East', + 'public' => 'maxcompute.me-central-1.aliyuncs.com', + 'endpoint' => 'maxcompute.me-central-1.aliyuncs.com', + 'vpc' => 'maxcompute-vpc.me-central-1.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hangzhou-finance', + 'regionName' => 'China East 1 Finance', + 'areaId' => 'industryCloud', + 'areaName' => 'Industry Cloud', + 'public' => 'maxcompute.cn-hangzhou-finance.aliyuncs.com', + 'endpoint' => 'maxcompute.cn-hangzhou-finance.aliyuncs.com', + 'vpc' => 'maxcompute-vpc.cn-hangzhou-finance.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shenzhen-finance-1', + 'regionName' => 'China South 1 Finance', + 'areaId' => 'industryCloud', + 'areaName' => 'Industry Cloud', + 'public' => 'maxcompute.cn-shenzhen-finance-1.aliyuncs.com', + 'endpoint' => 'maxcompute.cn-shenzhen-finance-1.aliyuncs.com', + 'vpc' => 'maxcompute-vpc.cn-shenzhen-finance-1.aliyuncs.com', + ], + [ + 'regionId' => 'cn-beijing-finance-1', + 'regionName' => 'China North 2 Finance (Preview)', + 'areaId' => 'industryCloud', + 'areaName' => 'Industry Cloud', + 'public' => 'macompute.cn-beijing-finance-1.aliyuncs.com', + 'endpoint' => 'macompute.cn-beijing-finance-1.aliyuncs.com', + 'vpc' => 'maxcompute-vpc.cn-beijing-finance-1.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shanghai-finance-1', + 'regionName' => 'China East 2 Finance', + 'areaId' => 'industryCloud', + 'areaName' => 'Industry Cloud', + 'public' => 'maxcompute.cn-shanghai-finance-1.aliyuncs.com', + 'endpoint' => 'maxcompute.cn-shanghai-finance-1.aliyuncs.com', + 'vpc' => 'maxcompute-vpc.cn-shanghai-finance-1.aliyuncs.com', + ], + ], + 'errorCodes' => [ + [ + 'code' => 'ILLEGAL_ARGUMENT', + 'message' => 'The parameter is illegal.', + 'http_code' => 400, + 'description' => 'Illegal parameter', + ], + [ + 'code' => 'ILLEGAL_REQUEST', + 'message' => 'The parameter is illegal.', + 'http_code' => 400, + 'description' => 'Illegal Request', + ], + [ + 'code' => 'INTERNAL_SERVER_ERROR', + 'message' => 'Server error.', + 'http_code' => 500, + 'description' => 'Server Error', + ], + [ + 'code' => 'InvalidParameter.Condition', + 'message' => 'The parameter Condition is wrongly formed.', + 'http_code' => 400, + 'description' => 'Condition parameters are not filled in correctly.', + ], + [ + 'code' => 'INVALID_USER', + 'message' => 'Please buy MaxCompute product firstly. The user does not exist.', + 'http_code' => 400, + 'description' => 'The user does not exist. Please buy MaxCompute product firstly.', + ], + [ + 'code' => 'METER_CENTER_ERROR', + 'message' => 'Call meter center create job failed.', + 'http_code' => 500, + 'description' => 'Failed to call metering center.', + ], + [ + 'code' => 'NO_PERMISSION', + 'message' => 'sub user has no permission to access object.', + 'http_code' => 403, + 'description' => 'The user does not have permission to manipulate the Maxcompute resource.', + ], + [ + 'code' => 'OBJECT_NOT_EXIST', + 'message' => 'This object does not exist.', + 'http_code' => 404, + 'description' => 'Object does not exist.', + ], + [ + 'code' => 'ProjectNotExist', + 'message' => 'The project does not exist.', + 'http_code' => 403, + 'description' => 'the project is not exist', + ], + [ + 'code' => 'QUOTA_ADHOC_NOT_ENOUGH', + 'message' => 'There is not enough adhoc cu.', + 'http_code' => 400, + 'description' => 'There is not enough adhoc cu.', + ], + [ + 'code' => 'QUOTA_PLAN_NOT_FOUND', + 'message' => 'This quota plan is not exist.', + 'http_code' => 404, + 'description' => '', + ], + [ + 'code' => 'QUOTA_TIMER_HANDLE_FAILED', + 'message' => 'This quota timer of Tunnel Quota is abnormal.', + 'http_code' => 400, + 'description' => 'The time-sharing configuration of the data transmission service exclusive resource group (Tunnel Quota) is abnormal.', + ], + [ + 'code' => 'QUOTA_UNKNOWN_NICKNAME', + 'message' => 'Cannot found quota by nickname.', + 'http_code' => 400, + 'description' => 'Quota cannot be queried based on the filled nickname.', + ], + ], + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'GetStorageSizeSummary', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'ListResources', + ], + [ + 'threshold' => '-1', + 'countWindow' => 1, + 'regionId' => '*', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'ListUsers', + ], + [ + 'threshold' => '800', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'GetQuota', + ], + [ + 'threshold' => '300', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'ListProjects', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'GetComputeEffectivePlan', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'ApplyComputeQuotaPlan', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'GetJobInfo', + ], + [ + 'threshold' => '400', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'QueryTunnelMetric', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'UpdateQuotaPlan', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'DeleteComputeQuotaPlan', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'CreateQuotaPlan', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'ListComputeMetricsByInstance', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'ListTunnelQuotaTimer', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'DeleteQuotaPlan', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'UpdateProjectBasicMeta', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'ListFunctions', + ], + [ + 'threshold' => '800', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'GetTableInfo', + ], + [ + 'threshold' => '800', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'GetProject', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'GetRoleAcl', + ], + [ + 'threshold' => '300', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'GetQuotaUsage', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'ListJobSnapshotInfos', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'GetQuotaPlan', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'KillJobs', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'GetPackage', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'GetRoleAclOnObject', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'ListComputeQuotaPlan', + ], + [ + 'threshold' => '800', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'QueryQuota', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'ListQuotasPlans', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'UpdateComputeQuotaPlan', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'GetJobResourceUsage', + ], + [ + 'threshold' => '500', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'GetRunningJobs', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'ListStoragePartitionsInfo', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'UpdateComputeSubQuota', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'UpdatePackage', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'ListProjectUsers', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'CreateProject', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'GetStorageAmountSummary', + ], + [ + 'threshold' => '500', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'ListJobInfos', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'ListJobMetric', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'CreateComputeQuotaPlan', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'GetQuotaSchedule', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'GetTrustedProjects', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'GetComputeQuotaSchedule', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'GetComputeQuotaPlan', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'ListRoles', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'CreateRole', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'CreatePackage', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'UpdateComputeQuotaSchedule', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'UpdateTunnelQuotaTimer', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'ListPackages', + ], + [ + 'threshold' => '400', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'QueryTunnelMetricDetail', + ], + [ + 'threshold' => '300', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'ListQuotas', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'UpdateProjectDefaultQuota', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'UpdateProjectIpWhiteList', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'UpdateQuotaSchedule', + ], + [ + 'threshold' => '500', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'ListUsersByRole', + ], + [ + 'threshold' => '500', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'ListStorageTablesInfo', + ], + [ + 'threshold' => '300', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'ListTables', + ], + [ + 'threshold' => '100', + 'countWindow' => 60, + 'regionId' => '*', + 'api' => 'GetRolePolicy', + ], + ], + ], + 'ram' => [ + 'productCode' => 'MaxCompute', + 'productName' => 'MaxCompute', + 'ramCodes' => [ + 'odps', + 'maxcompute', + ], + 'ramLevel' => 'RESOURCE', + 'ramConditions' => [ + [ + 'name' => 'odps:Encryption', + 'schema' => [ + 'type' => 'Boolean', + 'description' => 'Whether encryption is enabled for the project', + ], + ], + ], + 'ramActions' => [ + [ + 'apiName' => 'GetMmsDb', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetMmsDb', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + [ + 'apiName' => 'ListTunnelQuotaTimer', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListQuotaTimers', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'ListMmsTables', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListMmsTables', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + [ + 'apiName' => 'GetMmsAsyncTask', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetMmsAsyncTask', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + [ + 'apiName' => 'ListStorageProjectsInfo', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListStorageProjectsInfo', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'StartMmsJob', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:StartMmsJob', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + [ + 'apiName' => 'GetProject', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetProject', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + [ + 'apiName' => 'QueryTunnelMetric', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:QueryTunnelMetric', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Tunnel', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:tunnel/{#metric}', + ], + ], + ], + ], + [ + 'apiName' => 'ListMmsDataSources', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListMmsDataSources', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'UpdateProjectDefaultQuota', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:UpdateProjectDefaultQuota', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + [ + 'apiName' => 'GetQuotaSchedule', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetQuotaSchedule', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + [ + 'apiName' => 'GetRolePolicy', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetRolePolicy', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + [ + 'apiName' => 'UpdateQuotaSchedule', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:UpdateQuotaSchedule', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + [ + 'apiName' => 'ListMmsTasks', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListMmsTasks', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + [ + 'apiName' => 'ListUsers', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListUsers', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'GetMmsJob', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetMmsJob', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + [ + 'apiName' => 'GetTrustedProjects', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetTrustedProjects', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'conditional', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + [ + 'apiName' => 'GetComputeQuotaSchedule', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetQuotaSchedule', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + [ + 'apiName' => 'UpdateProjectIpWhiteList', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:UpdateProjectIpWhiteList', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + [ + 'apiName' => 'GetStorageSummaryCompared', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetStorageSummaryCompared', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'UpdateMmsDataSource', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:UpdateMmsDataSource', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + [ + 'apiName' => 'ListUsersByRole', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListUsersByRole', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + [ + 'apiName' => 'ListJobSnapshotInfos', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListJobSnapshotInfos', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'GetMmsTable', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetMmsTable', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + [ + 'apiName' => 'ListPackages', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListPackages', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + [ + 'apiName' => 'GetStorageAmountSummary', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetStorageAmountSummary', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'GetJobInfo', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetJobInfo', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Job', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:job/{#instanceId}', + ], + ], + ], + ], + [ + 'apiName' => 'ListMmsJobs', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListMmsJobs', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + [ + 'apiName' => 'ListResources', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListResources', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + [ + 'apiName' => 'UpdatePackage', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:UpdatePackage', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + [ + 'apiName' => 'GetJobResourceUsage', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:GetJobResourceUsage', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'DeleteQuotaPlan', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'odps:DeleteQuotaPlan', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + [ + 'apiName' => 'ListComputeQuotaPlan', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListQuotasPlans', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + [ + 'apiName' => 'CreateQuotaPlan', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'odps:CreateQuotaPlan', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + [ + 'apiName' => 'CreateMmsFetchMetadataJob', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'odps:CreateMmsFetchMetadataJob', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + [ + 'apiName' => 'DeleteMmsDataSource', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'odps:DeleteMmsDataSource', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + [ + 'apiName' => 'GetQuota', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetQuota', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + [ + 'apiName' => 'QueryQuotaMetric', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:QueryQuotaMetric', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quota/{#metric}', + ], + ], + ], + ], + [ + 'apiName' => 'QueryStorageMetric', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:QueryStorageMetric', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Storage', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:storage/{#metric}', + ], + ], + ], + ], + [ + 'apiName' => 'ListComputeMetricsByInstance', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListComputeMetricsByInstance', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'ListProjects', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListProjects', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'conditional', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/*', + ], + ], + ], + ], + [ + 'apiName' => 'UpdateQuotaPlan', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:UpdateQuotaPlan', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + [ + 'apiName' => 'UpdateProjectModelTier', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:UpdateProjectModelTier', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + [ + 'apiName' => 'UpdateComputeQuotaSchedule', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:UpdateQuotaSchedule', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + [ + 'apiName' => 'GetMmsTask', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetMmsTask', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + [ + 'apiName' => 'GetQuotaUsage', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetQuotaUsage', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#nickName}', + ], + ], + ], + ], + [ + 'apiName' => 'ListRoles', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListRoles', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + [ + 'apiName' => 'DeleteComputeQuotaPlan', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'odps:DeleteQuotaPlan', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + [ + 'apiName' => 'GetComputeQuotaPlan', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetQuotaPlan', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + [ + 'apiName' => 'UpdateUsersToRole', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:UpdateUsersToRole', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + [ + 'apiName' => 'ListQuotasPlans', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:ListQuotasPlans', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + [ + 'apiName' => 'ListJobMetric', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListJobMetric', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'ListStorageTablesInfo', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:ListStorageTablesInfo', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Storage', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:storage/{#project}', + ], + ], + ], + ], + [ + 'apiName' => 'ListJobInfos', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListJobInfos', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'RetryMmsJob', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:RetryMmsJob', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + [ + 'apiName' => 'GetRoleAclOnObject', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetRoleAclOnObject', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + [ + 'apiName' => 'StopMmsJob', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:StopMmsJob', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + [ + 'apiName' => 'CreateMmsJob', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'odps:CreateMmsJob', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + [ + 'apiName' => 'GetRoleAcl', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetRoleAcl', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + [ + 'apiName' => 'ListProjectUsers', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:ListProjectUsers', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + [ + 'apiName' => 'GetComputeEffectivePlan', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetEffectivePlan', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'QuotaPlan', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + [ + 'apiName' => 'ListTables', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListTables', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + [ + 'apiName' => 'GetStorageSizeSummary', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetStorageSizeSummary', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'CreateRole', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'odps:CreateRole', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#projectName}', + ], + ], + ], + ], + [ + 'apiName' => 'QueryQuota', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:QueryQuota', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + [ + 'apiName' => 'UpdateComputeQuotaPlan', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:UpdateQuotaPlan', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + [ + 'apiName' => 'SumStorageMetricsByDate', + 'description' => '', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'odps:SumStorageMetricsByDate', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'DeleteMmsJob', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'odps:DeleteMmsJob', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + [ + 'apiName' => 'GetRunningJobs', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:GetRunningJobs', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'ListStoragePartitionsInfo', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:ListStoragePartitionsInfo', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Storage', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:storage/{#project}', + ], + ], + ], + ], + [ + 'apiName' => 'GetMmsDataSource', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetMmsDataSource', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + [ + 'apiName' => 'ListQuotas', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:ListQuotas', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/*', + ], + ], + ], + ], + [ + 'apiName' => 'DeleteProject', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'odps:DeleteProject', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + [ + 'apiName' => 'UpdateComputeSubQuota', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:UpdateSubQuotas', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + [ + 'apiName' => 'ListMmsDbs', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListMmsDbs', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + [ + 'apiName' => 'ListMmsPartitions', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListMmsPartitions', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + [ + 'apiName' => 'CreateProject', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'odps:CreateProject', + 'authLevel' => 'resource', + 'actionConditions' => [ + [ + 'conditionKey' => 'odps:Encryption', + 'validationType' => 'always', + ], + ], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:project/*', + ], + ], + ], + ], + [ + 'apiName' => 'GetPackage', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetPackage', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + [ + 'apiName' => 'UpdateProjectBasicMeta', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:UpdateProjectBasicMeta', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + [ + 'apiName' => 'QueryTunnelMetricDetail', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:QueryTunnelMetricDetail', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Tunnel', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:tunnel/{#metric}', + ], + ], + ], + ], + [ + 'apiName' => 'GetQuotaPlan', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetQuotaPlan', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + [ + 'apiName' => 'ListFunctions', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListFunctions', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + [ + 'apiName' => 'CreateMmsDataSource', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'odps:CreateMmsDataSource', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'CreatePackage', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'odps:CreatePackage', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + [ + 'apiName' => 'ListMmsTaskLogs', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'odps:ListMmsTaskLogs', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + [ + 'apiName' => 'CreateComputeQuotaPlan', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'odps:CreateQuotaPlan', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + [ + 'apiName' => 'KillJobs', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:KillJobs', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'ApplyComputeQuotaPlan', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:ApplyComputeQuotaPlan', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + ], + ], + ], + [ + 'apiName' => 'GetTableInfo', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetTableInfo', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + ], + ], + ], + [ + 'apiName' => 'GetMmsFetchMetadataJob', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetMmsFetchMetadataJob', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + [ + 'apiName' => 'UpdateTunnelQuotaTimer', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'odps:UpdateQuotaTimers', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'GetMmsPartition', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'odps:GetMmsPartition', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'MaxCompute', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + ], + ], + ], + ], + 'resourceTypes' => [ + [ + 'validationType' => 'always', + 'resourceType' => 'project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + [ + 'validationType' => 'always', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quota/{#NickName}', + ], + [ + 'validationType' => 'always', + 'resourceType' => 'Storage', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:storage/*', + ], + [ + 'validationType' => 'always', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/{#ProjectName}', + ], + [ + 'validationType' => 'always', + 'resourceType' => 'Tunnel', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:tunnel/{#metric}', + ], + [ + 'validationType' => 'always', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/*', + ], + [ + 'validationType' => 'always', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + [ + 'validationType' => 'always', + 'resourceType' => 'User', + 'arn' => 'acs:odps:*:{#accountId}:user/*', + ], + [ + 'validationType' => 'always', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:mmsdatasource/{#sourceId}', + ], + [ + 'validationType' => 'always', + 'resourceType' => 'Job', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:job/*', + ], + [ + 'validationType' => 'always', + 'resourceType' => 'Job', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:job/{#instanceId}', + ], + [ + 'validationType' => 'always', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quota/{#metric}', + ], + [ + 'validationType' => 'always', + 'resourceType' => 'Storage', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:storage/{#metric}', + ], + [ + 'validationType' => 'conditional', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:projects/*', + ], + [ + 'validationType' => 'always', + 'resourceType' => 'Storage', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:storage/{#project}', + ], + [ + 'validationType' => 'always', + 'resourceType' => 'QuotaPlan', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/{#NickName}', + ], + [ + 'validationType' => 'always', + 'resourceType' => 'Quota', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:quotas/*', + ], + [ + 'validationType' => 'always', + 'resourceType' => 'Project', + 'arn' => 'acs:odps:{#regionId}:{#accountId}:project/*', + ], + ], + ], +]; |
