diff options
Diffstat (limited to 'data/en_us/schedulerx2')
| -rw-r--r-- | data/en_us/schedulerx2/2019-04-30/api-docs.php | 16912 |
1 files changed, 7120 insertions, 9792 deletions
diff --git a/data/en_us/schedulerx2/2019-04-30/api-docs.php b/data/en_us/schedulerx2/2019-04-30/api-docs.php index d890d43..d50da86 100644 --- a/data/en_us/schedulerx2/2019-04-30/api-docs.php +++ b/data/en_us/schedulerx2/2019-04-30/api-docs.php @@ -1,189 +1,108 @@ <?php return [ 'version' => '1.0', - 'info' => [ - 'style' => 'RPC', - 'product' => 'schedulerx2', - 'version' => '2019-04-30', - ], + 'info' => ['style' => 'RPC', 'product' => 'schedulerx2', 'version' => '2019-04-30'], 'directories' => [ [ - 'id' => 130044, - 'title' => 'Region', + 'children' => ['CreateNamespace', 'DeleteNamespace', 'UpdateNamespace'], 'type' => 'directory', - 'children' => [ - 'DescribeRegions', - ], - ], - [ - 'id' => 167610, 'title' => 'Namespace', - 'type' => 'directory', - 'children' => [ - 'CreateNamespace', - 'ListNamespaces', - 'DeleteNamespace', - 'UpdateNamespace', - ], ], [ - 'id' => 130046, - 'title' => 'Application Group', + 'children' => ['CreateAppGroup', 'GetAppGroup', 'UpdateAppGroup', 'ListGroups'], 'type' => 'directory', - 'children' => [ - 'CreateAppGroup', - 'GetAppGroup', - 'DeleteAppGroup', - 'UpdateAppGroup', - 'ListGroups', - 'GetWorkerList', - ], + 'title' => 'Application Group', ], [ - 'id' => 130049, - 'title' => 'Workflow', + 'children' => ['UpdateWorkflowDag', 'ListWorkFlows', 'ExecuteWorkflow', 'DeleteWorkflow', 'GetWorkFlow'], 'type' => 'directory', - 'children' => [ - 'CreateWorkflow', - 'UpdateWorkflow', - 'UpdateWorkflowDag', - 'ListWorkFlows', - 'ExecuteWorkflow', - 'DeleteWorkflow', - 'DisableWorkflow', - 'EnableWorkflow', - 'GetWorkFlow', - 'GetWorkflowInstance', - 'ListWorkflowInstance', - 'SetWfInstanceSuccess', - ], + 'title' => 'Workflow', ], [ - 'id' => 130055, - 'title' => 'Job', + 'children' => ['CreateJob', 'BatchDeleteJobs', 'UpdateJob', 'BatchDisableJobs', 'ListJobs', 'UpdateJobScript', 'ListJobScriptHistory', 'ReadSchedulerxDesignateInfo', 'ReadSchedulerxDesignateDetail', 'ManageSchedulerxJobSync'], 'type' => 'directory', - 'children' => [ - 'CreateJob', - 'DeleteJob', - 'BatchDeleteJobs', - 'UpdateJob', - 'DisableJob', - 'BatchEnableJobs', - 'BatchDisableJobs', - 'EnableJob', - 'GetJobInfo', - 'ListJobs', - 'ExecuteJob', - 'DesignateWorkers', - 'RerunJob', - 'UpdateJobScript', - 'ListJobScriptHistory', - 'ReadSchedulerxDesignateInfo', - 'ReadSchedulerxDesignateDetail', - 'ManageSchedulerxJobSync', - ], + 'title' => 'Job', ], [ - 'id' => 130066, - 'title' => 'Instance', + 'children' => ['GetJobInstance'], 'type' => 'directory', - 'children' => [ - 'StopInstance', - 'GetJobInstance', - 'GetJobInstanceList', - 'RetryJobInstance', - 'SetJobInstanceSuccess', - ], + 'title' => 'Instance', ], [ - 'id' => 167612, - 'title' => 'Permission Settings', + 'children' => ['BatchDeleteRouteStrategy'], 'type' => 'directory', - 'children' => [ - 'GrantPermission', - 'RevokePermission', - ], + 'title' => 'Route Strategy', ], [ - 'id' => 179264, - 'title' => 'Log', + 'children' => ['CreateSchedulerxNotificationPolicy', 'DeleteSchedulerxNotificationPolicy', 'ManageSchedulerxNotificationPolicy', 'ReadSchedulerxNotificationPolicy'], 'type' => 'directory', - 'children' => [ - 'GetLog', - ], + 'title' => 'Notification Policy', ], [ - 'id' => 181204, - 'title' => 'Route Strategy', + 'children' => ['CreateSchedulerxCalendar', 'DeleteSchedulerxCalendar', 'ManageSchedulerxCalendar', 'ReadSchedulerxCalendar'], 'type' => 'directory', - 'children' => [ - 'DeleteRouteStrategy', - 'BatchDeleteRouteStrategy', - 'CreateRouteStrategy', - ], + 'title' => 'Calendar', ], [ - 'id' => 313005, - 'title' => 'Notification Policy', + 'children' => ['GetOverview'], 'type' => 'directory', - 'children' => [ - 'CreateSchedulerxNotificationPolicy', - 'DeleteSchedulerxNotificationPolicy', - 'ManageSchedulerxNotificationPolicy', - 'ReadSchedulerxNotificationPolicy', - ], + 'title' => 'Other', ], [ - 'id' => 313010, - 'title' => 'Calendar', - 'type' => 'directory', 'children' => [ - 'CreateSchedulerxCalendar', - 'DeleteSchedulerxCalendar', - 'ManageSchedulerxCalendar', - 'ReadSchedulerxCalendar', + 'BatchEnableJobs', 'CreateRouteStrategy', 'CreateWorkflow', 'DeleteAppGroup', 'DeleteJob', 'DeleteRouteStrategy', 'DescribeRegions', 'DesignateWorkers', 'DisableJob', 'DisableWorkflow', 'EnableJob', 'EnableWorkflow', 'ExecuteJob', 'GetJobInfo', 'GetJobInstanceList', 'GetLog', 'GetWorkerList', 'GetWorkflowInstance', 'GrantPermission', 'ListNamespaces', + 'ListWorkflowInstance', 'RerunJob', 'RetryJobInstance', 'RevokePermission', 'SetJobInstanceSuccess', 'SetWfInstanceSuccess', 'StopInstance', 'UpdateWorkflow', ], - ], - [ - 'id' => 190137, - 'title' => 'Other', + 'title' => 'Others', 'type' => 'directory', - 'children' => [ - 'GetOverview', - ], ], ], 'components' => [ 'schemas' => [], ], 'apis' => [ - 'DescribeRegions' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'BatchDeleteJobs' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - ], + 'operationType' => 'write', + 'systemTags' => ['operationType' => 'delete'], 'parameters' => [ [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the Namespace that contains the Jobs. You can find this ID on the **Namespace** page in the Console.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], + ], + [ + 'name' => 'NamespaceSource', + 'in' => 'query', + 'schema' => ['description' => 'This parameter is required only for specific third-party integrations.', 'type' => 'string', 'required' => false, 'example' => 'Schedulerx', 'title' => ''], + ], + [ + 'name' => 'GroupId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the Application. You can find this ID on the **Application Management** page in the Console.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], + ], + [ 'name' => 'RegionId', 'in' => 'query', + 'schema' => ['description' => 'The Region where the Jobs are located.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], + ], + [ + 'name' => 'JobIdList', + 'in' => 'formData', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou', + 'description' => 'The IDs of the Jobs to delete.', + 'type' => 'array', + 'items' => ['description' => 'A Job ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '99341', 'title' => ''], + 'required' => true, + 'example' => '99341', + 'maxItems' => 3000, + 'title' => '', ], ], ], @@ -192,119 +111,138 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The error message that was returned only if the corresponding error occurred.'."\n", - 'type' => 'string', - 'example' => 'disable failed jobs=[99341]', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* **true**: The request was successful.'."\n" - .'* **false**: The request failed.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Regions' => [ - 'description' => 'The available regions.'."\n", - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'RegionEndpoint' => [ - 'description' => 'The endpoint of the region.'."\n", - 'type' => 'string', - 'example' => 'schedulerx.cn-hangzhou.aliyuncs.com', - ], - 'LocalName' => [ - 'description' => 'The display name of the region, which varies based on the current language.'."\n", - 'type' => 'string', - 'example' => 'China (Hangzhou)'."\n", - ], - 'RegionId' => [ - 'description' => 'The ID of the region.'."\n", - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - ], - ], - ], + 'Code' => ['description' => 'The response status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'message', 'title' => ''], + 'RequestId' => ['description' => 'The unique Request ID.', 'type' => 'string', 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7', 'title' => ''], + 'Success' => ['description' => 'Indicates if the operation succeeded. Valid values:'."\n" + ."\n" + .'- **true**: The operation succeeded.'."\n" + ."\n" + .'- **false**: The operation failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], + 'description' => 'The response data.', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"disable failed jobs=[99341]\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true,\\n \\"Regions\\": [\\n {\\n \\"RegionEndpoint\\": \\"schedulerx.cn-hangzhou.aliyuncs.com\\",\\n \\"LocalName\\": \\"杭州\\",\\n \\"RegionId\\": \\"cn-hangzhou\\"\\n }\\n ]\\n}","type":"json"}]', - 'title' => 'DescribeRegions', - 'summary' => 'Returns available regions.', - ], - 'CreateNamespace' => [ - 'summary' => 'Creates a namespace.', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => 'BatchDeleteJobs', + 'summary' => 'Deletes multiple Jobs.', + 'description' => 'Before you call this API, add the following dependency to your POM file:'."\n" + ."\n" + .'```xml'."\n" + .'<dependency>'."\n" + .' <groupId>com.aliyun</groupId>'."\n" + .' <artifactId>aliyun-java-sdk-schedulerx2</artifactId>'."\n" + .' <version>1.0.4</version>'."\n" + .'</dependency>'."\n" + .'```', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => '## Demo'."\n" + ."\n" + .'```java'."\n" + .'package com.alibaba.schedulerx.pop;'."\n" + ."\n" + .'import com.google.common.collect.Lists;'."\n" + ."\n" + .'import com.aliyuncs.DefaultAcsClient;'."\n" + .'import com.aliyuncs.profile.DefaultProfile;'."\n" + .'import com.aliyuncs.schedulerx2.model.v20190430.BatchDeleteJobsRequest;'."\n" + .'import com.aliyuncs.schedulerx2.model.v20190430.BatchDeleteJobsResponse;'."\n" + ."\n" + .'public class TestBatchDeleteJobs {'."\n" + ."\n" + .' public static void main(String[] args) throws Exception {'."\n" + .' // The ID of the region. Enter a value by referring to the Endpoints topic or based on the region in which you purchased the service.'."\n" + .' String regionId = "cn-hangzhou";'."\n" + .' // The AccessKey ID that is used for authentication. You can obtain the AccessKey ID in the Resource Access Management (RAM) console. '."\n" + .' String accessKeyId = "xxxxxx";'."\n" + .' // The AccessKey secret that is used for authentication. You can obtain the AccessKey secret in the RAM console. '."\n" + .' String accessKeySecret = "xxxxxxxx";'."\n" + .' // The name of the service. '."\n" + .' String productName ="schedulerx2";'."\n" + .' // The domain. Enter a domain by referring to the Endpoints topic. '."\n" + .' String domain ="schedulerx.cn-hangzhou.aliyuncs.com";'."\n" + .' // Build an API client. '."\n" + .' DefaultProfile.addEndpoint(regionId, productName, domain);'."\n" + .' DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);'."\n" + .' DefaultAcsClient client = new DefaultAcsClient(defaultProfile);'."\n" + .' '."\n" + .' BatchDeleteJobsRequest request = new BatchDeleteJobsRequest();'."\n" + .' request.setNamespace("xxxxxx");'."\n" + .' request.setGroupId("xxxxxx");'."\n" + .' request.setJobIdLists(Lists.newArrayList(3982L,3984L));'."\n" + .' BatchDeleteJobsResponse response = client.getAcsResponse(request);'."\n" + .' if (!response.getSuccess()) {'."\n" + .' System.out.println(response.getMessage());'."\n" + .' System.out.println("BatchDeleteJob: "+response.getRequestId());'."\n" + .' } else {'."\n" + .' System.out.println(response.getMessage());'."\n" + .' }'."\n" + .' }'."\n" + .' '."\n" + .'}'."\n" + .'```'."\n", + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-21T02:51:00.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-12-26T01:59:02.000Z', 'description' => 'Request parameters changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'edas:DeleteSchedulerxJobDelete', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"message\\",\\n \\"RequestId\\": \\"71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7\\",\\n \\"Success\\": true\\n}","type":"json"}]', + ], + 'BatchDeleteRouteStrategy' => [ + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], + 'operationType' => 'write', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'create', - ], + 'systemTags' => ['operationType' => 'delete'], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The ID of the Region.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'Uid', + 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The unique identifier (UID) of the namespace. We recommend that you use the universally unique identifier (UUID) to generate the UID.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'schema' => ['description' => 'The ID of the Namespace. You can find the ID on the **Namespaces** page in the Console.', 'type' => 'string', 'required' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ - 'name' => 'Name', + 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the namespace.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'test-env', - ], + 'schema' => ['description' => 'The ID of the Application. You can find the ID on the **Application Management** page in the Console.', 'type' => 'string', 'required' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ - 'name' => 'Description', - 'in' => 'query', + 'name' => 'JobIdList', + 'in' => 'formData', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The description of the namespace.'."\n", - 'type' => 'string', + 'description' => 'A list of Job IDs.', + 'type' => 'array', + 'items' => ['description' => 'The ID of the Job. You can find the ID on the **Task Management** page in the Console.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '99341', 'title' => ''], 'required' => false, - 'example' => 'Test', + 'maxItems' => 3000, + 'title' => '', + 'example' => '', ], ], ], @@ -312,100 +250,88 @@ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'The response schema.'."\n", + 'description' => 'The response object.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', - ], - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The error message that is returned only if the corresponding error occurs.'."\n", - 'type' => 'string', - 'example' => 'namespace=test3 is existed, noting update', - ], - 'Success' => [ - 'description' => 'Indicates whether the application was created. Valid values:'."\n" - ."\n" - .'* **true**'."\n" - .'* **false**'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Data' => [ - 'description' => 'The information about the namespace.'."\n", - 'type' => 'object', - 'properties' => [ - 'NamespaceUid' => [ - 'description' => 'The UID of the namespace.'."\n", - 'type' => 'string', - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], - ], - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.', 'type' => 'string', 'example' => '704A2A61-3681-5568-92F7-2DFCC53F33D1'], + 'Code' => ['description' => 'The returned status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The returned message.', 'type' => 'string', 'example' => 'job is not existed, jobId=162837', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request succeeded. Valid values:'."\n" + ."\n" + .'- **true**: The request succeeded.'."\n" + ."\n" + .'- **false**: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"namespace=test3 is existed, noting update\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"NamespaceUid\\": \\"adcfc35d-e2fe-4fe9-bbaa-20e90ffc****\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"","errorExample":""}]', - 'title' => 'CreateNamespace', - ], - 'ListNamespaces' => [ - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'BatchDeleteRouteStrategy', + 'summary' => 'Deletes multiple Route Strategies in a batch.', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-21T05:52:09.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-03-30T08:41:59.000Z', 'description' => 'Response parameters changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'edas:DeleteSchedulerxRouteStrategyBatch', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"704A2A61-3681-5568-92F7-2DFCC53F33D1\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"job is not existed, jobId=162837\\",\\n \\"Success\\": true\\n}","type":"json"}]', + ], + 'BatchDisableJobs' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', - 'systemTags' => [ - 'operationType' => 'get', - ], + 'operationType' => 'write', + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The ID of the namespace that contains the jobs. You can find this ID on the **Namespaces** page in the console.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ - 'name' => 'NamespaceName', + 'name' => 'NamespaceSource', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the namespace.', - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx-dev', - ], + 'schema' => ['description' => 'This parameter is used only by specific third-party services.', 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ - 'name' => 'Namespace', + 'name' => 'GroupId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the application group. You can find this ID on the **Application Management** page in the console.', 'type' => 'string', 'required' => false, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], + ], + [ + 'name' => 'RegionId', 'in' => 'query', + 'schema' => ['description' => 'The ID of the region where the jobs are located.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], + ], + [ + 'name' => 'JobIdList', + 'in' => 'formData', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The namespace ID.', - 'type' => 'string', - 'required' => false, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', + 'description' => 'The IDs of the jobs to disable.', + 'type' => 'array', + 'items' => ['description' => 'A Job ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '99341', 'title' => ''], + 'required' => true, + 'example' => '99341', + 'maxItems' => 3000, + 'title' => '', ], ], ], @@ -414,217 +340,100 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message.'."\n", - 'type' => 'string', - 'example' => 'message', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB58C', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* **true**'."\n" - .'* **false**'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Data' => [ - 'description' => 'The information about the namespaces.'."\n", - 'type' => 'object', - 'properties' => [ - 'Namespaces' => [ - 'description' => 'The namespaces and their details.'."\n", - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Name' => [ - 'description' => 'The name of the namespace.'."\n", - 'type' => 'string', - 'example' => 'doc', - ], - 'Description' => [ - 'description' => 'The description of the namespace.'."\n", - 'type' => 'string', - 'example' => 'test', - ], - 'UId' => [ - 'description' => 'The namespace ID.'."\n", - 'type' => 'string', - 'example' => '1a72ecb1-b4cc-400a-a71b-20cdec9b****', - ], - ], - ], - ], - ], - ], + 'Code' => ['description' => 'The status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'A message that provides more information about the response.', 'type' => 'string', 'example' => 'disable failed jobs=[99341]', 'title' => ''], + 'RequestId' => ['description' => 'The unique ID of the request.', 'type' => 'string', 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7', 'title' => ''], + 'Success' => ['description' => 'Whether the operation was successful. Valid values:'."\n" + ."\n" + .'- **true**: The operation was successful.'."\n" + ."\n" + .'- **false**: The operation failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], + 'description' => 'The response object.', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"message\\",\\n \\"RequestId\\": \\"71BCC0E3-64B2-4B63-A870-AFB64EBCB58C\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"Namespaces\\": [\\n {\\n \\"Name\\": \\"doc\\",\\n \\"Description\\": \\"test\\",\\n \\"UId\\": \\"1a72ecb1-b4cc-400a-a71b-20cdec9b****\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ListNamespacesResponse>\\n<Message>You have an error in your SQL syntax</Message>\\n<RequestId>71BCC0E3-64B2-4B63-A870-AFB64EBCB58C</RequestId>\\n<Data>\\n <Namespaces>\\n <UId>1a72ecb1-b4cc-400a-a71b-20cdec9b****</UId>\\n <Description>test</Description>\\n <Name>doc</Name>\\n </Namespaces>\\n</Data>\\n<Code/>\\n<Success>true</Success>\\n</ListNamespacesResponse>","errorExample":""}]', - 'title' => 'ListNamespaces', - 'summary' => 'Queries namespaces.', - 'description' => 'Before you call this operation, you must add the following dependency to the pom.xml file:'."\n" + 'title' => 'BatchDisableJobs', + 'summary' => 'Disables multiple jobs in a batch.', + 'description' => 'To call this API, add the following dependency to your POM File:'."\n" ."\n" - .' <dependency>'."\n" - .' <groupId>com.aliyun</groupId>'."\n" - .' <artifactId>aliyun-java-sdk-schedulerx2</artifactId>'."\n" - .' <version>1.0.5</version>'."\n" - .' </dependency>'."\n", + .'```xml'."\n" + .'<dependency>'."\n" + .' <groupId>com.aliyun</groupId>'."\n" + .' <artifactId>aliyun-java-sdk-schedulerx2</artifactId>'."\n" + .' <version>1.0.4</version>'."\n" + .'</dependency>'."\n" + .'```', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', - 'extraInfo' => '## Sample code'."\n" + 'extraInfo' => '## Demo'."\n" ."\n" .' package com.alibaba.schedulerx.pop;'."\n" ."\n" - .' import java.util.List;'."\n" + .' import com.google.common.collect.Lists;'."\n" ."\n" .' import com.aliyuncs.DefaultAcsClient;'."\n" - .' import com.aliyuncs.exceptions.ClientException;'."\n" - .' import com.aliyuncs.exceptions.ServerException;'."\n" .' import com.aliyuncs.profile.DefaultProfile;'."\n" - .' import com.aliyuncs.schedulerx2.model.v20190430.ListNamespacesRequest;'."\n" - .' import com.aliyuncs.schedulerx2.model.v20190430.ListNamespacesResponse;'."\n" - .' import com.aliyuncs.schedulerx2.model.v20190430.ListNamespacesResponse.Data.Namespace;'."\n" + .' import com.aliyuncs.schedulerx2.model.v20190430.BatchDisableJobsRequest;'."\n" + .' import com.aliyuncs.schedulerx2.model.v20190430.BatchDisableJobsResponse;'."\n" ."\n" - .' public class TestListNamespaces {'."\n" + .' public class TestBatchDisableJobs {'."\n" ."\n" - .' public static void main(String[] args) {'."\n" - .' // The region ID. Enter a value by referring to the Endpoints topic or based on the region in which you purchased the service. '."\n" - .' String regionId = "cn-test";'."\n" - .' // The AccessKey ID that is used for authentication. You can obtain the AccessKey ID in the RAM console. '."\n" - .' String accessKeyId = "XXXXXXXX";'."\n" + .' public static void main(String[] args) throws Exception {'."\n" + .' // The ID of the region. Enter a value by referring to the Endpoints topic or based on the region in which you purchased the service. '."\n" + .' String regionId = "cn-hangzhou";'."\n" + .' // The AccessKey ID that is used for authentication. You can obtain the AccessKey ID in the Resource Access Management (RAM) console. '."\n" + .' String accessKeyId = "xxxxxx";'."\n" .' // The AccessKey secret that is used for authentication. You can obtain the AccessKey secret in the RAM console. '."\n" - .' String accessKeySecret = "XXXXXXXX";'."\n" + .' String accessKeySecret = "xxxxxxxx";'."\n" .' // The name of the service. '."\n" .' String productName ="schedulerx2";'."\n" .' // The domain. Enter a domain by referring to the Endpoints topic. '."\n" - .' String domain ="schedulerx.aliyuncs.com";'."\n" + .' String domain ="schedulerx.cn-hangzhou.aliyuncs.com";'."\n" .' // Build an API client. '."\n" .' DefaultProfile.addEndpoint(regionId, productName, domain);'."\n" .' DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);'."\n" .' DefaultAcsClient client = new DefaultAcsClient(defaultProfile);'."\n" .' '."\n" - .' ListNamespacesRequest request = new ListNamespacesRequest();'."\n" - .' ListNamespacesResponse response;'."\n" - .' try {'."\n" - .' response = client.getAcsResponse(request);'."\n" - .' if (!response.getSuccess()) {'."\n" - .' System.out.println(response.getMessage());'."\n" - .' } else {'."\n" - .' List<Namespace> namespaces = response.getData().getNamespaces();'."\n" - .' for (Namespace namespace : namespaces) {'."\n" - .' System.out.println("namespace uid=" + namespace.getUId());'."\n" - .' }'."\n" - .' }'."\n" - .' } catch (ServerException e) {'."\n" - .' // TODO Auto-generated catch block'."\n" - .' e.printStackTrace();'."\n" - .' } catch (ClientException e) {'."\n" - .' // TODO Auto-generated catch block'."\n" - .' e.printStackTrace();'."\n" + .' BatchDisableJobsRequest request = new BatchDisableJobsRequest();'."\n" + .' request.setNamespace("xxxxxx");'."\n" + .' request.setGroupId("xxxxxx");'."\n" + .' request.setJobIdLists(Lists.newArrayList(3982L,3984L));'."\n" + .' BatchDisableJobsResponse response = client.getAcsResponse(request);'."\n" + .' if (!response.getSuccess()) {'."\n" + .' System.out.println(response.getMessage());'."\n" + .' System.out.println("BatchDisableJob: "+response.getRequestId());'."\n" + .' } else {'."\n" + .' System.out.println(response.getMessage());'."\n" .' }'."\n" .' }'."\n" .' '."\n" .' }'."\n", - ], - 'DeleteNamespace' => [ - 'summary' => 'Deletes a namespace.', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'operationType' => 'write', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'delete', - 'riskType' => 'none', - 'chargeType' => 'free', - ], - 'parameters' => [ - [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], - ], - [ - 'name' => 'Namespace', - 'in' => 'query', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespaces page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****'."\n", - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response'."\n", - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401107', - ], - 'Code' => [ - 'description' => 'The returned code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The additional information returned only if an error occurs.'."\n", - 'type' => 'string', - 'example' => 'The system namespace cannot be deleted', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-21T02:51:00.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-12-26T01:59:02.000Z', 'description' => 'Request parameters changed, Error codes changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxJobDisable', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401107\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"The system namespace cannot be deleted\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => 'DeleteNamespace', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"disable failed jobs=[99341]\\",\\n \\"RequestId\\": \\"71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7\\",\\n \\"Success\\": true\\n}","type":"json"}]', ], - 'UpdateNamespace' => [ - 'summary' => 'Updates a namespace.', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'https', - ], + 'BatchEnableJobs' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -632,97 +441,142 @@ ], 'operationType' => 'write', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - 'riskType' => 'none', - 'chargeType' => 'free', - ], + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The ID of the namespace to which the job belongs. You can obtain the namespace ID on the **Namespace** page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ - 'name' => 'Namespace', + 'name' => 'NamespaceSource', 'in' => 'query', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespaces page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****'."\n", - ], + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ - 'name' => 'NamespaceName', + 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the namespace.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'test', - ], + 'schema' => ['description' => 'The application ID. You can obtain the application ID on the **Application Management** page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => false, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ - 'name' => 'Description', + 'name' => 'RegionId', 'in' => 'query', + 'schema' => ['description' => 'The ID of the region to which the job belongs.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], + ], + [ + 'name' => 'JobIdList', + 'in' => 'formData', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The description of the namespace.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Test', + 'description' => 'The job IDs. Multiple job IDs are separated with commas (,).'."\n", + 'type' => 'array', + 'items' => ['description' => 'The job ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '99341', 'title' => ''], + 'required' => true, + 'example' => '99341', + 'maxItems' => 3000, + 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0', - ], - 'Code' => [ - 'description' => 'The returned code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The additional information returned only if an error occurs.'."\n", - 'type' => 'string', - 'example' => 'The system namespace cannot be modified', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The HTTP status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The returned additional information.'."\n", 'type' => 'string', 'example' => 'message', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the jobs were enabled at a time. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"message\\",\\n \\"RequestId\\": \\"71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<BatchEnableJobsResponse>\\n<Message>enable failed jobs=[99342]</Message>\\n<RequestId>71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7</RequestId>\\n<Code>200</Code>\\n<Success>true</Success>\\n</BatchEnableJobsResponse>","errorExample":""}]', + 'title' => 'BatchEnableJobs', + 'summary' => 'Enables multiple jobs at a time.', + 'description' => 'Before you call this operation, you must add the following dependency to the pom.xml file:'."\n" + ."\n" + .'```xml'."\n" + .'<dependency>'."\n" + .' <groupId>com.aliyun</groupId>'."\n" + .' <artifactId>aliyun-java-sdk-schedulerx2</artifactId>'."\n" + .' <version>1.0.4</version>'."\n" + .'</dependency>'."\n" + .'```'."\n", + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => '## Demo'."\n" + ."\n" + .' package com.alibaba.schedulerx.pop;'."\n" + ."\n" + .' import com.google.common.collect.Lists;'."\n" + ."\n" + .' import com.aliyuncs.DefaultAcsClient;'."\n" + .' import com.aliyuncs.profile.DefaultProfile;'."\n" + .' import com.aliyuncs.schedulerx2.model.v20190430.BatchEnableJobsRequest;'."\n" + .' import com.aliyuncs.schedulerx2.model.v20190430.BatchEnableJobsResponse;'."\n" + ."\n" + .' public class TestBatchEnableJobs {'."\n" + ."\n" + .' public static void main(String[] args) throws Exception {'."\n" + .' // The region ID. Enter a value by referring to the Endpoints topic or based on the region in which you purchased the service. '."\n" + .' String regionId = "cn-hangzhou";'."\n" + .' // The AccessKey ID that is used for authentication. You can obtain the AccessKey ID in the RAM console. '."\n" + .' String accessKeyId = "xxxxxx";'."\n" + .' // The AccessKey secret that is used for authentication. You can obtain the AccessKey secret in the RAM console. '."\n" + .' String accessKeySecret = "xxxxxxxx";'."\n" + .' // The name of the service. '."\n" + .' String productName ="schedulerx2";'."\n" + .' // The domain. Enter a domain by referring to the Endpoints topic. '."\n" + .' String domain ="schedulerx.cn-hangzhou.aliyuncs.com";'."\n" + .' // Build an API client. '."\n" + .' DefaultProfile.addEndpoint(regionId, productName, domain);'."\n" + .' DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);'."\n" + .' DefaultAcsClient client = new DefaultAcsClient(defaultProfile);'."\n" + .' '."\n" + .' BatchEnableJobsRequest request = new BatchEnableJobsRequest();'."\n" + .' request.setNamespace("xxxxxx");'."\n" + .' request.setGroupId("xxxxxx");'."\n" + .' request.setJobIdLists(Lists.newArrayList(3982L,3984L));'."\n" + .' BatchEnableJobsResponse response = client.getAcsResponse(request);'."\n" + .' if (!response.getSuccess()) {'."\n" + .' System.out.println(response.getMessage());'."\n" + .' System.out.println("BatchEnableJob: "+response.getRequestId());'."\n" + .' } else {'."\n" + .' System.out.println(response.getMessage());'."\n" + .' }'."\n" + .' }'."\n" + .' '."\n" + .' }'."\n", + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-21T02:51:00.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-12-26T01:59:02.000Z', 'description' => 'Request parameters changed, Error codes changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxJobEnable', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"The system namespace cannot be modified\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => 'UpdateNamespace', ], 'CreateAppGroup' => [ - 'summary' => 'Creates an application group. The AppKey is returned.', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'https', - ], + 'summary' => 'Creates an app group and returns an AppKey.', + 'methods' => ['get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -730,191 +584,115 @@ ], 'operationType' => 'write', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'create', - 'riskType' => 'none', - 'chargeType' => 'free', - ], + 'systemTags' => ['operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ 'name' => 'AppName', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the application.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'DocTest', - ], + 'schema' => ['description' => 'The application name.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'DocTest', 'title' => ''], ], [ 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'schema' => ['description' => 'The ID of the namespace. You can find this ID on the **Namespace** page in the console.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ 'name' => 'NamespaceSource', 'in' => 'query', - 'schema' => [ - 'description' => 'This parameter is not supported. You do not need to specify this parameter.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'This parameter is currently unsupported and can be left unspecified.', 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The application ID. You can obtain the application ID on the Application Management page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'TestSchedulerx.defaultGroup', - ], + 'schema' => ['description' => 'The ID of the application group. You can find this ID on the **Application Management** page in the console.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'TestSchedulerx.defaultGroup', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The ID of the region.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', - 'schema' => [ - 'description' => 'The description of the application.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Test', - ], + 'schema' => ['description' => 'The application description.', 'type' => 'string', 'required' => false, 'example' => 'Test', 'title' => ''], ], [ 'name' => 'MaxJobs', 'in' => 'query', - 'schema' => [ - 'description' => 'The maximum number of jobs.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1000', - ], + 'schema' => ['description' => 'The maximum number of jobs.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1000', 'title' => ''], ], [ 'name' => 'NamespaceName', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the namespace.'."\n", - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 'Test', - ], + 'schema' => ['description' => 'The name of the namespace.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'Test', 'title' => ''], ], [ 'name' => 'AppKey', 'in' => 'query', - 'schema' => [ - 'description' => 'The AppKey for the application.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'adcExHZviLcl****', - ], + 'schema' => ['description' => 'The AppKey of the application.', 'type' => 'string', 'required' => false, 'example' => 'adcExHZviLcl****', 'title' => ''], ], [ 'name' => 'MonitorConfigJson', 'in' => 'query', - 'schema' => [ - 'description' => 'The configuration of the alert. The value is a JSON string. For more information about this parameter, see **Additional information about request parameters**.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '{"sendChannel":"sms,ding"}', - ], + 'schema' => ['description' => 'Specifies the alert notification configuration as a JSON string. The string can contain the following properties: `sendChannel`, `alarmType`, and `webhookIsAtAll`.'."\n" + ."\n" + .'> For more information, see the **Additional information about request parameters** section.', 'type' => 'string', 'required' => false, 'example' => '{'."\n" + .' "sendChannel": "ding,sms,mail,phone",'."\n" + .' "alarmType": "Contacts",'."\n" + .' "webhookIsAtAll": false'."\n" + .'}', 'title' => ''], ], [ 'name' => 'MonitorContactsJson', 'in' => 'query', - 'schema' => [ - 'description' => 'The configuration of alert contacts. The value is a JSON string.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '[{"userName":"Tom","userPhone":"89756******"},{"userName":"Bob","ding":"http://www.example.com"}]'."\n", - ], + 'schema' => ['description' => 'The alert contacts. This can include individual contacts and contact groups.'."\n" + ."\n" + .'> For more information, see the **Additional information about request parameters** section.', 'type' => 'string', 'required' => false, 'example' => '['."\n" + .' {"name": "Alice Johnson"},'."\n" + .' {"name": "Lee Smith"}'."\n" + .']', 'title' => ''], ], [ 'name' => 'ScheduleBusyWorkers', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to schedule a busy worker.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - 'default' => 'true', - ], + 'schema' => ['description' => 'Specifies whether to schedule jobs on a busy worker.', 'type' => 'boolean', 'default' => 'true', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'EnableLog', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to enable logging. Valid values:'."\n" - ."\n" - .'* `true`: enabled'."\n" - .'* `false`: disabled', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => 'Specifies whether to enable logging.'."\n" + ."\n" + .'- `true`: Enable logging.'."\n" + ."\n" + .'- `false`: Disable logging.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'AppType', 'in' => 'query', - 'schema' => [ - 'description' => 'The type of application. Valid values:'."\n" - ."\n" - .'* `TRACE`: Application Monitoring'."\n" - .'* `EBPF`: Application Monitoring eBPF Edition', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => 'The application type.'."\n" + ."\n" + .'- `1`: Standard application.'."\n" + ."\n" + .'- `2`: Kubernetes (K8s) application.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'AppVersion', 'in' => 'query', 'schema' => [ 'title' => '应用版本,1:基础版,2:专业版', - 'description' => 'The application version. 1: Basic version, 2: Professional version.', + 'description' => 'The application version. Valid values: `1` (Basic Edition) and `2` (Professional Edition).', 'type' => 'integer', 'format' => 'int32', - 'required' => false, 'example' => '2', 'default' => '2', - 'enum' => [ - '1', - '2', - ], + 'enum' => ['1', '2'], + 'required' => false, ], ], [ 'name' => 'NotificationPolicyName', 'in' => 'query', - 'schema' => [ - 'title' => '通知策略名称', - 'type' => 'string', - 'example' => 'test-workday-notification', - ], + 'schema' => ['title' => 'Notification Policy Name ', 'description' => 'The notification policy name.', 'type' => 'string', 'example' => 'test-workday-notification', 'required' => false], ], ], 'responses' => [ @@ -922,304 +700,66 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The error message that is returned only if the corresponding error occurs.'."\n", - 'type' => 'string', - 'example' => 'Your request is denied as lack of ssl protect.', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '883AFE93-FB03-4FA9-A958-E750C6DE120C', - ], - 'Success' => [ - 'description' => 'Indicates whether the application was created. Valid values:'."\n" - ."\n" - .'* **true**'."\n" - .'* **false**'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The return code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message. Returned only when the request fails.', 'type' => 'string', 'example' => 'Your request is denied as lack of ssl protect.', 'title' => ''], + 'RequestId' => ['description' => 'The unique identifier for the request.', 'type' => 'string', 'example' => '883AFE93-FB03-4FA9-A958-E750C6DE120C', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the Application Group was successfully created. Valid values:'."\n" + ."\n" + .'- **true**: The Application Group was successfully created.'."\n" + ."\n" + .'- **false**: The Application Group failed to be created.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Data' => [ - 'description' => 'The information about the job group.'."\n", + 'description' => 'Information about the created Application Group.', 'type' => 'object', 'properties' => [ - 'AppGroupId' => [ - 'description' => 'The job group ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '6607', - ], - 'AppKey' => [ - 'description' => 'The AppKey for the application.'."\n", - 'type' => 'string', - 'example' => 'adcExHZviL******', - ], + 'AppGroupId' => ['description' => 'The Application Group ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '6607', 'title' => ''], + 'AppKey' => ['description' => 'The Application Key (AppKey).', 'type' => 'string', 'example' => 'adcExHZviL******', 'title' => ''], ], + 'title' => '', + 'example' => '', ], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Your request is denied as lack of ssl protect.\\",\\n \\"RequestId\\": \\"883AFE93-FB03-4FA9-A958-E750C6DE120C\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"AppGroupId\\": 6607,\\n \\"AppKey\\": \\"adcExHZviL******\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<CreateAppGroupResponse>\\n<RequestId>883AFE93-FB03-4FA9-A958-E750C6DE120C</RequestId>\\n<Message>Your request is denied as lack of ssl protect.</Message>\\n<Data>\\n <AppGroupId>6607</AppGroupId>\\n</Data>\\n<Code>200</Code>\\n<Success>true</Success>\\n</CreateAppGroupResponse>","errorExample":""}]', - 'title' => 'CreateAppGroup', - 'requestParamsDescription' => '**Additional information about request parameters**'."\n" + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Your request is denied as lack of ssl protect.\\",\\n \\"RequestId\\": \\"883AFE93-FB03-4FA9-A958-E750C6DE120C\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"AppGroupId\\": 6607,\\n \\"AppKey\\": \\"adcExHZviL******\\"\\n }\\n}","type":"json"}]', + 'title' => 'Create Application Group', + 'requestParamsDescription' => '## MonitorConfigJson'."\n" ."\n" - .'The following example shows alert notification methods. The methods are separated with commas (,).'."\n" + .'Configures alarm notifications. It supports the following properties: `sendChannel`, `alarmType`, and `webhookIsAtAll`.'."\n" ."\n" - .'* Webhook: ding'."\n" - .'* SMS: sms'."\n" - .'* Email: mail'."\n" - .'* TEL: phone'."\n" + .'### **Configuration format**'."\n" ."\n" - .'Example: {"sendChannel":"ding,sms,mail,phone"}'."\n", - 'responseParamsDescription' => ' ', - 'extraInfo' => '## Sample code'."\n" + .'The value must be a JSON object with the following properties:'."\n" ."\n" - .' package com.alibaba.schedulerx.pop;'."\n" + .'### **Properties**'."\n" ."\n" - .' import com.alibaba.schedulerx.common.util.JsonUtil;'."\n" + .'- **Notification channel** (`sendChannel`):'."\n" ."\n" - .' import com.aliyuncs.DefaultAcsClient;'."\n" - .' import com.aliyuncs.profile.DefaultProfile;'."\n" - .' import com.aliyuncs.schedulerx2.model.v20190430.CreateAppGroupRequest;'."\n" - .' import com.aliyuncs.schedulerx2.model.v20190430.CreateAppGroupResponse;'."\n" + .' - Specify one or more notification channels, separated by commas. Valid options are:'."\n" ."\n" - .' public class TestCreateAppGroup {'."\n" + .' - **webhook**: `ding`'."\n" ."\n" - .' public static void main(String[] args) throws Exception {'."\n" - .' // The region ID. Enter a value by referring to the Endpoints topic or based on the region in which you purchased the service. '."\n" - .' String regionId = "cn-shanghai";'."\n" - .' // The AccessKey ID that is used for authentication. You can obtain the AccessKey ID in the RAM console. '."\n" - .' String accessKeyId = "<yourAccessKeyId>";'."\n" - .' // The AccessKey secret that is used for authentication. You can obtain the AccessKey secret in the RAM console. '."\n" - .' String accessKeySecret = "<yourAccessKeySecret>";'."\n" - .' // The name of the service.'."\n" - .' String productName ="schedulerx2";'."\n" - .' // The domain. Enter a domain by referring to the Endpoints topic. '."\n" - .' String domain ="schedulerx.cn-shanghai.aliyuncs.com";'."\n" - .' // Build an API client. '."\n" - .' DefaultProfile.addEndpoint(regionId, productName, domain);'."\n" - .' DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);'."\n" - .' DefaultAcsClient client = new DefaultAcsClient(defaultProfile);'."\n" - .' '."\n" - .' CreateAppGroupRequest request = new CreateAppGroupRequest();'."\n" - .' request.setNamespace("xxxxxx");'."\n" - .' request.setNamespaceName("xxxx");'."\n" - .' request.setAppName("xxxx");'."\n" - .' request.setDescription("xxx");'."\n" - .' request.setGroupId("xxx");'."\n" + .' - **SMS**: `sms`'."\n" ."\n" - .' // Send a request. '."\n" - .' CreateAppGroupResponse response = client.getAcsResponse(request);'."\n" - .' if (!response.getSuccess()) {'."\n" - .' System.out.println(response.getMessage());'."\n" - .' System.out.println("createApp: "+response.getRequestId());'."\n" - .' } else {'."\n" - .' System.out.println(JsonUtil.toJson(response));'."\n" - .' }'."\n" - .' }'."\n" - .' '."\n" - .' }'."\n", - ], - 'GetAppGroup' => [ - 'summary' => 'The configuration of the alert. The value is a JSON string. For more information, see \\\\\\\\*\\\\\\\\*the additional information about response parameters below this table\\\\\\\\*\\\\\\\\*.', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - 'riskType' => 'none', - 'chargeType' => 'free', - ], - 'parameters' => [ - [ - 'name' => 'GroupId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the application. You can obtain the application ID on the **Application Management** page in the SchedulerX console.', - 'type' => 'string', - 'required' => true, - 'example' => 'testSchedulerx.defaultGroup', - ], - ], - [ - 'name' => 'Namespace', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the namespace. You can obtain the ID of the namespace on the **Namespace** page in the SchedulerX console.', - 'type' => 'string', - 'required' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], - ], - [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the region.', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou', - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response'."\n", - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.', - 'type' => 'string', - 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0', - ], - 'Code' => [ - 'description' => 'The HTTP status code that is returned.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The additional information that is returned.', - 'type' => 'string', - 'example' => 'app is not existed, groupId=xxxx, namesapce=xxxx', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'- **true**: The request was successful.'."\n" - .'- **false**: The request failed.', - 'type' => 'boolean', - 'example' => 'true', - ], - 'Data' => [ - 'description' => 'The information about the application group.'."\n", - 'type' => 'object', - 'properties' => [ - 'AppName' => [ - 'description' => 'The name of the application.', - 'type' => 'string', - 'example' => 'DocTest', - ], - 'Description' => [ - 'description' => 'The description of the application.', - 'type' => 'string', - 'example' => 'Test', - ], - 'MaxJobs' => [ - 'description' => 'The maximum number of jobs that can be configured for the application group.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1000', - ], - 'GroupId' => [ - 'description' => 'The ID of the application.', - 'type' => 'string', - 'example' => 'testSchedulerx.defaultGroup', - ], - 'MonitorConfigJson' => [ - 'description' => 'The alert notification configurations.'."\n" - ."\n" - .'> For more information about this parameter, see the following **additional information about request parameters**.'."\n", - 'type' => 'string', - 'example' => '{"sendChannel":"sms,mail,ding"}', - ], - 'CurJobs' => [ - 'description' => 'The number of jobs that are configured for the application group.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'AppKey' => [ - 'description' => 'The AppKey of the application.', - 'type' => 'string', - 'example' => 'QI4lWMZ+xk1rNB67jFUhaw==', - ], - 'AppVersion' => [ - 'title' => '应用版本,1:基础版,2:专业版', - 'description' => 'The application version. 1: Basic version, 2: Professional version.', - 'type' => 'string', - 'example' => '2', - ], - 'Namespace' => [ - 'description' => 'The ID of the namespace.'."\n", - 'type' => 'string', - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], - 'MonitorContactsJson' => [ - 'description' => 'The alert contact configurations.'."\n" - ."\n" - .'> For more information about this parameter, see the following **additional information about request parameters**.'."\n", - 'type' => 'string', - 'example' => '\\[ {"name": "Peter"}, {"name": "Paul"} ]'."\n", - ], - 'NotificationPolicyName' => [ - 'title' => '通知策略名称', - 'type' => 'string', - 'example' => 'test-workday-notification', - ], - 'EnableLog' => [ - 'type' => 'boolean', - ], - ], - ], - ], - ], - ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"app is not existed, groupId=xxxx, namesapce=xxxx\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"AppName\\": \\"DocTest\\",\\n \\"Description\\": \\"Test\\",\\n \\"MaxJobs\\": 1000,\\n \\"GroupId\\": \\"testSchedulerx.defaultGroup\\",\\n \\"MonitorConfigJson\\": \\"{\\\\n \\\\\\"sendChannel\\\\\\": \\\\\\"ding,sms,mail,phone\\\\\\",\\\\n \\\\\\"alarmType\\\\\\": \\\\\\"Contacts\\\\\\",\\\\n \\\\\\"webhookIsAtAll\\\\\\": false\\\\n}\\",\\n \\"CurJobs\\": 1,\\n \\"AppKey\\": \\"QI4lWMZ+xk1rNB67jFUhaw==\\",\\n \\"AppVersion\\": \\"2\\",\\n \\"Namespace\\": \\"adcfc35d-e2fe-4fe9-bbaa-20e90ffc****\\",\\n \\"MonitorContactsJson\\": \\"[\\\\n {\\\\\\"name\\\\\\": \\\\\\"张三\\\\\\"},\\\\n {\\\\\\"name\\\\\\": \\\\\\"李四\\\\\\"}\\\\n]\\",\\n \\"NotificationPolicyName\\": \\"test-workday-notification\\",\\n \\"EnableLog\\": true\\n }\\n}","type":"json"}]', - 'title' => 'GetAppGroup', - 'responseParamsDescription' => '# [](#monitorconfigjson-)Additional information about the MonitorConfigJson parameter'."\n" - ."\n" - .'The alert notification configurations support the following attributes: `sendChannel`, `alarmType`, and `webhookIsAtAll`.'."\n" - ."\n" - .'## [](#)**Format**'."\n" + .' - **Email**: `mail`'."\n" ."\n" - .'The value of this parameter is in the JSON format. The attributes described below are supported.'."\n" + .' - **Phone Call**: `phone`'."\n" ."\n" - .'## [](#)**Attribute description**'."\n" + .'- **Alarm Type** (`alarmType`):'."\n" ."\n" - .'* ****`sendChannel`:'."\n" + .' - **Contacts**: The recipients are Alarm Contacts.'."\n" ."\n" - .' * The channel used to send alert notifications. You can specify multiple channels separated by commas. Valid values:'."\n" + .' - **ContactGroup**: The recipient is an Alarm Contact Group.'."\n" ."\n" - .' * **webhook**: `ding`'."\n" - .' * `sms`: **text message**'."\n" - .' * `mail`: **email**'."\n" - .' * `phone`: **phone call**'."\n" + .'- **Mention all members** (`webhookIsAtAll`):'."\n" ."\n" - .'* ****`alarmType`:'."\n" + .' - Set to `true` to @mention all members in a group notification, or `false` otherwise.'."\n" ."\n" - .' * **Contacts**: the alert contacts.'."\n" - .' * **ContactGroup**: the alert contact group.'."\n" - ."\n" - .'* ****`webhookIsAtAll`:'."\n" - ."\n" - .' * Valid values: `"true"` and `"false"`. This attribute specifies whether to notify all group members when a notification is sent.'."\n" - ."\n" - .'## [](#)**Example**:'."\n" + .'### **Example**'."\n" ."\n" .'```json'."\n" .'{'."\n" @@ -1231,1482 +771,1484 @@ ."\n" .'***'."\n" ."\n" - .'# [](#monitorcontactsjson-)Additional information about the MonitorContactsJson parameter'."\n" + .'## MonitorContactsJson'."\n" ."\n" - .'The alert contact configurations. The format of this parameter varies based on the value of the `alarmType` attribute.'."\n" + .'Configures Alarm Contacts. The format of this JSON object depends on the value of `alarmType`.'."\n" ."\n" - .'## [](#-1)**Format**'."\n" + .'### **Configuration format**'."\n" ."\n" - .'The value of this parameter is in the JSON format. You can specify a contact array or contact group object for this parameter.'."\n" + .'The value is a JSON payload that is either an array of contact objects or a single contact group object.'."\n" ."\n" - .'## [](#-1)**Attribute description**'."\n" + .'### **Properties**'."\n" ."\n" - .'* **If you set the `alarmType` attribute to `Contacts`**:'."\n" + .'- **When `alarmType` is `Contacts`**:'."\n" ."\n" - .' * Set this parameter to an array that consists of multiple contact objects. Each object must include the following information:'."\n" + .' - The value is an array of contact objects, where each object must contain the following property:'."\n" ."\n" - .' * **name**: the name of the contact.'."\n" + .' - **name**: The name of the contact.'."\n" ."\n" - .'* **If you set the `alarmType` attribute to `ContactGroup`**:'."\n" + .'- **When `alarmType` is `ContactGroup`**:'."\n" ."\n" - .' * Set this parameter to an object that includes the following information:'."\n" + .' - The value is a single object that contains the following property:'."\n" ."\n" - .' * **name**: the name of the contact group.'."\n" + .' - **name**: The name of the contact group.'."\n" ."\n" - .'## [](#-1)**Examples**:'."\n" + .'### **Important**'."\n" ."\n" - .'* **Example 1** (`alarmType` set to `Contacts`)'."\n" + .'We recommend creating Alarm Contacts and Alarm Contact Groups in advance. If a specified contact or contact group does not exist, the system automatically creates it. You must then configure the contact\'s phone number, email address, and other details on the Notification Contacts page and activate the contact to ensure Alarm Notifications are sent correctly.'."\n" ."\n" - .' ```json'."\n" - .' ['."\n" - .' {"name": "Peter"},'."\n" - .' {"name": "Paul"}'."\n" - .' ]'."\n" - .' ```'."\n" + .'### **Examples**'."\n" ."\n" - .'* **Example 2** (`alarmType` set to `ContactGroup`)'."\n" + .'- **Example 1** (When `alarmType` is `Contacts`):'."\n" ."\n" - .' ```json'."\n" - .' {'."\n" - .' "name": "Alert contact group-1"'."\n" + .' ```json'."\n" + .' ['."\n" + .' {"name": "John Smith"},'."\n" + .' {"name": "Jane Doe"}'."\n" + .' ]'."\n" + .' ```'."\n" + ."\n" + .'- **Example 2** (When `alarmType` is `ContactGroup`):'."\n" + ."\n" + .' ```json'."\n" + .' {'."\n" + .' "name": "Alarm-Contact-Group-1"'."\n" + .' }'."\n" + .' ```', + 'responseParamsDescription' => ' ', + 'extraInfo' => '## Sample Demo'."\n" + ."\n" + .'```'."\n" + .'package com.alibaba.schedulerx.pop;'."\n" + ."\n" + .'import com.alibaba.schedulerx.common.util.JsonUtil;'."\n" + ."\n" + .'import com.aliyuncs.DefaultAcsClient;'."\n" + .'import com.aliyuncs.profile.DefaultProfile;'."\n" + .'import com.aliyuncs.schedulerx2.model.v20190430.CreateAppGroupRequest;'."\n" + .'import com.aliyuncs.schedulerx2.model.v20190430.CreateAppGroupResponse;'."\n" + ."\n" + .'public class TestCreateAppGroup {'."\n" + ."\n" + .' public static void main(String[] args) throws Exception {'."\n" + .' // The access point of OpenAPI. For details, see the supported Region List table and specify the region where your purchased instance resides.'."\n" + .' String regionId = "cn-shanghai";'."\n" + .' // The AccessKeyId used for authentication, obtained from the Alibaba Cloud console.'."\n" + .' String accessKeyId = "<yourAccessKeyId>";'."\n" + .' // The AccessKeySecret used for authentication, obtained from the Alibaba Cloud console.'."\n" + .' String accessKeySecret = "<yourAccessKeySecret>";'."\n" + .' // Product name'."\n" + .' String productName = "schedulerx2";'."\n" + .' // Specify the domain based on the supported Region List.'."\n" + .' String domain = "schedulerx.cn-shanghai.aliyuncs.com";'."\n" + .' // Build the OpenAPI client.'."\n" + .' DefaultProfile.addEndpoint(regionId, productName, domain);'."\n" + .' DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);'."\n" + .' DefaultAcsClient client = new DefaultAcsClient(defaultProfile);'."\n" + .' '."\n" + .' CreateAppGroupRequest request = new CreateAppGroupRequest();'."\n" + .' request.setNamespace("xxxxxx");'."\n" + .' request.setNamespaceName("xxxx");'."\n" + .' request.setAppName("xxxx");'."\n" + .' request.setDescription("xxx");'."\n" + .' request.setGroupId("xxx");'."\n" + ."\n" + .' // Send the request.'."\n" + .' CreateAppGroupResponse response = client.getAcsResponse(request);'."\n" + .' if (!response.getSuccess()) {'."\n" + .' System.out.println(response.getMessage());'."\n" + .' System.out.println("createApp: " + response.getRequestId());'."\n" + .' } else {'."\n" + .' System.out.println(JsonUtil.toJson(response));'."\n" + .' }'."\n" .' }'."\n" - .' ```'."\n", - ], - 'DeleteAppGroup' => [ - 'summary' => 'Deletes an application group.', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + .' '."\n" + .'}'."\n" + .'```', + 'changeSet' => [ + ['createdAt' => '2025-10-27T08:05:06.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-21T02:51:00.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-06-05T07:37:28.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2023-03-30T08:41:58.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-01-13T02:41:32.000Z', 'description' => 'Request parameters changed, Response parameters changed, Error codes changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:CreateSchedulerxAppGroupCreate', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'CreateJob' => [ + 'summary' => 'Creates a task and returns the task ID.', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'delete', - ], + 'systemTags' => ['operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the region.', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Namespace', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the namespace. You can obtain the ID of the namespace on the Namespace page in the SchedulerX console.', - 'type' => 'string', - 'required' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'in' => 'formData', + 'schema' => ['description' => 'The namespace ID. You can find the ID on the Namespaces page in the console.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], + ], + [ + 'name' => 'NamespaceSource', + 'in' => 'formData', + 'schema' => ['description' => 'This parameter is required only for specific third-party integrations.', 'type' => 'string', 'required' => false, 'default' => 'schedulerx', 'example' => 'schedulerx', 'title' => ''], ], [ 'name' => 'GroupId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the application. You can obtain the ID of the application on the Application Management page in the SchedulerX console.', - 'type' => 'string', - 'required' => true, - 'example' => 'testSchedulerx.defaultGroup', - ], + 'in' => 'formData', + 'schema' => ['description' => 'The application ID. You can find the ID on the Application Management page in the console.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ - 'name' => 'DeleteJobs', - 'in' => 'query', + 'name' => 'JobType', + 'in' => 'formData', 'schema' => [ - 'description' => 'Specifies whether to delete the jobs in the application group. Valid values:'."\n" + 'description' => 'The type of the job. Supported job types:'."\n" ."\n" - .'true: deletes the jobs in the application group.'."\n" - .'false: does not delete the jobs in the application group.', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'The schema of the response.', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.', - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', - ], - 'Code' => [ - 'description' => 'The HTTP status code that is returned.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The additional information that is returned.', - 'type' => 'string', - 'example' => 'app is not existed, groupId=xxxx, namesapce=xxxx', - ], - 'Success' => [ - 'description' => 'Indices whether the request was successful. Valid values:'."\n" - ."\n" - .'true: The request was successful.'."\n" - .'false: The request failed.', - 'type' => 'boolean', - 'example' => 'true', - ], - ], + .'- java'."\n" + ."\n" + .'- python'."\n" + ."\n" + .'- shell'."\n" + ."\n" + .'- go'."\n" + ."\n" + .'- http'."\n" + ."\n" + .'- xxljob'."\n" + ."\n" + .'- dataworks'."\n" + ."\n" + .'- k8s'."\n" + ."\n" + .'- springschedule', + 'enumValueTitles' => ['python' => 'python', 'xxljob' => 'xxljob', 'java' => 'java', 'shell' => 'shell', 'golang' => 'golang', 'go' => 'go', 'http' => 'http', 'dataworks' => 'dataworks'], + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'java', + 'title' => '', ], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"app is not existed, groupId=xxxx, namesapce=xxxx\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => 'DeleteAppGroup', - ], - 'UpdateAppGroup' => [ - 'summary' => 'Updates the application group.', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'Name', + 'in' => 'formData', + 'schema' => ['description' => 'The job name.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'helloworld', 'title' => ''], ], - ], - 'operationType' => 'write', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - 'riskType' => 'none', - 'chargeType' => 'free', - ], - 'parameters' => [ [ 'name' => 'Description', - 'in' => 'query', - 'schema' => [ - 'description' => 'The description of the application.', - 'type' => 'string', - 'required' => false, - 'example' => 'Test', - ], + 'in' => 'formData', + 'schema' => ['description' => 'The job description.', 'type' => 'string', 'required' => false, 'example' => 'Test', 'title' => ''], ], [ - 'name' => 'GroupId', - 'in' => 'query', + 'name' => 'ExecuteMode', + 'in' => 'formData', 'schema' => [ - 'description' => 'The ID of the application. You can obtain the application ID on the **Application Management** page in the SchedulerX console.', + 'description' => 'The job execution mode. Supported values:'."\n" + ."\n" + .'- **Standalone**: standalone'."\n" + ."\n" + .'- **Broadcast**: broadcast'."\n" + ."\n" + .'- **Parallel computing**: parallel'."\n" + ."\n" + .'- **Batch processing**: batch'."\n" + ."\n" + .'- **Sharding**: sharding', + 'enumValueTitles' => ['broadcast' => 'broadcast', 'parallel' => 'parallel computing', 'grid' => 'in-memory grid', 'batch' => 'batch processing', 'standalone' => 'standalone', 'sharding' => 'sharding'], 'type' => 'string', 'required' => true, - 'example' => 'testSchedulerx.defaultGroup', + 'docRequired' => true, + 'example' => 'standalone', + 'title' => '', ], ], [ + 'name' => 'ClassName', + 'in' => 'formData', + 'schema' => ['description' => 'The fully qualified class name of the job interface.'."\n" + ."\n" + .'Required for `java` jobs.', 'type' => 'string', 'required' => false, 'example' => 'com.alibaba.schedulerx.test.helloworld', 'title' => ''], + ], + [ + 'name' => 'Content', + 'in' => 'formData', + 'schema' => ['description' => '- For a `python`, `shell`, or `k8s` job, this parameter specifies the script content.'."\n" + ."\n" + .'- For a `go` job, the content must be in the following format: {"jobName":"HelloWorld"}', 'type' => 'string', 'required' => false, 'example' => 'echo \'hello\'', 'title' => ''], + ], + [ + 'name' => 'Parameters', + 'in' => 'formData', + 'schema' => ['description' => 'Custom parameters that the job can retrieve at runtime.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''], + ], + [ 'name' => 'MaxConcurrency', - 'in' => 'query', + 'in' => 'formData', + 'schema' => ['description' => 'The maximum number of concurrent job instances. Defaults to 1. If an existing job instance is still running, a new one will not be triggered, even if its scheduled time has passed.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '200', 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''], + ], + [ + 'name' => 'MaxAttempt', + 'in' => 'formData', + 'schema' => ['description' => 'The maximum number of retries for a failed job. Defaults to 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '0', 'example' => '0', 'title' => ''], + ], + [ + 'name' => 'AttemptInterval', + 'in' => 'formData', + 'schema' => ['description' => 'The retry interval for a failed job, in seconds. Defaults to 30.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '30', 'example' => '30', 'title' => ''], + ], + [ + 'name' => 'PageSize', + 'in' => 'formData', + 'schema' => ['description' => '\\[Advanced] For `parallel` and `grid` jobs, this specifies the number of subtasks retrieved per pull. Defaults to 100.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '100', 'example' => '100', 'title' => ''], + ], + [ + 'name' => 'ConsumerSize', + 'in' => 'formData', + 'schema' => ['description' => '\\[Advanced] For `parallel` and `grid` jobs, this specifies the number of consumer threads per machine for processing subtasks. Defaults to 5.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '5', 'example' => '5', 'title' => ''], + ], + [ + 'name' => 'QueueSize', + 'in' => 'formData', + 'schema' => ['description' => '\\[Advanced] For `parallel` and `grid` jobs, this specifies the maximum number of subtasks the queue can hold. Defaults to 10000.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '10000', 'example' => '10000', 'title' => ''], + ], + [ + 'name' => 'DispatcherSize', + 'in' => 'formData', + 'schema' => ['description' => '\\[Advanced] For `parallel` and `grid` jobs, this specifies the number of threads for dispatching subtasks. Defaults to 5.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '5', 'example' => '5', 'title' => ''], + ], + [ + 'name' => 'TimeType', + 'in' => 'formData', 'schema' => [ - 'description' => 'The maximum number of concurrent instances. Default value: 1. A value of 1 specifies that if the last triggered instance is running, the next instance is not triggered even if the scheduled point in time for running the next instance is reached.', + 'description' => 'The scheduling type. Supported values:'."\n" + ."\n" + .'- **cron**: 1'."\n" + ."\n" + .'- **fixed\\_rate**: 3'."\n" + ."\n" + .'- **second\\_delay**: 4'."\n" + ."\n" + .'- **one\\_time** : 5'."\n" + ."\n" + .'- **api**: 100'."\n" + ."\n" + .'- **none**: -1', + 'enumValueTitles' => [1 => '1', 3 => '3', '4', '5', 100 => '100'], 'type' => 'integer', 'format' => 'int32', - 'required' => false, + 'required' => true, + 'docRequired' => true, 'example' => '1', + 'title' => '', ], ], [ - 'name' => 'Namespace', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the namespace. You can obtain the ID of the namespace on the Namespace page in the SchedulerX console.', - 'type' => 'string', - 'required' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'name' => 'TimeExpression', + 'in' => 'formData', + 'schema' => ['description' => 'The time expression, which depends on the value of `TimeType`.'."\n" + ."\n" + .'- **cron**: A standard cron expression.'."\n" + ."\n" + .'- **api**: No time expression is required.'."\n" + ."\n" + .'- **fixed\\_rate**: A fixed interval in seconds. For example, a value of 30 triggers the job every 30 seconds.'."\n" + ."\n" + .'- **second\\_delay**: A fixed delay in seconds before the job is executed. Valid values: 1 to 60.'."\n" + ."\n" + .'- **one\\_time**: A specific time in `yyyy-MM-dd HH:mm:ss` format or a Unix timestamp in milliseconds. Example: "2022-10-10 10:10:00".', 'type' => 'string', 'required' => false, 'example' => '0 0/10 * * * ?', 'title' => ''], ], [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the region.', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'name' => 'Calendar', + 'in' => 'formData', + 'schema' => ['description' => 'For a `cron` job, you can specify a custom calendar.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ - 'name' => 'AppVersion', - 'in' => 'query', - 'schema' => [ - 'title' => '应用版本,1:基础版,2:专业版', - 'description' => 'The application version. 1: Basic version, 2: Professional version.', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '2', - 'default' => '2', - 'enum' => [ - '1', - '2', - ], - ], + 'name' => 'DataOffset', + 'in' => 'formData', + 'schema' => ['description' => 'The time offset in seconds for a `cron` job.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2400', 'title' => ''], ], [ - 'name' => 'MonitorConfigJson', - 'in' => 'query', - 'schema' => [ - 'description' => 'The configuration of the alert. The value is a JSON string. For more information about this parameter, see **Additional information about request parameters**.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '{'."\n" - .' "sendChannel": "ding,sms,mail,phone",'."\n" - .' "alarmType": "Contacts",'."\n" - .' "webhookIsAtAll": false'."\n" - .'}', - ], + 'name' => 'Timezone', + 'in' => 'formData', + 'schema' => ['description' => 'The time zone.', 'type' => 'string', 'example' => 'GMT+8', 'required' => false, 'title' => ''], ], [ - 'name' => 'MonitorContactsJson', - 'in' => 'query', + 'name' => 'TimeoutEnable', + 'in' => 'formData', 'schema' => [ - 'description' => 'The configuration of alert contacts. The value is a JSON string.'."\n", - 'type' => 'string', + 'description' => 'Specifies whether to enable timeout alerts. Valid values:'."\n" + ."\n" + .'- **true**: Enables timeout alerts.'."\n" + ."\n" + .'- **false**: Disables timeout alerts.', + 'enumValueTitles' => ['false' => 'false', 'true' => 'true'], + 'type' => 'boolean', 'required' => false, - 'example' => '[{"userName":"Tom","userPhone":"89756******"},{"userName":"Bob","ding":"http://www.example.com"}]', + 'default' => 'true', + 'example' => 'false', + 'title' => '', ], ], [ - 'name' => 'NotificationPolicyName', - 'in' => 'query', - 'schema' => [ - 'title' => '通知策略名称', - 'type' => 'string', - 'example' => 'test-workday-notification', - ], + 'name' => 'Timeout', + 'in' => 'formData', + 'schema' => ['description' => 'The timeout threshold in seconds. Defaults to 7200.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'default' => '7200', 'example' => '7200', 'title' => ''], ], [ - 'name' => 'EnableLog', - 'in' => 'query', + 'name' => 'TimeoutKillEnable', + 'in' => 'formData', 'schema' => [ - 'title' => '开启日志', + 'description' => 'Specifies whether to terminate the job upon timeout. Valid values:'."\n" + ."\n" + .'- **true**: Terminates the job if it times out.'."\n" + ."\n" + .'- **false**: The job is not terminated if it times out.', + 'enumValueTitles' => ['false' => 'false', 'true' => 'true'], 'type' => 'boolean', + 'required' => false, + 'default' => 'true', + 'example' => 'false', + 'title' => '', ], ], - ], - 'responses' => [ - 200 => [ + [ + 'name' => 'FailEnable', + 'in' => 'formData', 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'The schema of the response.', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.', - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', - ], - 'Code' => [ - 'description' => 'The HTTP status code returned.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The additional information that is returned.', - 'type' => 'string', - 'example' => 'app is not existed, groupId=xxxx, namesapce=xxxx', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'- true: The request was successful.'."\n" - .'- false: The request failed.', - 'type' => 'boolean', - 'example' => 'true', - ], - ], + 'description' => 'Specifies whether to enable alerts for failed jobs. Valid values:'."\n" + ."\n" + .'- **true**: Enables failure alerts.'."\n" + ."\n" + .'- **false**: Disables failure alerts.', + 'enumValueTitles' => ['false' => 'false', 'true' => 'true'], + 'type' => 'boolean', + 'required' => false, + 'default' => 'true', + 'example' => 'false', + 'title' => '', ], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"app is not existed, groupId=xxxx, namesapce=xxxx\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => 'UpdateAppGroup', - ], - 'ListGroups' => [ - 'summary' => 'Queries a list of applications.', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'FailTimes', + 'in' => 'formData', + 'schema' => ['description' => 'The number of consecutive failures that triggers an alert.', 'type' => 'integer', 'format' => 'int32', 'default' => '1', 'required' => false, 'example' => '2', 'title' => ''], ], - ], - 'operationType' => 'read', - 'systemTags' => [ - 'operationType' => 'get', - 'riskType' => 'none', - 'chargeType' => 'free', - ], - 'parameters' => [ [ - 'name' => 'Namespace', - 'in' => 'query', + 'name' => 'MissWorkerEnable', + 'in' => 'formData', + 'schema' => ['description' => 'Specifies whether to send an alert when no worker is available to run the job.'."\n" + ."\n" + .'- **true**: Enables the alert.'."\n" + ."\n" + .'- **false**: Disables the alert.', 'type' => 'boolean', 'default' => 'false', 'required' => false, 'example' => 'false', 'title' => ''], + ], + [ + 'name' => 'SuccessNoticeEnable', + 'in' => 'formData', + 'schema' => ['description' => 'Specifies whether to send a notification when the job succeeds.', 'type' => 'boolean', 'default' => 'false', 'required' => false, 'example' => 'false', 'title' => ''], + ], + [ + 'name' => 'SendChannel', + 'in' => 'formData', 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the **Namespace** page in the SchedulerX console.'."\n", + 'description' => 'The channel for sending alerts.'."\n" + ."\n" + .'- For the default channel of the application group, use `default`.'."\n" + ."\n" + .'- For a specific channel for the job, use `sms`, `mail`, `phone`, or `webhook`.', + 'enumValueTitles' => ['default' => 'default', 'webhook' => 'webhook', 'mail' => 'mail', 'phone' => 'phone', 'sms' => 'sms'], 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => '1a72ecb1-b4cc-400a-a71b-20cdec9b****', + 'required' => false, + 'default' => 'default', + 'example' => 'sms', + 'title' => '', ], ], [ - 'name' => 'NamespaceSource', - 'in' => 'query', + 'name' => 'TaskMaxAttempt', + 'in' => 'formData', + 'schema' => ['description' => '\\[Advanced] For `parallel` and `grid` jobs, this specifies the maximum number of retries for a failed subtask. Defaults to 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '10', 'minimum' => '0', 'default' => '0', 'example' => '0', 'title' => ''], + ], + [ + 'name' => 'TaskAttemptInterval', + 'in' => 'formData', + 'schema' => ['description' => '\\[Advanced] For `parallel` and `grid` jobs, this specifies the retry interval in seconds for a failed subtask. Defaults to 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '0', 'default' => '0', 'example' => '0', 'title' => ''], + ], + [ + 'name' => 'ContactInfo', + 'in' => 'formData', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'UserPhone' => ['description' => 'The mobile number of the alert contact.', 'type' => 'string', 'required' => false, 'example' => '1381111****', 'title' => ''], + 'UserName' => ['description' => 'The name of the alert contact.', 'type' => 'string', 'required' => false, 'example' => 'John Smith', 'title' => ''], + 'UserMail' => ['description' => 'The email address of the alert contact.', 'type' => 'string', 'required' => false, 'example' => 'test***@***.com', 'title' => ''], + 'Ding' => ['description' => 'The webhook URL of the DingTalk group bot for alert notifications. For more information, see [DingTalk Developer Documentation](https://open.dingtalk.com/document/org/application-types).', 'type' => 'string', 'required' => false, 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=**********', 'title' => ''], + ], + 'description' => 'The contact information for the job.', + 'required' => false, + 'title' => '', + 'example' => '', + ], 'required' => false, - 'example' => 'schedulerx', + 'maxItems' => 10, + 'description' => 'The contact information for the job.'."\n" + ."\n" + .'><notice>'."\n" + ."\n" + .'This parameter is deprecated.'."\n" + ."\n" + .'></notice>', + 'example' => '1', + 'title' => '', ], ], [ - 'name' => 'RegionId', - 'in' => 'query', + 'name' => 'Status', + 'in' => 'formData', 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', + 'description' => 'The job status. 1 = Enabled, 0 = Disabled. Defaults to 1.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'default' => '1', + 'enum' => ['0', '1'], 'required' => false, - 'docRequired' => true, - 'example' => 'cn-hangzhou', + 'title' => '', ], ], [ - 'name' => 'AppGroupName', - 'in' => 'query', + 'name' => 'XAttrs', + 'in' => 'formData', 'schema' => [ - 'description' => 'The name of the application group.'."\n", + 'description' => 'This parameter is required for `k8s` jobs.<br>For job tasks: {"resource":"job"}<br>For shell tasks: {"image":"busybox","resource":"shell"}<br><br>', 'type' => 'string', + 'example' => '{"resource":"job"}', + 'enum' => [], + 'title' => '', 'required' => false, - 'example' => 'k8s-test', ], ], + [ + 'name' => 'Priority', + 'in' => 'query', + 'schema' => ['description' => 'The job priority. Valid values:'."\n" + ."\n" + .'- **1**: Low'."\n" + ."\n" + .'- **5**: Medium'."\n" + ."\n" + .'- **10**: High'."\n" + ."\n" + .'- **15**: Very High', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5', 'title' => ''], + ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message.'."\n", - 'type' => 'string', - 'example' => 'message', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB58A', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* **true**'."\n" - .'* **false**'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The return code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'message', 'title' => ''], + 'RequestId' => ['description' => 'The unique request ID.', 'type' => 'string', 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the job was created. Valid values:'."\n" + ."\n" + .'- **true**: The job was created.'."\n" + ."\n" + .'- **false**: The job failed to be created.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Data' => [ - 'description' => 'The applications.'."\n", 'type' => 'object', 'properties' => [ - 'AppGroups' => [ - 'description' => 'The applications and their details.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => '*'."\n", - 'type' => 'object', - 'properties' => [ - 'AppGroupId' => [ - 'description' => 'The application group ID.', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'AppName' => [ - 'description' => 'The name of the application.', - 'type' => 'string', - 'example' => 'DocTest', - ], - 'AppKey' => [ - 'description' => 'The AppKey for the application.', - 'type' => 'string', - 'example' => 'a3G77O6NZxq/lyo1NC****==', - ], - 'Description' => [ - 'description' => 'The description of the application.', - 'type' => 'string', - 'example' => 'Test', - ], - 'GroupId' => [ - 'description' => 'The application ID.', - 'type' => 'string', - 'example' => 'DocTest.Group', - ], - 'AppVersion' => [ - 'title' => '应用版本,1:基础版,2:专业版', - 'description' => 'The application version. 1: Basic version, 2: Professional version.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'Namespace' => [ - 'description' => 'The ID of the namespace.'."\n", - 'type' => 'string', - 'example' => '1a72ecb1-b4cc-400a-a71b-20cdec9b****', - ], - 'EnableLog' => [ - 'type' => 'boolean', - ], - ], - ], - ], + 'JobId' => ['description' => 'The job ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '92583', 'title' => ''], ], + 'description' => 'The job details.', + 'title' => '', + 'example' => '', ], ], - 'description' => '', + 'description' => 'The response body.', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"message\\",\\n \\"RequestId\\": \\"71BCC0E3-64B2-4B63-A870-AFB64EBCB58A\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"AppGroups\\": [\\n {\\n \\"AppGroupId\\": 1,\\n \\"AppName\\": \\"DocTest\\",\\n \\"AppKey\\": \\"a3G77O6NZxq/lyo1NC****==\\",\\n \\"Description\\": \\"Test\\",\\n \\"GroupId\\": \\"DocTest.Group\\",\\n \\"AppVersion\\": 2,\\n \\"Namespace\\": \\"1a72ecb1-b4cc-400a-a71b-20cdec9b****\\",\\n \\"EnableLog\\": true\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ListGroupsResponse>\\n<Message>namespace can not find namespace: 1a72ecb1-b4cc-400a-a71b-20cdec9b****, namespaceSource:null</Message>\\n<RequestId>71BCC0E3-64B2-4B63-A870-AFB64EBCB58A</RequestId>\\n<Data>\\n <AppGroups>\\n <Description>Test</Description>\\n <AppKey>a3G77O6NZxq/lyo1NC****==</AppKey>\\n <GroupId>DocTest.Group</GroupId>\\n <AppName>DocTest</AppName>\\n </AppGroups>\\n</Data>\\n<Code>200</Code>\\n<Success>true</Success>\\n</ListGroupsResponse>","errorExample":""}]', - 'title' => 'ListGroups', - 'description' => 'Before you call this operation, you must add the following dependency to the pom.xml file:'."\n" - ."\n" - .'```xml'."\n" - .'<dependency>'."\n" - .' <groupId>com.aliyun</groupId>'."\n" - .' <artifactId>aliyun-java-sdk-schedulerx2</artifactId>'."\n" - .' <version>1.0.5</version>'."\n" - .'</dependency>'."\n" - .'```'."\n", + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"message\\",\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"JobId\\": 92583\\n }\\n}","type":"json"}]', + 'title' => 'CreateJob', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', - 'extraInfo' => '## Sample code'."\n" + 'changeSet' => [ + ['createdAt' => '2025-02-10T07:10:18.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-21T02:51:00.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-03-30T08:41:58.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-12-26T01:59:02.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2022-09-29T02:51:09.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2022-09-27T12:19:02.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2022-06-13T03:57:15.000Z', 'description' => 'Request parameters changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:CreateSchedulerxJobCreate', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + ], + 'extraInfo' => '## 创建Java任务'."\n" ."\n" - .' package com.alibaba.schedulerx.pop;'."\n" + .'```json'."\n" + .'package com.alibaba.schedulerx.pop;'."\n" ."\n" - .' import java.util.List;'."\n" + .'import java.util.ArrayList;'."\n" + .'import java.util.List;'."\n" ."\n" - .' import com.aliyuncs.DefaultAcsClient;'."\n" - .' import com.aliyuncs.exceptions.ClientException;'."\n" - .' import com.aliyuncs.exceptions.ServerException;'."\n" - .' import com.aliyuncs.profile.DefaultProfile;'."\n" - .' import com.aliyuncs.schedulerx2.model.v20190430.ListGroupsRequest;'."\n" - .' import com.aliyuncs.schedulerx2.model.v20190430.ListGroupsResponse;'."\n" - .' import com.aliyuncs.schedulerx2.model.v20190430.ListGroupsResponse.Data.AppGroup;'."\n" + .'import com.aliyuncs.DefaultAcsClient;'."\n" + .'import com.aliyuncs.profile.DefaultProfile;'."\n" + .'import com.aliyuncs.schedulerx2.model.v20190430.CreateJobRequest;'."\n" + .'import com.aliyuncs.schedulerx2.model.v20190430.CreateJobRequest.ContactInfo;'."\n" + .'import com.aliyuncs.schedulerx2.model.v20190430.CreateJobResponse;'."\n" ."\n" - .' public class TestListGroups {'."\n" + .'public class CreateJavaJob {'."\n" ."\n" - .' public static void main(String[] args) {'."\n" - .' // The region ID. Enter a value by referring to the Endpoints topic or based on the region in which you purchased the service. '."\n" - .' String regionId = "cn-hangzhou";'."\n" - .' // The AccessKey ID that is used for authentication. You can obtain the AccessKey ID in the RAM console. '."\n" - .' String accessKeyId = "XXXXXXXX";'."\n" - .' // The AccessKey secret that is used for authentication. You can obtain the AccessKey secret in the RAM console. '."\n" - .' String accessKeySecret = "XXXXXXXX";'."\n" - .' // The name of the service. '."\n" - .' String productName ="schedulerx2";'."\n" - .' // The domain. Enter a domain by referring to the Endpoints topic. '."\n" - .' String domain ="schedulerx.cn-hangzhou.aliyuncs.com";'."\n" - .' // Build an API client. '."\n" - .' DefaultProfile.addEndpoint(regionId, productName, domain);'."\n" - .' DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);'."\n" - .' DefaultAcsClient client = new DefaultAcsClient(defaultProfile);'."\n" - .' '."\n" - .' ListGroupsRequest request = new ListGroupsRequest();'."\n" - .' // The namespace ID. '."\n" - .' request.setNamespace("433d8b23-06e9-408c-aaaa-90d4d1b9****");'."\n" - .' ListGroupsResponse response;'."\n" - .' try {'."\n" - .' response = client.getAcsResponse(request);'."\n" - .' if (!response.getSuccess()) {'."\n" - .' System.out.println(response.getMessage());'."\n" - .' } else {'."\n" - .' List<AppGroup> appGroups = response.getData().getAppGroups();'."\n" - .' for (AppGroup appGroup : appGroups) {'."\n" - .' System.out.println("groupId=" + appGroup.getGroupId() + ", appKey=" + appGroup.getAppKey());'."\n" - .' }'."\n" - .' }'."\n" - .' } catch (ServerException e) {'."\n" - .' // TODO Auto-generated catch block'."\n" - .' e.printStackTrace();'."\n" - .' } catch (ClientException e) {'."\n" - .' // TODO Auto-generated catch block'."\n" - .' e.printStackTrace();'."\n" - .' }'."\n" + .' public static void main(String[] args) throws Exception {'."\n" + .' // OpenAPI的接入点,可查看产品支持的地域列表或根据购买产品的地域填写。'."\n" + .' String regionId = "cn-shanghai";'."\n" + .' //鉴权使用的AccessKey ID,由阿里云官网控制台获取。'."\n" + .' String accessKeyId = "<yourAccessKeyId>";'."\n" + .' //鉴权使用的AccessKey Secret,由阿里云官网控制台获取'."\n" + .' String accessKeySecret = "<yourAccessKeySecret>";'."\n" + .' //产品名称。'."\n" + .' String productName ="schedulerx2";'."\n" + .' //对照支持地域列表选择Domain填写。'."\n" + .' String domain ="schedulerx.cn-shanghai.aliyuncs.com";'."\n" + .' //构建OpenAPI客户端。'."\n" + .' DefaultProfile.addEndpoint(regionId, productName, domain);'."\n" + .' DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);'."\n" + .' DefaultAcsClient client = new DefaultAcsClient(defaultProfile);'."\n" + .' '."\n" + .' CreateJobRequest request = new CreateJobRequest();'."\n" + .' request.setJobType("java");'."\n" + .' request.setExecuteMode("standalone");'."\n" + .' request.setDescription("test");'."\n" + .' request.setName("helloworld");'."\n" + .' request.setClassName("com.alibaba.schedulerx.test.helloworld");'."\n" + .' request.setTimeType(1);'."\n" + .' request.setTimeExpression("0 0/10 * * * ?");'."\n" + .' request.setNamespace("xxxxx");'."\n" + .' request.setGroupId("xxxxxxx");'."\n" + .' // monitor'."\n" + .' request.setTimeoutEnable(true);'."\n" + .' request.setTimeoutKillEnable(true);'."\n" + .' request.setFailEnable(true);'."\n" + .' request.setTimeout(12300L);'."\n" + .' List<ContactInfo> contactInfosList = new ArrayList<>();'."\n" + .' ContactInfo contactInfo1 = new ContactInfo();'."\n" + .' contactInfo1.setUserName("userA");'."\n" + .' contactInfo1.setUserPhone("1381111****");'."\n" + .' ContactInfo contactInfo2 = new ContactInfo();'."\n" + .' contactInfo2.setUserName("userB");'."\n" + .' contactInfo2.setUserPhone("1382222****");'."\n" + .' contactInfosList.add(contactInfo1);'."\n" + .' contactInfosList.add(contactInfo2);'."\n" + .' request.setContactInfos(contactInfosList);'."\n" + .' // attrs'."\n" + .' //request.setQueueSize(123);'."\n" + .' request.setTaskMaxAttempt(1);'."\n" + .' request.setTaskAttemptInterval(100);'."\n" + .' CreateJobResponse response = client.getAcsResponse(request);'."\n" + .' if (response.getSuccess()) {'."\n" + .' System.out.println("jobId=" + response.getData().getJobId());'."\n" + .' } else {'."\n" + .' System.out.println(response.getMessage());'."\n" .' }'."\n" + .' }'."\n" + ."\n" + .'}'."\n" + .'```'."\n" + ."\n" + .'## 创建HTTP任务'."\n" + ."\n" + .'```json'."\n" + .'package com.alibaba.schedulerx.pop;'."\n" + ."\n" + .'import com.alibaba.schedulerx.common.domain.HttpAttribute;'."\n" + .'import com.alibaba.schedulerx.common.util.JsonUtil;'."\n" + ."\n" + .'import com.aliyuncs.DefaultAcsClient;'."\n" + .'import com.aliyuncs.profile.DefaultProfile;'."\n" + .'import com.aliyuncs.schedulerx2.model.v20190430.CreateJobRequest;'."\n" + .'import com.aliyuncs.schedulerx2.model.v20190430.CreateJobResponse;'."\n" + ."\n" + .'public class CreateHttpJob {'."\n" + ."\n" + .' public static void main(String[] args) throws Exception {'."\n" + .' // OpenAPI的接入点,具体查看支持地域列表或根据购买地域填写。'."\n" + .' String regionId = "cn-shanghai";'."\n" + .' //鉴权使用的AccessKey ID,由阿里云官网控制台获取。'."\n" + .' String accessKeyId = "<yourAccessKeyId>";'."\n" + .' //鉴权使用的AccessKey Secret,由阿里云官网控制台获取。'."\n" + .' String accessKeySecret = "<yourAccessKeySecret>";'."\n" + .' //产品名称。'."\n" + .' String productName ="schedulerx2";'."\n" + .' //对照支持地域列表选择Domain填写。'."\n" + .' String domain ="schedulerx.cn-shanghai.aliyuncs.com";'."\n" + .' //构建OpenAPI客户端。'."\n" + .' DefaultProfile.addEndpoint(regionId, productName, domain);'."\n" + .' DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);'."\n" + .' DefaultAcsClient client = new DefaultAcsClient(defaultProfile);'."\n" .' '."\n" - .' }'."\n", + .' CreateJobRequest request = new CreateJobRequest();'."\n" + .' request.setNamespace("xxxxxxxx");'."\n" + .' request.setGroupId("xxxxxx");'."\n" + .' request.setJobType("http");'."\n" + .' request.setName("testHttpJob");'."\n" + .' request.setDescription("testHttpJob");'."\n" + .' request.setTimeType(1);'."\n" + .' request.setTimeExpression("20 0/5 * * * ?");'."\n" + .' request.setExecuteMode("standalone");'."\n" + .' HttpAttribute httpAttribute = new HttpAttribute();'."\n" + .' httpAttribute.setUrl("http://192.168.0.0:8080/test");'."\n" + .' httpAttribute.setMethod("GET");'."\n" + .' httpAttribute.setTimeout(10); //单位秒'."\n" + .' httpAttribute.setRespKey("code");'."\n" + .' httpAttribute.setRespValue("200");'."\n" + .' request.setContent(JsonUtil.toJson(httpAttribute));'."\n" + .' //POST参数,格式key1=value1&key2=value2。'."\n" + .' request.setParameters("key1=value1&key2=value2"); '."\n" + .' '."\n" + .' //发送请求。'."\n" + .' CreateJobResponse response = client.getAcsResponse(request);'."\n" + .' if (!response.getSuccess()) {'."\n" + .' System.out.println(response.getMessage());'."\n" + .' System.out.println("createApp: "+response.getRequestId());'."\n" + .' } else {'."\n" + .' System.out.println(JsonUtil.toJson(response));'."\n" + .' }'."\n" + .' }'."\n" + .' '."\n" + .'}'."\n" + .'```'."\n" + .'## 创建一次性任务'."\n" + ."\n" + .'```json'."\n" + .'package com.alibaba.schedulerx.pop;'."\n" + ."\n" + .'import java.util.ArrayList;'."\n" + .'import java.util.List;'."\n" + ."\n" + .'import com.aliyuncs.DefaultAcsClient;'."\n" + .'import com.aliyuncs.profile.DefaultProfile;'."\n" + .'import com.aliyuncs.schedulerx2.model.v20190430.CreateJobRequest;'."\n" + .'import com.aliyuncs.schedulerx2.model.v20190430.CreateJobRequest.ContactInfo;'."\n" + .'import com.aliyuncs.schedulerx2.model.v20190430.CreateJobResponse;'."\n" + ."\n" + .'public class CreateJavaJob {'."\n" + ."\n" + .' public static void main(String[] args) throws Exception {'."\n" + .' // OpenAPI的接入点,可查看产品支持的地域列表或根据购买产品的地域填写。'."\n" + .' String regionId = "cn-shanghai";'."\n" + .' //鉴权使用的AccessKey ID,由阿里云官网控制台获取'."\n" + .' String accessKeyId = "xxxxxx";'."\n" + .' //鉴权使用的AccessKey Secret,由阿里云官网控制台获取'."\n" + .' String accessKeySecret = "xxxxxxxx";'."\n" + .' //产品名称'."\n" + .' String productName ="schedulerx2";'."\n" + .' //对照支持地域列表选择Domain填写'."\n" + .' String domain ="schedulerx.cn-shanghai.aliyuncs.com";'."\n" + .' //构建OpenAPI客户端'."\n" + .' DefaultProfile.addEndpoint(regionId, productName, domain);'."\n" + .' DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);'."\n" + .' DefaultAcsClient client = new DefaultAcsClient(defaultProfile);'."\n" + .' '."\n" + .' CreateJobRequest request = new CreateJobRequest();'."\n" + .' request.setJobType("java");'."\n" + .' request.setExecuteMode("standalone");'."\n" + .' request.setDescription("test");'."\n" + .' request.setName("helloworld");'."\n" + .' request.setClassName("com.alibaba.schedulerx.test.helloworld");'."\n" + .' request.setTimeType(5);'."\n" + .' request.setTimeExpression("2021-12-30 12:12:12");'."\n" + .' request.setNamespace("xxxxxx");'."\n" + .' request.setGroupId("xxxxxxx");'."\n" + .' // 报警监控'."\n" + .' request.setTimeoutEnable(true);'."\n" + .' request.setTimeoutKillEnable(true);'."\n" + .' request.setFailEnable(true);'."\n" + .' request.setTimeout(12300L);'."\n" + .' // 高级配置'."\n" + .' request.setMaxAttempt(3);'."\n" + .' request.setAttemptInterval(30);'."\n" + .' CreateJobResponse response = client.getAcsResponse(request);'."\n" + .' if (response.getSuccess()) {'."\n" + .' System.out.println("jobId=" + response.getData().getJobId());'."\n" + .' } else {'."\n" + .' System.out.println(response.getMessage());'."\n" + .' }'."\n" + .' }'."\n" + .' '."\n" + .'}'."\n" + .'```', ], - 'GetWorkerList' => [ - 'summary' => 'Obtains the list of workers that are connected to an application.', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'CreateNamespace' => [ + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - ], + 'systemTags' => ['operationType' => 'create'], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the region.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The region ID. For example, `cn-hangzhou` specifies the China (Hangzhou) region.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'GroupId', + 'name' => 'Uid', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the permission group.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'usercenter', - ], + 'schema' => ['description' => 'The namespace UID. This value must be globally unique. We recommend that you use a UUID.', 'type' => 'string', 'required' => false, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ - 'name' => 'Namespace', + 'name' => 'Name', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the namespace. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'schema' => ['description' => 'The namespace name.', 'type' => 'string', 'required' => true, 'example' => 'test-env', 'title' => ''], ], [ - 'name' => 'NamespaceSource', + 'name' => 'Description', 'in' => 'query', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'The namespace description.', 'type' => 'string', 'required' => false, 'example' => 'Test', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'The schema of the response.'."\n", + 'description' => 'The response object.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108****', - ], - 'Code' => [ - 'description' => 'The HTTP status code that is returned.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The additional information that is returned.'."\n", - 'type' => 'string', - 'example' => 'Cannot find product according to your domain.', - ], - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* **true**: The call is successful.'."\n" - .'* **false**: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108'], + 'Code' => ['description' => 'The return code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message returned if the request fails.', 'type' => 'string', 'example' => 'namespace=test3 is existed, noting update', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'- **true**: The namespace was successfully created.'."\n" + ."\n" + .'- **false**: The namespace failed to be created.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Data' => [ - 'description' => 'The job information.'."\n", + 'description' => 'The namespace information.', 'type' => 'object', 'properties' => [ - 'WorkerInfos' => [ - 'description' => 'The worker information.'."\n", - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Ip' => [ - 'description' => 'The IP address of the worker.'."\n", - 'type' => 'string', - 'example' => '30.225.16.49', - ], - 'Port' => [ - 'description' => 'The port number of the worker.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '60831', - ], - 'WorkerAddress' => [ - 'description' => 'The address of the worker. The address is in the format of ${worker_id}@${worker_ip}:${worker_port}.'."\n", - 'type' => 'string', - 'example' => '030225016049_11734_25917@30.225.16.49:60831', - ], - 'Label' => [ - 'description' => 'The label of the worker.'."\n", - 'type' => 'string', - 'example' => 'gray', - ], - 'Version' => [ - 'description' => 'The version of the worker.'."\n", - 'type' => 'string', - 'example' => '1.3.4', - ], - 'Starter' => [ - 'description' => 'The startup method of the worker.'."\n", - 'type' => 'string', - 'example' => 'springboot', - ], - ], - ], - ], + 'NamespaceUid' => ['description' => 'The namespace UID.', 'type' => 'string', 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"Cannot find product according to your domain.\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"WorkerInfos\\": [\\n {\\n \\"Ip\\": \\"30.225.16.49\\",\\n \\"Port\\": 60831,\\n \\"WorkerAddress\\": \\"030225016049_11734_25917@30.225.16.49:60831\\",\\n \\"Label\\": \\"gray\\",\\n \\"Version\\": \\"1.3.4\\",\\n \\"Starter\\": \\"springboot\\"\\n }\\n ]\\n }\\n}","type":"json"}]', - 'title' => 'GetWorkerList', - ], - 'CreateWorkflow' => [ - 'summary' => 'Creates a workflow. By default, the created workflow is disabled. After you update the directed acyclic graph (DAG) of the workflow, you must manually or call the corresponding operation to enable the workflow. You can call this operation only in the professional edition.', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => 'CreateNamespace', + 'summary' => 'Creates a namespace.', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-21T02:51:00.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-12-26T01:59:02.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2022-03-17T08:39:25.000Z', 'description' => 'OpenAPI offline'], + ['createdAt' => '2022-03-17T08:39:25.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2022-03-17T08:39:25.000Z', 'description' => 'Request parameters changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:CreateSchedulerxNamespaceCreate', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"namespace=test3 is existed, noting update\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"NamespaceUid\\": \\"adcfc35d-e2fe-4fe9-bbaa-20e90ffc****\\"\\n }\\n}","type":"json"}]', + ], + 'CreateRouteStrategy' => [ + 'summary' => 'Creates a routing policy.', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], + 'operationType' => 'write', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'create', - ], + 'systemTags' => ['operationType' => 'create'], 'parameters' => [ [ 'name' => 'RegionId', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The region ID.', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], - ], - [ - 'name' => 'Namespace', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.', - 'type' => 'string', - 'required' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'in' => 'query', + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'NamespaceSource', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.', - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'name' => 'Name', + 'in' => 'query', + 'schema' => ['description' => 'The name of the routing policy.'."\n", 'type' => 'string', 'required' => true, 'example' => 'test-strategy', 'title' => ''], ], [ 'name' => 'GroupId', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The application group ID. You can obtain the ID on the Application Management page in the SchedulerX console.', - 'type' => 'string', - 'required' => true, - 'example' => 'testSchedulerx.defaultGroup', - ], - ], - [ - 'name' => 'Name', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The name of the workflow.', - 'type' => 'string', - 'required' => true, - 'example' => 'helloworld', - ], + 'in' => 'query', + 'schema' => ['description' => 'The ID of the application group. You can obtain the ID on the **Application Management** page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ - 'name' => 'Description', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The description of the workflow.', - 'type' => 'string', - 'required' => false, - 'example' => 'Test', - ], + 'name' => 'JobId', + 'in' => 'query', + 'schema' => ['description' => 'The job ID. You can obtain the ID on the **Task Management** page in the SchedulerX console.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '54978', 'default' => '-1', 'title' => ''], ], [ - 'name' => 'TimeType', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The method that is used to specify the time. Valid values:'."\n" - ."\n" - .'- 1: cron'."\n" - .'- 100: api', - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'example' => '1', - ], + 'name' => 'Type', + 'in' => 'query', + 'schema' => ['description' => 'The type of the routing policy. Valid value:'."\n" + ."\n" + .'* **3**: routes by proportion.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3', 'default' => '1', 'title' => ''], ], [ - 'name' => 'TimeExpression', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The time expression. You can set the time expression based on the selected method that is used to specify time.'."\n" - ."\n" - .'- If you set the TimeType parameter to cron, you need to enter a standard cron expression. Online verification is supported.'."\n" - .'- If you set the TimeType parameter to api, no time expression is required.', - 'type' => 'string', - 'required' => false, - 'example' => '0 0/10 * * * ?', - ], + 'name' => 'Status', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to enable the routing policy. Valid values:'."\n" + ."\n" + .'* **0**: disables the routing policy.'."\n" + .'* **1**: enables the routing policy.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'default' => '1', 'title' => ''], ], [ - 'name' => 'Timezone', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The time zone.', - 'type' => 'string', - 'required' => false, - 'example' => 'GMT+8', - ], + 'name' => 'StrategyContent', + 'in' => 'query', + 'schema' => ['description' => 'The details of the routing policy. The value is a JSON string. For more information about this parameter, see **the additional information about request parameters** below this table.'."\n", 'type' => 'string', 'required' => false, 'example' => '[{"percentage":20,"target":"[\\"version1\\"]","targetType":"label"}]', 'title' => ''], ], [ - 'name' => 'MaxConcurrency', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The maximum number of workflow instances that can be run at the same time. Default value: 1. The value 1 indicates that only one workflow instance is allowed. In this case, if the triggered workflow instance is still ongoing, no more workflow instances can be triggered even the time to schedule the next workflow arrives.', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => ['description' => 'The namespace ID. You can obtain the namespace ID on the **Namespace** page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'The response schema.', + 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.', - 'type' => 'string', - 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0', - ], - 'Code' => [ - 'description' => 'The HTTP status code.', - 'type' => 'string', - 'example' => '200', - ], - 'Success' => [ - 'description' => 'Indicates whether the workflow was created. Valid values:'."\n" - ."\n" - .'- true'."\n" - .'- false', - 'type' => 'boolean', - 'example' => 'true', - ], - 'Message' => [ - 'description' => 'The returned error message.', - 'type' => 'string', - 'example' => 'timetype is invalid', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108'], + 'Code' => ['description' => 'The HTTP status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The additional information, including errors and tips.'."\n", 'type' => 'string', 'example' => 'strategy name is null or empty.', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the call was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Data' => [ - 'description' => 'The data that was returned for the request.', + 'description' => 'The returned data.'."\n", 'type' => 'object', - 'properties' => [ - 'WorkflowId' => [ - 'description' => 'The workflow ID.', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '92583', - ], - ], + 'properties' => [], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"strategy name is null or empty.\\",\\n \\"Success\\": true,\\n \\"Data\\": {}\\n}","type":"json"}]', + 'title' => 'CreateRouteStrategy', + 'requestParamsDescription' => 'If you set Type to **3**, set the parameters that are nested under StrategyContent based on the following requirements:'."\n" + ."\n" + .'* **percentage**: the percentage of routed traffic. Valid values: **0 to 100**. Unit: %.'."\n" + .'* **target**: routing destinations. If you set **targetType** to **label**, set this parameter to label names. If you set **targetType** to **worker**, set this parameter to the IP addresses of workers.********'."\n" + .'* **targetType**: the type of routing destinations. If you set this parameter to **label**, traffic is routed to workers with the specified labels. If you set this parameter to **worker**, traffic is routed to workers with the specified IP addresses.'."\n", + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-21T02:51:00.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-03-30T08:41:58.000Z', 'description' => 'Response parameters changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:CreateSchedulerxRouteStrategyCreate', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true,\\n \\"Message\\": \\"timetype is invalid\\",\\n \\"Data\\": {\\n \\"WorkflowId\\": 92583\\n }\\n}","type":"json"}]', - 'title' => 'CreateWorkflow', ], - 'UpdateWorkflow' => [ - 'summary' => 'Updates the basic information about a workflow. You can call this operation only in the professional edition.', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'CreateSchedulerxCalendar' => [ + 'summary' => 'Creates a calendar.', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - ], + 'operationType' => 'write', + 'systemTags' => ['operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'tenantRelevance' => 'publicInformation'], 'parameters' => [ [ 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'in' => 'formData', + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'Namespace', + 'name' => 'CalendarName', 'in' => 'formData', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'schema' => ['title' => '', 'description' => 'The calendar name.'."\n", 'type' => 'string', 'required' => true, 'example' => '2025workday'], ], [ - 'name' => 'NamespaceSource', + 'name' => 'Year', 'in' => 'formData', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'The year.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '2025', 'title' => ''], ], [ - 'name' => 'GroupId', + 'name' => 'MonthDaysContent', 'in' => 'formData', + 'schema' => ['title' => '', 'description' => 'The month and days.', 'type' => 'string', 'required' => true, 'example' => '['."\n" + .' {"month":1,"days":[3,4,5,6,9,10,11,12,13,16,17,18,19,20,28,29,30,31]},'."\n" + .' {"month":2,"days":[1,2,3,6,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28]},'."\n" + .' {"month":3,"days":[1,2,3,6,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28,29,30,31]},'."\n" + .' {"month":4,"days":[3,4,6,7,10,11,12,13,14,17,18,19,20,21,23,24,25,26,27,28]},'."\n" + .' {"month":5,"days":[4,5,6,8,9,10,11,12,15,16,17,18,19,22,23,24,25,26,29,30,31]},'."\n" + .' {"month":6,"days":[1,2,5,6,7,8,9,12,13,14,15,16,19,20,21,25,26,27,28,29,30]},'."\n" + .' {"month":7,"days":[3,4,5,6,7,10,11,12,13,14,17,18,19,20,21,24,25,26,27,28,31]},'."\n" + .' {"month":8,"days":[1,2,3,4,7,8,9,10,11,14,15,16,17,18,21,22,23,24,25,28,29,30,31]},'."\n" + .' {"month":9,"days":[1,4,5,6,7,8,11,12,13,14,15,18,19,20,21,22,25,26,27,28]},'."\n" + .' {"month":10,"days":[7,8,9,10,11,12,13,16,17,18,19,20,23,24,25,26,27,30,31]},'."\n" + .' {"month":11,"days":[1,2,3,6,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28,29,30]},'."\n" + .' {"month":12,"days":[1,4,5,6,7,8,11,12,13,14,15,18,19,20,21,22,25,26,27,28,29]}'."\n" + .']'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The application group ID. You can obtain the application group ID on the Application Management page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'testSchedulerx.defaultGroup', + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => 'Th status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'Additional information. Returned only when an error occurs.'."\n", 'type' => 'string', 'example' => 'calendar \'2025workday\' already exists in year 2025', 'title' => ''], + 'RequestId' => ['description' => 'The unique request ID.'."\n", 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'AccessDeniedDetail' => [ + 'description' => 'The access denial details.', + 'type' => 'object', + 'properties' => [ + 'AuthAction' => ['description' => 'The authentication action.', 'type' => 'string', 'example' => 'edas: CreateSchedulerxCalendar', 'title' => ''], + 'AuthPrincipalDisplayName' => ['description' => 'The principal name.'."\n", 'type' => 'string', 'example' => '209312833131416xxx', 'title' => ''], + 'AuthPrincipalOwnerId' => ['description' => 'The account of the principal.'."\n", 'type' => 'string', 'example' => '1827811800526xxx', 'title' => ''], + 'AuthPrincipalType' => ['description' => 'The principal type.'."\n", 'type' => 'string', 'example' => 'SubUser', 'title' => ''], + 'EncodedDiagnosticMessage' => ['description' => 'The encoded diagnostic message.'."\n", 'type' => 'string', 'example' => 'AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==', 'title' => ''], + 'NoPermissionType' => ['description' => 'The permission denial type.'."\n", 'type' => 'string', 'example' => 'ImplicitDeny', 'title' => ''], + 'PolicyType' => ['description' => 'The policy type.'."\n", 'type' => 'string', 'example' => 'AccountLevelIdentityBasedPolicy', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], - [ - 'name' => 'WorkflowId', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The workflow ID.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => '123', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"calendar \'2025workday\' already exists in year 2025\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true,\\n \\"AccessDeniedDetail\\": {\\n \\"AuthAction\\": \\"edas: CreateSchedulerxCalendar\\",\\n \\"AuthPrincipalDisplayName\\": \\"209312833131416xxx\\",\\n \\"AuthPrincipalOwnerId\\": \\"1827811800526xxx\\",\\n \\"AuthPrincipalType\\": \\"SubUser\\",\\n \\"EncodedDiagnosticMessage\\": \\"AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==\\",\\n \\"NoPermissionType\\": \\"ImplicitDeny\\",\\n \\"PolicyType\\": \\"AccountLevelIdentityBasedPolicy\\"\\n }\\n}","type":"json"}]', + 'title' => 'CreateSchedulerxCalendar', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:CreateSchedulerxCalendar', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], + ], + ], + 'CreateSchedulerxNotificationPolicy' => [ + 'summary' => 'Creates a notification policy.', + 'methods' => ['post'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'Name', + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => ['operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'tenantRelevance' => 'publicInformation'], + 'parameters' => [ + [ + 'name' => 'RegionId', 'in' => 'formData', - 'schema' => [ - 'description' => 'The name of the workflow.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'helloworld', - ], + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'Description', + 'name' => 'PolicyName', 'in' => 'formData', - 'schema' => [ - 'description' => 'The description of the workflow.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Test', - ], + 'schema' => ['title' => '', 'description' => 'The name of the notification policy.'."\n", 'type' => 'string', 'required' => true, 'example' => 'test-weekdays'], ], [ - 'name' => 'TimeType', + 'name' => 'Description', 'in' => 'formData', - 'schema' => [ - 'description' => 'The method that is used to specify the time. Valid values:'."\n" - ."\n" - .'* 1: cron'."\n" - .'* 100: api'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['title' => '', 'description' => 'The description of the notification policy.'."\n", 'type' => 'string', 'required' => false, 'example' => 'Monday-Friday only'], ], [ - 'name' => 'TimeExpression', + 'name' => 'ChannelTimeRange', 'in' => 'formData', - 'schema' => [ - 'description' => 'The time expression. You can set the time expression based on the selected method that is used to specify time.'."\n" - ."\n" - .'* If you set TimeType to cron, you need to enter a standard cron expression. Online verification is supported.'."\n" - .'* If you set TimeType to api, no time expression is required.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '0 0/10 * * * ?', - ], + 'schema' => ['title' => '', 'description' => 'The configuration for the effective time periods of notification channels.'."\n" + ."\n" + .'> Please see the detailed explanation of this parameter below.', 'type' => 'string', 'required' => true, 'example' => '{'."\n" + .' "sendChannel": "sms,webhook,mail,phone",'."\n" + .' "timezone": "UTC+08:00",'."\n" + .' "webhookIsAtAll": "false",'."\n" + .' "timeRanges": {'."\n" + .' "all": ['."\n" + .' {'."\n" + .' "startTime": "08:00",'."\n" + .' "endTime": "18:00",'."\n" + .' "daysOfWeek": [1, 2, 3, 4, 5]'."\n" + .' }'."\n" + .' ]'."\n" + .' }'."\n" + .'}'."\n"], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'The response schema.'."\n", 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0', - ], - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Message' => [ - 'description' => 'The returned error message.'."\n", - 'type' => 'string', - 'example' => 'timetype is invalid', + 'Code' => ['description' => 'The status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'Additional information. Returned only when an error occurs.'."\n", 'type' => 'string', 'example' => 'Invalid parameter: Notification policy already exists: test-weekdays'."\n", 'title' => ''], + 'RequestId' => ['description' => 'The unique request ID.'."\n", 'type' => 'string', 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'AccessDeniedDetail' => [ + 'description' => 'The access denial details.', + 'type' => 'object', + 'properties' => [ + 'AuthAction' => ['description' => 'The authentication action.', 'type' => 'string', 'example' => 'edas:CreateSchedulerxNotificationPolicy', 'title' => ''], + 'AuthPrincipalDisplayName' => ['description' => 'The principal name.'."\n", 'type' => 'string', 'example' => '209312833131416xxx', 'title' => ''], + 'AuthPrincipalOwnerId' => ['description' => 'The account of the principal.'."\n", 'type' => 'string', 'example' => '1827811800526xxx', 'title' => ''], + 'AuthPrincipalType' => ['description' => 'The principal type.'."\n", 'type' => 'string', 'example' => 'SubUser', 'title' => ''], + 'EncodedDiagnosticMessage' => ['description' => 'The encoded diagnostic message.'."\n", 'type' => 'string', 'example' => 'AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==', 'title' => ''], + 'NoPermissionType' => ['description' => 'The permission denial type.', 'type' => 'string', 'example' => 'ImplicitDeny', 'title' => ''], + 'PolicyType' => ['description' => 'The policy type.'."\n", 'type' => 'string', 'example' => 'AccountLevelIdentityBasedPolicy', 'title' => ''], + ], + 'title' => '', + 'example' => '', ], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Invalid parameter: Notification policy already exists: test-weekdays\\\\n\\",\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Success\\": true,\\n \\"AccessDeniedDetail\\": {\\n \\"AuthAction\\": \\"edas:CreateSchedulerxNotificationPolicy\\",\\n \\"AuthPrincipalDisplayName\\": \\"209312833131416xxx\\",\\n \\"AuthPrincipalOwnerId\\": \\"1827811800526xxx\\",\\n \\"AuthPrincipalType\\": \\"SubUser\\",\\n \\"EncodedDiagnosticMessage\\": \\"AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==\\",\\n \\"NoPermissionType\\": \\"ImplicitDeny\\",\\n \\"PolicyType\\": \\"AccountLevelIdentityBasedPolicy\\"\\n }\\n}","type":"json"}]', + 'title' => 'CreateSchedulerxNotificationPolicy', + 'requestParamsDescription' => '# [](#channeltimerange-)ChannelTimeRange configuration description'."\n" + ."\n" + .'Configuration for the effective time of notification channels. Supports two modes: unified configuration and separate configuration.'."\n" + ."\n" + .'## [](#)Format'."\n" + ."\n" + .'This field must be in JSON format and supports the following core properties:'."\n" + ."\n" + .'### [](#)Properties'."\n" + ."\n" + .'**sendChannel: Notification channel configuration (required)**'."\n" + ."\n" + .'* A required field that specifies the notification channels to be configured.'."\n" + .'* Format: Multiple channels separated by commas, e.g., "sms,webhook,mail,phone".'."\n" + .'* Supported channels: sms, webhook (e.g., DingTalk, WeCom), mail, and phone.'."\n" + ."\n" + .'**timezone: Time zone setting**'."\n" + ."\n" + .'* Supports GMT or UTC format.'."\n" + .'* Example: GMT+8 or UTC+08:00.'."\n" + .'* Note: The time zone determines the reference standard for the effective time of alerts and is independent of the actual geographical location. For example, if you are in the Beijing region but configure "New York Time Zone (UTC-4), Monday 00:00-03:00", the system will operate based on the local time in New York.'."\n" + ."\n" + .'**webhookIsAtAll: Webhook notification configuration**'."\n" + ."\n" + .'* The value is "true" or "false".'."\n" + .'* Indicates whether to @all members in a Webhook notification.'."\n" + ."\n" + .'**timeRanges: Time range configuration (required)**'."\n" + ."\n" + .'* Supports two configuration modes:'."\n" + ."\n" + .' 1. Unified Configuration: Use "all" as the key to set a single time period for all selected channels.'."\n" + .' 2. Separate Configuration: Configure a time period for each channel individually, with the key being the specific channel identifier.'."\n" + ."\n" + .'### [](#)Time period configuration items'."\n" + ."\n" + .'Each time period includes the following properties:'."\n" + ."\n" + .'* startTime: The start time, in HH:mm format (required).'."\n" + .'* endTime: The end time, in HH:mm format (required).'."\n" + .'* daysOfWeek: The effective days of the week, in an array format. 1-7 represent Monday to Sunday (optional. If empty, this time period is not effective).'."\n" + ."\n" + .'### [](#)Example configurations'."\n" + ."\n" + .'**Example 1: Unified configuration mode**'."\n" + ."\n" + .'```json'."\n" + .'{'."\n" + .' "sendChannel": "sms,webhook,mail,phone",'."\n" + .' "timezone": "UTC+08:00",'."\n" + .' "webhookIsAtAll": "false",'."\n" + .' "timeRanges": {'."\n" + .' "all": ['."\n" + .' {'."\n" + .' "startTime": "08:00",'."\n" + .' "endTime": "18:00",'."\n" + .' "daysOfWeek": [1, 2, 3, 4, 5]'."\n" + .' }'."\n" + .' ]'."\n" + .' }'."\n" + .'}'."\n" + .'```'."\n" + ."\n" + .'**Example 2: Separate configuration mode**'."\n" + ."\n" + .'```json'."\n" + .'{'."\n" + .' "sendChannel": "sms,webhook,mail,phone",'."\n" + .' "timezone": "GMT+8",'."\n" + .' "webhookIsAtAll": "false",'."\n" + .' "timeRanges": {'."\n" + .' "webhook": ['."\n" + .' {'."\n" + .' "startTime": "08:00",'."\n" + .' "endTime": "18:00",'."\n" + .' "daysOfWeek": [1, 2, 3, 4, 5]'."\n" + .' }'."\n" + .' ],'."\n" + .' "sms": ['."\n" + .' {'."\n" + .' "startTime": "08:00",'."\n" + .' "endTime": "18:00",'."\n" + .' "daysOfWeek": [1, 2, 3, 4, 5]'."\n" + .' }'."\n" + .' ],'."\n" + .' "mail": ['."\n" + .' {'."\n" + .' "startTime": "08:00",'."\n" + .' "endTime": "18:00",'."\n" + .' "daysOfWeek": [1, 2, 3, 4, 5]'."\n" + .' }'."\n" + .' ],'."\n" + .' "phone": ['."\n" + .' {'."\n" + .' "startTime": "08:00",'."\n" + .' "endTime": "18:00",'."\n" + .' "daysOfWeek": [1, 2, 3, 4, 5]'."\n" + .' }'."\n" + .' ]'."\n" + .' }'."\n" + .'}'."\n" + .'```'."\n" + ."\n" + .'### [](#)Note'."\n" + ."\n" + .'1. The sendChannel field is required and can only contain supported notification channels.'."\n" + .'2. When timeRanges contains "all", it signifies the unified configuration mode. In this case, it cannot contain configurations for other individual channels.'."\n" + .'3. When timeRanges does not contain "all", you need to configure each channel specified in sendChannel separately.'."\n" + .'4. Time must use the 24-hour format (HH:mm).'."\n" + .'5. Days of the week are represented by numbers from 1 to 7, corresponding to Monday through Sunday.'."\n" + .'6. The time zone supports configuration in both GMT and UTC formats.'."\n", + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:CreateSchedulerxNotificationPolicy', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"timetype is invalid\\"\\n}","type":"json"}]', - 'title' => 'UpdateWorkflow', ], - 'UpdateWorkflowDag' => [ - 'summary' => 'Modifies the nodes and dependencies of a workflow. You can call this operation only in the professional edition.', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'CreateWorkflow' => [ + 'summary' => 'Creates a workflow. By default, the created workflow is disabled. After you update the directed acyclic graph (DAG) of the workflow, you must manually or call the corresponding operation to enable the workflow. You can call this operation only in the professional edition.', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - ], + 'systemTags' => ['operationType' => 'create'], 'parameters' => [ [ 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'in' => 'formData', + 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Namespace', 'in' => 'formData', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'schema' => ['description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.', 'type' => 'string', 'required' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ 'name' => 'NamespaceSource', 'in' => 'formData', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for a special third party.', 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ 'name' => 'GroupId', 'in' => 'formData', - 'schema' => [ - 'description' => 'The application group ID. You can obtain the application group ID on the Application Management page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'testSchedulerx.defaultGroup', - ], + 'schema' => ['description' => 'The application group ID. You can obtain the ID on the Application Management page in the SchedulerX console.', 'type' => 'string', 'required' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ - 'name' => 'WorkflowId', + 'name' => 'Name', 'in' => 'formData', - 'schema' => [ - 'description' => 'The workflow ID.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => '123', - ], + 'schema' => ['description' => 'The name of the workflow.', 'type' => 'string', 'required' => true, 'example' => 'helloworld', 'title' => ''], ], [ - 'name' => 'DagJson', + 'name' => 'Description', 'in' => 'formData', - 'schema' => [ - 'description' => 'The directed acyclic graph (DAG) of the workflow, including the information about the nodes and the edges. Specify the value of this parameter in the JSON format.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => '{"nodes":[{"id":2300691},{"id":10518089},{"id":1758851}],"edges":[{"source":10518089,"target":1758851},{"source":10518089,"target":2300691}]}', - ], + 'schema' => ['description' => 'The description of the workflow.', 'type' => 'string', 'required' => false, 'example' => 'Test', 'title' => ''], + ], + [ + 'name' => 'TimeType', + 'in' => 'formData', + 'schema' => ['description' => 'The method that is used to specify the time. Valid values:'."\n" + ."\n" + .'- 1: cron'."\n" + .'- 100: api', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '1', 'title' => ''], + ], + [ + 'name' => 'TimeExpression', + 'in' => 'formData', + 'schema' => ['description' => 'The time expression. You can set the time expression based on the selected method that is used to specify time.'."\n" + ."\n" + .'- If you set the TimeType parameter to cron, you need to enter a standard cron expression. Online verification is supported.'."\n" + .'- If you set the TimeType parameter to api, no time expression is required.', 'type' => 'string', 'required' => false, 'example' => '0 0/10 * * * ?', 'title' => ''], + ], + [ + 'name' => 'Timezone', + 'in' => 'formData', + 'schema' => ['description' => 'The time zone.', 'type' => 'string', 'required' => false, 'example' => 'GMT+8', 'title' => ''], + ], + [ + 'name' => 'MaxConcurrency', + 'in' => 'formData', + 'schema' => ['description' => 'The maximum number of workflow instances that can be run at the same time. Default value: 1. The value 1 indicates that only one workflow instance is allowed. In this case, if the triggered workflow instance is still ongoing, no more workflow instances can be triggered even the time to schedule the next workflow arrives.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'The information about the array object.'."\n", + 'description' => 'The response schema.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0', - ], - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Message' => [ - 'description' => 'The returned error message.'."\n", - 'type' => 'string', + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0'], + 'Code' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the workflow was created. Valid values:'."\n" + ."\n" + .'- true'."\n" + .'- false', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Message' => ['description' => 'The returned error message.', 'type' => 'string', 'example' => 'timetype is invalid', 'title' => ''], + 'Data' => [ + 'description' => 'The data that was returned for the request.', + 'type' => 'object', + 'properties' => [ + 'WorkflowId' => ['description' => 'The workflow ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '92583', 'title' => ''], + ], + 'title' => '', 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true,\\n \\"Message\\": \\"timetype is invalid\\",\\n \\"Data\\": {\\n \\"WorkflowId\\": 92583\\n }\\n}","type":"json"}]', + 'title' => 'CreateWorkflow', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-21T02:51:00.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-05-30T07:43:23.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-03-25T02:55:32.000Z', 'description' => 'Response parameters changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:CreateSchedulerxWorkflowCreate', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"\\"\\n}","type":"json"}]', - 'title' => 'UpdateWorkflowDag', ], - 'ListWorkFlows' => [ - 'summary' => 'Queries the information of a workflow.', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'https', - ], + 'DeleteAppGroup' => [ + 'summary' => 'Deletes an application group.', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'write', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - 'riskType' => 'none', - 'chargeType' => 'free', - ], + 'systemTags' => ['operationType' => 'delete'], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The ID of the region.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'title' => '命名空间uid', - 'description' => 'The namespace ID.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => '4a06d5ea-f576-4326-842c-fb14ea043d8d', - ], - ], - [ - 'name' => 'NamespaceSource', - 'in' => 'query', - 'schema' => [ - 'title' => '命名空间来源', - 'description' => 'The source of the namespace. This parameter is required only for special sources.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'The ID of the namespace. You can obtain the ID of the namespace on the Namespace page in the SchedulerX console.', 'type' => 'string', 'required' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'title' => '应用分组ID', - 'description' => 'The ID of the application group.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'hxm.test', - ], - ], - [ - 'name' => 'WorkflowName', - 'in' => 'query', - 'schema' => [ - 'description' => 'The workflow name.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'test3', - ], - ], - [ - 'name' => 'PageNum', - 'in' => 'query', - 'schema' => [ - 'description' => 'The page number.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], - ], - [ - 'name' => 'PageSize', - 'in' => 'query', - 'schema' => [ - 'description' => 'The number of entries per page.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => 'The ID of the application. You can obtain the ID of the application on the Application Management page in the SchedulerX console.', 'type' => 'string', 'required' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ - 'name' => 'Status', + 'name' => 'DeleteJobs', 'in' => 'query', - 'schema' => [ - 'description' => 'The job status.'."\n" - ."\n" - .'* **0**: disables the job.'."\n" - .'* **1**: enables the routing policy.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => 'Specifies whether to delete the jobs in the application group. Valid values:'."\n" + ."\n" + .'true: deletes the jobs in the application group.'."\n" + .'false: does not delete the jobs in the application group.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'Schema of Response'."\n", + 'description' => 'The schema of the response.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '883AFE93-FB03-4FA9-A958-E750C6DE120C', - ], - 'Code' => [ - 'title' => '错误码', - 'description' => 'The error code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'title' => '错误信息', - 'description' => 'The error message.'."\n", - 'type' => 'string', - 'example' => 'workflow is not existed', - ], - 'Success' => [ - 'title' => '会否成功', - 'description' => 'Indicates whether the request was successful.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Data' => [ - 'title' => '工作流的数据', - 'description' => 'The data of the workflow.'."\n", - 'type' => 'object', - 'properties' => [ - 'Records' => [ - 'description' => 'The row of data.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => '*'."\n", - 'type' => 'object', - 'properties' => [ - 'Namespace' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", - 'type' => 'string', - 'example' => '4a06d5ea-f576-4326-842c-fb14ea043d8d'."\n", - ], - 'GroupId' => [ - 'description' => 'The application ID.'."\n", - 'type' => 'string', - 'example' => 'hxm.test', - ], - 'Name' => [ - 'description' => 'The workflow name.'."\n", - 'type' => 'string', - 'example' => 'test3', - ], - 'WorkflowId' => [ - 'description' => 'The workflow ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1339', - ], - 'Description' => [ - 'description' => 'The job description.'."\n", - 'type' => 'string', - 'example' => 'No description', - ], - 'TimeType' => [ - 'description' => 'The time type of the workflow.'."\n", - 'type' => 'string', - 'example' => 'cron', - ], - 'TimeExpression' => [ - 'description' => 'The time expression.'."\n", - 'type' => 'string', - 'example' => '0 0 5 */1 * ?', - ], - 'MaxConcurrency' => [ - 'description' => 'The maximum concurrency.'."\n", - 'type' => 'string', - 'example' => '1', - ], - 'Calendar' => [ - 'description' => 'The calendar.'."\n", - 'type' => 'string', - 'example' => 'workday', - ], - 'Creator' => [ - 'description' => 'The creator.'."\n", - 'type' => 'string', - 'example' => '1144881807903942', - ], - 'Updater' => [ - 'description' => 'The updater.'."\n", - 'type' => 'string', - 'example' => '1144881807903942', - ], - ], - ], - ], - 'PageNumber' => [ - 'description' => 'The page number.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'PageSize' => [ - 'description' => 'The number of entries per page.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'Total' => [ - 'description' => 'The total number of entries returned.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - ], - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.', 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108'], + 'Code' => ['description' => 'The HTTP status code that is returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The additional information that is returned.', 'type' => 'string', 'example' => 'app is not existed, groupId=xxxx, namesapce=xxxx', 'title' => ''], + 'Success' => ['description' => 'Indices whether the request was successful. Valid values:'."\n" + ."\n" + .'true: The request was successful.'."\n" + .'false: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"app is not existed, groupId=xxxx, namesapce=xxxx\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'DeleteAppGroup', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-21T02:51:00.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-03-30T08:41:58.000Z', 'description' => 'Response parameters changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'edas:DeleteSchedulerxAppGroupRemove', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"883AFE93-FB03-4FA9-A958-E750C6DE120C\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"workflow is not existed\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"Records\\": [\\n {\\n \\"Namespace\\": \\"4a06d5ea-f576-4326-842c-fb14ea043d8d\\\\n\\",\\n \\"GroupId\\": \\"hxm.test\\",\\n \\"Name\\": \\"测试工作流3\\",\\n \\"WorkflowId\\": 1339,\\n \\"Description\\": \\"No description\\",\\n \\"TimeType\\": \\"cron\\",\\n \\"TimeExpression\\": \\"0 0 5 */1 * ?\\",\\n \\"MaxConcurrency\\": \\"1\\",\\n \\"Calendar\\": \\"workday\\",\\n \\"Creator\\": \\"1144881807903942\\",\\n \\"Updater\\": \\"1144881807903942\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"Total\\": 1\\n }\\n}","type":"json"}]', - 'title' => 'ListWorkFlows', ], - 'ExecuteWorkflow' => [ - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'https', - ], + 'DeleteJob' => [ + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', - 'systemTags' => [ - 'operationType' => 'create', - ], + 'systemTags' => ['operationType' => 'delete'], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'JobId', 'in' => 'query', - 'schema' => [ - 'description' => 'The region information.', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The ID of the job. You can obtain the ID on the **Task Management** page in the SchedulerX console.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'docRequired' => true, 'example' => '92583', 'title' => ''], ], [ 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'schema' => ['description' => 'The ID of the namespace. You can obtain the ID of the namespace on the **Namespace** page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ 'name' => 'NamespaceSource', 'in' => 'query', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.', - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The application ID. You can obtain the application ID on the Application Management page in the SchedulerX console.', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'testSchedulerx.defaultGroup', - ], + 'schema' => ['description' => 'The ID of the application. You can obtain the application ID on the **Application Management** page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ - 'name' => 'WorkflowId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The workflow ID.', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'docRequired' => true, - 'example' => '111', - ], - ], - [ - 'name' => 'InstanceParameters', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The dynamic parameter of the workflow instance. The value of the parameter can be up to 1,000 bytes in length.', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'test', - ], + 'schema' => ['description' => 'The ID of the region.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ @@ -2714,230 +2256,319 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The error message that is returned only if the corresponding error occurs.', - 'type' => 'string', - 'example' => 'Cannot find product according to your domain.', - ], - 'RequestId' => [ - 'description' => 'The request ID.', - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful.', - 'type' => 'boolean', - 'example' => 'true', - ], - 'Data' => [ - 'description' => 'If the request is successful, the ID of the workflow instance is returned.', - 'type' => 'object', - 'properties' => [ - 'WfInstanceId' => [ - 'description' => 'The workflow instance ID.', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '111111', - ], - ], - ], + 'Code' => ['description' => 'The HTTP status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The additional information returned.'."\n", 'type' => 'string', 'example' => 'message', 'title' => ''], + 'RequestId' => ['description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the job was deleted. Valid values:'."\n" + ."\n" + .'* **true**: The job was deleted.'."\n" + .'* **false**: The job was not deleted.'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Cannot find product according to your domain.\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"WfInstanceId\\": 111111\\n }\\n}","errorExample":""},{"type":"xml","example":"<ExecuteWorkflowResponse>\\n<RequestId>4F68ABED-AC31-4412-9297-D9A8F0401108</RequestId>\\n<Message>Cannot find product according to your domain.</Message>\\n<Data>\\n <WfInstanceId>111111</WfInstanceId>\\n</Data>\\n<Code>200</Code>\\n<Success>true</Success>\\n</ExecuteWorkflowResponse>","errorExample":""}]', - 'title' => 'ExecuteWorkflow', - 'summary' => 'Immediately triggers a workflow.', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"message\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteJobResponse>\\n<RequestId>4F68ABED-AC31-4412-9297-D9A8F0401108</RequestId>\\n<Message>jobid: 92583 not match groupId: testSchedulerx.defaultGroup</Message>\\n<Code>200</Code>\\n<Success>true</Success>\\n</DeleteJobResponse>","errorExample":""}]', + 'title' => 'DeleteJob', + 'summary' => 'Deletes a specified job.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'DeleteWorkflow' => [ - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'https', + 'extraInfo' => '## Sample code'."\n" + ."\n" + .'```json'."\n" + .'package com.alibaba.schedulerx.pop;'."\n" + ."\n" + .'import com.aliyuncs.DefaultAcsClient;'."\n" + .'import com.aliyuncs.exceptions.ClientException;'."\n" + .'import com.aliyuncs.exceptions.ServerException;'."\n" + .'import com.aliyuncs.profile.DefaultProfile;'."\n" + .'import com.aliyuncs.schedulerx2.model.v20190430.DeleteJobRequest;'."\n" + .'import com.aliyuncs.schedulerx2.model.v20190430.DeleteJobResponse;'."\n" + ."\n" + .'public class DeleteJob {'."\n" + ."\n" + .' public static void main(String[] args) throws Exception {'."\n" + .' // The ID of the region. Enter a value by referring to the Endpoints topic or based on the region in which you purchased the service. '."\n" + .' String regionId = "cn-shanghai";'."\n" + .' // The AccessKey ID that is used for authentication. You can obtain the AccessKey ID in the Resource Access Management (RAM) console. '."\n" + .' String accessKeyId = "<yourAccessKeyId>";'."\n" + .' // The AccessKey secret that is used for authentication. You can obtain the AccessKey secret in the RAM console. '."\n" + .' String accessKeySecret = "<yourAccessKeySecret>";'."\n" + .' // The name of the service. '."\n" + .' String productName ="schedulerx2";'."\n" + .' // The domain. Enter a domain by referring to the Endpoints topic. '."\n" + .' String domain ="schedulerx.cn-shanghai.aliyuncs.com";'."\n" + .' // Build an API client. '."\n" + .' DefaultProfile.addEndpoint(regionId, productName, domain);'."\n" + .' DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);'."\n" + .' DefaultAcsClient client = new DefaultAcsClient(defaultProfile);'."\n" + ."\n" + .' DeleteJobRequest request = new DeleteJobRequest();'."\n" + .' request.setNamespace("xxxxxx");'."\n" + .' request.setGroupId("xxxxxx");'."\n" + .' request.setJobId((long) 2030221);'."\n" + ."\n" + .' DeleteJobResponse response = client.getAcsResponse(request);'."\n" + .' if (response.getSuccess()) {'."\n" + .' System.out.println("Success: "+response.getSuccess());'."\n" + .' } else {'."\n" + .' System.out.println("Message: "+response.getMessage());'."\n" + .' }'."\n" + ."\n" + .' }'."\n" + ."\n" + .'}'."\n" + .'```'."\n", + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-21T02:51:00.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-12-26T01:59:01.000Z', 'description' => 'Request parameters changed, Error codes changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'edas:DeleteSchedulerxJobDelete', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'DeleteNamespace' => [ + 'summary' => 'Deletes a namespace.', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', - 'systemTags' => [ - 'operationType' => 'delete', - ], + 'deprecated' => false, + 'systemTags' => ['operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ - 'name' => 'WorkflowId', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The workflow ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'docRequired' => true, - 'example' => '111', - ], + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Namespace', 'in' => 'query', + 'schema' => ['description' => 'The namespace ID. You can obtain the namespace ID on the Namespaces page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****'."\n", 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401107'], + 'Code' => ['description' => 'The returned code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The additional information returned only if an error occurs.'."\n", 'type' => 'string', 'example' => 'The system namespace cannot be deleted', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + ], + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401107\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"The system namespace cannot be deleted\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'DeleteNamespace', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'edas:DeleteSchedulerxNamespaceDelete', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], + ], + ], + 'DeleteRouteStrategy' => [ + 'summary' => 'Deletes a routing policy.', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'NamespaceSource', + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => ['operationType' => 'delete'], + 'parameters' => [ + [ + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], + ], + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => ['description' => 'The namespace ID. You can obtain the ID of the namespace on the **Namespace** page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The application group ID. You can obtain the application group ID on the Application Management page in the SchedulerX console.', - 'type' => 'string', - 'required' => false, - 'example' => 'testSchedulerx.defaultGroup', - ], + 'schema' => ['description' => 'The application ID. You can obtain the application ID on the **Application Management** page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ - 'name' => 'RegionId', + 'name' => 'JobId', 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The job ID. You can obtain the job ID on the **Task Management** page in the SchedulerX console.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '92583', 'default' => '-1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The error message that is returned only if the corresponding error occurs.'."\n", - 'type' => 'string', - 'example' => 'Your request is denied as lack of ssl protect.', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', - ], - 'Success' => [ - 'description' => 'Indicates whether the workflow was deleted. Valid values:'."\n" - ."\n" - .'* **true**'."\n" - .'* **false**'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The HTTP status code that is returned.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The additional information that is returned.'."\n", 'type' => 'string', 'example' => 'strategy is already deleted.', 'title' => ''], + 'RequestId' => ['description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], - 'description' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Your request is denied as lack of ssl protect.\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => 'DeleteWorkflow', - 'summary' => 'Deletes a workflow.', - ], - 'DisableWorkflow' => [ - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'https', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"strategy is already deleted.\\",\\n \\"RequestId\\": \\"71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'DeleteRouteStrategy', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-21T02:51:00.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-03-30T08:41:58.000Z', 'description' => 'Response parameters changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'edas:DeleteSchedulerxRouteStrategyDelete', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'DeleteSchedulerxCalendar' => [ + 'summary' => 'Deletes a calendar.', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', - 'systemTags' => [ - 'operationType' => 'update', - ], + 'systemTags' => ['operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'tenantRelevance' => 'tenant'], 'parameters' => [ [ - 'name' => 'WorkflowId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The workflow ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'docRequired' => true, - 'example' => '111', - ], + 'name' => 'RegionId', + 'in' => 'formData', + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'Namespace', - 'in' => 'query', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'name' => 'CalendarName', + 'in' => 'formData', + 'schema' => ['title' => '', 'description' => 'The calendar name.'."\n", 'type' => 'string', 'required' => true, 'example' => '2025workday'], ], [ - 'name' => 'NamespaceSource', - 'in' => 'query', + 'name' => 'Year', + 'in' => 'formData', + 'schema' => ['description' => 'The year.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '2025', 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => 'The status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'Additional information. Returned only when an error occurs.'."\n", 'type' => 'string', 'example' => 'calendar \'2025workday\' does not exist in year 2025', 'title' => ''], + 'RequestId' => ['description' => 'The unique request ID.'."\n", 'type' => 'string', 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'AccessDeniedDetail' => [ + 'description' => 'The access denial details.', + 'type' => 'object', + 'properties' => [ + 'AuthAction' => ['description' => 'The authentication action.', 'type' => 'string', 'example' => 'edas:DeleteSchedulerxCalendar', 'title' => ''], + 'AuthPrincipalDisplayName' => ['description' => 'The principal name.'."\n", 'type' => 'string', 'example' => '209312833131416xxx', 'title' => ''], + 'AuthPrincipalOwnerId' => ['description' => 'The account of the principal.'."\n", 'type' => 'string', 'example' => '1827811800526xxx', 'title' => ''], + 'AuthPrincipalType' => ['description' => 'The principal type.'."\n", 'type' => 'string', 'example' => 'SubUser', 'title' => ''], + 'EncodedDiagnosticMessage' => ['description' => 'The encoded diagnostic message.'."\n", 'type' => 'string', 'example' => 'AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==', 'title' => ''], + 'NoPermissionType' => ['description' => 'The permission denial type.', 'type' => 'string', 'example' => 'ImplicitDeny', 'title' => ''], + 'PolicyType' => ['description' => 'The policy type.'."\n", 'type' => 'string', 'example' => 'AccountLevelIdentityBasedPolicy', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], - [ - 'name' => 'GroupId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The application ID. You can obtain the application ID on the Application Management page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'testSchedulerx.defaultGroup', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"calendar \'2025workday\' does not exist in year 2025\\",\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Success\\": true,\\n \\"AccessDeniedDetail\\": {\\n \\"AuthAction\\": \\"edas:DeleteSchedulerxCalendar\\",\\n \\"AuthPrincipalDisplayName\\": \\"209312833131416xxx\\",\\n \\"AuthPrincipalOwnerId\\": \\"1827811800526xxx\\",\\n \\"AuthPrincipalType\\": \\"SubUser\\",\\n \\"EncodedDiagnosticMessage\\": \\"AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==\\",\\n \\"NoPermissionType\\": \\"ImplicitDeny\\",\\n \\"PolicyType\\": \\"AccountLevelIdentityBasedPolicy\\"\\n }\\n}","type":"json"}]', + 'title' => 'DeleteSchedulerxCalendar', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'edas:DeleteSchedulerxCalendar', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], + ], + ], + 'DeleteSchedulerxNotificationPolicy' => [ + 'summary' => 'Deletes a notification policy.', + 'methods' => ['post'], + 'schemes' => ['https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => ['operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'tenantRelevance' => 'tenant'], + 'parameters' => [ [ 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'in' => 'formData', + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], + ], + [ + 'name' => 'PolicyName', + 'in' => 'formData', + 'schema' => ['title' => '', 'description' => 'The name of the notification policy.'."\n", 'type' => 'string', 'required' => true, 'example' => 'test-weekdays'], ], ], 'responses' => [ @@ -2945,111 +2576,84 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The error message that is returned only if the corresponding error occurs.'."\n", - 'type' => 'string', - 'example' => 'Your request is denied as lack of ssl protect.', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', - ], - 'Success' => [ - 'description' => 'Indicates whether the workflow was disabled. Valid values:'."\n" - ."\n" - .'* **true**'."\n" - .'* **false**'."\n", - 'type' => 'boolean', - 'example' => 'true', + 'Code' => ['description' => 'The status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message. Returned only when an error occurs.'."\n", 'type' => 'string', 'example' => 'Invalid parameter: policyName cannot be null', 'title' => ''], + 'RequestId' => ['description' => 'The unique request ID.'."\n", 'type' => 'string', 'example' => 'C8E5FB4A-6D8D-424D-9AAA-4FE06BB74FF9', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'AccessDeniedDetail' => [ + 'description' => 'The access denial details.', + 'type' => 'object', + 'properties' => [ + 'AuthAction' => ['description' => 'The authentication action.', 'type' => 'string', 'example' => 'edas:DeleteSchedulerxNotificationPolicy', 'title' => ''], + 'AuthPrincipalDisplayName' => ['description' => 'The principal name.'."\n", 'type' => 'string', 'example' => '209312833131416xxx', 'title' => ''], + 'AuthPrincipalOwnerId' => ['description' => 'The account of the principal.'."\n", 'type' => 'string', 'example' => '1827811800526xxx', 'title' => ''], + 'AuthPrincipalType' => ['description' => 'The principal type.'."\n", 'type' => 'string', 'example' => 'SubUser', 'title' => ''], + 'EncodedDiagnosticMessage' => ['description' => 'The encoded diagnostic message.'."\n", 'type' => 'string', 'example' => 'AQFoiYKaaImCmkI3QjgzNzM1LTIzQTUtNURENy1COUQ3LTBFOTIxRkRFOEM3NQ==', 'title' => ''], + 'NoPermissionType' => ['description' => 'The permission denial type.', 'type' => 'string', 'example' => 'ImplicitDeny', 'title' => ''], + 'PolicyType' => ['description' => 'The policy type.'."\n", 'type' => 'string', 'example' => 'AccountLevelIdentityBasedPolicy', 'title' => ''], + ], + 'title' => '', + 'example' => '', ], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Your request is denied as lack of ssl protect.\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DisableWorkflowResponse>\\n<RequestId>4F68ABED-AC31-4412-9297-D9A8F0401108</RequestId>\\n<Message>Your request is denied as lack of ssl protect.</Message>\\n<Code>200</Code>\\n<Success>true</Success>\\n</DisableWorkflowResponse>","errorExample":""}]', - 'title' => 'DisableWorkflow', - 'summary' => 'Disables a specified workflow.', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'EnableWorkflow' => [ - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'https', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Invalid parameter: policyName cannot be null\\",\\n \\"RequestId\\": \\"C8E5FB4A-6D8D-424D-9AAA-4FE06BB74FF9\\",\\n \\"Success\\": true,\\n \\"AccessDeniedDetail\\": {\\n \\"AuthAction\\": \\"edas:DeleteSchedulerxNotificationPolicy\\",\\n \\"AuthPrincipalDisplayName\\": \\"209312833131416xxx\\",\\n \\"AuthPrincipalOwnerId\\": \\"1827811800526xxx\\",\\n \\"AuthPrincipalType\\": \\"SubUser\\",\\n \\"EncodedDiagnosticMessage\\": \\"AQFoiYKaaImCmkI3QjgzNzM1LTIzQTUtNURENy1COUQ3LTBFOTIxRkRFOEM3NQ==\\",\\n \\"NoPermissionType\\": \\"ImplicitDeny\\",\\n \\"PolicyType\\": \\"AccountLevelIdentityBasedPolicy\\"\\n }\\n}","type":"json"}]', + 'title' => 'DeleteSchedulerxNotificationPolicy', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'edas:DeleteSchedulerxNotificationPolicy', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'DeleteWorkflow' => [ + 'methods' => ['get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', - 'systemTags' => [ - 'operationType' => 'update', - ], + 'systemTags' => ['operationType' => 'delete'], 'parameters' => [ [ 'name' => 'WorkflowId', 'in' => 'query', - 'schema' => [ - 'description' => 'The workflow ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'docRequired' => true, - 'example' => '111', - ], + 'schema' => ['description' => 'The workflow ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'docRequired' => true, 'example' => '111', 'title' => ''], ], [ 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'schema' => ['description' => 'The ID of the namespace. You can find this ID on the **Namespace** page in the Console.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ 'name' => 'NamespaceSource', 'in' => 'query', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'Required only for specific third-party scenarios.', 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The application ID. You can obtain the application ID on the Application Management page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'testSchedulerx.defaultGroup', - ], + 'schema' => ['description' => 'The ID of the application group. You can find this ID on the **Application Management** page in the Console.', 'type' => 'string', 'required' => false, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ @@ -3057,50 +2661,46 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The error message that is returned only if the corresponding error occurs.'."\n", - 'type' => 'string', - 'example' => 'Your request is denied as lack of ssl protect.', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', - ], - 'Success' => [ - 'description' => 'Indicates whether the workflow was enabled. Valid values:'."\n" - ."\n" - .'* **true**'."\n" - .'* **false**'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The return code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message. This parameter is returned only if the request fails.', 'type' => 'string', 'example' => 'Your request is denied as lack of ssl protect.', 'title' => ''], + 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the workflow was deleted successfully. Valid values:'."\n" + ."\n" + .'- **true**: The workflow was deleted.'."\n" + ."\n" + .'- **false**: The workflow was not deleted.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], + 'description' => 'The response object.', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Your request is denied as lack of ssl protect.\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<EnableWorkflowResponse>\\n<RequestId>4F68ABED-AC31-4412-9297-D9A8F0401108</RequestId>\\n<Message>Your request is denied as lack of ssl protect.</Message>\\n<Code>200</Code>\\n<Success>true</Success>\\n</EnableWorkflowResponse>","errorExample":""}]', - 'title' => 'EnableWorkflow', - 'summary' => 'Enables a workflow.', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'GetWorkFlow' => [ - 'summary' => 'Obtains the information about a workflow.', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => 'DeleteWorkflow', + 'summary' => 'Deletes the specified workflow.', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-21T02:51:00.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-12-26T01:59:01.000Z', 'description' => 'Request parameters changed, Error codes changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'edas:DeleteSchedulerxWorkflowDelete', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Your request is denied as lack of ssl protect.\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true\\n}","type":"json"}]', + ], + 'DescribeRegions' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -3108,248 +2708,169 @@ ], 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - 'riskType' => 'none', - 'chargeType' => 'free', - ], + 'systemTags' => ['operationType' => 'get'], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', + 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The region information.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'public', + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => 'The response code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message. This parameter is returned only if the request fails.', 'type' => 'string', 'example' => 'disable failed jobs=[99341]', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request succeeded. Valid values:'."\n" + ."\n" + .'- **true**: The request succeeded.'."\n" + ."\n" + .'- **false**: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Regions' => [ + 'description' => 'A list of available regions.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'RegionEndpoint' => ['description' => 'The service endpoint for the region.', 'type' => 'string', 'example' => 'schedulerx.cn-hangzhou.aliyuncs.com', 'title' => ''], + 'LocalName' => ['description' => 'The display name of the region. This value varies based on the language specified in the request.', 'type' => 'string', 'example' => 'Hangzhou', 'title' => ''], + 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"disable failed jobs=[99341]\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true,\\n \\"Regions\\": [\\n {\\n \\"RegionEndpoint\\": \\"schedulerx.cn-hangzhou.aliyuncs.com\\",\\n \\"LocalName\\": \\"Hangzhou\\",\\n \\"RegionId\\": \\"cn-hangzhou\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'DescribeRegions', + 'summary' => 'Returns a list of available regions.', + 'changeSet' => [ + ['createdAt' => '2024-05-30T07:43:23.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2022-12-26T01:59:01.000Z', 'description' => 'Error codes changed'], + ], + 'ramActions' => [], + ], + 'DesignateWorkers' => [ + 'summary' => 'Designates machines.', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => ['operationType' => 'create'], + 'parameters' => [ [ 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'title' => '命名空间uid', - 'description' => 'The ID of the namespace.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => '4a06d5ea-f576-4326-842c-fb14ea043d8d', - ], + 'schema' => ['title' => '', 'description' => 'The unique identifier (UID) of the namespace.'."\n", 'type' => 'string', 'required' => true, 'example' => '4a06d5ea-f576-4326-842c-fb14ea043d8d'], ], [ 'name' => 'NamespaceSource', 'in' => 'query', - 'schema' => [ - 'title' => '命名空间来源', - 'description' => 'The source of the namespace.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'source', - ], + 'schema' => ['title' => '', 'description' => 'The source of the namespace.'."\n", 'type' => 'string', 'required' => false, 'example' => 'schedulerx'], ], [ 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'title' => '应用分组ID', - 'description' => 'The ID of the application group.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'hxm.test', - ], + 'schema' => ['title' => '', 'description' => 'The application group ID.'."\n", 'type' => 'string', 'required' => true, 'example' => 'hxm.test'], ], [ - 'name' => 'WorkflowId', + 'name' => 'JobId', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The job ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '144153'], + ], + [ + 'name' => 'Transferable', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'Specifies whether to allow a failover.'."\n", 'type' => 'boolean', 'required' => true, 'example' => 'true'], + ], + [ + 'name' => 'DesignateType', 'in' => 'query', 'schema' => [ - 'title' => '工作流ID', - 'description' => 'The ID of the workflow.'."\n", + 'title' => '', + 'description' => 'The type of the machines to be designated. Valid values: 1 and 2. The value 1 specifies the worker type. The value 2 specifies the label type.'."\n", 'type' => 'integer', - 'format' => 'int64', + 'format' => 'int32', 'required' => true, - 'example' => '1234', + 'enumValueTitles' => [1 => 'worker', 'label'], + 'example' => '1', ], ], + [ + 'name' => 'Workers', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The designated machines. Specify the value of the parameter in a JSON string.'."\n", 'type' => 'string', 'required' => false, 'example' => '["127.0.0.1","127.0.0.2"]'], + ], + [ + 'name' => 'Labels', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The designated `labels`. Specify the value of the parameter in a `JSON` string.'."\n", 'type' => 'string', 'required' => false, 'example' => '["gray"]'], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'example' => 'public', 'title' => ''], + ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'Schema of Response'."\n", + 'description' => 'The response schema.'."\n", 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '45678xxx', - ], - 'Code' => [ - 'title' => '错误码', - 'description' => 'Error codes'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'title' => '错误信息', - 'description' => 'Error message'."\n", - 'type' => 'string', - 'example' => 'workflow is not existed', - ], - 'Success' => [ - 'title' => '会否成功', - 'description' => 'The result of the API call.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Data' => [ - 'title' => '工作流的数据', - 'description' => 'The data of the workflow.'."\n", - 'type' => 'object', - 'properties' => [ - 'WorkFlowInfo' => [ - 'title' => '工作流基本信息', - 'description' => 'The basic information of the workflow.'."\n", - 'type' => 'object', - 'properties' => [ - 'WorkflowId' => [ - 'title' => '工作流ID', - 'description' => 'The ID of the workflow.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1234xxx', - ], - 'Name' => [ - 'title' => '工作流名称', - 'description' => 'The name of the workflow.'."\n", - 'type' => 'string', - 'example' => 'workflow_111', - ], - 'Description' => [ - 'title' => '工作流描述', - 'description' => 'The description of the workflow.'."\n", - 'type' => 'string', - 'example' => 'my first workflow', - ], - 'Status' => [ - 'title' => '工作流状态', - 'description' => 'The status of the workflow.'."\n", - 'type' => 'string', - 'example' => 'Successful'."\n", - ], - 'TimeType' => [ - 'title' => '工作流时间类型', - 'description' => 'The time type of the workflow.'."\n", - 'type' => 'string', - 'example' => 'cron', - ], - 'TimeExpression' => [ - 'title' => '工作流时间表达式', - 'description' => 'The time expression of the workflow.'."\n", - 'type' => 'string', - 'example' => '0 0 2 * * ?', - ], - 'GroupId' => [ - 'type' => 'string', - ], - 'Namespace' => [ - 'type' => 'string', - ], - 'MaxConcurrency' => [ - 'type' => 'string', - ], - ], - ], - 'WorkFlowNodeInfo' => [ - 'title' => '工作流节点信息', - 'description' => 'The node information of the workflow.'."\n", - 'type' => 'object', - 'properties' => [ - 'Nodes' => [ - 'title' => '工作流节点列表', - 'description' => 'The list of workflow nodes.'."\n", - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Id' => [ - 'title' => '任务ID', - 'description' => 'The ID of the job.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '123456xxx', - ], - 'Label' => [ - 'title' => '任务名称', - 'description' => 'The name of the job.'."\n", - 'type' => 'string', - 'example' => 'job_111', - ], - 'Status' => [ - 'title' => '任务状态', - 'description' => 'The status of the job.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - ], - ], - ], - 'Edges' => [ - 'title' => '工作流边列表', - 'description' => 'The workflow edges.'."\n", - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Source' => [ - 'title' => '起始任务ID', - 'description' => 'The ID of the source job.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '100', - ], - 'Target' => [ - 'title' => '目的任务ID', - 'description' => 'The ID of the object job.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '200', - ], - ], - ], - ], - ], - ], - ], - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '765xxx'], + 'Message' => ['title' => '', 'description' => 'The returned error message.'."\n", 'type' => 'string', 'example' => 'job is not existed'], + 'Code' => ['title' => '', 'description' => 'The HTTP status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200'], + 'Success' => ['title' => '', 'description' => 'Indicates whether the request was successful.'."\n", 'type' => 'boolean', 'example' => 'true'], ], + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"45678xxx\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"workflow is not existed\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"WorkFlowInfo\\": {\\n \\"WorkflowId\\": 0,\\n \\"Name\\": \\"workflow_111\\",\\n \\"Description\\": \\"my first workflow\\",\\n \\"Status\\": \\"成功\\",\\n \\"TimeType\\": \\"cron\\",\\n \\"TimeExpression\\": \\"0 0 2 * * ?\\",\\n \\"GroupId\\": \\"\\",\\n \\"Namespace\\": \\"\\",\\n \\"MaxConcurrency\\": \\"\\"\\n },\\n \\"WorkFlowNodeInfo\\": {\\n \\"Nodes\\": [\\n {\\n \\"Id\\": 0,\\n \\"Label\\": \\"job_111\\",\\n \\"Status\\": 1\\n }\\n ],\\n \\"Edges\\": [\\n {\\n \\"Source\\": 100,\\n \\"Target\\": 200\\n }\\n ]\\n }\\n }\\n}","errorExample":""},{"type":"xml","example":"<GetWorkFlowResponse>\\n <RequestId>45678xxx</RequestId>\\n <Code>200</Code>\\n <Message>workflow is not existed</Message>\\n <Success>true</Success>\\n <Data>\\n <WorkFlowInfo>\\n <Name>workflow_111</Name>\\n <Description>my first workflow</Description>\\n <Status>成功</Status>\\n <TimeType>cron</TimeType>\\n <TimeExpression>0 0 2 * * ?</TimeExpression>\\n </WorkFlowInfo>\\n <WorkFlowNodeInfo>\\n <Nodes>\\n <Label>job_111</Label>\\n <Status>1</Status>\\n </Nodes>\\n <Edges>\\n <Source>100</Source>\\n <Target>200</Target>\\n </Edges>\\n </WorkFlowNodeInfo>\\n </Data>\\n</GetWorkFlowResponse>","errorExample":""}]', - 'title' => 'GetWorkFlow', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"765xxx\\",\\n \\"Message\\": \\"job is not existed\\",\\n \\"Code\\": 200,\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DesignateWorkersResponse>\\n <RequestId>765xxx</RequestId>\\n <Message>job is not existed</Message>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DesignateWorkersResponse>","errorExample":""}]', + 'title' => 'DesignateWorkers', 'extraInfo' => '## Sample code'."\n" ."\n" .'```'."\n" .'package com.alibaba.schedulerx.pop;'."\n" ."\n" + .'import java.util.List;'."\n" + ."\n" .'import com.alibaba.schedulerx.common.util.JsonUtil;'."\n" ."\n" .'import com.aliyuncs.DefaultAcsClient;'."\n" .'import com.aliyuncs.exceptions.ClientException;'."\n" .'import com.aliyuncs.exceptions.ServerException;'."\n" .'import com.aliyuncs.profile.DefaultProfile;'."\n" - .'import com.aliyuncs.schedulerx2.model.v20190430.GetWorkFlowRequest;'."\n" - .'import com.aliyuncs.schedulerx2.model.v20190430.GetWorkFlowResponse;'."\n" + .'import com.aliyuncs.schedulerx2.model.v20190430.DesignateWorkersRequest;'."\n" + .'import com.aliyuncs.schedulerx2.model.v20190430.DesignateWorkersResponse;'."\n" + .'import com.google.common.collect.Lists;'."\n" ."\n" - .'public class TestGetWorkFlow {'."\n" + .'public class TestDesignateWorkers {'."\n" ."\n" .' public static void main(String[] args) {'."\n" - .' // The ID of the region. Enter a value by referring to the Endpoints topic or based on the region in which you purchased the service.'."\n" + .' // The region ID. Enter a value by referring to the Endpoints topic or based on the region in which you purchased the service.'."\n" .' String regionId = "public";'."\n" .' // The AccessKey ID that is used for authentication. You can obtain the AccessKey ID in the RAM console.'."\n" - .' String accessKeyId = "xxxxxxx";'."\n" + .' String accessKeyId = "xxxxxxxx";'."\n" .' // The AccessKey secret that is used for authentication. You can obtain the AccessKey secret in the RAM console.'."\n" .' String accessKeySecret = "xxxxxxxxx";'."\n" .' // The name of the service.'."\n" @@ -3361,19 +2882,22 @@ .' DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);'."\n" .' DefaultAcsClient client = new DefaultAcsClient(defaultProfile);'."\n" .' '."\n" - .' GetWorkFlowRequest request = new GetWorkFlowRequest();'."\n" + .' DesignateWorkersRequest request = new DesignateWorkersRequest();'."\n" .' request.setNamespace("433d8b23-06e9-408c-aaaa-90d4d1b9a4af");'."\n" .' request.setGroupId("xuren_test");'."\n" - .' request.setWorkflowId(29L);'."\n" - .' GetWorkFlowResponse response;'."\n" + .' request.setJobId(3048L);'."\n" + .' // Specify whether to allow a failover.'."\n" + .' request.setTransferable(true);'."\n" + .' // The type of the designated machines. The value 1 indicates the worker type. The value 2 indicates the label type.'."\n" + .' request.setDesignateType(1);'."\n" + .' List<String> workers = Lists.newArrayList();'."\n" + .' workers.add("30.225.16.104");'."\n" + .' // The designated machines. Specify the value in a JSON string.'."\n" + .' request.setWorkers(JsonUtil.toJson(workers));'."\n" + .' DesignateWorkersResponse response;'."\n" .' try {'."\n" .' response = client.getAcsResponse(request);'."\n" - .' if (!response.getSuccess()) {'."\n" - .' System.out.println(JsonUtil.toJson(response));'."\n" - .' } else {'."\n" - .' System.out.println("Basic workflow information:" + response.getData().getWorkFlowInfo());'."\n" - .' System.out.println("Workflow node information:" + response.getData().getWorkFlowNodeInfo());'."\n" - .' }'."\n" + .' System.out.println(JsonUtil.toJson(response));'."\n" .' } catch (ServerException e) {'."\n" .' // TODO Auto-generated catch block'."\n" .' e.printStackTrace();'."\n" @@ -3386,1437 +2910,875 @@ .'}'."\n" .' '."\n" .'```'."\n", - ], - 'GetWorkflowInstance' => [ - 'summary' => 'Queries the details of a specified workflow instance, including the state of the workflow instance, the state of each job instance, and the dependencies between job instances. You can call this operation only in the professional edition.', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-21T02:51:00.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-12-26T01:59:01.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2021-12-21T03:32:07.000Z', 'description' => 'Request parameters changed, Response parameters changed'], + ['createdAt' => '2021-12-20T12:18:16.000Z', 'description' => 'OpenAPI offline'], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxDesignateWorkers', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'DisableJob' => [ + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - ], + 'operationType' => 'write', + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'JobId', 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The job ID. You can obtain the job ID on the Task Management page in the SchedulerX console.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'docRequired' => true, 'example' => '92583', 'title' => ''], ], [ 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'schema' => ['description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ 'name' => 'NamespaceSource', 'in' => 'query', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The application group ID. You can obtain the ID on the Application Management page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'testSchedulerx.defaultGroup', - ], + 'schema' => ['description' => 'The application ID. You can obtain the application ID on the Application Management page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => false, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ - 'name' => 'WorkflowId', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The workflow ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '123', - ], - ], - [ - 'name' => 'WfInstanceId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The workflow instance ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '123456', - ], + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0', - ], - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Message' => [ - 'description' => 'The returned error message.'."\n", - 'type' => 'string', - 'example' => 'workflowId=xxx is not existed', - ], - 'Data' => [ - 'description' => 'The details of the workflow instance.'."\n", - 'type' => 'object', - 'properties' => [ - 'WfInstanceInfo' => [ - 'description' => 'The details of the workflow instance, including the state of the workflow instance, the time when the workflow instance started to run, the time when the workflow instance stopped running, the state of each job instance, and the dependencies between job instances.'."\n", - 'type' => 'object', - 'properties' => [ - 'Status' => [ - 'description' => 'The state of the workflow instance. Valid values:'."\n" - ."\n" - .'* 1: pending'."\n" - .'* 2: preparing'."\n" - .'* 3: running'."\n" - .'* 4: successful'."\n" - .'* 5: failed'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '5', - ], - 'StartTime' => [ - 'description' => 'The time when the workflow instance started to run.'."\n", - 'type' => 'string', - 'example' => '2023-01-03 18:00:01', - ], - 'EndTime' => [ - 'description' => 'The time when the workflow instance stopped running.'."\n", - 'type' => 'string', - 'example' => '2023-01-03 18:00:21', - ], - 'ScheduleTime' => [ - 'description' => 'The time when the workflow instance was scheduled to run.'."\n", - 'type' => 'string', - 'example' => '2023-01-03 18:00:00', - ], - 'DataTime' => [ - 'description' => 'The data timestamp of the workflow instance.'."\n", - 'type' => 'string', - 'example' => '2023-01-03 18:00:00', - ], - ], - ], - 'WfInstanceDag' => [ - 'description' => 'The directed acyclic graph (DAG) of the workflow instance, including nodes and dependencies.'."\n", - 'type' => 'object', - 'properties' => [ - 'Nodes' => [ - 'description' => 'The job instances.'."\n", - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'JobInstanceId' => [ - 'description' => 'The ID of the job instance.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '24058796', - ], - 'JobId' => [ - 'description' => 'The job ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1472', - ], - 'StartTime' => [ - 'description' => 'The time when the job started to run.'."\n", - 'type' => 'string', - 'example' => '2023-01-03 18:00:03', - ], - 'EndTime' => [ - 'description' => 'The time when the job stopped running.'."\n", - 'type' => 'string', - 'example' => '2023-01-03 18:00:21', - ], - 'ScheduleTime' => [ - 'description' => 'The time when the job was scheduled.'."\n", - 'type' => 'string', - 'example' => '2023-01-03 18:00:03', - ], - 'DataTime' => [ - 'description' => 'The data timestamp of the job.'."\n", - 'type' => 'string', - 'example' => '2023-01-03 18:00:00', - ], - 'WorkAddr' => [ - 'description' => 'The worker on which the job instance run.'."\n", - 'type' => 'string', - 'example' => '10.163.0.101:34027', - ], - 'Result' => [ - 'description' => 'The execution result of the job.'."\n", - 'type' => 'string', - 'example' => 'code=200', - ], - 'Attempt' => [ - 'description' => 'The number of retries when the job failed.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'Status' => [ - 'description' => 'The state of the job instance. Valid values: 1: The job instance is waiting for execution. 3: The job instance is running. 4: The job instance is run. 5: The job instance failed to run. 9: The job instance is rejected. Enumeration class: com.alibaba.schedulerx.common.domain.InstanceStatus.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '4', - ], - 'JobName' => [ - 'description' => 'The job name.'."\n", - 'type' => 'string', - 'example' => 'TestJob', - ], - ], - ], - ], - 'Edges' => [ - 'description' => 'The dependencies between job instances.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The upstream and downstream dependencies of each job instance.'."\n", - 'type' => 'object', - 'properties' => [ - 'Source' => [ - 'description' => 'The upstream job instance of the current job instance. A value of 0 indicates that the upstream job instance is the root node.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '24058798', - ], - 'Target' => [ - 'description' => 'The downstream job instance of the current job instance.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '24058796', - ], - ], - ], - ], - ], - ], - ], - ], + 'Code' => ['description' => 'The HTTP status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message that is returned only if the corresponding error occurs.'."\n", 'type' => 'string', 'example' => 'jobid: 92583 not match groupId: testSchedulerx.defaultGroup', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'C8E5FB4A-6D8D-424D-9AAA-4FE06BB74FF9', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the job was disabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"jobid: 92583 not match groupId: testSchedulerx.defaultGroup\\",\\n \\"RequestId\\": \\"C8E5FB4A-6D8D-424D-9AAA-4FE06BB74FF9\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DisableJobResponse>\\n<RequestId>C8E5FB4A-6D8D-424D-9AAA-4FE06BB74FF9</RequestId>\\n<Message>jobid: 92583 not match groupId: testSchedulerx.defaultGroup</Message>\\n<Code>200</Code>\\n<Success>true</Success>\\n</DisableJobResponse>","errorExample":""}]', + 'title' => 'DisableJob', + 'summary' => 'Disables a job.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => '## Sample code'."\n" + ."\n" + .' package com.alibaba.schedulerx.pop;'."\n" + ."\n" + .' import com.aliyuncs.DefaultAcsClient;'."\n" + .' import com.aliyuncs.profile.DefaultProfile;'."\n" + .' import com.aliyuncs.schedulerx2.model.v20190430.DisableJobRequest;'."\n" + .' import com.aliyuncs.schedulerx2.model.v20190430.DisableJobResponse;'."\n" + ."\n" + .' public class DisableJob {'."\n" + ."\n" + .' public static void main(String[] args) throws Exception {'."\n" + .' // The region ID. Enter a value by referring to the Endpoints topic or based on the region in which you purchased the service. '."\n" + .' String regionId = "cn-shanghai";'."\n" + .' // The AccessKey ID that is used for authentication. You can obtain the AccessKey ID in the RAM console. '."\n" + .' String accessKeyId = "<yourAccessKeyId>";'."\n" + .' // The AccessKey secret that is used for authentication. You can obtain the AccessKey secret in the RAM console. '."\n" + .' String accessKeySecret = "<yourAccessKeySecret>";'."\n" + .' // The name of the service. '."\n" + .' String productName ="schedulerx2";'."\n" + .' // The domain. Enter a domain by referring to the Endpoints topic. '."\n" + .' String domain ="schedulerx.cn-shanghai.aliyuncs.com";'."\n" + .' // Build an API client. '."\n" + .' DefaultProfile.addEndpoint(regionId, productName, domain);'."\n" + .' DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);'."\n" + .' DefaultAcsClient client = new DefaultAcsClient(defaultProfile);'."\n" + .' '."\n" + .' DisableJobRequest request = new DisableJobRequest();'."\n" + .' request.setNamespace("xxxxxx");'."\n" + .' request.setGroupId("xxxxxx");'."\n" + .' request.setJobId(123L);'."\n" + .' DisableJobResponse response = client.getAcsResponse(request);'."\n" + .' if (!response.getSuccess()) {'."\n" + .' System.out.println(response.getMessage());'."\n" + .' System.out.println("DisableJob: "+response.getRequestId());'."\n" + .' } else {'."\n" + .' System.out.println(response.getMessage());'."\n" + .' }'."\n" + .' }'."\n" + .' '."\n" + .' }'."\n", + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-21T02:51:00.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-12-26T01:59:01.000Z', 'description' => 'Request parameters changed, Error codes changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxJobDisable', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"workflowId=xxx is not existed\\",\\n \\"Data\\": {\\n \\"WfInstanceInfo\\": {\\n \\"Status\\": 5,\\n \\"StartTime\\": \\"2023-01-03 18:00:01\\",\\n \\"EndTime\\": \\"2023-01-03 18:00:21\\",\\n \\"ScheduleTime\\": \\"2023-01-03 18:00:00\\",\\n \\"DataTime\\": \\"2023-01-03 18:00:00\\"\\n },\\n \\"WfInstanceDag\\": {\\n \\"Nodes\\": [\\n {\\n \\"JobInstanceId\\": 24058796,\\n \\"JobId\\": 1472,\\n \\"StartTime\\": \\"2023-01-03 18:00:03\\",\\n \\"EndTime\\": \\"2023-01-03 18:00:21\\",\\n \\"ScheduleTime\\": \\"2023-01-03 18:00:03\\",\\n \\"DataTime\\": \\"2023-01-03 18:00:00\\",\\n \\"WorkAddr\\": \\"10.163.0.101:34027\\",\\n \\"Result\\": \\"code=200\\",\\n \\"Attempt\\": 0,\\n \\"Status\\": 4,\\n \\"JobName\\": \\"TestJob\\"\\n }\\n ],\\n \\"Edges\\": [\\n {\\n \\"Source\\": 24058798,\\n \\"Target\\": 24058796\\n }\\n ]\\n }\\n }\\n}","type":"json"}]', - 'title' => 'GetWorkflowInstance', ], - 'ListWorkflowInstance' => [ - 'summary' => 'Queries the execution history of a workflow. You can call this operation only in the professional edition.', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DisableWorkflow' => [ + 'methods' => ['get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - ], + 'operationType' => 'write', + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'WorkflowId', 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The workflow ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'docRequired' => true, 'example' => '111', 'title' => ''], ], [ 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'schema' => ['description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ 'name' => 'NamespaceSource', 'in' => 'query', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The application group ID. You can obtain the ID on the Application Management page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'testSchedulerx.defaultGroup', - ], + 'schema' => ['description' => 'The application ID. You can obtain the application ID on the Application Management page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => false, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ - 'name' => 'WorkflowId', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The workflow ID.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => '123', - ], + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'The response schema.'."\n", 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0', - ], - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Message' => [ - 'description' => 'The returned error message.'."\n", - 'type' => 'string', - 'example' => 'workflowId=xxx is not existed', - ], - 'Data' => [ - 'description' => 'The information about workflow instances.'."\n", - 'type' => 'object', - 'properties' => [ - 'WfInstanceInfos' => [ - 'description' => 'The workflow instances.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The data structure of the workflow instance.'."\n", - 'type' => 'object', - 'properties' => [ - 'WfInstanceId' => [ - 'description' => 'The workflow instance ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '123456', - ], - 'WorkflowId' => [ - 'description' => 'The workflow ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '123', - ], - 'Status' => [ - 'description' => 'The state of the workflow instance. Valid values:'."\n" - ."\n" - .'* 1: pending'."\n" - .'* 2: preparing'."\n" - .'* 3: running'."\n" - .'* 4: successful'."\n" - .'* 5: failed'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '5', - ], - 'StartTime' => [ - 'description' => 'The time when the workflow instance started to run.'."\n", - 'type' => 'string', - 'example' => '2023-01-03 18:00:01', - ], - 'EndTime' => [ - 'description' => 'The time when the workflow instance stopped running.'."\n", - 'type' => 'string', - 'example' => '2023-01-03 18:00:21', - ], - 'ScheduleTime' => [ - 'description' => 'The time when the workflow instance was scheduled to run.'."\n", - 'type' => 'string', - 'example' => '2023-01-03 18:00:00', - ], - 'DataTime' => [ - 'description' => 'The data timestamp of the workflow instance.'."\n", - 'type' => 'string', - 'example' => '2023-01-03 18:00:00', - ], - ], - ], - ], - ], - ], + 'Code' => ['description' => 'The HTTP status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message that is returned only if the corresponding error occurs.'."\n", 'type' => 'string', 'example' => 'Your request is denied as lack of ssl protect.', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the workflow was disabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Your request is denied as lack of ssl protect.\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DisableWorkflowResponse>\\n<RequestId>4F68ABED-AC31-4412-9297-D9A8F0401108</RequestId>\\n<Message>Your request is denied as lack of ssl protect.</Message>\\n<Code>200</Code>\\n<Success>true</Success>\\n</DisableWorkflowResponse>","errorExample":""}]', + 'title' => 'DisableWorkflow', + 'summary' => 'Disables a specified workflow.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-21T02:51:00.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-12-26T01:59:01.000Z', 'description' => 'Request parameters changed, Error codes changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxWorkflowDisable', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"workflowId=xxx is not existed\\",\\n \\"Data\\": {\\n \\"WfInstanceInfos\\": [\\n {\\n \\"WfInstanceId\\": 123456,\\n \\"WorkflowId\\": 123,\\n \\"Status\\": 5,\\n \\"StartTime\\": \\"2023-01-03 18:00:01\\",\\n \\"EndTime\\": \\"2023-01-03 18:00:21\\",\\n \\"ScheduleTime\\": \\"2023-01-03 18:00:00\\",\\n \\"DataTime\\": \\"2023-01-03 18:00:00\\"\\n }\\n ]\\n }\\n}","type":"json"}]', - 'title' => 'ListWorkflowInstance', ], - 'SetWfInstanceSuccess' => [ - 'summary' => 'Forcibly sets the state of a workflow instance to successful. You can call this operation only in the professional edition.', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'EnableJob' => [ + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - ], + 'operationType' => 'write', + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'JobId', 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The job ID. You can obtain the job ID on the Task Management page in the SchedulerX console.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'docRequired' => true, 'example' => '92555', 'title' => ''], ], [ 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'schema' => ['description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ 'name' => 'NamespaceSource', 'in' => 'query', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The application group ID. You can obtain the application group ID on the Application Management page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'testSchedulerx.defaultGroup', - ], - ], - [ - 'name' => 'WorkflowId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The workflow ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '123', - ], + 'schema' => ['description' => 'The application ID. You can obtain the application ID on the Application Management page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => false, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ - 'name' => 'WfInstanceId', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The workflow instance ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '123456789', - ], + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'The information about the array object.'."\n", 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', - ], - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Message' => [ - 'description' => 'The error message that is returned only if the corresponding error occurs.'."\n", - 'type' => 'string', - 'example' => 'wofkflowId is not existed', - ], + 'Code' => ['description' => 'The HTTP status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message that is returned only if the corresponding error occurs.'."\n", 'type' => 'string', 'example' => 'jobid: 92583 not match groupId: testSchedulerx.defaultGroup', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBC***', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"jobid: 92583 not match groupId: testSchedulerx.defaultGroup\\",\\n \\"RequestId\\": \\"71BCC0E3-64B2-4B63-A870-AFB64EBC***\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<EnableJobResponse>\\n<RequestId>71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7</RequestId>\\n<Message>jobid: 92583 not match groupId: testSchedulerx.defaultGroup</Message>\\n<Code>200</Code>\\n<Success>true</Success>\\n</EnableJobResponse>","errorExample":""}]', + 'title' => 'EnableJob', + 'summary' => 'Enables a job.', + 'description' => '任务创建完成以后默认启用,所以该功能是在停用任务后使用。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => '## Sample code'."\n" + ."\n" + .' package com.alibaba.schedulerx.pop;'."\n" + ."\n" + .' import com.aliyuncs.DefaultAcsClient;'."\n" + .' import com.aliyuncs.profile.DefaultProfile;'."\n" + .' import com.aliyuncs.schedulerx2.model.v20190430.EnableJobRequest;'."\n" + .' import com.aliyuncs.schedulerx2.model.v20190430.EnableJobResponse;'."\n" + ."\n" + .' public class EnableJob {'."\n" + ."\n" + .' public static void main(String[] args) throws Exception {'."\n" + .' // The region ID. Enter a value by referring to the Endpoints topic or based on the region in which you purchased the service. '."\n" + .' String regionId = "cn-shanghai";'."\n" + .' // The AccessKey ID that is used for authentication. You can obtain the AccessKey ID in the RAM console. '."\n" + .' String accessKeyId = "<yourAccessKeyId>";'."\n" + .' // The AccessKey secret that is used for authentication. You can obtain the AccessKey secret in the RAM console. '."\n" + .' String accessKeySecret = "<yourAccessKeySecret>";'."\n" + .' // The name of the service. '."\n" + .' String productName ="schedulerx2";'."\n" + .' // The domain. Enter a domain by referring to the Endpoints topic. '."\n" + .' String domain ="schedulerx.cn-shanghai.aliyuncs.com";'."\n" + .' // Build an API client. '."\n" + .' DefaultProfile.addEndpoint(regionId, productName, domain);'."\n" + .' DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);'."\n" + .' DefaultAcsClient client = new DefaultAcsClient(defaultProfile);'."\n" + .' '."\n" + .' EnableJobRequest request = new EnableJobRequest();'."\n" + .' request.setNamespace("xxxxxx");'."\n" + .' request.setGroupId("xxxxxx");'."\n" + .' request.setJobId(123L);'."\n" + .' EnableJobResponse response = client.getAcsResponse(request);'."\n" + .' if (!response.getSuccess()) {'."\n" + .' System.out.println(response.getMessage());'."\n" + .' System.out.println("EnableJob: "+response.getRequestId());'."\n" + .' } else {'."\n" + .' System.out.println(response.getMessage());'."\n" + .' }'."\n" + .' }'."\n" + .' '."\n" + .' }'."\n", + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-21T02:51:00.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-12-26T01:59:01.000Z', 'description' => 'Request parameters changed, Error codes changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxJobEnable', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"wofkflowId is not existed\\"\\n}","type":"json"}]', - 'title' => 'SetWfInstanceSuccess', ], - 'CreateJob' => [ - 'summary' => 'Creates a job and obtains the job ID.', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'EnableWorkflow' => [ + 'methods' => ['get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', - 'systemTags' => [ - 'operationType' => 'create', - 'riskType' => 'none', - 'chargeType' => 'free', - ], + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'WorkflowId', 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The workflow ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'docRequired' => true, 'example' => '111', 'title' => ''], ], [ 'name' => 'Namespace', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'in' => 'query', + 'schema' => ['description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ 'name' => 'NamespaceSource', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The source of the namespace. You must specify this parameter only if the namespace is provided by a third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - 'default' => 'schedulerx', - ], + 'in' => 'query', + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ 'name' => 'GroupId', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The application ID. You can obtain the application ID on the Application Management page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'testSchedulerx.defaultGroup', - ], - ], - [ - 'name' => 'JobType', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The job type. Valid values:'."\n" - ."\n" - .'* java'."\n" - .'* python'."\n" - .'* shell'."\n" - .'* go'."\n" - .'* http'."\n" - .'* xxljob'."\n" - .'* dataworks'."\n" - .'* k8s'."\n" - .'* springschedule'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'enumValueTitles' => [ - 'python' => 'python', - 'xxljob' => 'xxljob', - 'java' => 'java', - 'shell' => 'shell', - 'go' => 'go', - 'http' => 'http', - 'dataworks' => 'dataworks', - ], - 'example' => 'java', - ], - ], - [ - 'name' => 'Name', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The job name.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'helloworld', - ], + 'in' => 'query', + 'schema' => ['description' => 'The application ID. You can obtain the application ID on the Application Management page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => false, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ - 'name' => 'Description', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The job description.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Test', - ], + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], - [ - 'name' => 'ExecuteMode', - 'in' => 'formData', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The execution mode of the job. Valid values:'."\n" - ."\n" - .'* **Stand-alone operation**'."\n" - .'* **Broadcast run**'."\n" - .'* **Visual MapReduce**'."\n" - .'* **MapReduce**'."\n" - .'* **Shard run**'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'enumValueTitles' => [ - 'broadcast' => '', - 'parallel' => '', - 'grid' => '', - 'batch' => '', - 'standalone' => '', - 'sharding' => '', + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => 'The HTTP status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message that is returned only if the corresponding error occurs.'."\n", 'type' => 'string', 'example' => 'Your request is denied as lack of ssl protect.', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the workflow was enabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], - 'example' => 'standalone', - ], - ], - [ - 'name' => 'ClassName', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The full path of the job interface class.'."\n" - ."\n" - .'This parameter is available only when you set JobType to java. You must enter a full path.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'com.alibaba.schedulerx.test.helloworld', - ], - ], - [ - 'name' => 'Content', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The script content. This parameter is required when you set JobType to python, shell, go, or k8s.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'echo \'hello\'', - ], - ], - [ - 'name' => 'Parameters', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The user-defined parameters that you can obtain when the job is running.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'test', + 'description' => '', + 'title' => '', + 'example' => '', ], ], - [ - 'name' => 'MaxConcurrency', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The maximum number of concurrent instances. By default, only one instance can run at a time. When an instance is running, the next instance is not triggered even if the scheduled start time arrives.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '200', - 'minimum' => '1', - 'example' => '1', - 'default' => '1', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Your request is denied as lack of ssl protect.\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<EnableWorkflowResponse>\\n<RequestId>4F68ABED-AC31-4412-9297-D9A8F0401108</RequestId>\\n<Message>Your request is denied as lack of ssl protect.</Message>\\n<Code>200</Code>\\n<Success>true</Success>\\n</EnableWorkflowResponse>","errorExample":""}]', + 'title' => 'EnableWorkflow', + 'summary' => 'Enables a workflow.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-21T02:51:00.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-12-26T01:59:01.000Z', 'description' => 'Request parameters changed, Error codes changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxWorkflowEnable', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], + ], + ], + 'ExecuteJob' => [ + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'MaxAttempt', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The maximum number of retry attempts in case of a job failure. Specify this parameter based on your business requirements. Default value: 0.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '0', - 'default' => '0', - ], + 'AK' => [], ], + ], + 'operationType' => 'write', + 'systemTags' => ['operationType' => 'create'], + 'parameters' => [ [ - 'name' => 'AttemptInterval', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The time interval between retry attempts in case of a job failure. Unit: seconds. Default value: 30.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '30', - 'default' => '30', - ], + 'name' => 'JobId', + 'in' => 'query', + 'schema' => ['description' => 'The job ID. You can obtain the job ID on the Task Management page in the SchedulerX console.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'docRequired' => true, 'example' => '92583', 'title' => ''], ], [ - 'name' => 'PageSize', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The number of entries per page. You can specify this parameter for MapReduce jobs. Default value: 100.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '100', - 'default' => '100', - ], + 'name' => 'InstanceParameters', + 'in' => 'query', + 'schema' => ['description' => 'The parameters that are passed to trigger the job to run. The input value can be a random string. The parameters that are passed are obtained by calling the `context.getInstanceParameters()` class in the `processor` code. The parameters are different from custom parameters for creating jobs.'."\n", 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'test', 'title' => ''], ], [ - 'name' => 'ConsumerSize', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The number of threads that a single worker triggers simultaneously. You can specify this parameter for MapReduce jobs. Default value: 5.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '5', - 'default' => '5', - ], + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => ['description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ - 'name' => 'QueueSize', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The maximum capacity of the task queue. You can specify this parameter for MapReduce jobs. Default value: 10000.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10000', - 'default' => '10000', - ], + 'name' => 'NamespaceSource', + 'in' => 'query', + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ - 'name' => 'DispatcherSize', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The number of task distribution threads. This parameter is an advanced configuration item of the MapReduce job. Default value: 5.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '5', - 'default' => '5', - ], + 'name' => 'GroupId', + 'in' => 'query', + 'schema' => ['description' => 'The application ID. You can obtain the application ID on the Application Management page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ - 'name' => 'TimeType', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The time type. Valid values:'."\n" - ."\n" - .'* **1**: cron'."\n" - .'* **3**: fixed_rate'."\n" - .'* **4**: second_delay'."\n" - .'* **5**: one_time'."\n" - .'* **100**: api'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'docRequired' => true, - 'enumValueTitles' => [ - 1 => '1', - 3 => '3', - '4', - '5', - 100 => '100', - ], - 'example' => '1', - ], + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'TimeExpression', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The time expression. Specify the time expression based on the value of TimeType:'."\n" - ."\n" - .'* If you set TimeType to **1** (cron), specify this parameter to a standard CRON expression.'."\n" - .'* If you set TimeType to **100** (api), no time expression is required.'."\n" - .'* If you set TimeType to **3** (fixed_rate), specify this parameter to a fixed frequency in seconds. For example, if you set this parameter to 30, the system triggers a job every 30 seconds.'."\n" - .'* If you set TimeType to **4** (second_delay), specify this parameter to a fixed delay after which the job is triggered. Valid values: 1 to 60. Unit: seconds.'."\n" - .'* If you set TimeType to **5** (one_time), specify this parameter to a specific time point at which the job is triggered. The time is in the format of yyyy-MM-dd HH:mm:ss, such as 2022-10-10 10:10:00, or a timestamp in milliseconds.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '0 0/10 * * * ?', - ], + 'name' => 'CheckJobStatus', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to check the job status. Valid values: -**true**: The job can be run only if the job is enabled. -**false**: The job can be run even if the job is disabled.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ - 'name' => 'Calendar', - 'in' => 'formData', - 'schema' => [ - 'description' => 'If you set TimeType to 1 (cron), you can specify calendar days.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'This parameter is not supported. You do not need to specify this parameter.'."\n", - ], + 'name' => 'DesignateType', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The type of the designated machine. Valid values: -**1**: worker. -**2**: label.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ - 'name' => 'DataOffset', - 'in' => 'formData', - 'schema' => [ - 'description' => 'If you set TimeType to 1 (cron), you can specify a time offset. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '2400', - ], + 'name' => 'Worker', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The worker address of the application. To query the worker address, call the GetWokerList operation.'."\n", 'type' => 'string', 'required' => false, 'example' => 'xxxxxxx@127.0.0.1:222'], ], [ - 'name' => 'Timezone', - 'in' => 'formData', - 'schema' => [ - 'description' => 'Time zone.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'GMT+8', - ], + 'name' => 'Label', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The label of the worker.'."\n", 'type' => 'string', 'required' => false, 'example' => 'gray'], ], - [ - 'name' => 'TimeoutEnable', - 'in' => 'formData', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'Specifies whether to enable the timeout alert feature. If the feature is enabled, an alert will be triggered upon a timeout. Valid values:'."\n" - ."\n" - .'* **true**: enables the timeout alert feature.'."\n" - .'* **false**: disables the timeout alert feature.'."\n", - 'type' => 'boolean', - 'required' => false, - 'enumValueTitles' => [ - 'false' => 'false', - 'true' => 'true', + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => 'The HTTP status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message that is returned only if the corresponding error occurs.'."\n", 'type' => 'string', 'example' => 'groupid not exist groupId: testSchedulerx.defaultGroup namespace: adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108****', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Data' => [ + 'description' => 'The ID of the job instance that is returned if the request is successful.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobInstanceId' => ['description' => 'The job instance ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '11111111', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], ], - 'example' => 'false', - 'default' => 'true', - ], - ], - [ - 'name' => 'Timeout', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The timeout threshold. Unit: seconds. Default value: 7200.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '7200', - 'default' => '7200', + 'description' => '', + 'title' => '', + 'example' => '', ], ], - [ - 'name' => 'TimeoutKillEnable', - 'in' => 'formData', - 'schema' => [ - 'description' => 'Specifies whether to enable the timeout termination feature. If the feature is enabled, a job will automatically be terminated if it times out. Valid values:'."\n" - ."\n" - .'* **true**: enables the timeout termination feature.'."\n" - .'* **false**: disables the timeout termination feature.'."\n", - 'type' => 'boolean', - 'required' => false, - 'enumValueTitles' => [ - 'false' => 'false', - 'true' => 'true', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"groupid not exist groupId: testSchedulerx.defaultGroup namespace: adcfc35d-e2fe-4fe9-bbaa-20e90ffc****\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108****\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"JobInstanceId\\": 11111111\\n }\\n}","errorExample":""},{"type":"xml","example":"<ExecuteJobResponse>\\n <Code>200</Code>\\n <Message>groupid not exist groupId: testSchedulerx.defaultGroup namespace: adcfc35d-e2fe-4fe9-bbaa-20e90ffc****</Message>\\n <RequestId>4F68ABED-AC31-4412-9297-D9A8F0401108****</RequestId>\\n <Success>true</Success>\\n <Data>\\n <JobInstanceId>11111111</JobInstanceId>\\n </Data>\\n</ExecuteJobResponse>","errorExample":""}]', + 'title' => 'ExecuteJob', + 'summary' => 'Triggers a job to immediately run once.', + 'description' => '> The combination of the `JobID` and `ScheduleTime` parameters serves as a unique index. Therefore, after the ExecuteJob operation is called to run a job once, a sleep for one second is required before the ExecuteJob operation is called to run the job again. Otherwise, the job may fail.'."\n", + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-21T02:51:00.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-06-06T17:05:13.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2022-12-26T01:59:00.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2021-12-30T07:47:16.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2021-12-20T12:18:16.000Z', 'description' => 'Request parameters changed, Error codes changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxJobTrigger', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], ], - 'example' => 'false', - 'default' => 'true', ], ], + ], + ], + 'ExecuteWorkflow' => [ + 'methods' => ['get'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'FailEnable', - 'in' => 'formData', - 'schema' => [ - 'description' => 'Specifies whether to trigger an alert when a job fails. Valid values:'."\n" - ."\n" - .'* **true**: triggers an alert when a job fails.'."\n" - .'* **false**: does not trigger an alert when a job fails.'."\n", - 'type' => 'boolean', - 'required' => false, - 'enumValueTitles' => [ - 'false' => 'false', - 'true' => 'true', - ], - 'example' => 'false', - 'default' => 'true', - ], + 'AK' => [], ], + ], + 'operationType' => 'write', + 'systemTags' => ['operationType' => 'create'], + 'parameters' => [ [ - 'name' => 'FailTimes', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The maximum number of consecutive failures before an alert is triggered. An alert will be triggered if the number of consecutive failures reaches the value of this parameter.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '2', - 'default' => '1', - ], + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the region.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'MissWorkerEnable', - 'in' => 'formData', - 'schema' => [ - 'description' => 'Specifies whether to generate an alert if no machines are available to run the job. Valid values:'."\n" - ."\n" - .'* **true**: generates an alert if no machines are available to run the job.'."\n" - .'* **false**: does not generate an alert if no machines are available to run the job.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - 'default' => 'false', - ], + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the namespace. You can find this ID on the **Namespace** page in the console.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ - 'name' => 'SuccessNoticeEnable', - 'in' => 'formData', - 'schema' => [ - 'description' => 'Specifies whether to send notifications for successfully running the job.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - 'default' => 'false', - ], + 'name' => 'NamespaceSource', + 'in' => 'query', + 'schema' => ['description' => 'This parameter is required only for specific third-party integrations.', 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ - 'name' => 'SendChannel', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The method that is used to send alerts. Set the value to sms. Default value: sms.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'sms', - 'default' => 'default', - ], + 'name' => 'GroupId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the application group. You can find this ID on the **Application Management** page in the console.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ - 'name' => 'TaskMaxAttempt', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The maximum number of retry attempts in case of a job failure. This parameter is an advanced configuration item of the MapReduce job. Default value: 0.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '10', - 'minimum' => '0', - 'example' => '0', - 'default' => '0', - ], + 'name' => 'WorkflowId', + 'in' => 'query', + 'schema' => ['description' => 'The workflow ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'docRequired' => true, 'example' => '111', 'title' => ''], ], [ - 'name' => 'TaskAttemptInterval', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The time interval between retry attempts in case of a job failure. This parameter is an advanced configuration item of the MapReduce job. Default value: 0.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '0', - 'example' => '0', - 'default' => '0', - ], + 'name' => 'InstanceParameters', + 'in' => 'query', + 'schema' => ['description' => 'The dynamic parameters for the workflow instance. The value cannot exceed 1,000 bytes.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'test', 'title' => ''], ], - [ - 'name' => 'ContactInfo', - 'in' => 'formData', - 'style' => 'repeatList', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The information about the alert contact.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The information about the array object.'."\n", - 'type' => 'object', - 'properties' => [ - 'UserPhone' => [ - 'description' => 'The mobile number of the alert contact.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '1381111****', - ], - 'UserName' => [ - 'description' => 'The name of the alert contact.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Tom'."\n", - ], - 'UserMail' => [ - 'description' => 'The email address of the alert contact.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'test***@***.com', - ], - 'Ding' => [ - 'description' => 'The webhook URL of the DingTalk chatbot.[](https://open.dingtalk.com/document/org/application-types)'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=**********', + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => 'The return code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message. This parameter is returned only if the request fails.', 'type' => 'string', 'example' => 'Cannot find product according to your domain.', 'title' => ''], + 'RequestId' => ['description' => 'The unique request ID.', 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Data' => [ + 'description' => 'The data returned for a successful request. It contains the workflow instance ID.', + 'type' => 'object', + 'properties' => [ + 'WfInstanceId' => ['description' => 'The ID of the workflow instance.', 'type' => 'integer', 'format' => 'int64', 'example' => '111111', 'title' => ''], ], + 'title' => '', + 'example' => '', ], - 'required' => false, ], - 'required' => false, - 'maxItems' => 10, + 'description' => '', + 'title' => '', + 'example' => '', ], ], - [ - 'name' => 'Status', - 'in' => 'formData', - 'schema' => [ - 'description' => 'Specifies whether to enable the job. If this parameter is set to 0, the job is disabled. If this parameter is set to 1, the job is enabled. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - 'default' => '1', - 'enum' => [ - '0', - '1', + ], + 'title' => 'ExecuteWorkflow', + 'summary' => 'Executes a workflow immediately.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-18T05:48:51.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-06-06T17:05:13.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2022-12-26T01:59:02.000Z', 'description' => 'Request parameters changed, Error codes changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxWorkflowRun', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Cannot find product according to your domain.\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"WfInstanceId\\": 111111\\n }\\n}","type":"json"}]', + ], + 'GetAppGroup' => [ + 'summary' => 'Retrieves the details of an App Group.', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'XAttrs', - 'in' => 'formData', - 'schema' => [ - 'title' => '如果是k8s任务类型,需要配置该参数'."\n" - .'Job任务:{"resource":"job"}'."\n" - .'Shell任务:{"image":"busybox","resource":"shell"}'."\n", - 'description' => 'The extended attributes. If you set JobType to k8s, this parameter is required. For a job whose resource type is Job-YAML, set this parameter to {"resource":"job"}. For a job whose resource type is Shell-Script, set this parameter to {"image":"busybox","resource":"shell"}.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '{"resource":"job"}', - 'enum' => [], - ], + 'AK' => [], ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => ['operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free'], + 'parameters' => [ [ - 'name' => 'Priority', + 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'type' => 'integer', - 'format' => 'int32', - ], + 'schema' => ['description' => 'The App Group ID. You can obtain this ID on the **Application Management** page in the console.', 'type' => 'string', 'required' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], + ], + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => ['description' => 'The namespace ID. You can obtain this ID on the **Namespaces** page in the console.', 'type' => 'string', 'required' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response schema.', 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The additional information returned.'."\n", - 'type' => 'string', - 'example' => 'message', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0', - ], - 'Success' => [ - 'description' => 'If you set JobType to k8s, this parameter is required. Valid values:'."\n" - ."\n" - .'* **true**'."\n" - .'* **false**'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0'], + 'Code' => ['description' => 'The returned status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The returned message.', 'type' => 'string', 'example' => 'app is not existed, groupId=xxxx, namesapce=xxxx', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'- **true**: The request was successful.'."\n" + ."\n" + .'- **false**: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Data' => [ - 'description' => 'The details of the job.'."\n", + 'description' => 'The details of the App Group.', 'type' => 'object', 'properties' => [ - 'JobId' => [ - 'description' => 'The job ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '92583', - ], + 'AppName' => ['description' => 'The application name.', 'type' => 'string', 'example' => 'DocTest', 'title' => ''], + 'Description' => ['description' => 'The application description.', 'type' => 'string', 'example' => 'Test', 'title' => ''], + 'MaxJobs' => ['description' => 'The maximum number of jobs that can be configured for the App Group.', 'type' => 'integer', 'format' => 'int32', 'example' => '1000', 'title' => ''], + 'GroupId' => ['description' => 'The App Group ID.', 'type' => 'string', 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], + 'MonitorConfigJson' => ['description' => 'The alarm notification configuration.'."\n" + ."\n" + .'> For more information, see the **MonitorConfigJson** section below.', 'type' => 'string', 'example' => '{'."\n" + .' "sendChannel": "ding,sms,mail,phone",'."\n" + .' "alarmType": "Contacts",'."\n" + .' "webhookIsAtAll": false'."\n" + .'}', 'title' => ''], + 'CurJobs' => ['description' => 'The number of jobs currently configured for the App Group.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'AppKey' => ['description' => 'The application\'s AppKey.', 'type' => 'string', 'example' => 'QI4lWMZ+xk1rNB67jFUhaw==', 'title' => ''], + 'AppVersion' => ['description' => 'The application version. Valid values:', 'type' => 'string', 'example' => '2', 'title' => ''], + 'Namespace' => ['description' => 'The namespace ID.', 'type' => 'string', 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], + 'MonitorContactsJson' => ['description' => 'The alarm contact configuration.'."\n" + ."\n" + .'> For more information, see the **MonitorContactsJson** section below.', 'type' => 'string', 'example' => '['."\n" + .' {"name": "Alice Johnson"},'."\n" + .' {"name": "Lee Smith"}'."\n" + .']', 'title' => ''], + 'NotificationPolicyName' => ['title' => 'Notification Policy Name ', 'description' => 'The name of the notification policy.', 'type' => 'string', 'example' => 'test-workday-notification'], + 'EnableLog' => ['description' => 'Specifies whether to enable log collection. The default value is false.', 'type' => 'boolean', 'title' => '', 'example' => ''], ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"message\\",\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"JobId\\": 92583\\n }\\n}","errorExample":""},{"type":"xml","example":"<CreateJobResponse>\\n <Code>200</Code>\\n <Message>message</Message>\\n <RequestId>39090022-1F3B-4797-8518-6B61095F1AF0</RequestId>\\n <Success>true</Success>\\n <Data>\\n <JobId>92583</JobId>\\n </Data>\\n</CreateJobResponse>","errorExample":""}]', - 'title' => 'CreateJob', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => '## Create a Java job'."\n" + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"app is not existed, groupId=xxxx, namesapce=xxxx\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"AppName\\": \\"DocTest\\",\\n \\"Description\\": \\"Test\\",\\n \\"MaxJobs\\": 1000,\\n \\"GroupId\\": \\"testSchedulerx.defaultGroup\\",\\n \\"MonitorConfigJson\\": \\"{\\\\n \\\\\\"sendChannel\\\\\\": \\\\\\"ding,sms,mail,phone\\\\\\",\\\\n \\\\\\"alarmType\\\\\\": \\\\\\"Contacts\\\\\\",\\\\n \\\\\\"webhookIsAtAll\\\\\\": false\\\\n}\\",\\n \\"CurJobs\\": 1,\\n \\"AppKey\\": \\"QI4lWMZ+xk1rNB67jFUhaw==\\",\\n \\"AppVersion\\": \\"2\\",\\n \\"Namespace\\": \\"adcfc35d-e2fe-4fe9-bbaa-20e90ffc****\\",\\n \\"MonitorContactsJson\\": \\"[\\\\n {\\\\\\"name\\\\\\": \\\\\\"Alice Johnson\\\\\\"},\\\\n {\\\\\\"name\\\\\\": \\\\\\"Lee Smith\\\\\\"}\\\\n]\\",\\n \\"NotificationPolicyName\\": \\"test-workday-notification\\",\\n \\"EnableLog\\": false\\n }\\n}","type":"json"}]', + 'title' => 'Obtain application group details', + 'responseParamsDescription' => '## MonitorConfigJson'."\n" ."\n" - .'```json'."\n" - .'package com.alibaba.schedulerx.pop;'."\n" + .'The alarm notification configuration. The value is a JSON string that supports the following properties: `sendChannel`, `alarmType`, and `webhookIsAtAll`.'."\n" ."\n" - .'import java.util.ArrayList;'."\n" - .'import java.util.List;'."\n" + .'## **Properties**'."\n" ."\n" - .'import com.aliyuncs.DefaultAcsClient;'."\n" - .'import com.aliyuncs.profile.DefaultProfile;'."\n" - .'import com.aliyuncs.schedulerx2.model.v20190430.CreateJobRequest;'."\n" - .'import com.aliyuncs.schedulerx2.model.v20190430.CreateJobRequest.ContactInfo;'."\n" - .'import com.aliyuncs.schedulerx2.model.v20190430.CreateJobResponse;'."\n" + .'The alarm contact configuration. The format of the value depends on the `alarmType` specified in `MonitorConfigJson`.'."\n" ."\n" - .'public class CreateJavaJob {'."\n" + .'## **Value format**'."\n" ."\n" - .' public static void main(String[] args) throws Exception {'."\n" - .' // The region ID. Enter a value by referring to the Endpoints topic or based on the region in which you purchased the service. '."\n" - .' String regionId = "cn-shanghai";'."\n" - .' // The AccessKey ID used for authentication. You can obtain the AccessKey ID in the Resource Access Management (RAM) console. '."\n" - .' String accessKeyId = "<yourAccessKeyId>";'."\n" - .' // The AccessKey secret used for authentication. You can obtain the AccessKey secret in the RAM console.'."\n" - .' String accessKeySecret = "<yourAccessKeySecret>";'."\n" - .' // The service name. '."\n" - .' String productName ="schedulerx2";'."\n" - .' // Refer to the Endpoints topic and enter a domain. '."\n" - .' String domain ="schedulerx.cn-shanghai.aliyuncs.com";'."\n" - .' // Build an API client. '."\n" - .' DefaultProfile.addEndpoint(regionId, productName, domain);'."\n" - .' DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);'."\n" - .' DefaultAcsClient client = new DefaultAcsClient(defaultProfile);'."\n" - .' '."\n" - .' CreateJobRequest request = new CreateJobRequest();'."\n" - .' request.setJobType("java");'."\n" - .' request.setExecuteMode("standalone");'."\n" - .' request.setDescription("test");'."\n" - .' request.setName("helloworld");'."\n" - .' request.setClassName("com.alibaba.schedulerx.test.helloworld");'."\n" - .' request.setTimeType(1);'."\n" - .' request.setTimeExpression("0 0/10 * * * ?");'."\n" - .' request.setNamespace("xxxxx");'."\n" - .' request.setGroupId("xxxxxxx");'."\n" - .' // monitor'."\n" - .' request.setTimeoutEnable(true);'."\n" - .' request.setTimeoutKillEnable(true);'."\n" - .' request.setFailEnable(true);'."\n" - .' request.setTimeout(12300L);'."\n" - .' List<ContactInfo> contactInfosList = new ArrayList<>();'."\n" - .' ContactInfo contactInfo1 = new ContactInfo();'."\n" - .' contactInfo1.setUserName("userA");'."\n" - .' contactInfo1.setUserPhone("1381111****");'."\n" - .' ContactInfo contactInfo2 = new ContactInfo();'."\n" - .' contactInfo2.setUserName("userB");'."\n" - .' contactInfo2.setUserPhone("1382222****");'."\n" - .' contactInfosList.add(contactInfo1);'."\n" - .' contactInfosList.add(contactInfo2);'."\n" - .' request.setContactInfos(contactInfosList);'."\n" - .' // attrs'."\n" - .' //request.setQueueSize(123);'."\n" - .' request.setTaskMaxAttempt(1);'."\n" - .' request.setTaskAttemptInterval(100);'."\n" - .' CreateJobResponse response = client.getAcsResponse(request);'."\n" - .' if (response.getSuccess()) {'."\n" - .' System.out.println("jobId=" + response.getData().getJobId());'."\n" - .' } else {'."\n" - .' System.out.println(response.getMessage());'."\n" - .' }'."\n" - .' }'."\n" + .'- **When `alarmType` is `Contacts`**'."\n" ."\n" - .'}'."\n" - .'```'."\n" + .' - The value is an array of contact objects. Each object contains the following property:'."\n" ."\n" - .'## Create an HTTP job'."\n" + .' - **name**: The name of the contact.'."\n" ."\n" - .'```json'."\n" - .'package com.alibaba.schedulerx.pop;'."\n" + .' - **SMS**: `sms`.'."\n" ."\n" - .'import com.alibaba.schedulerx.common.domain.HttpAttribute;'."\n" - .'import com.alibaba.schedulerx.common.util.JsonUtil;'."\n" + .' - **Email**: `mail`.'."\n" ."\n" - .'import com.aliyuncs.DefaultAcsClient;'."\n" - .'import com.aliyuncs.profile.DefaultProfile;'."\n" - .'import com.aliyuncs.schedulerx2.model.v20190430.CreateJobRequest;'."\n" - .'import com.aliyuncs.schedulerx2.model.v20190430.CreateJobResponse;'."\n" + .' - **Phone Call**: `phone`.'."\n" ."\n" - .'public class CreateHttpJob {'."\n" + .'- **When `alarmType` is `ContactGroup`**'."\n" ."\n" - .' public static void main(String[] args) throws Exception {'."\n" - .' // The region ID. Enter a value by referring to the Endpoints topic or based on the region in which you purchased the service. '."\n" - .' String regionId = "cn-shanghai";'."\n" - .' // The AccessKey ID used for authentication. You can obtain the AccessKey ID in the RAM console. '."\n" - .' String accessKeyId = "<yourAccessKeyId>";'."\n" - .' // The AccessKey secret used for authentication. You can obtain the AccessKey secret in the RAM console. '."\n" - .' String accessKeySecret = "<yourAccessKeySecret>";'."\n" - .' // The service name. '."\n" - .' String productName ="schedulerx2";'."\n" - .' // Refer to the Endpoints topic and enter a domain. '."\n" - .' String domain ="schedulerx.cn-shanghai.aliyuncs.com";'."\n" - .' // Build an API client. '."\n" - .' DefaultProfile.addEndpoint(regionId, productName, domain);'."\n" - .' DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);'."\n" - .' DefaultAcsClient client = new DefaultAcsClient(defaultProfile);'."\n" - .' '."\n" - .' CreateJobRequest request = new CreateJobRequest();'."\n" - .' request.setNamespace("xxxxxxxx");'."\n" - .' request.setGroupId("xxxxxx");'."\n" - .' request.setJobType("http");'."\n" - .' request.setName("testHttpJob");'."\n" - .' request.setDescription("testHttpJob");'."\n" - .' request.setTimeType(1);'."\n" - .' request.setTimeExpression("20 0/5 * * * ?");'."\n" - .' request.setExecuteMode("standalone");'."\n" - .' HttpAttribute httpAttribute = new HttpAttribute();'."\n" - .' httpAttribute.setUrl("http://192.168.0.0:8080/test");'."\n" - .' httpAttribute.setMethod("GET");'."\n" - .' httpAttribute.setTimeout(10); // Unit: seconds.'."\n" - .' httpAttribute.setRespKey("code");'."\n" - .' httpAttribute.setRespValue("200");'."\n" - .' request.setContent(JsonUtil.toJson(httpAttribute));'."\n" - .' // The POST parameter, in the format of key1=value1&key2=value2. '."\n" - .' request.setParameters("key1=value1&key2=value2"); '."\n" - .' '."\n" - .' // Send a request. '."\n" - .' CreateJobResponse response = client.getAcsResponse(request);'."\n" - .' if (!response.getSuccess()) {'."\n" - .' System.out.println(response.getMessage());'."\n" - .' System.out.println("createApp: "+response.getRequestId());'."\n" - .' } else {'."\n" - .' System.out.println(JsonUtil.toJson(response));'."\n" - .' }'."\n" - .' }'."\n" - .' '."\n" + .' - **Contacts**: Specifies the alarm contacts.'."\n" + ."\n" + .' The value is a single object that contains the following property:'."\n" + ."\n" + .' - **ContactGroup**: Represents an Alarm Contact Group.'."\n" + ."\n" + .'- **@ all members** (`webhookIsAtAll`):'."\n" + ."\n" + .' - The value is `"true"` or `"false"`, indicating whether to @ all group members when a notification is sent.'."\n" + ."\n" + .'## **Examples**'."\n" + ."\n" + .'```json'."\n" + .'{'."\n" + .' "sendChannel": "ding,sms,mail,phone",'."\n" + .' "alarmType": "Contacts",'."\n" + .' "webhookIsAtAll": true'."\n" .'}'."\n" .'```'."\n" ."\n" - .'## Create a one-time job'."\n" + .'***'."\n" ."\n" - .'```json'."\n" - .'package com.alibaba.schedulerx.pop;'."\n" + .'## MonitorContactsJson details'."\n" ."\n" - .'import java.util.ArrayList;'."\n" - .'import java.util.List;'."\n" + .'The configuration for alarm contacts is provided in two formats based on the `alarmType`.'."\n" ."\n" - .'import com.aliyuncs.DefaultAcsClient;'."\n" - .'import com.aliyuncs.profile.DefaultProfile;'."\n" - .'import com.aliyuncs.schedulerx2.model.v20190430.CreateJobRequest;'."\n" - .'import com.aliyuncs.schedulerx2.model.v20190430.CreateJobRequest.ContactInfo;'."\n" - .'import com.aliyuncs.schedulerx2.model.v20190430.CreateJobResponse;'."\n" + .'## **Configuration format**'."\n" ."\n" - .'public class CreateJavaJob {'."\n" + .'This field must be in JSON format and supports two configurations: a contact array and a contact group object.'."\n" ."\n" - .' public static void main(String[] args) throws Exception {'."\n" - .' // The region ID. Enter a value by referring to the Endpoints topic or based on the region in which you purchased the service. '."\n" - .' String regionId = "cn-shanghai";'."\n" - .' // The AccessKey ID used for authentication. You can obtain the AccessKey ID in the RAM console.'."\n" - .' String accessKeyId = "xxxxxx";'."\n" - .' // The AccessKey secret used for authentication. You can obtain the AccessKey secret in the RAM console.'."\n" - .' String accessKeySecret = "xxxxxxxx";'."\n" - .' // The service name.'."\n" - .' String productName ="schedulerx2";'."\n" - .' // Refer to the Endpoints topic and enter a domain.'."\n" - .' String domain ="schedulerx.cn-shanghai.aliyuncs.com";'."\n" - .' // Build an API client.'."\n" - .' DefaultProfile.addEndpoint(regionId, productName, domain);'."\n" - .' DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);'."\n" - .' DefaultAcsClient client = new DefaultAcsClient(defaultProfile);'."\n" - .' '."\n" - .' CreateJobRequest request = new CreateJobRequest();'."\n" - .' request.setJobType("java");'."\n" - .' request.setExecuteMode("standalone");'."\n" - .' request.setDescription("test");'."\n" - .' request.setName("helloworld");'."\n" - .' request.setClassName("com.alibaba.schedulerx.test.helloworld");'."\n" - .' request.setTimeType(5);'."\n" - .' request.setTimeExpression("2021-12-30 12:12:12");'."\n" - .' request.setNamespace("xxxxxx");'."\n" - .' request.setGroupId("xxxxxxx");'."\n" - .' // The alert and monitoring feature.'."\n" - .' request.setTimeoutEnable(true);'."\n" - .' request.setTimeoutKillEnable(true);'."\n" - .' request.setFailEnable(true);'."\n" - .' request.setTimeout(12300L);'."\n" - .' // Advanced settings.'."\n" - .' request.setMaxAttempt(3);'."\n" - .' request.setAttemptInterval(30);'."\n" - .' CreateJobResponse response = client.getAcsResponse(request);'."\n" - .' if (response.getSuccess()) {'."\n" - .' System.out.println("jobId=" + response.getData().getJobId());'."\n" - .' } else {'."\n" - .' System.out.println(response.getMessage());'."\n" - .' }'."\n" - .' }'."\n" - .' '."\n" - .'}'."\n" - .'```'."\n", - ], - 'DeleteJob' => [ - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', + .'## **Properties**'."\n" + ."\n" + .'- **Example 1**: When `alarmType` is `Contacts`'."\n" + ."\n" + .' - An array of contact objects. Each object must contain the following:'."\n" + ."\n" + .' - **name**: The name of the contact.'."\n" + ."\n" + .'- **Example 2**: When `alarmType` is `ContactGroup`'."\n" + ."\n" + .' - A single object that contains:'."\n" + ."\n" + .' - **name**: The name of the contact group.'."\n" + ."\n" + .'## **Example**:'."\n" + ."\n" + .'- **Example 1** (when `alarmType` is `Contacts`):'."\n" + ."\n" + .' ```json'."\n" + .' ['."\n" + .' {"name": "John"},'."\n" + .' {"name": "Mary"}'."\n" + .' ]'."\n" + .' ```'."\n" + ."\n" + .'- **Example 2** (when `alarmType` is `ContactGroup`):'."\n" + ."\n" + .' ```json'."\n" + .' {'."\n" + .' "name": "Alarm Contact Group-1"'."\n" + .' }'."\n" + .' ```', + 'changeSet' => [ + ['createdAt' => '2025-12-16T07:30:33.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-10-27T08:05:07.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-01-15T06:51:02.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-17T09:45:54.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-06-05T07:37:27.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-03-30T08:41:57.000Z', 'description' => 'Response parameters changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxAppGroupQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'GetJobInfo' => [ + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', - 'systemTags' => [ - 'operationType' => 'delete', - ], + 'operationType' => 'read', + 'systemTags' => ['operationType' => 'get'], 'parameters' => [ [ 'name' => 'JobId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the job. You can obtain the ID on the **Task Management** page in the SchedulerX console.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'docRequired' => true, - 'example' => '92583', - ], + 'schema' => ['description' => 'The job ID. You can obtain the job ID on the Task Management page in the SchedulerX console.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'docRequired' => true, 'example' => '92583', 'title' => ''], + ], + [ + 'name' => 'GroupId', + 'in' => 'query', + 'schema' => ['description' => 'The application ID. You can obtain the application ID on the Application Management page in the SchedulerX console.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the namespace. You can obtain the ID of the namespace on the **Namespace** page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'schema' => ['description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ 'name' => 'NamespaceSource', 'in' => 'query', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'The namespace source. This parameter is required only for a special third party.', 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ - 'name' => 'GroupId', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the application. You can obtain the application ID on the **Application Management** page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'testSchedulerx.defaultGroup', - ], + 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'RegionId', + 'name' => 'JobName', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the region.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The job name.', 'type' => 'string', 'required' => false, 'example' => 'simpleJob', 'title' => ''], ], ], 'responses' => [ @@ -4824,166 +3786,226 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The additional information returned.'."\n", - 'type' => 'string', - 'example' => 'message', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', - ], - 'Success' => [ - 'description' => 'Indicates whether the job was deleted. Valid values:'."\n" - ."\n" - .'* **true**: The job was deleted.'."\n" - .'* **false**: The job was not deleted.'."\n", - 'type' => 'boolean', - 'example' => 'true', + 'Code' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message returned only if an error occurs.', 'type' => 'string', 'example' => 'jobid: 92583 not match groupId: testSchedulerx.defaultGroup', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the job details were obtained. Valid values:'."\n" + ."\n" + .'- **true**'."\n" + ."\n" + .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Data' => [ + 'description' => 'The details of the job.', + 'type' => 'object', + 'properties' => [ + 'JobConfigInfo' => [ + 'description' => 'The configurations of the job.', + 'type' => 'object', + 'properties' => [ + 'JobId' => ['description' => 'The job ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '538039', 'title' => ''], + 'Status' => ['description' => 'Indicates whether the job was enabled. Valid values:'."\n" + ."\n" + .'- **1**: The job was enabled and could be triggered.'."\n" + ."\n" + .'- **0**: The job was disabled and could not be triggered.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'Parameters' => ['description' => 'The user-defined parameters that you can obtain when the job is running.', 'type' => 'string', 'example' => 'test', 'title' => ''], + 'Description' => ['description' => 'The description of the job.', 'type' => 'string', 'example' => 'test', 'title' => ''], + 'ExecuteMode' => ['description' => 'The execution mode of the job. Valid values:'."\n" + ."\n" + .'- **Stand-alone operation**: standalone'."\n" + ."\n" + .'- **Broadcast run**: broadcast'."\n" + ."\n" + .'- **Visual MapReduce**: parallel'."\n" + ."\n" + .'- **MapReduce**: batch'."\n" + ."\n" + .'- **Shard run**: sharding', 'type' => 'string', 'example' => 'standalone', 'title' => ''], + 'MaxConcurrency' => ['description' => 'The maximum number of concurrent instances. Default value: 1. The default value indicates that if the last triggered instance is running, the next instance is not triggered even if the scheduled point in time for running the next instance is reached.', 'type' => 'string', 'example' => '1', 'title' => ''], + 'Name' => ['description' => 'The job name.', 'type' => 'string', 'example' => 'helloworld', 'title' => ''], + 'MaxAttempt' => ['description' => 'The maximum number of retries after a job failure. This parameter was specified based on your business requirements. Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], + 'Content' => ['description' => 'The script of a script job.', 'type' => 'string', 'example' => 'echo "clear" > /home/admin/edas-container/logs/catalina.out ', 'title' => ''], + 'JarUrl' => ['description' => 'The full path used to upload files to Object Storage Service (OSS).'."\n" + ."\n" + .'If you use a JAR package, you can upload the JAR package to this OSS path.', 'type' => 'string', 'example' => 'https://test.oss-cn-hangzhou.aliyuncs.com/schedulerX/test.jar', 'title' => ''], + 'ClassName' => ['description' => 'The full path of the job interface class. This parameter is returned only for jobs whose job type is Java.', 'type' => 'string', 'example' => 'com.alibaba.test.helloword', 'title' => ''], + 'JobType' => ['description' => 'The job type.', 'type' => 'string', 'example' => 'java', 'title' => ''], + 'AttemptInterval' => ['description' => 'The interval at which the system retried to run the job after a job failure. Default value: 30. Unit: seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '30', 'title' => ''], + 'MapTaskXAttrs' => [ + 'description' => 'The advanced configurations of the job.', + 'type' => 'object', + 'properties' => [ + 'TaskMaxAttempt' => ['description' => 'The number of retries after a task failure.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], + 'TaskAttemptInterval' => ['description' => 'The interval at which the system retried to run the task after a task failure.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], + 'ConsumerSize' => ['description' => 'The number of threads that were triggered by a single worker at a time. Default value: 5.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], + 'QueueSize' => ['description' => 'The maximum number of tasks that can be queued. Default value: 10000.', 'type' => 'integer', 'format' => 'int32', 'example' => '10000', 'title' => ''], + 'DispatcherSize' => ['description' => 'The number of task distribution threads. Default value: 5.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], + 'PageSize' => ['description' => 'The number of tasks that were pulled by a parallel job at a time. Default value: 100.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'TimeConfig' => [ + 'description' => 'The time configurations.', + 'type' => 'object', + 'properties' => [ + 'Calendar' => ['description' => 'Custom calendar days specified if TimeType is set to **1** (cron).', 'type' => 'string', 'example' => 'workday', 'title' => ''], + 'TimeType' => ['description' => 'The time type. Valid values:'."\n" + ."\n" + .'- **1**: cron'."\n" + ."\n" + .'- **3**: fix\\_rate'."\n" + ."\n" + .'- **4**: second\\_delay'."\n" + ."\n" + .'- **5**: one\\_time'."\n" + ."\n" + .'- **100**: api', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'DataOffset' => ['description' => 'The time offset specified if TimeType is set to **1** (cron). Unit: seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], + 'TimeExpression' => ['description' => 'The time expression specified based on the value of TimeType:'."\n" + ."\n" + .'- If TimeType is set to **100** (api), no time expression is required.'."\n" + ."\n" + .'- If TimeType is set to **3** (fix\\_rate), this parameter value indicates the specific and fixed frequency. For example, if the value is 30, the system triggers a job every 30 seconds.'."\n" + ."\n" + .'- If TimeType is set to **1** (cron), this parameter value indicates the standard CRON expression used to specify the time when to schedule the job.'."\n" + ."\n" + .'- If TimeType is set to **4** (second\\_delay), this parameter value indicates the fixed delay after which the job is triggered. Valid values: 1 to 60. Unit: seconds.', 'type' => 'string', 'example' => '0 0/10 * * * ?', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'JobMonitorInfo' => [ + 'description' => 'The monitoring information of the job.', + 'type' => 'object', + 'properties' => [ + 'ContactInfo' => [ + 'description' => 'The alert contact Information.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'UserPhone' => ['description' => 'The mobile phone number of the alert contact.', 'type' => 'string', 'example' => '1381111****', 'title' => ''], + 'UserName' => ['description' => 'The name of the alert contact.', 'type' => 'string', 'example' => 'userA', 'title' => ''], + 'UserMail' => ['description' => 'The email address of the alert contact.', 'type' => 'string', 'example' => 'user@demo.com', 'title' => ''], + 'Ding' => ['description' => 'The webhook URL of the DingTalk chatbot.', 'type' => 'string', 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=XXXXXX', 'title' => ''], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'MonitorConfig' => [ + 'description' => 'The configurations of the alerting features and the alert thresholds.', + 'type' => 'object', + 'properties' => [ + 'Timeout' => ['description' => 'The timeout threshold. Default value: 7200. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '12300', 'title' => ''], + 'SendChannel' => ['description' => 'The method used to send alerts. Only Short Message Service (SMS) is supported.', 'type' => 'string', 'example' => 'sms', 'title' => ''], + 'TimeoutKillEnable' => ['description' => 'Indicates whether the Timeout termination switch was turned on. The switch is turned off by default.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'TimeoutEnable' => ['description' => 'Indicates whether the Timeout alarm switch was turned on. Valid values:'."\n" + ."\n" + .'- **true**'."\n" + ."\n" + .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'FailEnable' => ['description' => 'Indicates whether the Failure alarm switch was turned on. Valid values:'."\n" + ."\n" + .'- **true**'."\n" + ."\n" + .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'MissWorkerEnable' => ['description' => 'Indicates whether the No machine alarm available switch was turned on.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'XAttrs' => ['description' => 'The extended fields.', 'type' => 'string', 'example' => '{"pageSize":5,"queueSize":10,"consumerSize":5,"dispatcherSize":5,"taskMaxAttempt":0,"taskAttemptInterval":0,"globalConsumerSize":1000,"taskDispatchMode":"push"}', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', ], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"message\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteJobResponse>\\n<RequestId>4F68ABED-AC31-4412-9297-D9A8F0401108</RequestId>\\n<Message>jobid: 92583 not match groupId: testSchedulerx.defaultGroup</Message>\\n<Code>200</Code>\\n<Success>true</Success>\\n</DeleteJobResponse>","errorExample":""}]', - 'title' => 'DeleteJob', - 'summary' => 'Deletes a specified job.', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"jobid: 92583 not match groupId: testSchedulerx.defaultGroup\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"JobConfigInfo\\": {\\n \\"JobId\\": 538039,\\n \\"Status\\": 1,\\n \\"Parameters\\": \\"test\\",\\n \\"Description\\": \\"test\\",\\n \\"ExecuteMode\\": \\"standalone\\",\\n \\"MaxConcurrency\\": \\"1\\",\\n \\"Name\\": \\"helloworld\\",\\n \\"MaxAttempt\\": 0,\\n \\"Content\\": \\"echo \\\\\\"clear\\\\\\" > /home/admin/edas-container/logs/catalina.out \\",\\n \\"JarUrl\\": \\"https://test.oss-cn-hangzhou.aliyuncs.com/schedulerX/test.jar\\",\\n \\"ClassName\\": \\"com.alibaba.test.helloword\\",\\n \\"JobType\\": \\"java\\",\\n \\"AttemptInterval\\": 30,\\n \\"MapTaskXAttrs\\": {\\n \\"TaskMaxAttempt\\": 0,\\n \\"TaskAttemptInterval\\": 0,\\n \\"ConsumerSize\\": 5,\\n \\"QueueSize\\": 10000,\\n \\"DispatcherSize\\": 5,\\n \\"PageSize\\": 100\\n },\\n \\"TimeConfig\\": {\\n \\"Calendar\\": \\"workday\\",\\n \\"TimeType\\": 1,\\n \\"DataOffset\\": 0,\\n \\"TimeExpression\\": \\"0 0/10 * * * ?\\"\\n },\\n \\"JobMonitorInfo\\": {\\n \\"ContactInfo\\": [\\n {\\n \\"UserPhone\\": \\"1381111****\\",\\n \\"UserName\\": \\"userA\\",\\n \\"UserMail\\": \\"user@demo.com\\",\\n \\"Ding\\": \\"https://oapi.dingtalk.com/robot/send?access_token=XXXXXX\\"\\n }\\n ],\\n \\"MonitorConfig\\": {\\n \\"Timeout\\": 12300,\\n \\"SendChannel\\": \\"sms\\",\\n \\"TimeoutKillEnable\\": true,\\n \\"TimeoutEnable\\": true,\\n \\"FailEnable\\": true,\\n \\"MissWorkerEnable\\": true\\n }\\n },\\n \\"XAttrs\\": \\"{\\\\\\"pageSize\\\\\\":5,\\\\\\"queueSize\\\\\\":10,\\\\\\"consumerSize\\\\\\":5,\\\\\\"dispatcherSize\\\\\\":5,\\\\\\"taskMaxAttempt\\\\\\":0,\\\\\\"taskAttemptInterval\\\\\\":0,\\\\\\"globalConsumerSize\\\\\\":1000,\\\\\\"taskDispatchMode\\\\\\":\\\\\\"push\\\\\\"}\\"\\n }\\n }\\n}","type":"json"}]', + 'title' => 'GetJobInfo', + 'summary' => 'Queries the details of a job based on the job ID. In most cases, the obtained information is used to update jobs.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', - 'extraInfo' => '## Sample code'."\n" - ."\n" - .'```json'."\n" - .'package com.alibaba.schedulerx.pop;'."\n" - ."\n" - .'import com.aliyuncs.DefaultAcsClient;'."\n" - .'import com.aliyuncs.exceptions.ClientException;'."\n" - .'import com.aliyuncs.exceptions.ServerException;'."\n" - .'import com.aliyuncs.profile.DefaultProfile;'."\n" - .'import com.aliyuncs.schedulerx2.model.v20190430.DeleteJobRequest;'."\n" - .'import com.aliyuncs.schedulerx2.model.v20190430.DeleteJobResponse;'."\n" - ."\n" - .'public class DeleteJob {'."\n" - ."\n" - .' public static void main(String[] args) throws Exception {'."\n" - .' // The ID of the region. Enter a value by referring to the Endpoints topic or based on the region in which you purchased the service. '."\n" - .' String regionId = "cn-shanghai";'."\n" - .' // The AccessKey ID that is used for authentication. You can obtain the AccessKey ID in the Resource Access Management (RAM) console. '."\n" - .' String accessKeyId = "<yourAccessKeyId>";'."\n" - .' // The AccessKey secret that is used for authentication. You can obtain the AccessKey secret in the RAM console. '."\n" - .' String accessKeySecret = "<yourAccessKeySecret>";'."\n" - .' // The name of the service. '."\n" - .' String productName ="schedulerx2";'."\n" - .' // The domain. Enter a domain by referring to the Endpoints topic. '."\n" - .' String domain ="schedulerx.cn-shanghai.aliyuncs.com";'."\n" - .' // Build an API client. '."\n" - .' DefaultProfile.addEndpoint(regionId, productName, domain);'."\n" - .' DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);'."\n" - .' DefaultAcsClient client = new DefaultAcsClient(defaultProfile);'."\n" - ."\n" - .' DeleteJobRequest request = new DeleteJobRequest();'."\n" - .' request.setNamespace("xxxxxx");'."\n" - .' request.setGroupId("xxxxxx");'."\n" - .' request.setJobId((long) 2030221);'."\n" - ."\n" - .' DeleteJobResponse response = client.getAcsResponse(request);'."\n" - .' if (response.getSuccess()) {'."\n" - .' System.out.println("Success: "+response.getSuccess());'."\n" - .' } else {'."\n" - .' System.out.println("Message: "+response.getMessage());'."\n" - .' }'."\n" - ."\n" - .' }'."\n" - ."\n" - .'}'."\n" - .'```'."\n", - ], - 'BatchDeleteJobs' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'extraInfo' => ' ', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-18T05:48:51.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-12-26T01:59:00.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2022-11-02T03:30:41.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-01-13T02:41:30.000Z', 'description' => 'Request parameters changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxJobQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'GetJobInstance' => [ + 'methods' => ['get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', - 'systemTags' => [ - 'operationType' => 'delete', - ], + 'operationType' => 'read', + 'systemTags' => ['operationType' => 'get'], 'parameters' => [ [ - 'name' => 'Namespace', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the namespace to which the job belongs. You can obtain the ID of the namespace on the **Namespace** page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'schema' => ['description' => 'Region ID', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'NamespaceSource', + 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Schedulerx', - ], + 'schema' => ['description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the application. You can obtain the application ID on the **Application Management** page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'testSchedulerx.defaultGroup', - ], + 'schema' => ['description' => 'The application ID. You can obtain the application ID on the Application Management page in the SchedulerX console.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ - 'name' => 'RegionId', + 'name' => 'JobId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the region to which the job belongs.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The job ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'docRequired' => true, 'example' => '92583', 'title' => ''], ], [ - 'name' => 'JobIdList', - 'in' => 'formData', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'The job IDs. Separate multiple job IDs with commas (,).'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the job.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '99341', - ], - 'required' => true, - 'example' => '99341', - 'maxItems' => 3000, - ], + 'name' => 'JobInstanceId', + 'in' => 'query', + 'schema' => ['description' => 'The job instance ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'docRequired' => true, 'example' => '1685883418', 'title' => ''], + ], + [ + 'name' => 'NamespaceSource', + 'in' => 'query', + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for a special third party.', 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], ], 'responses' => [ @@ -4991,1066 +4013,1126 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The additional information returned.'."\n", - 'type' => 'string', - 'example' => 'message', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7', - ], - 'Success' => [ - 'description' => 'Indicates whether multiple jobs were deleted at a time. Valid values:'."\n" - ."\n" - .'* **true**: Multiple jobs were deleted at a time.'."\n" - .'* **false**: Multiple jobs were not deleted at a time.'."\n", - 'type' => 'boolean', - 'example' => 'true', + 'Code' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message that is returned only if the corresponding error occurs.', 'type' => 'string', 'example' => 'jobId=xxx is not existed', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'- **true**'."\n" + ."\n" + .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Data' => [ + 'description' => 'The information about the job instance.', + 'type' => 'object', + 'properties' => [ + 'JobInstanceDetail' => [ + 'description' => 'The details of the job instance.', + 'type' => 'object', + 'properties' => [ + 'Status' => ['description' => 'The state of the job instance. Valid values:'."\n" + ."\n" + .'- **1**: The job instance is waiting for execution.'."\n" + ."\n" + .'- **3**: The job instance is running.'."\n" + ."\n" + .'- **4**: The job instance is successful.'."\n" + ."\n" + .'- **5**: The job instance failed.'."\n" + ."\n" + .'- **9**: The job instance is rejected.'."\n" + ."\n" + .'Enumeration class: com.alibaba.schedulerx.common.domain.InstanceStatus', 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'title' => ''], + 'Progress' => ['description' => 'The progress of the job instance.', 'type' => 'string', 'example' => '{"taskProgress":[{"name":"MAP_TASK_ROOT","total":1,"pulled":1,"running":0,"success":0,"failed":0}],"workerProgress":[{"workerAddr":"11.122.241.245:34865","total":1,"pulled":1,"running":0,"success":0,"failed":0}]}', 'title' => ''], + 'Result' => ['description' => 'The execution results of the job instance.', 'type' => 'string', 'example' => '{\'TotalSize\': 31, \'CurrentPage\': 5, \'PageSize\': 10}', 'title' => ''], + 'InstanceId' => ['description' => 'The job instance ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1189853849', 'title' => ''], + 'TimeType' => ['description' => 'The method that is used to specify the time when to schedule the job instance. Valid values:'."\n" + ."\n" + .'- **1**: cron'."\n" + ."\n" + .'- **3**: fix\\_rate'."\n" + ."\n" + .'- **4**: second\\_delay'."\n" + ."\n" + .'- **100**: api'."\n" + ."\n" + .'Enumeration class: com.alibaba.schedulerx.common.domain.TimeType', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'TriggerType' => ['description' => 'The trigger type of the job instance. Valid values:'."\n" + ."\n" + .'- **1**: The job instance was triggered at the scheduled time.'."\n" + ."\n" + .'- **2**: The job instance was triggered due to data update.'."\n" + ."\n" + .'- **3**: The job instance was triggered by an API call.'."\n" + ."\n" + .'- **4**: The job instance was triggered because it is manually rerun.'."\n" + ."\n" + .'- **5**: The job instance was triggered because the system automatically reruns the job instance upon a system exception, such as a database exception.'."\n" + ."\n" + .'Enumeration class: com.alibaba.schedulerx.common.domain.TriggerType', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'EndTime' => ['description' => 'The end time of the job execution.', 'type' => 'string', 'example' => '2020-07-27 11:52:10', 'title' => ''], + 'StartTime' => ['description' => 'The start time of the job execution.', 'type' => 'string', 'example' => '2020-07-27 11:52:10', 'title' => ''], + 'Executor' => ['description' => 'The user who executes the job.', 'type' => 'string', 'example' => 'John Smith', 'title' => ''], + 'JobId' => ['description' => 'The job ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '92583', 'title' => ''], + 'ScheduleTime' => ['description' => 'The time when the job was scheduled to run.', 'type' => 'string', 'example' => '2020-07-27 11:52:10', 'title' => ''], + 'DataTime' => ['description' => 'The data timestamp of the job instance.', 'type' => 'string', 'example' => '2020-07-27 11:52:10', 'title' => ''], + 'WorkAddr' => ['description' => 'The endpoint of the triggered client. The value is in the IP address:Port number format.', 'type' => 'string', 'example' => '192.168.0.0:16', 'title' => ''], + 'Parameters' => ['description' => 'The parameters of the job instance.', 'type' => 'string', 'example' => '{\\"alertId\\":11111}', 'title' => ''], + 'JobName' => ['description' => 'The job name.', 'type' => 'string', 'example' => 'ManualJob', 'title' => ''], + 'TraceId' => ['description' => 'The trace ID, which can be used to query trace details.', 'type' => 'string', 'example' => '210e845016596663430048015d0a2c', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', ], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"message\\",\\n \\"RequestId\\": \\"71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<BatchDeleteJobsResponse>\\n<Message>delete failed jobs=[675946,676129]</Message>\\n<RequestId>71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7</RequestId>\\n<Code>200</Code>\\n<Success>true</Success>\\n</BatchDeleteJobsResponse>","errorExample":""}]', - 'title' => 'BatchDeleteJobs', - 'summary' => 'Deletes multiple jobs at a time.', - 'description' => 'Before you call this operation, you must add the following dependency to the pom.xml file:'."\n" - ."\n" - .'```xml'."\n" - .'<dependency>'."\n" - .' <groupId>com.aliyun</groupId>'."\n" - .' <artifactId>aliyun-java-sdk-schedulerx2</artifactId>'."\n" - .' <version>1.0.4</version>'."\n" - .'</dependency>'."\n" - .'```'."\n", - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => '## Demo'."\n" - ."\n" - .'```java'."\n" - .'package com.alibaba.schedulerx.pop;'."\n" - ."\n" - .'import com.google.common.collect.Lists;'."\n" - ."\n" - .'import com.aliyuncs.DefaultAcsClient;'."\n" - .'import com.aliyuncs.profile.DefaultProfile;'."\n" - .'import com.aliyuncs.schedulerx2.model.v20190430.BatchDeleteJobsRequest;'."\n" - .'import com.aliyuncs.schedulerx2.model.v20190430.BatchDeleteJobsResponse;'."\n" - ."\n" - .'public class TestBatchDeleteJobs {'."\n" - ."\n" - .' public static void main(String[] args) throws Exception {'."\n" - .' // The ID of the region. Enter a value by referring to the Endpoints topic or based on the region in which you purchased the service.'."\n" - .' String regionId = "cn-hangzhou";'."\n" - .' // The AccessKey ID that is used for authentication. You can obtain the AccessKey ID in the Resource Access Management (RAM) console. '."\n" - .' String accessKeyId = "xxxxxx";'."\n" - .' // The AccessKey secret that is used for authentication. You can obtain the AccessKey secret in the RAM console. '."\n" - .' String accessKeySecret = "xxxxxxxx";'."\n" - .' // The name of the service. '."\n" - .' String productName ="schedulerx2";'."\n" - .' // The domain. Enter a domain by referring to the Endpoints topic. '."\n" - .' String domain ="schedulerx.cn-hangzhou.aliyuncs.com";'."\n" - .' // Build an API client. '."\n" - .' DefaultProfile.addEndpoint(regionId, productName, domain);'."\n" - .' DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);'."\n" - .' DefaultAcsClient client = new DefaultAcsClient(defaultProfile);'."\n" - .' '."\n" - .' BatchDeleteJobsRequest request = new BatchDeleteJobsRequest();'."\n" - .' request.setNamespace("xxxxxx");'."\n" - .' request.setGroupId("xxxxxx");'."\n" - .' request.setJobIdLists(Lists.newArrayList(3982L,3984L));'."\n" - .' BatchDeleteJobsResponse response = client.getAcsResponse(request);'."\n" - .' if (!response.getSuccess()) {'."\n" - .' System.out.println(response.getMessage());'."\n" - .' System.out.println("BatchDeleteJob: "+response.getRequestId());'."\n" - .' } else {'."\n" - .' System.out.println(response.getMessage());'."\n" - .' }'."\n" - .' }'."\n" - .' '."\n" - .'}'."\n" - .'```'."\n", - ], - 'UpdateJob' => [ - 'summary' => 'Updates the configuration information about a job. By default, you need to call the GetJobInfo operation to obtain the original configuration of the job before you call this operation to modify the configuration as required.', - 'methods' => [ - 'post', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"jobId=xxx is not existed\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"JobInstanceDetail\\": {\\n \\"Status\\": 4,\\n \\"Progress\\": \\"{\\\\\\"taskProgress\\\\\\":[{\\\\\\"name\\\\\\":\\\\\\"MAP_TASK_ROOT\\\\\\",\\\\\\"total\\\\\\":1,\\\\\\"pulled\\\\\\":1,\\\\\\"running\\\\\\":0,\\\\\\"success\\\\\\":0,\\\\\\"failed\\\\\\":0}],\\\\\\"workerProgress\\\\\\":[{\\\\\\"workerAddr\\\\\\":\\\\\\"11.122.241.245:34865\\\\\\",\\\\\\"total\\\\\\":1,\\\\\\"pulled\\\\\\":1,\\\\\\"running\\\\\\":0,\\\\\\"success\\\\\\":0,\\\\\\"failed\\\\\\":0}]}\\",\\n \\"Result\\": \\"{\'TotalSize\': 31, \'CurrentPage\': 5, \'PageSize\': 10}\\",\\n \\"InstanceId\\": 1189853849,\\n \\"TimeType\\": 1,\\n \\"TriggerType\\": 1,\\n \\"EndTime\\": \\"2020-07-27 11:52:10\\",\\n \\"StartTime\\": \\"2020-07-27 11:52:10\\",\\n \\"Executor\\": \\"John Smith\\",\\n \\"JobId\\": 92583,\\n \\"ScheduleTime\\": \\"2020-07-27 11:52:10\\",\\n \\"DataTime\\": \\"2020-07-27 11:52:10\\",\\n \\"WorkAddr\\": \\"192.168.0.0:16\\",\\n \\"Parameters\\": \\"{\\\\\\\\\\\\\\"alertId\\\\\\\\\\\\\\":11111}\\",\\n \\"JobName\\": \\"ManualJob\\",\\n \\"TraceId\\": \\"210e845016596663430048015d0a2c\\"\\n }\\n }\\n}","type":"json"}]', + 'title' => 'Retrieve details of a specified job instance', + 'summary' => 'Returns the information of a job instance, allowing you to view its status and progress.', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-18T05:48:51.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-07-17T03:39:01.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-03-30T08:41:56.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-02-22T06:00:57.000Z', 'description' => 'Error codes changed'], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxJobInstanceQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'GetJobInstanceList' => [ + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - 'riskType' => 'none', - 'chargeType' => 'free', - ], + 'operationType' => 'read', + 'systemTags' => ['operationType' => 'get'], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Namespace', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'in' => 'query', + 'schema' => ['description' => 'The namespace ID. You can obtain the namespace ID on the **Namespace** page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ 'name' => 'NamespaceSource', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The namespace source. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - 'default' => 'schedulerx', - ], + 'in' => 'query', + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ 'name' => 'GroupId', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The application ID. You can obtain the application ID on the Application Management page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'testSchedulerx.defaultGroup', - ], + 'in' => 'query', + 'schema' => ['description' => 'The application group ID.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ 'name' => 'JobId', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The job ID. You can obtain the job ID on the Task Management page in the SchedulerX console.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'docRequired' => true, - 'example' => '92583', - ], - ], - [ - 'name' => 'Name', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The job name.'."\n", - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'helloword', - ], - ], - [ - 'name' => 'Description', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The job description.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'test', - ], - ], - [ - 'name' => 'ExecuteMode', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The execution mode of the job. Valid values:'."\n" - ."\n" - .'* **Stand-alone operation**: standalone'."\n" - .'* **Broadcast run**: broadcatst'."\n" - .'* **Visual MapReduce**: parallel'."\n" - .'* **MapReduce**: batch'."\n" - .'* **Shard run**: shard', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'standalone', - ], + 'in' => 'query', + 'schema' => ['description' => 'The job ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => true, 'example' => '92583', 'title' => ''], ], [ - 'name' => 'ClassName', - 'in' => 'formData', + 'name' => 'Status', + 'in' => 'query', + 'allowEmptyValue' => true, 'schema' => [ - 'description' => 'The full path of the job interface class.'."\n" + 'title' => '', + 'description' => 'The status of the job instance. Valid values:'."\n" ."\n" - .'This field is available only when you set the job type to java. In this case, you must enter a full path.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'com.alibaba.test.helloworld', - ], - ], - [ - 'name' => 'Content', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The script content. This parameter is required when you set the job type to python, shell, go, or k8s.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'echo \'hello\'', - ], - ], - [ - 'name' => 'Parameters', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The user-defined parameters that you can obtain when the job is running.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'test', - ], - ], - [ - 'name' => 'MaxConcurrency', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The maximum number of concurrent instances. Default value: 1. The default value indicates that only one instance is allowed to run at a time. When an instance is running, another instance is not triggered even if the scheduled time for running the instance is reached.'."\n", + .'1: The job instance is pending. 3: The job instance is running. 4: The job instance is run. 5: The job instance fails. 9: The request for running the job instance is rejected. To specify this parameter, you must declare the following enumeration class: com.alibaba.schedulerx.common.domain.InstanceStatus.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, - 'maximum' => '200', - 'minimum' => '1', - 'example' => '1', - 'default' => '1', + 'example' => '5', + 'enum' => [], ], ], [ - 'name' => 'MaxAttempt', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The maximum number of retries after a job failure. This parameter is specified based on your business requirements.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '0', - 'default' => '0', - ], + 'name' => 'StartTimestamp', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => ['title' => '', 'description' => 'The beginning of the time range to query. Specify a UNIX timestamp.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1684116000000'], ], [ - 'name' => 'AttemptInterval', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The interval of retries after a job failure. Default value: 30. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '30', - 'default' => '30', - ], + 'name' => 'EndTimestamp', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => ['title' => '', 'description' => 'The end of the time range to query. Specify a UNIX timestamp.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1684202400000'], ], [ - 'name' => 'PageSize', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The number of tasks that can be pulled at a time. Default value: 100. This parameter is an advanced configuration item of the MapReduce job.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '100', - 'default' => '100', - ], + 'name' => 'PageNum', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The page number. Default value: 1.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ - 'name' => 'TaskDispatchMode', - 'in' => 'formData', + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The number of entries per page. Default value: 10.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The job mode. Valid values: push and pull. This parameter is an advanced configuration item of the MapReduce job.'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'pull' => 'pull', - 'push' => 'push', + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => 'The HTTP status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message that is returned only if the corresponding error occurs.'."\n", 'type' => 'string', 'example' => 'jobid: 92583 not match groupId: testSchedulerx.defaultGroup', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '704A2A61-3681-5568-92F7-2DFCC53F33D1', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Data' => [ + 'description' => 'The information about the job instances.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobInstanceDetails' => [ + 'description' => 'The details of the job instance.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => ['description' => 'The state of the job instance. Valid values:'."\n" + ."\n" + .'* **1**: The job instance is waiting for execution.'."\n" + .'* **3**: The job instance is running.'."\n" + .'* **4**: The job instance is successful.'."\n" + .'* **5**: The job instance failed.'."\n" + .'* **9**: The job instance is rejected.'."\n" + ."\n" + .'Enumeration class: com.alibaba.schedulerx.common.domain.InstanceStatus'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'title' => ''], + 'Progress' => ['description' => 'The progress of the job instance.'."\n", 'type' => 'string', 'example' => 'complete', 'title' => ''], + 'Result' => ['description' => 'The execution results of the job instance.'."\n", 'type' => 'string', 'example' => 'success', 'title' => ''], + 'InstanceId' => ['description' => 'The job instance ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1042499986', 'title' => ''], + 'TimeType' => ['description' => 'The method that is used to specify the time when to schedule the job instance. Valid values:'."\n" + ."\n" + .'* **1**: cron'."\n" + .'* **3**: fix_rate'."\n" + .'* **4**: second_delay'."\n" + .'* **100**: api'."\n" + ."\n" + .'Enumeration class: com.alibaba.schedulerx.common.domain.TimeType'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'TriggerType' => ['description' => 'The trigger type of the job instance. Valid values:'."\n" + ."\n" + .'* **1**: The job instance was triggered at the scheduled time.'."\n" + .'* **2**: The job instance was triggered due to data updates.'."\n" + .'* **3**: The job instance was triggered by an API call.'."\n" + .'* **4**: The job instance was triggered because it is manually rerun.'."\n" + .'* **5**: The job instance was triggered because the system automatically reruns the job instance upon a system exception, such as a database exception.'."\n" + ."\n" + .'Enumeration class: com.alibaba.schedulerx.common.domain.TriggerType'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''], + 'EndTime' => ['description' => 'The end time of the job execution.'."\n", 'type' => 'string', 'example' => '2020-07-27 11:52:10', 'title' => ''], + 'StartTime' => ['description' => 'The start time of the job execution.'."\n", 'type' => 'string', 'example' => '2020-07-27 11:52:10', 'title' => ''], + 'Executor' => ['description' => 'The user who executes the job.'."\n", 'type' => 'string', 'example' => 'A', 'title' => ''], + 'JobId' => ['description' => 'The job ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '92583', 'title' => ''], + 'ScheduleTime' => ['description' => 'The time when the job was scheduled to run.'."\n", 'type' => 'string', 'example' => '2020-07-27 11:52:10', 'title' => ''], + 'DataTime' => ['description' => 'The data timestamp of the job instance.'."\n", 'type' => 'string', 'example' => '2020-07-27 11:52:10', 'title' => ''], + 'WorkAddr' => ['description' => 'The endpoint of the triggered client. The value is in the IP address:Port number format.'."\n", 'type' => 'string', 'example' => '192.168.0.0:16', 'title' => ''], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], ], - 'example' => 'push', + 'description' => '', + 'title' => '', + 'example' => '', ], ], - [ - 'name' => 'ConsumerSize', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The number of threads that are triggered by a single worker at a time. Default value: 5. This parameter is an advanced configuration item of the MapReduce job.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '5', - 'default' => '5', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"jobid: 92583 not match groupId: testSchedulerx.defaultGroup\\",\\n \\"RequestId\\": \\"704A2A61-3681-5568-92F7-2DFCC53F33D1\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"JobInstanceDetails\\": [\\n {\\n \\"Status\\": 4,\\n \\"Progress\\": \\"complete\\",\\n \\"Result\\": \\"success\\",\\n \\"InstanceId\\": 1042499986,\\n \\"TimeType\\": 1,\\n \\"TriggerType\\": 3,\\n \\"EndTime\\": \\"2020-07-27 11:52:10\\",\\n \\"StartTime\\": \\"2020-07-27 11:52:10\\",\\n \\"Executor\\": \\"A\\",\\n \\"JobId\\": 92583,\\n \\"ScheduleTime\\": \\"2020-07-27 11:52:10\\",\\n \\"DataTime\\": \\"2020-07-27 11:52:10\\",\\n \\"WorkAddr\\": \\"192.168.0.0:16\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'GetJobInstanceList', + 'summary' => 'Queries the most recent 10 execution instances of a job.', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-18T05:48:51.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-05-17T01:26:46.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2022-12-26T01:59:02.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2022-07-18T04:25:46.000Z', 'description' => 'Error codes changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxJobInstanceQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], + ], + ], + 'GetLog' => [ + 'summary' => 'Queries the operational logs of a job. You can call this operation only in the professional edition.', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'QueueSize', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The maximum number of tasks that can be queued. Default value: 10000. This parameter is an advanced configuration item of the MapReduce job.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10000', - 'default' => '10000', - ], + 'AK' => [], ], + ], + 'deprecated' => false, + 'systemTags' => ['operationType' => 'get'], + 'parameters' => [ [ - 'name' => 'DispatcherSize', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The number of task distribution threads. Default value: 5. This parameter is an advanced configuration item of the MapReduce job.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '5', - 'default' => '5', - ], + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'TaskMaxAttempt', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The number of retries after a task failure. This parameter is an advanced configuration item of the MapReduce job.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '10', - 'minimum' => '0', - 'example' => '0', - 'default' => '0', - ], + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => ['description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ - 'name' => 'TaskAttemptInterval', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The interval of retries after a task failure. This parameter is an advanced configuration item of the MapReduce job.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '0', - 'example' => '0', - 'default' => '0', - ], + 'name' => 'NamespaceSource', + 'in' => 'query', + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ - 'name' => 'TimeType', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The time type. Valid values:'."\n" - ."\n" - .'* **1**: cron'."\n" - .'* **3**: fix_rate'."\n" - .'* **4**: second_delay'."\n" - .'* **100**: api'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'docRequired' => false, - 'example' => '1', - ], + 'name' => 'GroupId', + 'in' => 'query', + 'schema' => ['description' => 'The application group ID. You can obtain the application group ID on the Application Management page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ - 'name' => 'TimeExpression', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The time expression. Specify the time expression based on the value of TimeType:'."\n" - ."\n" - .'* If you set TimeType to **1** (cron), specify this parameter to a standard CRON expression.'."\n" - .'* If you set TimeType to **100** (api), no time expression is required.'."\n" - .'* If you set TimeType to **3** (fixed_rate), specify this parameter to a fixed frequency in seconds. For example, if you set this parameter to 30, the system triggers a job every 30 seconds.'."\n" - .'* If you set TimeType to **4** (second_delay), specify this parameter to a fixed delay after which the job is triggered. Valid values: 1 to 60. Unit: seconds.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '30', - ], + 'name' => 'JobId', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => ['description' => 'The job ID.'."\n", 'type' => 'string', 'required' => false, 'example' => '123', 'title' => ''], ], [ - 'name' => 'Calendar', - 'in' => 'formData', - 'schema' => [ - 'description' => 'If you set TimeType to 1 (cron), you can specify calendar days.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Business days'."\n", - ], + 'name' => 'JobInstanceId', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => ['description' => 'The job instance ID.'."\n", 'type' => 'string', 'required' => false, 'example' => '123456', 'title' => ''], ], [ - 'name' => 'DataOffset', - 'in' => 'formData', - 'schema' => [ - 'description' => 'If you set TimeType to 1 (cron), you can specify a time offset. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '2400', - ], + 'name' => 'StartTimestamp', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => ['description' => 'The time when the job starts to run. Specify a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1675739364000', 'title' => ''], ], [ - 'name' => 'Timezone', - 'in' => 'formData', - 'schema' => [ - 'description' => 'Time zone.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'GMT+8', - ], + 'name' => 'EndTimestamp', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => ['description' => 'The time when the job stops running. Specify a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1675739484000', 'title' => ''], ], [ - 'name' => 'TimeoutEnable', - 'in' => 'formData', - 'schema' => [ - 'description' => 'Specifies whether to turn on Timeout alarm. If the switch is turned on, an alert will be generated upon a timeout. Valid values:'."\n" - ."\n" - .'* **true**'."\n" - .'* **false**'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - 'default' => 'true', - ], + 'name' => 'Keyword', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => ['description' => 'The keyword.'."\n", 'type' => 'string', 'required' => false, 'example' => 'ERROR', 'title' => ''], ], [ - 'name' => 'Timeout', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The timeout threshold. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '7200', - 'default' => '7200', - ], + 'name' => 'Line', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => ['description' => 'The number of rows to return. The maximum number is 200.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '200', 'minimum' => '0', 'example' => '50', 'default' => '50', 'title' => ''], ], [ - 'name' => 'TimeoutKillEnable', - 'in' => 'formData', - 'schema' => [ - 'description' => 'Specifies whether to turn on Timeout termination. If the switch is turned on, the job will be terminated upon a timeout. Valid values:'."\n" - ."\n" - .'* **true**'."\n" - .'* **false**'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - 'default' => 'true', - ], + 'name' => 'Offset', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => ['description' => 'The number of offset rows. This parameter can be used for a paged query.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'default' => '0', 'title' => ''], ], [ - 'name' => 'FailEnable', - 'in' => 'formData', + 'name' => 'Reverse', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => ['description' => 'Specifies whether to reverse the order. By default, the order is reversed.'."\n", 'type' => 'boolean', 'deprecated' => false, 'required' => false, 'example' => 'true', 'default' => 'true', 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'Specifies whether to turn on Failure alarm. If the switch is turned on, an alert will be generated upon a failure. Valid values:'."\n" - ."\n" - .'* **true**'."\n" - .'* **false**'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - 'default' => 'true', + 'title' => 'Schema of Response', + 'description' => 'The response schema.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0'], + 'Code' => ['description' => 'The HTTP status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Message' => ['description' => 'The returned error message.'."\n", 'type' => 'string', 'example' => 'jobid=xxx is not existed', 'title' => ''], + 'Data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'Logs' => [ + 'description' => 'The logs. The value is an array of strings.'."\n", + 'type' => 'array', + 'items' => ['description' => 'The log in each row.'."\n", 'type' => 'string', 'example' => 'hello world', 'title' => ''], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', ], ], - [ - 'name' => 'FailTimes', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The number of consecutive failures. An alert will be received if the number of consecutive failures reaches the value of this parameter.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - 'default' => '1', + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"jobid=xxx is not existed\\",\\n \\"Data\\": {\\n \\"Logs\\": [\\n \\"hello world\\"\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'GetLog', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-18T05:48:51.000Z', 'description' => 'Response parameters changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxLogQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], + ], + ], + 'GetOverview' => [ + 'summary' => 'Retrieves the overview data of task scheduling for a professional edition application.', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'MissWorkerEnable', - 'in' => 'formData', - 'schema' => [ - 'description' => 'Specifies whether to turn on No machine alarm available. If the switch is turned on, an alert will be generated when no machine is available for running the job. Valid values:'."\n" - ."\n" - .'* **true**'."\n" - .'* **false**'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - 'default' => 'true', - ], + 'AK' => [], ], + ], + 'deprecated' => false, + 'systemTags' => ['operationType' => 'get'], + 'parameters' => [ [ - 'name' => 'SuccessNoticeEnable', - 'in' => 'formData', - 'schema' => [ - 'description' => 'Specifies whether to turn on Successful notice. If the switch is turned on, a notice will be sent when a job succeeds.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - 'default' => 'false', - ], + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The region ID.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'SendChannel', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The method that is used to send alerts. Only Short Message Service (SMS) is supported.'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [], - 'example' => 'sms', - ], + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The namespace UID.', 'type' => 'string', 'required' => false, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****'], ], [ - 'name' => 'ContactInfo', - 'in' => 'formData', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'The information about the alert contact.'."\n", - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'UserPhone' => [ - 'description' => 'The mobile phone number of the alert contact.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '1381111****', - ], - 'UserName' => [ - 'description' => 'The name of the alert contact.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'userA', - ], - 'UserMail' => [ - 'description' => 'The email address of the alert contact.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'test***@***.com', - ], - 'Ding' => [ - 'description' => 'The webhook URL of the DingTalk chatbot.[](https://open.dingtalk.com/document/org/application-types)'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=**********', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 10, - ], + 'name' => 'NamespaceSource', + 'in' => 'query', + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for special third-party integrations.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'schedulerx'], ], [ - 'name' => 'XAttrs', - 'in' => 'formData', - 'schema' => [ - 'description' => 'If you set JobType to k8s, this parameter is required. xxljob task: {"resource":"job"} shell task: {"image":"busybox","resource":"shell"}'."\n", - 'type' => 'string', - 'required' => false, - 'example' => ' {"resource":"shell","fileFormat":"unix","templateType":"customTemplate"}', - ], + 'name' => 'GroupId', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The application group ID.', 'type' => 'string', 'required' => false, 'example' => 'testSchedulerx.defaultGroup'], ], [ - 'name' => 'Template', - 'in' => 'formData', + 'name' => 'Operate', + 'in' => 'query', 'schema' => [ - 'description' => 'Custom task template for the k8s task type.', + 'title' => '', + 'description' => 'The operation type. Valid values:'."\n" + ."\n" + .'- query: queries interval data.'."\n" + .'- query_range: queries interval time series data.', 'type' => 'string', - 'required' => false, - 'example' => 'apiVersion: v1'."\n" - .'kind: Pod'."\n" - .'metadata:'."\n" - .' name: schedulerx-node-{JOB_ID}'."\n" - .' namespace: {NAMESPACE}'."\n" - .'spec:'."\n" - .' containers:'."\n" - .' - name: node-job'."\n" - .' image: node:16'."\n" - .' imagePullPolicy: IfNotPresent'."\n" - .' volumeMounts:'."\n" - .' - name: script-node'."\n" - .' mountPath: script/node'."\n" - .' command: ["node", "script/node/node-{JOB_ID}.js"]'."\n" - .' volumes:'."\n" - .' - name: script-node'."\n" - .' configMap:'."\n" - .' name: schedulerx-configmap'."\n" - .' items:'."\n" - .' - key: schedulerx-node-{JOB_ID}'."\n" - .' path: node-{JOB_ID}.js'."\n" - .' restartPolicy: Never', + 'required' => true, + 'enum' => ['query', 'query_range'], + 'example' => 'query', ], ], [ - 'name' => 'Priority', + 'name' => 'MetricType', 'in' => 'query', 'schema' => [ + 'title' => '', + 'description' => 'The metric type. Valid values:'."\n" + ."\n" + .'- 0: basic task information.'."\n" + .'- 1: task execution information.', 'type' => 'integer', 'format' => 'int32', + 'required' => true, + 'enum' => ['0', '1'], + 'example' => '0', ], ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => ['title' => '', 'description' => 'The start timestamp of the data, in seconds. Example: 1684166400.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1684166400'], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The end timestamp of the data, in seconds. Example: 1684166400. If this parameter is not specified, the current time is used by default.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1684166400'], + ], ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => '', + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The additional information returned only if an error occurs.'."\n", - 'type' => 'string', - 'example' => 'job type is java className can not be blank', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0'], + 'Code' => ['description' => 'The status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the API call was successful. Valid values:'."\n" + ."\n" + .'- true: Successful.'."\n" + .'- false: Failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Message' => ['description' => 'The error message. This parameter is returned only when an error occurs.', 'type' => 'string', 'example' => 'No access permission for the namespace [***]', 'title' => ''], + 'Data' => ['description' => 'The overview data in JSON format, which corresponds to the overview data on the console. The result is returned in one of the following three formats:'."\n" + .'- Basic information.'."\n" + .'- Node runtime information within a time interval.'."\n" + .'- Node runtime timing information within a time interval. This format returns statistics information at each time point for three data items: node triggers, successful executions, and failed executions.', 'type' => 'string', 'example' => 'Basic info: {"schedulerx_job_counter_disable": "4","schedulerx_job_trigger_counter_running": "0","schedulerx_job_counter_enable": "70","schedulerx_job_counter_all": "74","schedulerx_worker_counter": "2"}', 'title' => ''], ], + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"job type is java className can not be blank\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateJobResponse>\\n <Code>200</Code>\\n <Message>job type is java className can not be blank</Message>\\n <RequestId>4F68ABED-AC31-4412-9297-D9A8F0401108</RequestId>\\n <Success>true</Success>\\n</UpdateJobResponse>","errorExample":""}]', - 'title' => 'UpdateJob', - 'requestParamsDescription' => '> When you call the UpdateJob operation to update a scheduled job, the original parameter configurations of the job are deleted. Therefore, call the [GetJobInfo](~~176507~~) operation to obtain the original configuration of the job before you configure the job based on the actual situation.'."\n", - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'DisableJob' => [ - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"No access permission for the namespace [***]\\",\\n \\"Data\\": \\"Basic info: {\\\\\\"schedulerx_job_counter_disable\\\\\\": \\\\\\"4\\\\\\",\\\\\\"schedulerx_job_trigger_counter_running\\\\\\": \\\\\\"0\\\\\\",\\\\\\"schedulerx_job_counter_enable\\\\\\": \\\\\\"70\\\\\\",\\\\\\"schedulerx_job_counter_all\\\\\\": \\\\\\"74\\\\\\",\\\\\\"schedulerx_worker_counter\\\\\\": \\\\\\"2\\\\\\"}\\"\\n}","type":"json"}]', + 'title' => 'Retrieve overview data', + 'requestParamsDescription' => 'This operation queries data corresponding to three sections of overview information on the console. Configure the request parameter settings as follows:'."\n" + ."\n" + .'- Basic node information: Set Operate to "query", MetricType to "0", and StartTime to the current UNIX timestamp.'."\n" + ."\n" + .'- Node runtime information within a time interval: Set Operate to "query", MetricType to "1", and StartTime to the desired query start time. The start time cannot be earlier than 15 days ago because the timing data retention period is 15 days.'."\n" + ."\n" + .'- Node runtime timing information within a time interval: Set Operate to "query_range", MetricType to "1", and StartTime to the desired query start time. By default, set the start time to 1 hour before the current time because a large amount of data is returned for each time point.', + 'responseParamsDescription' => 'The Data field returns JSON content in different formats based on the three types of data queries. Examples:'."\n" + .'- Basic information:'."\n" + .'```'."\n" + .'{'."\n" + .' "schedulerx_job_counter_disable": "4", // Number of disabled tasks'."\n" + .' "schedulerx_job_counter_enable": "70", // Number of enabled tasks'."\n" + .' "schedulerx_job_counter_all": "74", // Total number of tasks'."\n" + .' "schedulerx_worker_counter": "2", // Number of online machines'."\n" + .' "schedulerx_job_trigger_counter_running": "0" // Number of running task instances'."\n" + .'}'."\n" + .'```'."\n" + ."\n" + .'- Node runtime information within a time interval:'."\n" + .'```'."\n" + .'{'."\n" + .' "schedulerx_job_trigger_counter_success": "227", // '."\n" + .' "schedulerx_job_trigger_counter_all": "225",'."\n" + .' "schedulerx_job_trigger_counter_failed": "0"'."\n" + .'}'."\n" + .'```'."\n" + .'- Node runtime timing information within a time interval: Returns statistics information at each time point for three data items: node triggers, successful executions, and failed executions.'."\n" + ."\n" + .'```'."\n" + .'['."\n" + .' {'."\n" + .' "data": ['."\n" + .' ['."\n" + .' 1686110400000, '."\n" + .' 4'."\n" + .' ],'."\n" + .' ['."\n" + .' 1686110460000,'."\n" + .' 5'."\n" + .' ]'."\n" + .' ],'."\n" + .' "name": "Trigger count"'."\n" + .' },'."\n" + .' {'."\n" + .' "data": ['."\n" + .' ['."\n" + .' 1686110400000,'."\n" + .' 0'."\n" + .' ],'."\n" + .' ['."\n" + .' 1686110460000,'."\n" + .' 0'."\n" + .' ]'."\n" + .' ],'."\n" + .' "name": "Execution failed"'."\n" + .' },'."\n" + .' {'."\n" + .' "data": ['."\n" + .' ['."\n" + .' 1686110400000,'."\n" + .' 4'."\n" + .' ],'."\n" + .' ['."\n" + .' 1686110460000,'."\n" + .' 5'."\n" + .' ]'."\n" + .' ],'."\n" + .' "name": "Execution succeeded"'."\n" + .' }'."\n" + .' ]'."\n" + .'```', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-18T05:48:51.000Z', 'description' => 'Response parameters changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxOverviewQuery', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'translator' => 'machine', + ], + 'GetWorkFlow' => [ + 'summary' => 'Retrieves workflow information.', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', - 'systemTags' => [ - 'operationType' => 'update', - ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => ['operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ - 'name' => 'JobId', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The job ID. You can obtain the job ID on the Task Management page in the SchedulerX console.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'docRequired' => true, - 'example' => '92583', - ], + 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => true, 'example' => 'public', 'title' => ''], ], [ 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'schema' => ['description' => 'The namespace ID.', 'type' => 'string', 'required' => true, 'example' => '4a06d5ea-f576-4326-842c-fb14ea043d8d', 'title' => ''], ], [ 'name' => 'NamespaceSource', 'in' => 'query', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'The namespace source.', 'type' => 'string', 'example' => 'source', 'title' => '', 'required' => false], ], [ 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The application ID. You can obtain the application ID on the Application Management page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'testSchedulerx.defaultGroup', - ], + 'schema' => ['description' => 'The application group ID.', 'type' => 'string', 'required' => true, 'example' => 'hxm.test', 'title' => ''], ], [ - 'name' => 'RegionId', + 'name' => 'WorkflowId', 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The workflow ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Contains the response data.', 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The error message that is returned only if the corresponding error occurs.'."\n", - 'type' => 'string', - 'example' => 'jobid: 92583 not match groupId: testSchedulerx.defaultGroup', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => 'C8E5FB4A-6D8D-424D-9AAA-4FE06BB74FF9', - ], - 'Success' => [ - 'description' => 'Indicates whether the job was disabled. Valid values:'."\n" - ."\n" - .'* **true**'."\n" - .'* **false**'."\n", - 'type' => 'boolean', - 'example' => 'true', + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '45678xxx'], + 'Code' => ['description' => 'The error code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message.', 'type' => 'string', 'example' => 'workflow is not existed', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request succeeded.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Data' => [ + 'title' => '', + 'description' => 'The workflow data.', + 'type' => 'object', + 'properties' => [ + 'WorkFlowInfo' => [ + 'title' => '', + 'description' => 'The basic information about the workflow.', + 'type' => 'object', + 'properties' => [ + 'WorkflowId' => ['description' => 'The workflow ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234xxx', 'title' => ''], + 'Name' => ['description' => 'The workflow name.', 'type' => 'string', 'example' => 'workflow_111', 'title' => ''], + 'Description' => ['description' => 'The description of the workflow.', 'type' => 'string', 'example' => 'my first workflow', 'title' => ''], + 'Status' => ['description' => 'The workflow status.', 'type' => 'string', 'example' => 'enable', 'title' => ''], + 'TimeType' => ['description' => 'The time type of the workflow.', 'type' => 'string', 'example' => 'cron', 'title' => ''], + 'TimeExpression' => ['description' => 'The time expression for the workflow.', 'type' => 'string', 'example' => '0 0 2 * * ?', 'title' => ''], + 'GroupId' => ['description' => 'The ID of the application group.', 'type' => 'string', 'example' => 'hxm.test', 'title' => ''], + 'Namespace' => ['description' => 'The ID of the namespace.', 'type' => 'string', 'example' => '8150f906-2a40-4420-8cc1-68d2fe4dd69c', 'title' => ''], + 'MaxConcurrency' => ['description' => 'The maximum number of concurrent instances.', 'type' => 'string', 'example' => '1', 'title' => ''], + ], + 'example' => '', + ], + 'WorkFlowNodeInfo' => [ + 'title' => '', + 'description' => 'The workflow node information.', + 'type' => 'object', + 'properties' => [ + 'Nodes' => [ + 'title' => '', + 'description' => 'The list of workflow nodes.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Id' => ['description' => 'The job ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456xxx', 'title' => ''], + 'Label' => ['description' => 'The job name.', 'type' => 'string', 'example' => 'job_111', 'title' => ''], + 'Status' => ['description' => 'The job status.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + ], + 'description' => 'A workflow node, which represents a single job.', + 'title' => '', + 'example' => '', + ], + 'example' => '', + ], + 'Edges' => [ + 'title' => '', + 'description' => 'The list of workflow edges.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Source' => ['description' => 'The source job ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''], + 'Target' => ['description' => 'The target job ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''], + ], + 'description' => 'An edge connecting two job nodes.', + 'title' => '', + 'example' => '', + ], + 'example' => '', + ], + ], + 'example' => '', + ], + ], + 'example' => '', ], ], + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"jobid: 92583 not match groupId: testSchedulerx.defaultGroup\\",\\n \\"RequestId\\": \\"C8E5FB4A-6D8D-424D-9AAA-4FE06BB74FF9\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DisableJobResponse>\\n<RequestId>C8E5FB4A-6D8D-424D-9AAA-4FE06BB74FF9</RequestId>\\n<Message>jobid: 92583 not match groupId: testSchedulerx.defaultGroup</Message>\\n<Code>200</Code>\\n<Success>true</Success>\\n</DisableJobResponse>","errorExample":""}]', - 'title' => 'DisableJob', - 'summary' => 'Disables a job.', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"45678xxx\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"workflow is not existed\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"WorkFlowInfo\\": {\\n \\"WorkflowId\\": 0,\\n \\"Name\\": \\"workflow_111\\",\\n \\"Description\\": \\"my first workflow\\",\\n \\"Status\\": \\"enable\\",\\n \\"TimeType\\": \\"cron\\",\\n \\"TimeExpression\\": \\"0 0 2 * * ?\\",\\n \\"GroupId\\": \\"hxm.test\\",\\n \\"Namespace\\": \\"8150f906-2a40-4420-8cc1-68d2fe4dd69c\\",\\n \\"MaxConcurrency\\": \\"1\\"\\n },\\n \\"WorkFlowNodeInfo\\": {\\n \\"Nodes\\": [\\n {\\n \\"Id\\": 0,\\n \\"Label\\": \\"job_111\\",\\n \\"Status\\": 1\\n }\\n ],\\n \\"Edges\\": [\\n {\\n \\"Source\\": 100,\\n \\"Target\\": 200\\n }\\n ]\\n }\\n }\\n}","type":"json"}]', + 'title' => 'GetWorkFlow', 'extraInfo' => '## Sample code'."\n" ."\n" - .' package com.alibaba.schedulerx.pop;'."\n" + .'```'."\n" + .'package com.alibaba.schedulerx.pop;'."\n" ."\n" - .' import com.aliyuncs.DefaultAcsClient;'."\n" - .' import com.aliyuncs.profile.DefaultProfile;'."\n" - .' import com.aliyuncs.schedulerx2.model.v20190430.DisableJobRequest;'."\n" - .' import com.aliyuncs.schedulerx2.model.v20190430.DisableJobResponse;'."\n" + .'import com.alibaba.schedulerx.common.util.JsonUtil;'."\n" ."\n" - .' public class DisableJob {'."\n" + .'import com.aliyuncs.DefaultAcsClient;'."\n" + .'import com.aliyuncs.exceptions.ClientException;'."\n" + .'import com.aliyuncs.exceptions.ServerException;'."\n" + .'import com.aliyuncs.profile.DefaultProfile;'."\n" + .'import com.aliyuncs.schedulerx2.model.v20190430.GetWorkFlowRequest;'."\n" + .'import com.aliyuncs.schedulerx2.model.v20190430.GetWorkFlowResponse;'."\n" ."\n" - .' public static void main(String[] args) throws Exception {'."\n" - .' // The region ID. Enter a value by referring to the Endpoints topic or based on the region in which you purchased the service. '."\n" - .' String regionId = "cn-shanghai";'."\n" - .' // The AccessKey ID that is used for authentication. You can obtain the AccessKey ID in the RAM console. '."\n" - .' String accessKeyId = "<yourAccessKeyId>";'."\n" - .' // The AccessKey secret that is used for authentication. You can obtain the AccessKey secret in the RAM console. '."\n" - .' String accessKeySecret = "<yourAccessKeySecret>";'."\n" - .' // The name of the service. '."\n" - .' String productName ="schedulerx2";'."\n" - .' // The domain. Enter a domain by referring to the Endpoints topic. '."\n" - .' String domain ="schedulerx.cn-shanghai.aliyuncs.com";'."\n" - .' // Build an API client. '."\n" - .' DefaultProfile.addEndpoint(regionId, productName, domain);'."\n" - .' DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);'."\n" - .' DefaultAcsClient client = new DefaultAcsClient(defaultProfile);'."\n" - .' '."\n" - .' DisableJobRequest request = new DisableJobRequest();'."\n" - .' request.setNamespace("xxxxxx");'."\n" - .' request.setGroupId("xxxxxx");'."\n" - .' request.setJobId(123L);'."\n" - .' DisableJobResponse response = client.getAcsResponse(request);'."\n" + .'public class TestGetWorkFlow {'."\n" + ."\n" + .' public static void main(String[] args) {'."\n" + .' // The ID of the region. Enter a value by referring to the Endpoints topic or based on the region in which you purchased the service.'."\n" + .' String regionId = "public";'."\n" + .' // The AccessKey ID that is used for authentication. You can obtain the AccessKey ID in the RAM console.'."\n" + .' String accessKeyId = "xxxxxxx";'."\n" + .' // The AccessKey secret that is used for authentication. You can obtain the AccessKey secret in the RAM console.'."\n" + .' String accessKeySecret = "xxxxxxxxx";'."\n" + .' // The name of the service.'."\n" + .' String productName ="schedulerx2";'."\n" + .' // The domain. Enter a domain by referring to the Endpoints topic.'."\n" + .' String domain ="schedulerx.aliyuncs.com";'."\n" + .' // Build an API client.'."\n" + .' DefaultProfile.addEndpoint(regionId, productName, domain);'."\n" + .' DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);'."\n" + .' DefaultAcsClient client = new DefaultAcsClient(defaultProfile);'."\n" + .' '."\n" + .' GetWorkFlowRequest request = new GetWorkFlowRequest();'."\n" + .' request.setNamespace("433d8b23-06e9-408c-aaaa-90d4d1b9a4af");'."\n" + .' request.setGroupId("xuren_test");'."\n" + .' request.setWorkflowId(29L);'."\n" + .' GetWorkFlowResponse response;'."\n" + .' try {'."\n" + .' response = client.getAcsResponse(request);'."\n" .' if (!response.getSuccess()) {'."\n" - .' System.out.println(response.getMessage());'."\n" - .' System.out.println("DisableJob: "+response.getRequestId());'."\n" + .' System.out.println(JsonUtil.toJson(response));'."\n" .' } else {'."\n" - .' System.out.println(response.getMessage());'."\n" + .' System.out.println("Basic workflow information:" + response.getData().getWorkFlowInfo());'."\n" + .' System.out.println("Workflow node information:" + response.getData().getWorkFlowNodeInfo());'."\n" .' }'."\n" + .' } catch (ServerException e) {'."\n" + .' // TODO Auto-generated catch block'."\n" + .' e.printStackTrace();'."\n" + .' } catch (ClientException e) {'."\n" + .' // TODO Auto-generated catch block'."\n" + .' e.printStackTrace();'."\n" .' }'."\n" - .' '."\n" - .' }'."\n", - ], - 'BatchEnableJobs' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + .' }'."\n" + .' '."\n" + .'}'."\n" + .' '."\n" + .'```'."\n", + 'changeSet' => [ + ['createdAt' => '2025-04-18T03:20:57.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-18T05:48:51.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-12-26T01:59:02.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2021-12-21T03:32:07.000Z', 'description' => 'Request parameters changed, Response parameters changed'], + ['createdAt' => '2021-12-20T12:18:16.000Z', 'description' => 'OpenAPI offline'], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxWorkflowQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'GetWorkerList' => [ + 'summary' => 'Obtains the list of workers that are connected to an application.', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - ], + 'systemTags' => ['operationType' => 'get'], 'parameters' => [ [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the region.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], + ], + [ + 'name' => 'GroupId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the permission group.'."\n", 'type' => 'string', 'required' => true, 'example' => 'usercenter', 'title' => ''], + ], + [ 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the namespace to which the job belongs. You can obtain the namespace ID on the **Namespace** page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'schema' => ['description' => 'The ID of the namespace. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ 'name' => 'NamespaceSource', 'in' => 'query', + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', + 'title' => 'Schema of Response', + 'description' => 'The schema of the response.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108****'], + 'Code' => ['description' => 'The HTTP status code that is returned.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The additional information that is returned.'."\n", 'type' => 'string', 'example' => 'Cannot find product according to your domain.', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the call is successful. Valid values:'."\n" + ."\n" + .'* **true**: The call is successful.'."\n" + .'* **false**: The call fails.'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Data' => [ + 'description' => 'The job information.'."\n", + 'type' => 'object', + 'properties' => [ + 'WorkerInfos' => [ + 'description' => 'The worker information.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Ip' => ['description' => 'The IP address of the worker.'."\n", 'type' => 'string', 'example' => '30.225.16.49', 'title' => ''], + 'Port' => ['description' => 'The port number of the worker.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '60831', 'title' => ''], + 'WorkerAddress' => ['description' => 'The address of the worker. The address is in the format of ${worker_id}@${worker_ip}:${worker_port}.'."\n", 'type' => 'string', 'example' => '030225016049_11734_25917@30.225.16.49:60831', 'title' => ''], + 'Label' => ['description' => 'The label of the worker.'."\n", 'type' => 'string', 'example' => 'gray', 'title' => ''], + 'Version' => ['description' => 'The version of the worker.'."\n", 'type' => 'string', 'example' => '1.3.4', 'title' => ''], + 'Starter' => ['description' => 'The startup method of the worker.'."\n", 'type' => 'string', 'example' => 'springboot', 'title' => ''], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"Cannot find product according to your domain.\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"WorkerInfos\\": [\\n {\\n \\"Ip\\": \\"30.225.16.49\\",\\n \\"Port\\": 60831,\\n \\"WorkerAddress\\": \\"030225016049_11734_25917@30.225.16.49:60831\\",\\n \\"Label\\": \\"gray\\",\\n \\"Version\\": \\"1.3.4\\",\\n \\"Starter\\": \\"springboot\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'GetWorkerList', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-18T05:48:51.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-12-26T01:59:00.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2021-12-30T07:47:16.000Z', 'description' => 'OpenAPI offline'], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxAppGroupQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + ], + ], + 'GetWorkflowInstance' => [ + 'summary' => 'Queries the details of a specified workflow instance, including the state of the workflow instance, the state of each job instance, and the dependencies between job instances. You can call this operation only in the professional edition.', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => ['operationType' => 'get'], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], + ], + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => ['description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], + ], + [ + 'name' => 'NamespaceSource', + 'in' => 'query', + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], + ], [ 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The application ID. You can obtain the application ID on the **Application Management** page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'testSchedulerx.defaultGroup', - ], + 'schema' => ['description' => 'The application group ID. You can obtain the ID on the Application Management page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ - 'name' => 'RegionId', + 'name' => 'WorkflowId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the region to which the job belongs.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The workflow ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123', 'title' => ''], ], [ - 'name' => 'JobIdList', - 'in' => 'formData', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'The job IDs. Multiple job IDs are separated with commas (,).'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The job ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '99341', - ], - 'required' => true, - 'example' => '99341', - 'maxItems' => 3000, - ], + 'name' => 'WfInstanceId', + 'in' => 'query', + 'schema' => ['description' => 'The workflow instance ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned additional information.'."\n", - 'type' => 'string', - 'example' => 'message', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7', - ], - 'Success' => [ - 'description' => 'Indicates whether the jobs were enabled at a time. Valid values:'."\n" - ."\n" - .'* **true**'."\n" - .'* **false**'."\n", - 'type' => 'boolean', - 'example' => 'true', + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0'], + 'Code' => ['description' => 'The HTTP status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Message' => ['description' => 'The returned error message.'."\n", 'type' => 'string', 'example' => 'workflowId=xxx is not existed', 'title' => ''], + 'Data' => [ + 'description' => 'The details of the workflow instance.'."\n", + 'type' => 'object', + 'properties' => [ + 'WfInstanceInfo' => [ + 'description' => 'The details of the workflow instance, including the state of the workflow instance, the time when the workflow instance started to run, the time when the workflow instance stopped running, the state of each job instance, and the dependencies between job instances.'."\n", + 'type' => 'object', + 'properties' => [ + 'Status' => ['description' => 'The state of the workflow instance. Valid values:'."\n" + ."\n" + .'* 1: pending'."\n" + .'* 2: preparing'."\n" + .'* 3: running'."\n" + .'* 4: successful'."\n" + .'* 5: failed'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], + 'StartTime' => ['description' => 'The time when the workflow instance started to run.'."\n", 'type' => 'string', 'example' => '2023-01-03 18:00:01', 'title' => ''], + 'EndTime' => ['description' => 'The time when the workflow instance stopped running.'."\n", 'type' => 'string', 'example' => '2023-01-03 18:00:21', 'title' => ''], + 'ScheduleTime' => ['description' => 'The time when the workflow instance was scheduled to run.'."\n", 'type' => 'string', 'example' => '2023-01-03 18:00:00', 'title' => ''], + 'DataTime' => ['description' => 'The data timestamp of the workflow instance.'."\n", 'type' => 'string', 'example' => '2023-01-03 18:00:00', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'WfInstanceDag' => [ + 'description' => 'The directed acyclic graph (DAG) of the workflow instance, including nodes and dependencies.'."\n", + 'type' => 'object', + 'properties' => [ + 'Nodes' => [ + 'description' => 'The job instances.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'JobInstanceId' => ['description' => 'The ID of the job instance.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '24058796', 'title' => ''], + 'JobId' => ['description' => 'The job ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1472', 'title' => ''], + 'StartTime' => ['description' => 'The time when the job started to run.'."\n", 'type' => 'string', 'example' => '2023-01-03 18:00:03', 'title' => ''], + 'EndTime' => ['description' => 'The time when the job stopped running.'."\n", 'type' => 'string', 'example' => '2023-01-03 18:00:21', 'title' => ''], + 'ScheduleTime' => ['description' => 'The time when the job was scheduled.'."\n", 'type' => 'string', 'example' => '2023-01-03 18:00:03', 'title' => ''], + 'DataTime' => ['description' => 'The data timestamp of the job.'."\n", 'type' => 'string', 'example' => '2023-01-03 18:00:00', 'title' => ''], + 'WorkAddr' => ['description' => 'The worker on which the job instance run.'."\n", 'type' => 'string', 'example' => '10.163.0.101:34027', 'title' => ''], + 'Result' => ['description' => 'The execution result of the job.'."\n", 'type' => 'string', 'example' => 'code=200', 'title' => ''], + 'Attempt' => ['description' => 'The number of retries when the job failed.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], + 'Status' => ['description' => 'The state of the job instance. Valid values: 1: The job instance is waiting for execution. 3: The job instance is running. 4: The job instance is run. 5: The job instance failed to run. 9: The job instance is rejected. Enumeration class: com.alibaba.schedulerx.common.domain.InstanceStatus.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'title' => ''], + 'JobName' => ['description' => 'The job name.'."\n", 'type' => 'string', 'example' => 'TestJob', 'title' => ''], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'Edges' => [ + 'description' => 'The dependencies between job instances.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The upstream and downstream dependencies of each job instance.'."\n", + 'type' => 'object', + 'properties' => [ + 'Source' => ['description' => 'The upstream job instance of the current job instance. A value of 0 indicates that the upstream job instance is the root node.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '24058798', 'title' => ''], + 'Target' => ['description' => 'The downstream job instance of the current job instance.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '24058796', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"message\\",\\n \\"RequestId\\": \\"71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<BatchEnableJobsResponse>\\n<Message>enable failed jobs=[99342]</Message>\\n<RequestId>71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7</RequestId>\\n<Code>200</Code>\\n<Success>true</Success>\\n</BatchEnableJobsResponse>","errorExample":""}]', - 'title' => 'BatchEnableJobs', - 'summary' => 'Enables multiple jobs at a time.', - 'description' => 'Before you call this operation, you must add the following dependency to the pom.xml file:'."\n" - ."\n" - .'```xml'."\n" - .'<dependency>'."\n" - .' <groupId>com.aliyun</groupId>'."\n" - .' <artifactId>aliyun-java-sdk-schedulerx2</artifactId>'."\n" - .' <version>1.0.4</version>'."\n" - .'</dependency>'."\n" - .'```'."\n", - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => '## Demo'."\n" - ."\n" - .' package com.alibaba.schedulerx.pop;'."\n" - ."\n" - .' import com.google.common.collect.Lists;'."\n" - ."\n" - .' import com.aliyuncs.DefaultAcsClient;'."\n" - .' import com.aliyuncs.profile.DefaultProfile;'."\n" - .' import com.aliyuncs.schedulerx2.model.v20190430.BatchEnableJobsRequest;'."\n" - .' import com.aliyuncs.schedulerx2.model.v20190430.BatchEnableJobsResponse;'."\n" - ."\n" - .' public class TestBatchEnableJobs {'."\n" - ."\n" - .' public static void main(String[] args) throws Exception {'."\n" - .' // The region ID. Enter a value by referring to the Endpoints topic or based on the region in which you purchased the service. '."\n" - .' String regionId = "cn-hangzhou";'."\n" - .' // The AccessKey ID that is used for authentication. You can obtain the AccessKey ID in the RAM console. '."\n" - .' String accessKeyId = "xxxxxx";'."\n" - .' // The AccessKey secret that is used for authentication. You can obtain the AccessKey secret in the RAM console. '."\n" - .' String accessKeySecret = "xxxxxxxx";'."\n" - .' // The name of the service. '."\n" - .' String productName ="schedulerx2";'."\n" - .' // The domain. Enter a domain by referring to the Endpoints topic. '."\n" - .' String domain ="schedulerx.cn-hangzhou.aliyuncs.com";'."\n" - .' // Build an API client. '."\n" - .' DefaultProfile.addEndpoint(regionId, productName, domain);'."\n" - .' DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);'."\n" - .' DefaultAcsClient client = new DefaultAcsClient(defaultProfile);'."\n" - .' '."\n" - .' BatchEnableJobsRequest request = new BatchEnableJobsRequest();'."\n" - .' request.setNamespace("xxxxxx");'."\n" - .' request.setGroupId("xxxxxx");'."\n" - .' request.setJobIdLists(Lists.newArrayList(3982L,3984L));'."\n" - .' BatchEnableJobsResponse response = client.getAcsResponse(request);'."\n" - .' if (!response.getSuccess()) {'."\n" - .' System.out.println(response.getMessage());'."\n" - .' System.out.println("BatchEnableJob: "+response.getRequestId());'."\n" - .' } else {'."\n" - .' System.out.println(response.getMessage());'."\n" - .' }'."\n" - .' }'."\n" - .' '."\n" - .' }'."\n", - ], - 'BatchDisableJobs' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"workflowId=xxx is not existed\\",\\n \\"Data\\": {\\n \\"WfInstanceInfo\\": {\\n \\"Status\\": 5,\\n \\"StartTime\\": \\"2023-01-03 18:00:01\\",\\n \\"EndTime\\": \\"2023-01-03 18:00:21\\",\\n \\"ScheduleTime\\": \\"2023-01-03 18:00:00\\",\\n \\"DataTime\\": \\"2023-01-03 18:00:00\\"\\n },\\n \\"WfInstanceDag\\": {\\n \\"Nodes\\": [\\n {\\n \\"JobInstanceId\\": 24058796,\\n \\"JobId\\": 1472,\\n \\"StartTime\\": \\"2023-01-03 18:00:03\\",\\n \\"EndTime\\": \\"2023-01-03 18:00:21\\",\\n \\"ScheduleTime\\": \\"2023-01-03 18:00:03\\",\\n \\"DataTime\\": \\"2023-01-03 18:00:00\\",\\n \\"WorkAddr\\": \\"10.163.0.101:34027\\",\\n \\"Result\\": \\"code=200\\",\\n \\"Attempt\\": 0,\\n \\"Status\\": 4,\\n \\"JobName\\": \\"TestJob\\"\\n }\\n ],\\n \\"Edges\\": [\\n {\\n \\"Source\\": 24058798,\\n \\"Target\\": 24058796\\n }\\n ]\\n }\\n }\\n}","type":"json"}]', + 'title' => 'GetWorkflowInstance', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-18T05:48:51.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-07-17T08:31:58.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-07-17T03:39:01.000Z', 'description' => 'Response parameters changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxWorkflowQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'GrantPermission' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', - 'systemTags' => [ - 'operationType' => 'update', - ], + 'deprecated' => false, + 'systemTags' => ['operationType' => 'create'], 'parameters' => [ [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], + ], + [ 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the namespace to which the job belongs. You can obtain the ID of the namespace on the **Namespace** page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'schema' => ['description' => 'The namespace ID.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffcdf01', 'title' => ''], ], [ 'name' => 'NamespaceSource', 'in' => 'query', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the application. You can obtain the application ID on the **Application Management** page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'testSchedulerx.defaultGroup', - ], + 'schema' => ['description' => 'The application group ID.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'test.defaultGroup', 'title' => ''], ], [ - 'name' => 'RegionId', + 'name' => 'UserId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the region to which the job belongs.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The user ID.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '277641081920123456', 'title' => ''], ], [ - 'name' => 'JobIdList', - 'in' => 'formData', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'The job IDs. Separate multiple job IDs with commas (,).'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the job.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '99341', - ], - 'required' => true, - 'example' => '99341', - 'maxItems' => 3000, - ], + 'name' => 'UserName', + 'in' => 'query', + 'schema' => ['description' => 'The username.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'lilei', 'title' => ''], + ], + [ + 'name' => 'GrantOption', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to grant the permissions with the GRANT option. Valid values: -**true** -**false**'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], ], 'responses' => [ @@ -6058,163 +5140,76 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The additional information that was returned.'."\n", - 'type' => 'string', - 'example' => 'disable failed jobs=[99341]', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* **true**: The request was successful.'."\n" - .'* **false**: The request failed.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The HTTP status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '400', 'title' => ''], + 'Message' => ['description' => 'The error message that is returned only if the corresponding error occurs.'."\n", 'type' => 'string', 'example' => 'Your request is denied as lack of ssl protect.', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", 'type' => 'boolean', 'example' => 'false', 'title' => ''], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"disable failed jobs=[99341]\\",\\n \\"RequestId\\": \\"71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<BatchDisableJobsResponse>\\n<Message>disable failed jobs=[99341]</Message>\\n<RequestId>71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7</RequestId>\\n<Code>200</Code>\\n<Success>true</Success>\\n</BatchDisableJobsResponse>","errorExample":""}]', - 'title' => 'BatchDisableJobs', - 'summary' => 'Disables multiple jobs at a time.', - 'description' => 'Before you call this operation, you must add the following dependency to the pom.xml file:'."\n" - ."\n" - .'```xml'."\n" - .'<dependency>'."\n" - .' <groupId>com.aliyun</groupId>'."\n" - .' <artifactId>aliyun-java-sdk-schedulerx2</artifactId>'."\n" - .' <version>1.0.4</version>'."\n" - .'</dependency>'."\n" - .'```'."\n", + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 400,\\n \\"Message\\": \\"Your request is denied as lack of ssl protect.\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": false\\n}","errorExample":""},{"type":"xml","example":"<RequestId>4F68ABED-AC31-4412-9297-D9A8F0401108</RequestId>\\n<Message>Your request is denied as lack of ssl protect.</Message>\\n<Code>400</Code>\\n<Success>false</Success>","errorExample":""}]', + 'title' => 'GrantPermission', + 'summary' => 'Grants permissions to an application group.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', - 'extraInfo' => '## Demo'."\n" - ."\n" - .' package com.alibaba.schedulerx.pop;'."\n" - ."\n" - .' import com.google.common.collect.Lists;'."\n" - ."\n" - .' import com.aliyuncs.DefaultAcsClient;'."\n" - .' import com.aliyuncs.profile.DefaultProfile;'."\n" - .' import com.aliyuncs.schedulerx2.model.v20190430.BatchDisableJobsRequest;'."\n" - .' import com.aliyuncs.schedulerx2.model.v20190430.BatchDisableJobsResponse;'."\n" - ."\n" - .' public class TestBatchDisableJobs {'."\n" - ."\n" - .' public static void main(String[] args) throws Exception {'."\n" - .' // The ID of the region. Enter a value by referring to the Endpoints topic or based on the region in which you purchased the service. '."\n" - .' String regionId = "cn-hangzhou";'."\n" - .' // The AccessKey ID that is used for authentication. You can obtain the AccessKey ID in the Resource Access Management (RAM) console. '."\n" - .' String accessKeyId = "xxxxxx";'."\n" - .' // The AccessKey secret that is used for authentication. You can obtain the AccessKey secret in the RAM console. '."\n" - .' String accessKeySecret = "xxxxxxxx";'."\n" - .' // The name of the service. '."\n" - .' String productName ="schedulerx2";'."\n" - .' // The domain. Enter a domain by referring to the Endpoints topic. '."\n" - .' String domain ="schedulerx.cn-hangzhou.aliyuncs.com";'."\n" - .' // Build an API client. '."\n" - .' DefaultProfile.addEndpoint(regionId, productName, domain);'."\n" - .' DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);'."\n" - .' DefaultAcsClient client = new DefaultAcsClient(defaultProfile);'."\n" - .' '."\n" - .' BatchDisableJobsRequest request = new BatchDisableJobsRequest();'."\n" - .' request.setNamespace("xxxxxx");'."\n" - .' request.setGroupId("xxxxxx");'."\n" - .' request.setJobIdLists(Lists.newArrayList(3982L,3984L));'."\n" - .' BatchDisableJobsResponse response = client.getAcsResponse(request);'."\n" - .' if (!response.getSuccess()) {'."\n" - .' System.out.println(response.getMessage());'."\n" - .' System.out.println("BatchDisableJob: "+response.getRequestId());'."\n" - .' } else {'."\n" - .' System.out.println(response.getMessage());'."\n" - .' }'."\n" - .' }'."\n" - .' '."\n" - .' }'."\n", - ], - 'EnableJob' => [ - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'extraInfo' => ' ', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-15T09:37:58.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-12-26T01:59:00.000Z', 'description' => 'Error codes changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:GrantSchedulerxGrantPermission', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'ListGroups' => [ + 'summary' => 'Gets the list of applications.', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', - 'systemTags' => [ - 'operationType' => 'update', - ], + 'operationType' => 'read', + 'systemTags' => ['operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ - 'name' => 'JobId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The job ID. You can obtain the job ID on the Task Management page in the SchedulerX console.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'docRequired' => true, - 'example' => '92583', - ], - ], - [ 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'schema' => ['description' => 'The namespace. You can obtain the ID of the namespace on the **Namespace** page in the console.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '1a72ecb1-b4cc-400a-a71b-20cdec9b****', 'title' => ''], ], [ 'name' => 'NamespaceSource', 'in' => 'query', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'This parameter is required only for specific third-party integrations.', 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ - 'name' => 'GroupId', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The application ID. You can obtain the application ID on the Application Management page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'testSchedulerx.defaultGroup', - ], + 'schema' => ['description' => 'The ID of the region.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'RegionId', + 'name' => 'AppGroupName', 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The name of the application group.', 'type' => 'string', 'required' => false, 'example' => 'k8s-test', 'title' => ''], ], ], 'responses' => [ @@ -6222,163 +5217,184 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The error message that is returned only if the corresponding error occurs.'."\n", - 'type' => 'string', - 'example' => 'jobid: 92583 not match groupId: testSchedulerx.defaultGroup', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* **true**'."\n" - .'* **false**'."\n", - 'type' => 'boolean', - 'example' => 'true', + 'Code' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The returned message.', 'type' => 'string', 'example' => 'message', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB58A', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the call was successful. Valid values:'."\n" + ."\n" + .'- **true**'."\n" + ."\n" + .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Data' => [ + 'description' => 'The list of applications.', + 'type' => 'object', + 'properties' => [ + 'AppGroups' => [ + 'description' => 'The list of applications and their details.', + 'type' => 'array', + 'items' => [ + 'description' => '-', + 'type' => 'object', + 'properties' => [ + 'AppGroupId' => ['description' => 'The ID of the application group.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], + 'AppName' => ['description' => 'The name of the application.', 'type' => 'string', 'example' => 'DocTest', 'title' => ''], + 'AppKey' => ['description' => 'The application key.', 'type' => 'string', 'example' => 'a3G77O6NZxq/lyo1NC****==', 'title' => ''], + 'Description' => ['description' => 'The description of the application.', 'type' => 'string', 'example' => 'Test', 'title' => ''], + 'GroupId' => ['description' => 'The ID of the application.', 'type' => 'string', 'example' => 'DocTest.Group', 'title' => ''], + 'AppVersion' => ['description' => 'The application version. Valid values: 1 (Basic Edition) and 2 (Professional Edition).', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], + 'Namespace' => ['description' => 'The ID of the namespace.', 'type' => 'string', 'example' => '1a72ecb1-b4cc-400a-a71b-20cdec9b****', 'title' => ''], + 'EnableLog' => ['description' => 'Indicates whether logging is enabled.'."\n" + ."\n" + .'- true: Logging is enabled.'."\n" + ."\n" + .'- false: Logging is disabled.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', ], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"jobid: 92583 not match groupId: testSchedulerx.defaultGroup\\",\\n \\"RequestId\\": \\"71BCC0E3-64B2-4B63-A870-AFB64EBC***\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<EnableJobResponse>\\n<Message>jobid: 92583 not match groupId: testSchedulerx.defaultGroup</Message>\\n<RequestId>71BCC0E3-64B2-4B63-A870-AFB64EBC***</RequestId>\\n<Code>200</Code>\\n<Success>true</Success>\\n</EnableJobResponse>","errorExample":""}]', - 'title' => 'EnableJob', - 'summary' => 'Enables a job.', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"message\\",\\n \\"RequestId\\": \\"71BCC0E3-64B2-4B63-A870-AFB64EBCB58A\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"AppGroups\\": [\\n {\\n \\"AppGroupId\\": 1,\\n \\"AppName\\": \\"DocTest\\",\\n \\"AppKey\\": \\"a3G77O6NZxq/lyo1NC****==\\",\\n \\"Description\\": \\"Test\\",\\n \\"GroupId\\": \\"DocTest.Group\\",\\n \\"AppVersion\\": 2,\\n \\"Namespace\\": \\"1a72ecb1-b4cc-400a-a71b-20cdec9b****\\",\\n \\"EnableLog\\": false\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'ListGroups', + 'description' => 'Before you call this operation, add the following dependency to your POM file:'."\n" + ."\n" + .'```xml'."\n" + .'<dependency>'."\n" + .' <groupId>com.aliyun</groupId>'."\n" + .' <artifactId>aliyun-java-sdk-schedulerx2</artifactId>'."\n" + .' <version>1.0.5</version>'."\n" + .'</dependency>'."\n" + .'```', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => '## Sample code'."\n" ."\n" .' package com.alibaba.schedulerx.pop;'."\n" ."\n" + .' import java.util.List;'."\n" + ."\n" .' import com.aliyuncs.DefaultAcsClient;'."\n" + .' import com.aliyuncs.exceptions.ClientException;'."\n" + .' import com.aliyuncs.exceptions.ServerException;'."\n" .' import com.aliyuncs.profile.DefaultProfile;'."\n" - .' import com.aliyuncs.schedulerx2.model.v20190430.EnableJobRequest;'."\n" - .' import com.aliyuncs.schedulerx2.model.v20190430.EnableJobResponse;'."\n" + .' import com.aliyuncs.schedulerx2.model.v20190430.ListGroupsRequest;'."\n" + .' import com.aliyuncs.schedulerx2.model.v20190430.ListGroupsResponse;'."\n" + .' import com.aliyuncs.schedulerx2.model.v20190430.ListGroupsResponse.Data.AppGroup;'."\n" ."\n" - .' public class EnableJob {'."\n" + .' public class TestListGroups {'."\n" ."\n" - .' public static void main(String[] args) throws Exception {'."\n" - .' // The region ID. Enter a value by referring to the Endpoints topic or based on the region in which you purchased the service. '."\n" - .' String regionId = "cn-shanghai";'."\n" + .' public static void main(String[] args) {'."\n" + .' // The region ID. Enter a value by referring to the Endpoints topic or based on the region in which you purchased the service. '."\n" + .' String regionId = "cn-hangzhou";'."\n" .' // The AccessKey ID that is used for authentication. You can obtain the AccessKey ID in the RAM console. '."\n" - .' String accessKeyId = "<yourAccessKeyId>";'."\n" + .' String accessKeyId = "XXXXXXXX";'."\n" .' // The AccessKey secret that is used for authentication. You can obtain the AccessKey secret in the RAM console. '."\n" - .' String accessKeySecret = "<yourAccessKeySecret>";'."\n" + .' String accessKeySecret = "XXXXXXXX";'."\n" .' // The name of the service. '."\n" .' String productName ="schedulerx2";'."\n" .' // The domain. Enter a domain by referring to the Endpoints topic. '."\n" - .' String domain ="schedulerx.cn-shanghai.aliyuncs.com";'."\n" + .' String domain ="schedulerx.cn-hangzhou.aliyuncs.com";'."\n" .' // Build an API client. '."\n" .' DefaultProfile.addEndpoint(regionId, productName, domain);'."\n" .' DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);'."\n" .' DefaultAcsClient client = new DefaultAcsClient(defaultProfile);'."\n" .' '."\n" - .' EnableJobRequest request = new EnableJobRequest();'."\n" - .' request.setNamespace("xxxxxx");'."\n" - .' request.setGroupId("xxxxxx");'."\n" - .' request.setJobId(123L);'."\n" - .' EnableJobResponse response = client.getAcsResponse(request);'."\n" - .' if (!response.getSuccess()) {'."\n" - .' System.out.println(response.getMessage());'."\n" - .' System.out.println("EnableJob: "+response.getRequestId());'."\n" - .' } else {'."\n" - .' System.out.println(response.getMessage());'."\n" + .' ListGroupsRequest request = new ListGroupsRequest();'."\n" + .' // The namespace ID. '."\n" + .' request.setNamespace("433d8b23-06e9-408c-aaaa-90d4d1b9****");'."\n" + .' ListGroupsResponse response;'."\n" + .' try {'."\n" + .' response = client.getAcsResponse(request);'."\n" + .' if (!response.getSuccess()) {'."\n" + .' System.out.println(response.getMessage());'."\n" + .' } else {'."\n" + .' List<AppGroup> appGroups = response.getData().getAppGroups();'."\n" + .' for (AppGroup appGroup : appGroups) {'."\n" + .' System.out.println("groupId=" + appGroup.getGroupId() + ", appKey=" + appGroup.getAppKey());'."\n" + .' }'."\n" + .' }'."\n" + .' } catch (ServerException e) {'."\n" + .' // TODO Auto-generated catch block'."\n" + .' e.printStackTrace();'."\n" + .' } catch (ClientException e) {'."\n" + .' // TODO Auto-generated catch block'."\n" + .' e.printStackTrace();'."\n" .' }'."\n" .' }'."\n" .' '."\n" .' }'."\n", - ], - 'GetJobInfo' => [ - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'changeSet' => [ + ['createdAt' => '2025-12-16T07:30:33.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-01-15T06:51:02.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-18T05:48:51.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-06-05T07:37:27.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-05-29T09:53:47.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-03-30T08:41:56.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-03-01T07:28:41.000Z', 'description' => 'Request parameters changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxAppGroupQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'ListJobScriptHistory' => [ + 'summary' => 'Queries historical scripts of a job.', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', - 'systemTags' => [ - 'operationType' => 'get', - ], + 'systemTags' => ['operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'tenantRelevance' => 'tenant'], 'parameters' => [ [ 'name' => 'JobId', 'in' => 'query', - 'schema' => [ - 'description' => 'The job ID. You can obtain the job ID on the Task Management page in the SchedulerX console.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'docRequired' => true, - 'example' => '92583', - ], + 'schema' => ['description' => 'The job ID. You can obtain the job ID on the Tasks page in the SchedulerX console.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'docRequired' => true, 'example' => '92583'."\n", 'title' => ''], ], [ 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The application ID. You can obtain the application ID on the Application Management page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'testSchedulerx.defaultGroup', - ], + 'schema' => ['description' => 'The application ID. You can obtain the application ID on the Applications page in the SchedulerX console.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'testSchedulerx.defaultGroup'."\n", 'title' => ''], ], [ 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'schema' => ['description' => 'The namespace ID. You can obtain the namespace ID on the Namespaces page in the SchedulerX console.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108'."\n", 'title' => ''], ], [ 'name' => 'NamespaceSource', 'in' => 'query', - 'schema' => [ - 'description' => 'The namespace source. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for a special third party.', 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], - ], - [ - 'name' => 'JobName', - 'in' => 'query', - 'schema' => [ - 'description' => 'The job name.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'simpleJob', - ], + 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou'."\n", 'title' => ''], ], ], 'responses' => [ @@ -6386,381 +5402,136 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The error message returned only if an error occurs.'."\n", - 'type' => 'string', - 'example' => 'jobid: 92583 not match groupId: testSchedulerx.defaultGroup', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', - ], - 'Success' => [ - 'description' => 'Indicates whether the job details were obtained. Valid values:'."\n" - ."\n" - .'* **true**'."\n" - .'* **false**'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The additional information returned only if an error occurs.', 'type' => 'string', 'example' => 'job is not existed, jobId=302', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'true'."\n" + ."\n" + .'false', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Data' => [ - 'description' => 'The details of the job.'."\n", + 'description' => 'The information about the jobs.', 'type' => 'object', 'properties' => [ - 'JobConfigInfo' => [ - 'description' => 'The configurations of the job.'."\n", - 'type' => 'object', - 'properties' => [ - 'JobId' => [ - 'description' => 'The job ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '538039', - ], - 'Status' => [ - 'description' => 'Indicates whether the job was enabled. Valid values:'."\n" + 'JobScriptHistoryInfos' => [ + 'description' => 'The information about the job\'s historical scripts.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'VersionesDescription' => ['description' => 'The description of the script version.', 'type' => 'string', 'example' => 'init version', 'title' => ''], + 'Creator' => ['description' => 'The creator.', 'type' => 'string', 'example' => '1272118248844842', 'title' => ''], + 'CreateTime' => ['description' => 'The creation time.', 'type' => 'string', 'example' => '2025-03-12 14:52:42'."\n", 'title' => ''], + 'ScriptContent' => ['description' => 'The script content.', 'type' => 'string', 'example' => '#!/bin/bash'."\n" ."\n" - .'* **1**: The job was enabled and could be triggered.'."\n" - .'* **0**: The job was disabled and could not be triggered.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Parameters' => [ - 'description' => 'The user-defined parameters that you can obtain when the job is running.'."\n", - 'type' => 'string', - 'example' => 'test', - ], - 'Description' => [ - 'description' => 'The description of the job.'."\n", - 'type' => 'string', - 'example' => 'test', - ], - 'ExecuteMode' => [ - 'description' => 'The execution mode of the job. Valid values:'."\n" + .'# The following are built-in variables provided by the system to retrieve job runtime information'."\n" + .'echo "Job parameters: #{schedulerx.jobParameters}"'."\n" + .'echo "Sharding ID: #{schedulerx.shardingId}"'."\n" + .'echo "Sharding parameters: #{schedulerx.shardingParameters}"'."\n" + .'echo "Total shards: #{schedulerx.shardingNum}"'."\n" + .'echo "Retry attempts: #{schedulerx.attempt}"'."\n" + .'echo "Trigger type: #{schedulerx.triggerType}"'."\n" + .'echo "Schedule timestamp: #{schedulerx.scheduleTime}"'."\n" + .'echo "Data timestamp: #{schedulerx.dataTime}"'."\n" ."\n" - .'* **Stand-alone operation**: standalone'."\n" - .'* **Broadcast run**: broadcast'."\n" - .'* **Visual MapReduce**: parallel'."\n" - .'* **MapReduce**: batch'."\n" - .'* **Shard run**: sharding', - 'type' => 'string', - 'example' => 'standalone', - ], - 'MaxConcurrency' => [ - 'description' => 'The maximum number of concurrent instances. Default value: 1. The default value indicates that if the last triggered instance is running, the next instance is not triggered even if the scheduled point in time for running the next instance is reached.'."\n", - 'type' => 'string', - 'example' => '1', - ], - 'Name' => [ - 'description' => 'The job name.'."\n", - 'type' => 'string', - 'example' => 'helloworld', - ], - 'MaxAttempt' => [ - 'description' => 'The maximum number of retries after a job failure. This parameter was specified based on your business requirements. Default value: 0.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'Content' => [ - 'description' => 'The script of a script job.'."\n", - 'type' => 'string', - 'example' => 'echo "clear" > /home/admin/edas-container/logs/catalina.out ', - ], - 'JarUrl' => [ - 'description' => 'The full path used to upload files to Object Storage Service (OSS).'."\n" + .'# The last line of output will be returned as the result'."\n" + .'echo "hello world"'."\n" ."\n" - .'If you use a JAR package, you can upload the JAR package to this OSS path.'."\n", - 'type' => 'string', - 'example' => 'https://test.oss-cn-hangzhou.aliyuncs.com/schedulerX/test.jar', - ], - 'ClassName' => [ - 'description' => 'The full path of the job interface class. This parameter is returned only for jobs whose job type is Java.'."\n", - 'type' => 'string', - 'example' => 'com.alibaba.test.helloword', - ], - 'JobType' => [ - 'description' => 'The job type.'."\n", - 'type' => 'string', - 'example' => 'java', - ], - 'AttemptInterval' => [ - 'description' => 'The interval at which the system retried to run the job after a job failure. Default value: 30. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '30', - ], - 'MapTaskXAttrs' => [ - 'description' => 'The advanced configurations of the job.'."\n", - 'type' => 'object', - 'properties' => [ - 'TaskMaxAttempt' => [ - 'description' => 'The number of retries after a task failure.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'TaskAttemptInterval' => [ - 'description' => 'The interval at which the system retried to run the task after a task failure.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'ConsumerSize' => [ - 'description' => 'The number of threads that were triggered by a single worker at a time. Default value: 5.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '5', - ], - 'QueueSize' => [ - 'description' => 'The maximum number of tasks that can be queued. Default value: 10000.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10000', - ], - 'DispatcherSize' => [ - 'description' => 'The number of task distribution threads. Default value: 5.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '5', - ], - 'PageSize' => [ - 'description' => 'The number of tasks that were pulled by a parallel job at a time. Default value: 100.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '100', - ], - ], - ], - 'TimeConfig' => [ - 'description' => 'The time configurations.'."\n", - 'type' => 'object', - 'properties' => [ - 'Calendar' => [ - 'description' => 'Custom calendar days specified if TimeType is set to **1** (cron).'."\n", - 'type' => 'string', - 'example' => 'Business days'."\n", - ], - 'TimeType' => [ - 'description' => 'The time type. Valid values:'."\n" - ."\n" - .'* **1**: cron'."\n" - .'* **3**: fix_rate'."\n" - .'* **4**: second_delay'."\n" - .'* **5**: one_time'."\n" - .'* **100**: api'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'DataOffset' => [ - 'description' => 'The time offset specified if TimeType is set to **1** (cron). Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'TimeExpression' => [ - 'description' => 'The time expression specified based on the value of TimeType:'."\n" - ."\n" - .'* If TimeType is set to **100** (api), no time expression is required.'."\n" - .'* If TimeType is set to **3** (fix_rate), this parameter value indicates the specific and fixed frequency. For example, if the value is 30, the system triggers a job every 30 seconds.'."\n" - .'* If TimeType is set to **1** (cron), this parameter value indicates the standard CRON expression used to specify the time when to schedule the job.'."\n" - .'* If TimeType is set to **4** (second_delay), this parameter value indicates the fixed delay after which the job is triggered. Valid values: 1 to 60. Unit: seconds.'."\n", - 'type' => 'string', - 'example' => '0 0/10 * * * ?', - ], - ], - ], - 'JobMonitorInfo' => [ - 'description' => 'The monitoring information of the job.'."\n", - 'type' => 'object', - 'properties' => [ - 'ContactInfo' => [ - 'description' => 'The alert contact Information.'."\n", - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'UserPhone' => [ - 'description' => 'The mobile phone number of the alert contact.'."\n", - 'type' => 'string', - 'example' => '1381111****', - ], - 'UserName' => [ - 'description' => 'The name of the alert contact.'."\n", - 'type' => 'string', - 'example' => 'userA', - ], - 'UserMail' => [ - 'description' => 'The email address of the alert contact.'."\n", - 'type' => 'string', - 'example' => 'user@demo.com', - ], - 'Ding' => [ - 'description' => 'The webhook URL of the DingTalk chatbot.'."\n", - 'type' => 'string', - 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=XXXXXX', - ], - ], - ], - ], - 'MonitorConfig' => [ - 'description' => 'The configurations of the alerting features and the alert thresholds.'."\n", - 'type' => 'object', - 'properties' => [ - 'Timeout' => [ - 'description' => 'The timeout threshold. Default value: 7200. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '12300', - ], - 'SendChannel' => [ - 'description' => 'The method used to send alerts. Only Short Message Service (SMS) is supported.'."\n", - 'type' => 'string', - 'example' => 'sms', - ], - 'TimeoutKillEnable' => [ - 'description' => 'Indicates whether the Timeout termination switch was turned on. The switch is turned off by default.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'TimeoutEnable' => [ - 'description' => 'Indicates whether the Timeout alarm switch was turned on. Valid values:'."\n" - ."\n" - .'* **true**'."\n" - .'* **false**'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'FailEnable' => [ - 'description' => 'Indicates whether the Failure alarm switch was turned on. Valid values:'."\n" - ."\n" - .'* **true**'."\n" - .'* **false**'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'MissWorkerEnable' => [ - 'description' => 'Indicates whether the No machine alarm available switch was turned on.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - ], - ], - ], - ], - 'XAttrs' => [ - 'description' => 'The extended fields.'."\n", - 'type' => 'string', - 'example' => '{"pageSize":5,"queueSize":10,"consumerSize":5,"dispatcherSize":5,"taskMaxAttempt":0,"taskAttemptInterval":0,"globalConsumerSize":1000,"taskDispatchMode":"push"}', + .'# exit 1 indicates failure'."\n" + .'exit 0'."\n", 'title' => ''], ], + 'description' => 'The details of the historical script.', + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], ], 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"job is not existed, jobId=302\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"JobScriptHistoryInfos\\": [\\n {\\n \\"VersionesDescription\\": \\"init version\\",\\n \\"Creator\\": \\"1272118248844842\\",\\n \\"CreateTime\\": \\"2025-03-12 14:52:42\\\\n\\",\\n \\"ScriptContent\\": \\"#!/bin/bash\\\\n\\\\n# The following are built-in variables provided by the system to retrieve job runtime information\\\\necho \\\\\\"Job parameters: #{schedulerx.jobParameters}\\\\\\"\\\\necho \\\\\\"Sharding ID: #{schedulerx.shardingId}\\\\\\"\\\\necho \\\\\\"Sharding parameters: #{schedulerx.shardingParameters}\\\\\\"\\\\necho \\\\\\"Total shards: #{schedulerx.shardingNum}\\\\\\"\\\\necho \\\\\\"Retry attempts: #{schedulerx.attempt}\\\\\\"\\\\necho \\\\\\"Trigger type: #{schedulerx.triggerType}\\\\\\"\\\\necho \\\\\\"Schedule timestamp: #{schedulerx.scheduleTime}\\\\\\"\\\\necho \\\\\\"Data timestamp: #{schedulerx.dataTime}\\\\\\"\\\\n\\\\n# The last line of output will be returned as the result\\\\necho \\\\\\"hello world\\\\\\"\\\\n\\\\n# exit 1 indicates failure\\\\nexit 0\\\\n\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'ListJobScriptHistory', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxJobQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"jobid: 92583 not match groupId: testSchedulerx.defaultGroup\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"JobConfigInfo\\": {\\n \\"JobId\\": 538039,\\n \\"Status\\": 1,\\n \\"Parameters\\": \\"test\\",\\n \\"Description\\": \\"test\\",\\n \\"ExecuteMode\\": \\"standalone\\",\\n \\"MaxConcurrency\\": \\"1\\",\\n \\"Name\\": \\"helloworld\\",\\n \\"MaxAttempt\\": 0,\\n \\"Content\\": \\"echo \\\\\\"clear\\\\\\" > /home/admin/edas-container/logs/catalina.out \\",\\n \\"JarUrl\\": \\"https://test.oss-cn-hangzhou.aliyuncs.com/schedulerX/test.jar\\",\\n \\"ClassName\\": \\"com.alibaba.test.helloword\\",\\n \\"JobType\\": \\"java\\",\\n \\"AttemptInterval\\": 30,\\n \\"MapTaskXAttrs\\": {\\n \\"TaskMaxAttempt\\": 0,\\n \\"TaskAttemptInterval\\": 0,\\n \\"ConsumerSize\\": 5,\\n \\"QueueSize\\": 10000,\\n \\"DispatcherSize\\": 5,\\n \\"PageSize\\": 100\\n },\\n \\"TimeConfig\\": {\\n \\"Calendar\\": \\"工作日\\",\\n \\"TimeType\\": 1,\\n \\"DataOffset\\": 0,\\n \\"TimeExpression\\": \\"0 0/10 * * * ?\\"\\n },\\n \\"JobMonitorInfo\\": {\\n \\"ContactInfo\\": [\\n {\\n \\"UserPhone\\": \\"1381111****\\",\\n \\"UserName\\": \\"userA\\",\\n \\"UserMail\\": \\"user@demo.com\\",\\n \\"Ding\\": \\"https://oapi.dingtalk.com/robot/send?access_token=XXXXXX\\"\\n }\\n ],\\n \\"MonitorConfig\\": {\\n \\"Timeout\\": 12300,\\n \\"SendChannel\\": \\"sms\\",\\n \\"TimeoutKillEnable\\": true,\\n \\"TimeoutEnable\\": true,\\n \\"FailEnable\\": true,\\n \\"MissWorkerEnable\\": true\\n }\\n },\\n \\"XAttrs\\": \\"{\\\\\\"pageSize\\\\\\":5,\\\\\\"queueSize\\\\\\":10,\\\\\\"consumerSize\\\\\\":5,\\\\\\"dispatcherSize\\\\\\":5,\\\\\\"taskMaxAttempt\\\\\\":0,\\\\\\"taskAttemptInterval\\\\\\":0,\\\\\\"globalConsumerSize\\\\\\":1000,\\\\\\"taskDispatchMode\\\\\\":\\\\\\"push\\\\\\"}\\"\\n }\\n }\\n}","errorExample":""},{"type":"xml","example":"<GetJobInfoResponse>\\n<RequestId>4F68ABED-AC31-4412-9297-D9A8F0401108</RequestId>\\n<Message>jobid: 92583 not match groupId: testSchedulerx.defaultGroup</Message>\\n<Data>\\n <JobConfigInfo>\\n <Status>1</Status>\\n <MaxAttempt>0</MaxAttempt>\\n <Description>test</Description>\\n <Parameters>test</Parameters>\\n <JarUrl>https://test.oss-cn-hangzhou.aliyuncs.com/schedulerX/test.jar</JarUrl>\\n <MaxConcurrency>1</MaxConcurrency>\\n <TimeConfig>\\n <TaskAttemptInterval>0</TaskAttemptInterval>\\n <QueueSize>10000</QueueSize>\\n <PageSize>100</PageSize>\\n <DispatcherSize>5</DispatcherSize>\\n <TaskMaxAttempt>0</TaskMaxAttempt>\\n <Calendar>工作日</Calendar>\\n <TimeExpression>0 0/10 * * * ?</TimeExpression>\\n <ContactInfo>\\n <UserName>userA</UserName>\\n <UserPhone>1381111****</UserPhone>\\n </ContactInfo>\\n <ConsumerSize>5</ConsumerSize>\\n <DataOffset>0</DataOffset>\\n <TimeType>1</TimeType>\\n <MonitorConfig>\\n <TimeoutEnable>true</TimeoutEnable>\\n <Timeout>12300</Timeout>\\n <FailEnable>true</FailEnable>\\n <SendChannel>sms</SendChannel>\\n <TimeoutKillEnable>true</TimeoutKillEnable>\\n </MonitorConfig>\\n </TimeConfig>\\n <Name>helloworld</Name>\\n <MapTaskXAttrs>\\n <TaskAttemptInterval>0</TaskAttemptInterval>\\n <QueueSize>10000</QueueSize>\\n <PageSize>100</PageSize>\\n <DispatcherSize>5</DispatcherSize>\\n <TaskMaxAttempt>0</TaskMaxAttempt>\\n <Calendar>工作日</Calendar>\\n <TimeExpression>0 0/10 * * * ?</TimeExpression>\\n <ContactInfo>\\n <UserName>userA</UserName>\\n <UserPhone>1381111****</UserPhone>\\n </ContactInfo>\\n <ConsumerSize>5</ConsumerSize>\\n <DataOffset>0</DataOffset>\\n <TimeType>1</TimeType>\\n <MonitorConfig>\\n <TimeoutEnable>true</TimeoutEnable>\\n <Timeout>12300</Timeout>\\n <FailEnable>true</FailEnable>\\n <SendChannel>sms</SendChannel>\\n <TimeoutKillEnable>true</TimeoutKillEnable>\\n </MonitorConfig>\\n </MapTaskXAttrs>\\n <JobMonitorInfo>\\n <TaskAttemptInterval>0</TaskAttemptInterval>\\n <QueueSize>10000</QueueSize>\\n <PageSize>100</PageSize>\\n <DispatcherSize>5</DispatcherSize>\\n <TaskMaxAttempt>0</TaskMaxAttempt>\\n <Calendar>工作日</Calendar>\\n <TimeExpression>0 0/10 * * * ?</TimeExpression>\\n <ContactInfo>\\n <UserName>userA</UserName>\\n <UserPhone>1381111****</UserPhone>\\n </ContactInfo>\\n <ConsumerSize>5</ConsumerSize>\\n <DataOffset>0</DataOffset>\\n <TimeType>1</TimeType>\\n <MonitorConfig>\\n <TimeoutEnable>true</TimeoutEnable>\\n <Timeout>12300</Timeout>\\n <FailEnable>true</FailEnable>\\n <SendChannel>sms</SendChannel>\\n <TimeoutKillEnable>true</TimeoutKillEnable>\\n </MonitorConfig>\\n </JobMonitorInfo>\\n <Content>echo \\"clear\\" &gt; /home/admin/edas-container/logs/catalina.out</Content>\\n <ClassName>com.alibaba.test.helloword</ClassName>\\n <AttemptInterval>30</AttemptInterval>\\n <ExecuteMode>standalone</ExecuteMode>\\n </JobConfigInfo>\\n</Data>\\n<Code>200</Code>\\n<Success>true</Success>\\n</GetJobInfoResponse>","errorExample":""}]', - 'title' => 'GetJobInfo', - 'summary' => 'Queries the details of a job based on the job ID. In most cases, the obtained information is used to update jobs.', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', ], 'ListJobs' => [ - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'summary' => 'Retrieves a list of jobs.', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', - 'systemTags' => [ - 'operationType' => 'get', - ], + 'systemTags' => ['operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the application. You can obtain the application ID on the **Application Management** page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'DocTest.Group', - ], + 'schema' => ['description' => 'The application ID. Obtain it from the **Application Management** page in the console.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'DocTest.Group', 'title' => ''], ], [ 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the namespace. You can obtain the namespace ID on the **Namespace** page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => '1a72ecb1-b4cc-400a-a71b-20cdec9b****', - ], + 'schema' => ['description' => 'The namespace. Obtain it from the **Namespace** page in the console.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '1a72ecb1-b4cc-400a-a71b-20cdec9b****', 'title' => ''], ], [ 'name' => 'NamespaceSource', 'in' => 'query', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'This parameter is required only for specific third-party services.', 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the region.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'JobName', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the job.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'helloword', - ], + 'schema' => ['description' => 'The job name.', 'type' => 'string', 'required' => false, 'example' => 'helloword', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to enable the job. Valid values:'."\n" - ."\n" - .'* **0**: disables the job.'."\n" - .'* **1**: enables the job.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => 'The status of the job.'."\n" + ."\n" + .'- **0**: disabled'."\n" + ."\n" + .'- **1**: enabled', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''], + ], + [ + 'name' => 'PageNum', + 'in' => 'query', + 'schema' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'title' => '', 'example' => ''], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => ['description' => 'The number of entries to return on each page.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'title' => '', 'example' => ''], ], ], 'responses' => [ @@ -6768,304 +5539,182 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code that is returned.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The error message that is returned if an error occurs.'."\n", - 'type' => 'string', - 'example' => 'namespace can not find namespace: 1a72ecb1-b4cc-400a-a71b-20cdec9b****, namespaceSource:null', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB58B', - ], - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* **true**: The call is successful.'."\n" - .'* **false**: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The status code of the request.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message. This parameter is returned only when an error occurs.', 'type' => 'string', 'example' => 'namespace can not find namespace: 1a72ecb1-b4cc-400a-a71b-20cdec9b****, namespaceSource:null', 'title' => ''], + 'RequestId' => ['description' => 'The unique ID of the request.', 'type' => 'string', 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB58B', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the API call was successful. Valid values:'."\n" + ."\n" + .'- **true**: The call was successful.'."\n" + ."\n" + .'- **false**: The call failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Data' => [ - 'description' => 'The information about the jobs.'."\n", + 'description' => 'The information about the job list.', 'type' => 'object', 'properties' => [ 'Jobs' => [ - 'description' => 'The jobs and their details.'."\n", + 'description' => 'The list of jobs and their details.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ - 'Status' => [ - 'description' => 'Indicates whether the job is enabled. Valid values:'."\n" - ."\n" - .'* **1**: The job is enabled and can be triggered.'."\n" - .'* **0**: The job is disabled and cannot be triggered.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'JarUrl' => [ - 'description' => 'The full path to which a JAR package is uploaded in Object Storage Service (OSS).'."\n", - 'type' => 'string', - 'example' => 'https:doc***.oss-cn-hangzhou.aliyuncs.com/sc-****-D-0.0.2-SNAPSHOT.jar', - ], - 'MaxAttempt' => [ - 'description' => 'The maximum number of retries after a job failure. This parameter is specified based on your business requirements. Default value: 0.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'Parameters' => [ - 'description' => 'The user-defined parameters. These parameters can be obtained when the job is running.'."\n", - 'type' => 'string', - 'example' => 'test', - ], - 'Description' => [ - 'description' => 'The description of the job.'."\n", - 'type' => 'string', - 'example' => 'Test', - ], - 'JobId' => [ - 'description' => 'The ID of the job.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '99341', - ], - 'ExecuteMode' => [ - 'description' => 'The execution mode of the job. Valid values:'."\n" - ."\n" - .'* **standalone**: The job runs in standalone mode.'."\n" - .'* **broadcast**: The job runs in broadcast mode.'."\n" - .'* **parallel**: The job runs in parallel computing mode.'."\n" - .'* **grid**: The job runs in memory grid mode.'."\n" - .'* **batch**: The job runs in grid computing mode.'."\n" - .'* **shard**: The job runs in multipart mode.'."\n", - 'type' => 'string', - 'example' => 'standalone', - ], - 'MaxConcurrency' => [ - 'description' => 'The maximum number of instances that can concurrently run for the job. Default value: 1. A value of 1 indicates that if the last triggered instance is running, the next instance is not triggered even if the scheduled point in time for running the instance is reached.'."\n", - 'type' => 'string', - 'example' => '1', - ], - 'Name' => [ - 'description' => 'The name of the job.'."\n", - 'type' => 'string', - 'example' => 'helloworld', - ], - 'ClassName' => [ - 'description' => 'The full path of the job interface class. This parameter is returned only for a Java job.'."\n", - 'type' => 'string', - 'example' => 'com.alibaba.schedulerx.test.helloworld', - ], - 'Content' => [ - 'description' => 'The script of the job. This parameter is returned only for a Python, Shell, or Go job.'."\n", - 'type' => 'string', - 'example' => 'echo \'hello\'', - ], - 'JobType' => [ - 'description' => 'The type of the job.'."\n", - 'type' => 'string', - 'example' => 'java', - ], - 'AttemptInterval' => [ - 'description' => 'The interval at which the system retries to run the job after a job failure. Unit: seconds. Default value: 30.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '30', - ], + 'Status' => ['description' => 'The status of the job. Valid values:'."\n" + ."\n" + .'- **1**: enabled. The job can be triggered as scheduled.'."\n" + ."\n" + .'- **0**: disabled. The job cannot be triggered.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'JarUrl' => ['description' => 'The full path of the JAR package in Object Storage Service (OSS).', 'type' => 'string', 'example' => 'https:doc***.oss-cn-hangzhou.aliyuncs.com/sc-****-D-0.0.2-SNAPSHOT.jar', 'title' => ''], + 'MaxAttempt' => ['description' => 'The maximum number of retries for a failed job. The default value is 0. Set this parameter as needed.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], + 'Parameters' => ['description' => 'The user-defined parameters that can be obtained at runtime.', 'type' => 'string', 'example' => 'test', 'title' => ''], + 'Description' => ['description' => 'The description of the job.', 'type' => 'string', 'example' => 'Test', 'title' => ''], + 'JobId' => ['description' => 'The job ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '99341', 'title' => ''], + 'ExecuteMode' => ['description' => 'The job execution mode. Valid values:'."\n" + ."\n" + .'- **standalone**: Standalone'."\n" + ."\n" + .'- **broadcast**: Broadcast'."\n" + ."\n" + .'- **parallel**: Parallel computing'."\n" + ."\n" + .'- **grid**: Memory grid'."\n" + ."\n" + .'- **batch**: Batch computing'."\n" + ."\n" + .'- **shard**: Sharding', 'type' => 'string', 'example' => 'standalone', 'title' => ''], + 'MaxConcurrency' => ['description' => 'The maximum number of concurrent running instances. The default value is 1. If the last triggered instance has not finished running, the next trigger is skipped even if it is scheduled.', 'type' => 'string', 'example' => '1', 'title' => ''], + 'Name' => ['description' => 'The job name.', 'type' => 'string', 'example' => 'helloworld', 'title' => ''], + 'ClassName' => ['description' => 'The full path of the job interface class.'."\n" + .'This field is returned only for Java jobs.', 'type' => 'string', 'example' => 'com.alibaba.schedulerx.test.helloworld', 'title' => ''], + 'Content' => ['description' => 'The script content for Python, Shell, and Go jobs.', 'type' => 'string', 'example' => 'echo \'hello\'', 'title' => ''], + 'JobType' => ['description' => 'The job type.', 'type' => 'string', 'example' => 'java', 'title' => ''], + 'AttemptInterval' => ['description' => 'The interval for retrying a failed job. Unit: s. The default value is 30.', 'type' => 'integer', 'format' => 'int32', 'example' => '30', 'title' => ''], 'MapTaskXAttrs' => [ - 'description' => 'The advanced configurations of the job. The parameters are returned only if the value of the ExecuteMode parameter is parallel, grid, or batch.'."\n", + 'description' => 'The advanced configuration. This parameter is used only for parallel computing, memory grid, and batch computing.', 'type' => 'object', 'properties' => [ - 'TaskMaxAttempt' => [ - 'description' => 'The number of retries after a task failure.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'TaskAttemptInterval' => [ - 'description' => 'The interval at which the system retries to run the task after a task failure.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'ConsumerSize' => [ - 'description' => 'The number of threads that are triggered by a standalone job at a time. Default value: 5.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '5', - ], - 'QueueSize' => [ - 'description' => 'The maximum number of task queues that can be cached. Default value: 10000.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10000', - ], - 'DispatcherSize' => [ - 'description' => 'The number of task distribution threads. Default value: 5.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '5', - ], - 'PageSize' => [ - 'description' => 'The number of tasks that are pulled by a parallel job at a time. Default value: 100.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '100', - ], + 'TaskMaxAttempt' => ['description' => 'The number of retries for a failed subtask.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], + 'TaskAttemptInterval' => ['description' => 'The interval for retrying a failed subtask.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], + 'ConsumerSize' => ['description' => 'The number of threads for a one-time trigger on a single machine. The default value is 5.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], + 'QueueSize' => ['description' => 'The maximum size of the subtask queue cache. The default value is 10000.', 'type' => 'integer', 'format' => 'int32', 'example' => '10000', 'title' => ''], + 'DispatcherSize' => ['description' => 'The number of threads for dispatching subtasks. The default value is 5.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], + 'PageSize' => ['description' => 'The number of subtasks that can be pulled at a time for a parallel job. The default value is 100.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], ], + 'title' => '', + 'example' => '', ], 'TimeConfig' => [ - 'description' => 'The time configurations.'."\n", + 'description' => 'The time configuration information.', 'type' => 'object', 'properties' => [ - 'Calendar' => [ - 'description' => 'If the TimeType parameter is set to cron, you can specify custom calendar days.'."\n", - 'type' => 'string', - 'example' => 'Business days'."\n", - ], - 'TimeType' => [ - 'description' => 'The method that is used to specify the time when to schedule the job. Valid values:'."\n" - ."\n" - .'* **1**: cron'."\n" - .'* **3**: fix_rate'."\n" - .'* **4**: second_delay'."\n" - .'* **100**: api'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'DataOffset' => [ - 'description' => 'The time offset if the TimeType parameter is set to cron. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'TimeExpression' => [ - 'description' => 'The time expression. Valid values:'."\n" - ."\n" - .'* **api**: indicates that no time expression is used to specify the time when to schedule the job.'."\n" - .'* **fix_rate**: indicates that the job is triggered at a fixed frequency. For example, a value of 30 indicates that the job is triggered every 30 seconds.'."\n" - .'* **cron**: indicates that a standard CRON expression is used to specify the time when to schedule the job.'."\n" - .'* **second_delay**: indicates that the job is triggered after a fixed delay. Valid values: 1 to 60. Unit: seconds.'."\n", - 'type' => 'string', - 'example' => '0 0/10 * * * ?', - ], + 'Calendar' => ['description' => 'You can specify a custom calendar for cron jobs.', 'type' => 'string', 'example' => 'workday', 'title' => ''], + 'TimeType' => ['description' => 'The type of time configuration. The following types are supported:'."\n" + ."\n" + .'- **1**: cron'."\n" + ."\n" + .'- **3**: fix\\_rate'."\n" + ."\n" + .'- **4**: second\\_delay'."\n" + ."\n" + .'- **100**: api', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'DataOffset' => ['description' => 'You can specify a time offset for cron jobs. Unit: s.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], + 'TimeExpression' => ['description' => 'The time expression. The following types of expressions are supported:'."\n" + ."\n" + .'- **api**: No time expression.'."\n" + ."\n" + .'- **fix\\_rate**: A fixed frequency. For example, 30 indicates that the job is triggered every 30s.'."\n" + ."\n" + .'- **cron**: A standard cron expression.'."\n" + ."\n" + .'- **second\\_delay**: A fixed delay in seconds before the job is executed. The value can be from 1 to 60.', 'type' => 'string', 'example' => '0 0/10 * * * ?', 'title' => ''], ], + 'title' => '', + 'example' => '', ], 'JobMonitorInfo' => [ - 'description' => 'The monitoring information of the job.'."\n", + 'description' => 'The job monitoring information.', 'type' => 'object', 'properties' => [ 'ContactInfo' => [ - 'description' => 'The contact information.'."\n", + 'description' => 'The contact information.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ - 'UserPhone' => [ - 'description' => 'The mobile number of the user.'."\n", - 'type' => 'string', - 'example' => '1381111****', - ], - 'UserName' => [ - 'description' => 'The username.'."\n", - 'type' => 'string', - 'example' => 'userA', - ], - 'Ding' => [ - 'description' => 'The webhook URL of the DingTalk chatbot.'."\n", - 'type' => 'string', - 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=**********', - ], - 'UserMail' => [ - 'description' => 'The email address of the user.'."\n", - 'type' => 'string', - 'example' => 'user@mail.com', - ], + 'UserPhone' => ['description' => 'The mobile phone number of the user.', 'type' => 'string', 'example' => '1381111****', 'title' => ''], + 'UserName' => ['description' => 'The username.', 'type' => 'string', 'example' => 'userA', 'title' => ''], + 'Ding' => ['description' => 'The webhook URL of the DingTalk group chatbot.', 'type' => 'string', 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=**********', 'title' => ''], + 'UserMail' => ['description' => 'The email address of the user.', 'type' => 'string', 'example' => 'user@mail.com', 'title' => ''], ], + 'description' => '', + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], 'MonitorConfig' => [ - 'description' => 'The configurations of the alerting feature and the alert threshold.'."\n", + 'description' => 'The alert switch and threshold configuration.', 'type' => 'object', 'properties' => [ - 'Timeout' => [ - 'description' => 'The timeout threshold. Unit: seconds. Default value: 7200.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '12300', - ], - 'SendChannel' => [ - 'description' => 'The method that is used to send an alert notification. Only Short Message Service (SMS) is supported.'."\n", - 'type' => 'string', - 'example' => 'sms', - ], - 'TimeoutKillEnable' => [ - 'description' => 'Indicates whether the feature of stopping job triggering upon a timeout is enabled. By default, the feature is disabled.'."\n" - ."\n" - .'* **true**: The feature is enabled.'."\n" - .'* **false**: The feature is disabled.'."\n", - 'type' => 'boolean', - 'example' => 'false', - ], - 'TimeoutEnable' => [ - 'description' => 'Indicates whether the feature of generating an alert upon a timeout is enabled. Valid values:'."\n" - ."\n" - .'* **true**: The feature is enabled.'."\n" - .'* **false**: The feature is disabled.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'FailEnable' => [ - 'description' => 'Indicates whether the feature of generating an alert upon a failure is enabled. Valid values:'."\n" - ."\n" - .'* **true**: The feature is enabled.'."\n" - .'* **false**: The feature is disabled.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'MissWorkerEnable' => [ - 'description' => 'Indicates whether the feature of generating an alert when no machine is available for running the job is enabled.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Timeout' => ['description' => 'The timeout threshold. Unit: s. The default value is 7200.', 'type' => 'integer', 'format' => 'int64', 'example' => '12300', 'title' => ''], + 'SendChannel' => ['description' => 'The method for sending alerts. Currently, only \\`sms\\` is supported.', 'type' => 'string', 'example' => 'sms', 'title' => ''], + 'TimeoutKillEnable' => ['description' => 'Indicates whether to stop the current trigger when a timeout occurs. The default value is false.'."\n" + ."\n" + .'- **true**: enabled'."\n" + ."\n" + .'- **false**: disabled', 'type' => 'boolean', 'example' => 'false', 'title' => ''], + 'TimeoutEnable' => ['description' => 'The switch for timeout alerts. Valid values:'."\n" + ."\n" + .'- **true**: enabled'."\n" + ."\n" + .'- **false**: disabled', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'FailEnable' => ['description' => 'The switch for failure alerts. Valid values:'."\n" + ."\n" + .'- **true**: enabled'."\n" + ."\n" + .'- **false**: disabled', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'MissWorkerEnable' => ['description' => 'Indicates whether to enable alerts for when no workers are available.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], - 'XAttrs' => [ - 'description' => 'The extended fields.'."\n", - 'type' => 'string', - 'example' => '{"pageSize":5,"queueSize":10,"consumerSize":5,"dispatcherSize":5,"taskMaxAttempt":0,"taskAttemptInterval":0,"globalConsumerSize":1000,"taskDispatchMode":"push"}', - ], + 'XAttrs' => ['description' => 'The extended fields of the job.', 'type' => 'string', 'example' => '{"pageSize":5,"queueSize":10,"consumerSize":5,"dispatcherSize":5,"taskMaxAttempt":0,"taskAttemptInterval":0,"globalConsumerSize":1000,"taskDispatchMode":"push"}', 'title' => ''], ], + 'description' => '', + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], + 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], + 'PageSize' => ['description' => 'The number of entries on each page.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], + 'Total' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], ], + 'title' => '', + 'example' => '', ], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"namespace can not find namespace: 1a72ecb1-b4cc-400a-a71b-20cdec9b****, namespaceSource:null\\",\\n \\"RequestId\\": \\"71BCC0E3-64B2-4B63-A870-AFB64EBCB58B\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"Jobs\\": [\\n {\\n \\"Status\\": 1,\\n \\"JarUrl\\": \\"https:doc***.oss-cn-hangzhou.aliyuncs.com/sc-****-D-0.0.2-SNAPSHOT.jar\\",\\n \\"MaxAttempt\\": 0,\\n \\"Parameters\\": \\"test\\",\\n \\"Description\\": \\"Test\\",\\n \\"JobId\\": 99341,\\n \\"ExecuteMode\\": \\"standalone\\",\\n \\"MaxConcurrency\\": \\"1\\",\\n \\"Name\\": \\"helloworld\\",\\n \\"ClassName\\": \\"com.alibaba.schedulerx.test.helloworld\\",\\n \\"Content\\": \\"echo \'hello\'\\",\\n \\"JobType\\": \\"java\\",\\n \\"AttemptInterval\\": 30,\\n \\"MapTaskXAttrs\\": {\\n \\"TaskMaxAttempt\\": 0,\\n \\"TaskAttemptInterval\\": 0,\\n \\"ConsumerSize\\": 5,\\n \\"QueueSize\\": 10000,\\n \\"DispatcherSize\\": 5,\\n \\"PageSize\\": 100\\n },\\n \\"TimeConfig\\": {\\n \\"Calendar\\": \\"工作日\\",\\n \\"TimeType\\": 1,\\n \\"DataOffset\\": 0,\\n \\"TimeExpression\\": \\"0 0/10 * * * ?\\"\\n },\\n \\"JobMonitorInfo\\": {\\n \\"ContactInfo\\": [\\n {\\n \\"UserPhone\\": \\"1381111****\\",\\n \\"UserName\\": \\"userA\\",\\n \\"Ding\\": \\"https://oapi.dingtalk.com/robot/send?access_token=**********\\",\\n \\"UserMail\\": \\"user@mail.com\\"\\n }\\n ],\\n \\"MonitorConfig\\": {\\n \\"Timeout\\": 12300,\\n \\"SendChannel\\": \\"sms\\",\\n \\"TimeoutKillEnable\\": false,\\n \\"TimeoutEnable\\": true,\\n \\"FailEnable\\": true,\\n \\"MissWorkerEnable\\": true\\n }\\n },\\n \\"XAttrs\\": \\"{\\\\\\"pageSize\\\\\\":5,\\\\\\"queueSize\\\\\\":10,\\\\\\"consumerSize\\\\\\":5,\\\\\\"dispatcherSize\\\\\\":5,\\\\\\"taskMaxAttempt\\\\\\":0,\\\\\\"taskAttemptInterval\\\\\\":0,\\\\\\"globalConsumerSize\\\\\\":1000,\\\\\\"taskDispatchMode\\\\\\":\\\\\\"push\\\\\\"}\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ListJobsResponse>\\n<Message>namespace can not find namespace: 1a72ecb1-b4cc-400a-a71b-20cdec9b****, namespaceSource:null</Message>\\n<RequestId>71BCC0E3-64B2-4B63-A870-AFB64EBCB58B</RequestId>\\n<Data>\\n <Jobs>\\n <Status>1</Status>\\n <MaxAttempt>0</MaxAttempt>\\n <Parameters>test</Parameters>\\n <Description>Test</Description>\\n <Content>echo \'hello\'</Content>\\n <JarUrl>https:doc***.oss-cn-hangzhou.aliyuncs.com/sc-****-D-0.0.2-SNAPSHOT.jar</JarUrl>\\n <MaxConcurrency>1</MaxConcurrency>\\n <ClassName>com.alibaba.schedulerx.test.helloworld</ClassName>\\n <AttemptInterval>30</AttemptInterval>\\n <ExecuteMode>standalone</ExecuteMode>\\n <JobId>99341</JobId>\\n <Name>helloworld</Name>\\n <MapTaskXAttrs>\\n <TaskAttemptInterval>0</TaskAttemptInterval>\\n <QueueSize>10000</QueueSize>\\n <DispatcherSize>5</DispatcherSize>\\n <PageSize>100</PageSize>\\n <TaskMaxAttempt>0</TaskMaxAttempt>\\n <ConsumerSize>5</ConsumerSize>\\n </MapTaskXAttrs>\\n <TimeConfig>\\n <Calendar>工作日</Calendar>\\n <TimeExpression>0 0/10 * * * ?</TimeExpression>\\n <DataOffset>0</DataOffset>\\n <TimeType>1</TimeType>\\n </TimeConfig>\\n <JobMonitorInfo>\\n <ContactInfo>\\n <UserName>userA</UserName>\\n <UserPhone>1381111****</UserPhone>\\n </ContactInfo>\\n <MonitorConfig>\\n <TimeoutEnable>true</TimeoutEnable>\\n <Timeout>12300</Timeout>\\n <FailEnable>true</FailEnable>\\n <SendChannel>sms</SendChannel>\\n <TimeoutKillEnable>false</TimeoutKillEnable>\\n </MonitorConfig>\\n </JobMonitorInfo>\\n </Jobs>\\n</Data>\\n<Code>200</Code>\\n<Success>true</Success>\\n</ListJobsResponse>","errorExample":""}]', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"namespace can not find namespace: 1a72ecb1-b4cc-400a-a71b-20cdec9b****, namespaceSource:null\\",\\n \\"RequestId\\": \\"71BCC0E3-64B2-4B63-A870-AFB64EBCB58B\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"Jobs\\": [\\n {\\n \\"Status\\": 1,\\n \\"JarUrl\\": \\"https:doc***.oss-cn-hangzhou.aliyuncs.com/sc-****-D-0.0.2-SNAPSHOT.jar\\",\\n \\"MaxAttempt\\": 0,\\n \\"Parameters\\": \\"test\\",\\n \\"Description\\": \\"Test\\",\\n \\"JobId\\": 99341,\\n \\"ExecuteMode\\": \\"standalone\\",\\n \\"MaxConcurrency\\": \\"1\\",\\n \\"Name\\": \\"helloworld\\",\\n \\"ClassName\\": \\"com.alibaba.schedulerx.test.helloworld\\",\\n \\"Content\\": \\"echo \'hello\'\\",\\n \\"JobType\\": \\"java\\",\\n \\"AttemptInterval\\": 30,\\n \\"MapTaskXAttrs\\": {\\n \\"TaskMaxAttempt\\": 0,\\n \\"TaskAttemptInterval\\": 0,\\n \\"ConsumerSize\\": 5,\\n \\"QueueSize\\": 10000,\\n \\"DispatcherSize\\": 5,\\n \\"PageSize\\": 100\\n },\\n \\"TimeConfig\\": {\\n \\"Calendar\\": \\"workday\\",\\n \\"TimeType\\": 1,\\n \\"DataOffset\\": 0,\\n \\"TimeExpression\\": \\"0 0/10 * * * ?\\"\\n },\\n \\"JobMonitorInfo\\": {\\n \\"ContactInfo\\": [\\n {\\n \\"UserPhone\\": \\"1381111****\\",\\n \\"UserName\\": \\"userA\\",\\n \\"Ding\\": \\"https://oapi.dingtalk.com/robot/send?access_token=**********\\",\\n \\"UserMail\\": \\"user@mail.com\\"\\n }\\n ],\\n \\"MonitorConfig\\": {\\n \\"Timeout\\": 12300,\\n \\"SendChannel\\": \\"sms\\",\\n \\"TimeoutKillEnable\\": false,\\n \\"TimeoutEnable\\": true,\\n \\"FailEnable\\": true,\\n \\"MissWorkerEnable\\": true\\n }\\n },\\n \\"XAttrs\\": \\"{\\\\\\"pageSize\\\\\\":5,\\\\\\"queueSize\\\\\\":10,\\\\\\"consumerSize\\\\\\":5,\\\\\\"dispatcherSize\\\\\\":5,\\\\\\"taskMaxAttempt\\\\\\":0,\\\\\\"taskAttemptInterval\\\\\\":0,\\\\\\"globalConsumerSize\\\\\\":1000,\\\\\\"taskDispatchMode\\\\\\":\\\\\\"push\\\\\\"}\\"\\n }\\n ],\\n \\"PageNumber\\": 0,\\n \\"PageSize\\": 0,\\n \\"Total\\": 0\\n }\\n}","type":"json"}]', 'title' => 'ListJobs', - 'summary' => 'Queries jobs.', - 'description' => 'Before you call this operation, you must add the following dependency to the pom.xml file:'."\n" + 'description' => 'Before you call this API, add the following dependency to the POM file:'."\n" ."\n" - .' <dependency>'."\n" - .' <groupId>com.aliyun</groupId>'."\n" - .' <artifactId>aliyun-java-sdk-schedulerx2</artifactId>'."\n" - .' <version>1.0.5</version>'."\n" - .' </dependency>'."\n", + .'```'."\n" + .'<dependency>'."\n" + .' <groupId>com.aliyun</groupId>'."\n" + .' <artifactId>aliyun-java-sdk-schedulerx2</artifactId>'."\n" + .' <version>1.0.5</version>'."\n" + .'</dependency>'."\n" + .'```', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => '## Demo'."\n" @@ -7130,312 +5779,348 @@ .' }'."\n" .' '."\n" .' }'."\n", - ], - 'ExecuteJob' => [ - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-18T05:48:51.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-12-26T01:59:00.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2022-11-02T03:30:41.000Z', 'description' => 'Response parameters changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxJobQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'ListNamespaces' => [ + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', - 'systemTags' => [ - 'operationType' => 'create', - ], + 'operationType' => 'read', + 'systemTags' => ['operationType' => 'get'], 'parameters' => [ [ - 'name' => 'JobId', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The job ID. You can obtain the job ID on the Task Management page in the SchedulerX console.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'docRequired' => true, - 'example' => '92583', - ], + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'InstanceParameters', + 'name' => 'NamespaceName', 'in' => 'query', - 'schema' => [ - 'description' => 'The parameters that are passed to trigger the job to run. The input value can be a random string. The parameters that are passed are obtained by calling the `context.getInstanceParameters()` class in the `processor` code. The parameters are different from custom parameters for creating jobs.'."\n", - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'test', - ], + 'schema' => ['description' => 'The name of the namespace.', 'type' => 'string', 'required' => false, 'example' => 'schedulerx-dev', 'title' => ''], ], [ 'name' => 'Namespace', 'in' => 'query', + 'schema' => ['description' => 'The namespace ID.', 'type' => 'string', 'required' => false, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => 'The HTTP status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The returned message.'."\n", 'type' => 'string', 'example' => 'message', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB58C', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Data' => [ + 'description' => 'The information about the namespaces.'."\n", + 'type' => 'object', + 'properties' => [ + 'Namespaces' => [ + 'description' => 'The namespaces and their details.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => ['description' => 'The name of the namespace.'."\n", 'type' => 'string', 'example' => 'doc', 'title' => ''], + 'Description' => ['description' => 'The description of the namespace.'."\n", 'type' => 'string', 'example' => 'test', 'title' => ''], + 'UId' => ['description' => 'The namespace ID.'."\n", 'type' => 'string', 'example' => '1a72ecb1-b4cc-400a-a71b-20cdec9b****', 'title' => ''], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"message\\",\\n \\"RequestId\\": \\"71BCC0E3-64B2-4B63-A870-AFB64EBCB58C\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"Namespaces\\": [\\n {\\n \\"Name\\": \\"doc\\",\\n \\"Description\\": \\"test\\",\\n \\"UId\\": \\"1a72ecb1-b4cc-400a-a71b-20cdec9b****\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ListNamespacesResponse>\\n<Message>You have an error in your SQL syntax</Message>\\n<RequestId>71BCC0E3-64B2-4B63-A870-AFB64EBCB58C</RequestId>\\n<Data>\\n <Namespaces>\\n <UId>1a72ecb1-b4cc-400a-a71b-20cdec9b****</UId>\\n <Description>test</Description>\\n <Name>doc</Name>\\n </Namespaces>\\n</Data>\\n<Code/>\\n<Success>true</Success>\\n</ListNamespacesResponse>","errorExample":""}]', + 'title' => 'ListNamespaces', + 'summary' => 'Queries namespaces.', + 'description' => 'Before you call this operation, you must add the following dependency to the pom.xml file:'."\n" + ."\n" + .' <dependency>'."\n" + .' <groupId>com.aliyun</groupId>'."\n" + .' <artifactId>aliyun-java-sdk-schedulerx2</artifactId>'."\n" + .' <version>1.0.5</version>'."\n" + .' </dependency>'."\n", + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => '## Sample code'."\n" + ."\n" + .' package com.alibaba.schedulerx.pop;'."\n" + ."\n" + .' import java.util.List;'."\n" + ."\n" + .' import com.aliyuncs.DefaultAcsClient;'."\n" + .' import com.aliyuncs.exceptions.ClientException;'."\n" + .' import com.aliyuncs.exceptions.ServerException;'."\n" + .' import com.aliyuncs.profile.DefaultProfile;'."\n" + .' import com.aliyuncs.schedulerx2.model.v20190430.ListNamespacesRequest;'."\n" + .' import com.aliyuncs.schedulerx2.model.v20190430.ListNamespacesResponse;'."\n" + .' import com.aliyuncs.schedulerx2.model.v20190430.ListNamespacesResponse.Data.Namespace;'."\n" + ."\n" + .' public class TestListNamespaces {'."\n" + ."\n" + .' public static void main(String[] args) {'."\n" + .' // The region ID. Enter a value by referring to the Endpoints topic or based on the region in which you purchased the service. '."\n" + .' String regionId = "cn-test";'."\n" + .' // The AccessKey ID that is used for authentication. You can obtain the AccessKey ID in the RAM console. '."\n" + .' String accessKeyId = "XXXXXXXX";'."\n" + .' // The AccessKey secret that is used for authentication. You can obtain the AccessKey secret in the RAM console. '."\n" + .' String accessKeySecret = "XXXXXXXX";'."\n" + .' // The name of the service. '."\n" + .' String productName ="schedulerx2";'."\n" + .' // The domain. Enter a domain by referring to the Endpoints topic. '."\n" + .' String domain ="schedulerx.aliyuncs.com";'."\n" + .' // Build an API client. '."\n" + .' DefaultProfile.addEndpoint(regionId, productName, domain);'."\n" + .' DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);'."\n" + .' DefaultAcsClient client = new DefaultAcsClient(defaultProfile);'."\n" + .' '."\n" + .' ListNamespacesRequest request = new ListNamespacesRequest();'."\n" + .' ListNamespacesResponse response;'."\n" + .' try {'."\n" + .' response = client.getAcsResponse(request);'."\n" + .' if (!response.getSuccess()) {'."\n" + .' System.out.println(response.getMessage());'."\n" + .' } else {'."\n" + .' List<Namespace> namespaces = response.getData().getNamespaces();'."\n" + .' for (Namespace namespace : namespaces) {'."\n" + .' System.out.println("namespace uid=" + namespace.getUId());'."\n" + .' }'."\n" + .' }'."\n" + .' } catch (ServerException e) {'."\n" + .' // TODO Auto-generated catch block'."\n" + .' e.printStackTrace();'."\n" + .' } catch (ClientException e) {'."\n" + .' // TODO Auto-generated catch block'."\n" + .' e.printStackTrace();'."\n" + .' }'."\n" + .' }'."\n" + .' '."\n" + .' }'."\n", + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-17T09:45:54.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-03-30T08:41:56.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-03-01T07:28:41.000Z', 'description' => 'Request parameters changed, Response parameters changed'], + ['createdAt' => '2022-12-26T01:59:00.000Z', 'description' => 'Request parameters changed, Error codes changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxNamespaceQuery', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + ], + ], + 'ListWorkFlows' => [ + 'summary' => 'Queries the information of a workflow.', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'NamespaceSource', + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => ['operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free'], + 'parameters' => [ + [ + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'GroupId', + 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The application ID. You can obtain the application ID on the Application Management page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'testSchedulerx.defaultGroup', - ], + 'schema' => ['description' => 'The namespace ID.', 'type' => 'string', 'required' => true, 'example' => '4a06d5ea-f576-4326-842c-fb14ea043d8d', 'title' => ''], ], [ - 'name' => 'RegionId', + 'name' => 'NamespaceSource', 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for special sources.', 'type' => 'string', 'example' => 'schedulerx', 'title' => '', 'required' => false], ], [ - 'name' => 'CheckJobStatus', + 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to check the job status. Valid values: -**true**: The job can be run only if the job is enabled. -**false**: The job can be run even if the job is disabled.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => 'The ID of the application group.', 'type' => 'string', 'required' => true, 'example' => 'hxm.test', 'title' => ''], ], [ - 'name' => 'DesignateType', + 'name' => 'WorkflowName', 'in' => 'query', - 'schema' => [ - 'title' => '指定机器类型:1.workerAddr; 2. label', - 'description' => 'The type of the designated machine. Valid values: -**1**: worker. -**2**: label.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => 'The workflow name.', 'type' => 'string', 'required' => false, 'example' => 'Test3', 'title' => ''], ], [ - 'name' => 'Worker', + 'name' => 'PageNum', 'in' => 'query', - 'schema' => [ - 'title' => '指定机器的workerAddr', - 'description' => 'The worker address of the application. To query the worker address, call the GetWokerList operation.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'xxxxxxx@127.0.0.1:222', - ], + 'schema' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ - 'name' => 'Label', + 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'title' => '指定机器的标签', - 'description' => 'The label of the worker.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'gray', - ], + 'schema' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => ['description' => 'The job status.'."\n" + ."\n" + .'- **0**: disables the job.'."\n" + ."\n" + .'- **1**: enables the routing policy.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The error message that is returned only if the corresponding error occurs.'."\n", - 'type' => 'string', - 'example' => 'groupid not exist groupId: testSchedulerx.defaultGroup namespace: adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108****', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* `true`'."\n" - .'* `false`'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '883AFE93-FB03-4FA9-A958-E750C6DE120C'], + 'Code' => ['description' => 'The error code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message.', 'type' => 'string', 'example' => 'workflow is not existed', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Data' => [ - 'description' => 'The ID of the job instance that is returned if the request is successful.'."\n", + 'title' => '', + 'description' => 'The data of the workflow.', 'type' => 'object', 'properties' => [ - 'JobInstanceId' => [ - 'description' => 'The job instance ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '11111111', + 'Records' => [ + 'description' => 'The row of data.', + 'type' => 'array', + 'items' => [ + 'description' => '-', + 'type' => 'object', + 'properties' => [ + 'Namespace' => ['description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.', 'type' => 'string', 'example' => '4a06d5ea-f576-4326-842c-fb14ea043d8d'."\n", 'title' => ''], + 'GroupId' => ['description' => 'The application ID.', 'type' => 'string', 'example' => 'hxm.test', 'title' => ''], + 'Name' => ['description' => 'The workflow name.', 'type' => 'string', 'example' => 'Test3', 'title' => ''], + 'WorkflowId' => ['description' => 'The workflow ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1339', 'title' => ''], + 'Description' => ['description' => 'The job description.', 'type' => 'string', 'example' => 'No description', 'title' => ''], + 'TimeType' => ['description' => 'The time type of the workflow.', 'type' => 'string', 'example' => 'cron', 'title' => ''], + 'TimeExpression' => ['description' => 'The time expression.', 'type' => 'string', 'example' => '0 0 5 */1 * ?', 'title' => ''], + 'MaxConcurrency' => ['description' => 'The maximum concurrency.', 'type' => 'string', 'example' => '1', 'title' => ''], + 'Calendar' => ['description' => 'The calendar.', 'type' => 'string', 'example' => 'workday', 'title' => ''], + 'Creator' => ['description' => 'The creator.', 'type' => 'string', 'example' => '1144881807903942', 'title' => ''], + 'Updater' => ['description' => 'The updater.', 'type' => 'string', 'example' => '1144881807903942', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', ], + 'PageNumber' => ['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' => ''], + 'Total' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], + 'example' => '', ], ], + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"groupid not exist groupId: testSchedulerx.defaultGroup namespace: adcfc35d-e2fe-4fe9-bbaa-20e90ffc****\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108****\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"JobInstanceId\\": 11111111\\n }\\n}","errorExample":""},{"type":"xml","example":"<ExecuteJobResponse>\\n <Code>200</Code>\\n <Message>groupid not exist groupId: testSchedulerx.defaultGroup namespace: adcfc35d-e2fe-4fe9-bbaa-20e90ffc****</Message>\\n <RequestId>4F68ABED-AC31-4412-9297-D9A8F0401108****</RequestId>\\n <Success>true</Success>\\n <Data>\\n <JobInstanceId>11111111</JobInstanceId>\\n </Data>\\n</ExecuteJobResponse>","errorExample":""}]', - 'title' => 'ExecuteJob', - 'summary' => 'Triggers a job to immediately run once.', - 'description' => '> The combination of the `JobID` and `ScheduleTime` parameters serves as a unique index. Therefore, after the ExecuteJob operation is called to run a job once, a sleep for one second is required before the ExecuteJob operation is called to run the job again. Otherwise, the job may fail.'."\n", - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'DesignateWorkers' => [ - 'summary' => 'Designates machines.', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"883AFE93-FB03-4FA9-A958-E750C6DE120C\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"workflow is not existed\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"Records\\": [\\n {\\n \\"Namespace\\": \\"4a06d5ea-f576-4326-842c-fb14ea043d8d\\\\n\\",\\n \\"GroupId\\": \\"hxm.test\\",\\n \\"Name\\": \\"Test3\\",\\n \\"WorkflowId\\": 1339,\\n \\"Description\\": \\"No description\\",\\n \\"TimeType\\": \\"cron\\",\\n \\"TimeExpression\\": \\"0 0 5 */1 * ?\\",\\n \\"MaxConcurrency\\": \\"1\\",\\n \\"Calendar\\": \\"workday\\",\\n \\"Creator\\": \\"1144881807903942\\",\\n \\"Updater\\": \\"1144881807903942\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"Total\\": 1\\n }\\n}","type":"json"}]', + 'title' => 'ListWorkFlows', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxWorkflowQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'ListWorkflowInstance' => [ + 'summary' => 'Queries the execution history of a workflow. You can call this operation only in the professional edition.', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'create', - ], + 'systemTags' => ['operationType' => 'get'], 'parameters' => [ [ - 'name' => 'Namespace', - 'in' => 'query', - 'schema' => [ - 'title' => '命名空间UID', - 'description' => 'The unique identifier (UID) of the namespace.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => '4a06d5ea-f576-4326-842c-fb14ea043d8d', - ], - ], - [ - 'name' => 'NamespaceSource', - 'in' => 'query', - 'schema' => [ - 'title' => '命名空间来源', - 'description' => 'The source of the namespace.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], - ], - [ - 'name' => 'GroupId', - 'in' => 'query', - 'schema' => [ - 'title' => '应用分组ID', - 'description' => 'The application group ID.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'hxm.test', - ], - ], - [ - 'name' => 'JobId', - 'in' => 'query', - 'schema' => [ - 'title' => '任务ID', - 'description' => 'The job ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '144153', - ], - ], - [ - 'name' => 'Transferable', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'title' => '是否故障转移', - 'description' => 'Specifies whether to allow a failover.'."\n", - 'type' => 'boolean', - 'required' => true, - 'example' => 'true', - ], + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'DesignateType', + 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'title' => '指定机器的类型', - 'description' => 'The type of the machines to be designated. Valid values: 1 and 2. The value 1 specifies the worker type. The value 2 specifies the label type.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'enumValueTitles' => [ - 1 => 'worker', - 'label', - ], - 'example' => '1', - ], + 'schema' => ['description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ - 'name' => 'Workers', + 'name' => 'NamespaceSource', 'in' => 'query', - 'schema' => [ - 'title' => '指定机器列表json格式', - 'description' => 'The designated machines. Specify the value of the parameter in a JSON string.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '["127.0.0.1","127.0.0.2"]', - ], + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ - 'name' => 'Labels', + 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'title' => '指定label列表json格式', - 'description' => 'The designated `labels`. Specify the value of the parameter in a `JSON` string.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '["gray"]', - ], + 'schema' => ['description' => 'The application group ID. You can obtain the ID on the Application Management page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ - 'name' => 'RegionId', + 'name' => 'WorkflowId', 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'public', - ], + 'schema' => ['description' => 'The workflow ID.'."\n", 'type' => 'string', 'required' => true, 'example' => '123', 'title' => ''], ], ], 'responses' => [ @@ -7445,358 +6130,232 @@ 'description' => 'The response schema.'."\n", 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '765xxx', - ], - 'Message' => [ - 'title' => '错误信息', - 'description' => 'The returned error message.'."\n", - 'type' => 'string', - 'example' => 'job is not existed', - ], - 'Code' => [ - 'title' => '错误码', - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Success' => [ - 'title' => '是否成功', - 'description' => 'Indicates whether the request was successful.'."\n", - 'type' => 'boolean', - 'example' => 'true', + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0'], + 'Code' => ['description' => 'The HTTP status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Message' => ['description' => 'The returned error message.'."\n", 'type' => 'string', 'example' => 'workflowId=xxx is not existed', 'title' => ''], + 'Data' => [ + 'description' => 'The information about workflow instances.'."\n", + 'type' => 'object', + 'properties' => [ + 'WfInstanceInfos' => [ + 'description' => 'The workflow instances.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The data structure of the workflow instance.'."\n", + 'type' => 'object', + 'properties' => [ + 'WfInstanceId' => ['description' => 'The workflow instance ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '123456', 'title' => ''], + 'WorkflowId' => ['description' => 'The workflow ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '123', 'title' => ''], + 'Status' => ['description' => 'The state of the workflow instance. Valid values:'."\n" + ."\n" + .'* 1: pending'."\n" + .'* 2: preparing'."\n" + .'* 3: running'."\n" + .'* 4: successful'."\n" + .'* 5: failed'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], + 'StartTime' => ['description' => 'The time when the workflow instance started to run.'."\n", 'type' => 'string', 'example' => '2023-01-03 18:00:01', 'title' => ''], + 'EndTime' => ['description' => 'The time when the workflow instance stopped running.'."\n", 'type' => 'string', 'example' => '2023-01-03 18:00:21', 'title' => ''], + 'ScheduleTime' => ['description' => 'The time when the workflow instance was scheduled to run.'."\n", 'type' => 'string', 'example' => '2023-01-03 18:00:00', 'title' => ''], + 'DataTime' => ['description' => 'The data timestamp of the workflow instance.'."\n", 'type' => 'string', 'example' => '2023-01-03 18:00:00', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"765xxx\\",\\n \\"Message\\": \\"job is not existed\\",\\n \\"Code\\": 200,\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DesignateWorkersResponse>\\n <RequestId>765xxx</RequestId>\\n <Message>job is not existed</Message>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DesignateWorkersResponse>","errorExample":""}]', - 'title' => 'DesignateWorkers', - 'extraInfo' => '## Sample code'."\n" - ."\n" - .'```'."\n" - .'package com.alibaba.schedulerx.pop;'."\n" - ."\n" - .'import java.util.List;'."\n" - ."\n" - .'import com.alibaba.schedulerx.common.util.JsonUtil;'."\n" - ."\n" - .'import com.aliyuncs.DefaultAcsClient;'."\n" - .'import com.aliyuncs.exceptions.ClientException;'."\n" - .'import com.aliyuncs.exceptions.ServerException;'."\n" - .'import com.aliyuncs.profile.DefaultProfile;'."\n" - .'import com.aliyuncs.schedulerx2.model.v20190430.DesignateWorkersRequest;'."\n" - .'import com.aliyuncs.schedulerx2.model.v20190430.DesignateWorkersResponse;'."\n" - .'import com.google.common.collect.Lists;'."\n" - ."\n" - .'public class TestDesignateWorkers {'."\n" - ."\n" - .' public static void main(String[] args) {'."\n" - .' // The region ID. Enter a value by referring to the Endpoints topic or based on the region in which you purchased the service.'."\n" - .' String regionId = "public";'."\n" - .' // The AccessKey ID that is used for authentication. You can obtain the AccessKey ID in the RAM console.'."\n" - .' String accessKeyId = "xxxxxxxx";'."\n" - .' // The AccessKey secret that is used for authentication. You can obtain the AccessKey secret in the RAM console.'."\n" - .' String accessKeySecret = "xxxxxxxxx";'."\n" - .' // The name of the service.'."\n" - .' String productName ="schedulerx2";'."\n" - .' // The domain. Enter a domain by referring to the Endpoints topic.'."\n" - .' String domain ="schedulerx.aliyuncs.com";'."\n" - .' // Build an API client.'."\n" - .' DefaultProfile.addEndpoint(regionId, productName, domain);'."\n" - .' DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);'."\n" - .' DefaultAcsClient client = new DefaultAcsClient(defaultProfile);'."\n" - .' '."\n" - .' DesignateWorkersRequest request = new DesignateWorkersRequest();'."\n" - .' request.setNamespace("433d8b23-06e9-408c-aaaa-90d4d1b9a4af");'."\n" - .' request.setGroupId("xuren_test");'."\n" - .' request.setJobId(3048L);'."\n" - .' // Specify whether to allow a failover.'."\n" - .' request.setTransferable(true);'."\n" - .' // The type of the designated machines. The value 1 indicates the worker type. The value 2 indicates the label type.'."\n" - .' request.setDesignateType(1);'."\n" - .' List<String> workers = Lists.newArrayList();'."\n" - .' workers.add("30.225.16.104");'."\n" - .' // The designated machines. Specify the value in a JSON string.'."\n" - .' request.setWorkers(JsonUtil.toJson(workers));'."\n" - .' DesignateWorkersResponse response;'."\n" - .' try {'."\n" - .' response = client.getAcsResponse(request);'."\n" - .' System.out.println(JsonUtil.toJson(response));'."\n" - .' } catch (ServerException e) {'."\n" - .' // TODO Auto-generated catch block'."\n" - .' e.printStackTrace();'."\n" - .' } catch (ClientException e) {'."\n" - .' // TODO Auto-generated catch block'."\n" - .' e.printStackTrace();'."\n" - .' }'."\n" - .' }'."\n" - .' '."\n" - .'}'."\n" - .' '."\n" - .'```'."\n", - ], - 'RerunJob' => [ - 'summary' => 'Reruns a job to obtain the historical data of the job. You can call this operation only in the professional edition.', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"workflowId=xxx is not existed\\",\\n \\"Data\\": {\\n \\"WfInstanceInfos\\": [\\n {\\n \\"WfInstanceId\\": 123456,\\n \\"WorkflowId\\": 123,\\n \\"Status\\": 5,\\n \\"StartTime\\": \\"2023-01-03 18:00:01\\",\\n \\"EndTime\\": \\"2023-01-03 18:00:21\\",\\n \\"ScheduleTime\\": \\"2023-01-03 18:00:00\\",\\n \\"DataTime\\": \\"2023-01-03 18:00:00\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'ListWorkflowInstance', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-18T05:48:50.000Z', 'description' => 'Response parameters changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxWorkflowQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'ManageSchedulerxCalendar' => [ + 'summary' => 'Updates a calendar.', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'none', - ], + 'operationType' => 'write', + 'systemTags' => ['operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'tenantRelevance' => 'tenant'], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'formData', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], - ], - [ - 'name' => 'Namespace', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], - ], - [ - 'name' => 'NamespaceSource', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], - ], - [ - 'name' => 'GroupId', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The application group ID. You can obtain the application group ID on the Application Management page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'testSchedulerx.defaultGroup', - ], + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'JobId', + 'name' => 'CalendarName', 'in' => 'formData', - 'schema' => [ - 'description' => 'The job ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '123', - ], + 'schema' => ['title' => '', 'description' => 'The calendar name.', 'type' => 'string', 'required' => true, 'example' => '2025workday'], ], [ - 'name' => 'StartDate', + 'name' => 'Year', 'in' => 'formData', - 'schema' => [ - 'description' => 'The time when the job starts to rerun. Specify a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '1645459200000', - ], + 'schema' => ['description' => 'The year.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '2025', 'title' => ''], ], [ - 'name' => 'EndDate', + 'name' => 'MonthDaysContent', 'in' => 'formData', - 'schema' => [ - 'description' => 'The time when the job stops running. Specify a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '1645718400000', - ], + 'schema' => ['title' => '', 'description' => 'The month and days.', 'type' => 'string', 'required' => true, 'example' => '['."\n" + .' {"month":1,"days":[3,4,5,6,9,10,11,12,13,16,17,18,19,20,28,29,30,31]},'."\n" + .' {"month":2,"days":[1,2,3,6,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28]},'."\n" + .' {"month":3,"days":[1,2,3,6,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28,29,30,31]},'."\n" + .' {"month":4,"days":[3,4,6,7,10,11,12,13,14,17,18,19,20,21,23,24,25,26,27,28]},'."\n" + .' {"month":5,"days":[4,5,6,8,9,10,11,12,15,16,17,18,19,22,23,24,25,26,29,30,31]},'."\n" + .' {"month":6,"days":[1,2,5,6,7,8,9,12,13,14,15,16,19,20,21,25,26,27,28,29,30]},'."\n" + .' {"month":7,"days":[3,4,5,6,7,10,11,12,13,14,17,18,19,20,21,24,25,26,27,28,31]},'."\n" + .' {"month":8,"days":[1,2,3,4,7,8,9,10,11,14,15,16,17,18,21,22,23,24,25,28,29,30,31]},'."\n" + .' {"month":9,"days":[1,4,5,6,7,8,11,12,13,14,15,18,19,20,21,22,25,26,27,28]},'."\n" + .' {"month":10,"days":[7,8,9,10,11,12,13,16,17,18,19,20,23,24,25,26,27,30,31]},'."\n" + .' {"month":11,"days":[1,2,3,6,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28,29,30]},'."\n" + .' {"month":12,"days":[1,4,5,6,7,8,11,12,13,14,15,18,19,20,21,22,25,26,27,28,29]}'."\n" + .']'], ], [ - 'name' => 'DataTime', + 'name' => 'Incremental', 'in' => 'formData', - 'schema' => [ - 'description' => 'The data timestamp of the job. Specify a string in the HH:mm:ss format.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => '10:00:00', - ], + 'schema' => ['description' => 'Specifies whether to perform an incremental update. Default value: false.'."\n" + ."\n" + .'* false: Updates the specified months and removes configurations for all other months.'."\n" + .'* true: Updates only the specified months and preserves existing configurations for other months.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'false', 'default' => 'false', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'The response schema.'."\n", 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0', - ], - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Message' => [ - 'description' => 'The returned error message.'."\n", - 'type' => 'string', - 'example' => 'jobId=xxx is not existed', + 'Code' => ['description' => 'The status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'Additional information. Returned only if an error occurs.', 'type' => 'string', 'example' => 'calendar \'2025workday\' does not exist in year 2025', 'title' => ''], + 'RequestId' => ['description' => 'The unique request ID.'."\n", 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'AccessDeniedDetail' => [ + 'description' => 'The access denial details.', + 'type' => 'object', + 'properties' => [ + 'AuthAction' => ['description' => 'The authentication action.', 'type' => 'string', 'example' => 'edas:ManageSchedulerxCalendar', 'title' => ''], + 'AuthPrincipalDisplayName' => ['description' => 'The principal name.'."\n", 'type' => 'string', 'example' => '209312833131416xxx', 'title' => ''], + 'AuthPrincipalOwnerId' => ['description' => 'The principal name.'."\n", 'type' => 'string', 'example' => '1827811800526xxx', 'title' => ''], + 'AuthPrincipalType' => ['description' => 'The principal type.'."\n", 'type' => 'string', 'example' => 'SubUser', 'title' => ''], + 'EncodedDiagnosticMessage' => ['description' => 'The encoded diagnostic message.'."\n", 'type' => 'string', 'example' => 'AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==', 'title' => ''], + 'NoPermissionType' => ['description' => 'The permission denial type.'."\n", 'type' => 'string', 'example' => 'ImplicitDeny', 'title' => ''], + 'PolicyType' => ['description' => 'The policy type.'."\n", 'type' => 'string', 'example' => 'AccountLevelIdentityBasedPolicy', 'title' => ''], + ], + 'title' => '', + 'example' => '', ], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"calendar \'2025workday\' does not exist in year 2025\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true,\\n \\"AccessDeniedDetail\\": {\\n \\"AuthAction\\": \\"edas:ManageSchedulerxCalendar\\",\\n \\"AuthPrincipalDisplayName\\": \\"209312833131416xxx\\",\\n \\"AuthPrincipalOwnerId\\": \\"1827811800526xxx\\",\\n \\"AuthPrincipalType\\": \\"SubUser\\",\\n \\"EncodedDiagnosticMessage\\": \\"AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==\\",\\n \\"NoPermissionType\\": \\"ImplicitDeny\\",\\n \\"PolicyType\\": \\"AccountLevelIdentityBasedPolicy\\"\\n }\\n}","type":"json"}]', + 'title' => 'ManageSchedulerxCalendar', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxCalendar', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"jobId=xxx is not existed\\"\\n}","type":"json"}]', - 'title' => 'RerunJob', ], - 'UpdateJobScript' => [ - 'summary' => 'Updates the execution script of a job.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'ManageSchedulerxJobSync' => [ + 'summary' => 'Synchronizes tasks across namespaces.', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', - 'systemTags' => [ - 'operationType' => 'update', - 'riskType' => 'none', - 'chargeType' => 'free', - 'tenantRelevance' => 'tenant', - ], + 'systemTags' => ['operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'tenantRelevance' => 'tenant'], 'parameters' => [ [ - 'name' => 'JobId', + 'name' => 'RegionId', 'in' => 'formData', - 'schema' => [ - 'description' => 'The job ID. You can obtain the ID on the Tasks page in the SchedulerX console.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'docRequired' => true, - 'example' => '301', - ], + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'Namespace', + 'name' => 'OriginalNamespace', 'in' => 'formData', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespaces page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => ' '."\n" - .'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****'."\n", - ], + 'schema' => ['description' => 'The source namespace where the task resides.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****'."\n", 'title' => ''], ], [ 'name' => 'NamespaceSource', 'in' => 'formData', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'The source of the namespace. Required only for specific third-party cases.'."\n", 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ - 'name' => 'GroupId', + 'name' => 'OriginalGroupId', 'in' => 'formData', - 'schema' => [ - 'description' => 'The application ID. You can obtain the application ID on the Applications page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'testSchedulerx.defaultGroup'."\n", - ], + 'schema' => ['description' => 'The source application group to which the task belongs.'."\n", 'type' => 'string', 'required' => true, 'example' => 'testSchedulerx.defaultGroup'."\n", 'title' => ''], ], [ - 'name' => 'RegionId', + 'name' => 'JobIdList', 'in' => 'formData', + 'style' => 'json', 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', + 'description' => 'The list of task IDs.'."\n", + 'type' => 'array', + 'items' => ['description' => 'The task ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '207828442', 'title' => ''], 'required' => true, 'docRequired' => true, - 'example' => 'cn-hangzhou'."\n", + 'maxItems' => 1000, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'VersionDescription', + 'name' => 'TargetNamespace', 'in' => 'formData', - 'schema' => [ - 'description' => 'The description of the script version.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Print job running information', - ], + 'schema' => ['description' => 'The destination namespace to which the task will be synchronized.'."\n", 'type' => 'string', 'required' => true, 'example' => '5f56ef65-b836-493d-b40b-c4db6425****', 'title' => ''], ], [ - 'name' => 'ScriptContent', + 'name' => 'TargetGroupId', 'in' => 'formData', - 'schema' => [ - 'description' => 'The script content.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '#!/bin/bash'."\n" - ."\n" - .'# The following are predefined variables provided by the system. You can use them to obtain information about the job run.'."\n" - .'echo "Job parameters: #{schedulerx.jobParameters}"'."\n" - .'echo "Shard index: #{schedulerx.shardingId}"'."\n" - .'echo "Shard parameters: #{schedulerx.shardingParameters}"'."\n" - .'echo "Total number of shards: #{schedulerx.shardingNum}"'."\n" - .'echo "Current retry count: #{schedulerx.attempt}"'."\n" - .'echo "Trigger type: #{schedulerx.triggerType}"'."\n" - .'echo "Scheduled timestamp: #{schedulerx.scheduleTime}"'."\n" - .'echo "Data timestamp: #{schedulerx.dataTime}"'."\n" - ."\n" - .'# The output of the last line will be returned as the result'."\n" - .'echo "hello world"'."\n" - ."\n" - .'# exit 1 indicates failure'."\n" - .'exit 0', - ], + 'schema' => ['description' => 'The ID of the destination application group to which the task will be synchronized.'."\n", 'type' => 'string', 'required' => true, 'example' => 'testSyncJobGroup', 'title' => ''], ], ], 'responses' => [ @@ -7804,111 +6363,82 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The returned code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The additional information returned only if an error occurs.'."\n", - 'type' => 'string', - 'example' => 'job is not existed, jobId=302', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108'."\n", - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The return code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message. Returned only when an error occurs.'."\n", 'type' => 'string', 'example' => 'jobId=xxx is not existed', 'title' => ''], + 'RequestId' => ['description' => 'The unique ID of the request.'."\n", 'type' => 'string', 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB58C', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"job is not existed, jobId=302\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\\\n\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => 'UpdateJobScript', - ], - 'ListJobScriptHistory' => [ - 'summary' => 'Queries historical scripts of a job.', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'https', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"jobId=xxx is not existed\\",\\n \\"RequestId\\": \\"71BCC0E3-64B2-4B63-A870-AFB64EBCB58C\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'ManageSchedulerxJobSync', + 'changeSet' => [ + ['createdAt' => '2025-07-29T09:01:00.000Z', 'description' => 'Request parameters changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxJobSync', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'AppGroup', 'arn' => 'acs:edas:{#regionId}:{#accountId}:namespace/{#Namespace}/JobGroup/{#GroupId}'], + ], + ], + ], ], + ], + 'ManageSchedulerxNotificationPolicy' => [ + 'summary' => 'Updates a notification policy.', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', - 'systemTags' => [ - 'operationType' => 'list', - 'riskType' => 'none', - 'chargeType' => 'free', - 'tenantRelevance' => 'tenant', - ], + 'operationType' => 'write', + 'systemTags' => ['operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'tenantRelevance' => 'tenant'], 'parameters' => [ [ - 'name' => 'JobId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The job ID. You can obtain the job ID on the Tasks page in the SchedulerX console.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'docRequired' => true, - 'example' => '92583'."\n", - ], - ], - [ - 'name' => 'GroupId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The application ID. You can obtain the application ID on the Applications page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'testSchedulerx.defaultGroup'."\n", - ], + 'name' => 'RegionId', + 'in' => 'formData', + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'Namespace', - 'in' => 'query', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespaces page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108'."\n", - ], + 'name' => 'PolicyName', + 'in' => 'formData', + 'schema' => ['title' => '', 'description' => 'The name of the notification policy.'."\n", 'type' => 'string', 'required' => true, 'example' => 'test-weekdays'], ], [ - 'name' => 'NamespaceSource', - 'in' => 'query', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'name' => 'Description', + 'in' => 'formData', + 'schema' => ['title' => '', 'description' => 'The notification policy description.'."\n", 'type' => 'string', 'required' => false, 'example' => 'Monday-Friday only'], ], [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou'."\n", - ], + 'name' => 'ChannelTimeRange', + 'in' => 'formData', + 'schema' => ['title' => '', 'description' => 'The time range configuration for notification channels.'."\n" + ."\n" + .'> See the supplementary description of ChannelTimeRange in the request parameters.'."\n", 'type' => 'string', 'required' => false, 'example' => '{'."\n" + .' "sendChannel": "sms,webhook,mail,phone",'."\n" + .' "timezone": "UTC+08:00",'."\n" + .' "webhookIsAtAll": "false",'."\n" + .' "timeRanges": {'."\n" + .' "all": ['."\n" + .' {'."\n" + .' "startTime": "08:00",'."\n" + .' "endTime": "18:00",'."\n" + .' "daysOfWeek": [1, 2, 3, 4, 5]'."\n" + .' }'."\n" + .' ]'."\n" + .' }'."\n" + .'}'."\n"], ], ], 'responses' => [ @@ -7916,169 +6446,212 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The status code.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The additional information returned only if an error occurs.'."\n", - 'type' => 'string', - 'example' => 'job is not existed, jobId=302', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'true'."\n" - ."\n" - .'false', - 'type' => 'boolean', - 'example' => 'true', - ], - 'Data' => [ - 'description' => 'The information about the jobs.', + 'Code' => ['description' => 'The status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message, returned only when an error occurs.'."\n", 'type' => 'string', 'example' => 'Invalid parameter: policyName cannot be null'."\n", 'title' => ''], + 'RequestId' => ['description' => 'The unique request ID.'."\n", 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'AccessDeniedDetail' => [ + 'description' => 'The access denial details.', 'type' => 'object', 'properties' => [ - 'JobScriptHistoryInfos' => [ - 'description' => 'The information about the job\'s historical scripts.', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'VersionesDescription' => [ - 'description' => 'The description of the script version.'."\n", - 'type' => 'string', - 'example' => 'init version', - ], - 'Creator' => [ - 'description' => 'The creator.'."\n", - 'type' => 'string', - 'example' => '1272118248844842', - ], - 'CreateTime' => [ - 'description' => 'The creation time.'."\n", - 'type' => 'string', - 'example' => '2025-03-12 14:52:42'."\n", - ], - 'ScriptContent' => [ - 'description' => 'The script content.'."\n", - 'type' => 'string', - 'example' => '#!/bin/bash'."\n" - ."\n" - .'# The following are predefined variables provided by the system. You can use them to obtain information about the job run.'."\n" - .'echo "Job parameters: #{schedulerx.jobParameters}"'."\n" - .'echo "Shard index: #{schedulerx.shardingId}"'."\n" - .'echo "Shard parameters: #{schedulerx.shardingParameters}"'."\n" - .'echo "Total number of shards: #{schedulerx.shardingNum}"'."\n" - .'echo "Current retry count: #{schedulerx.attempt}"'."\n" - .'echo "Trigger type: #{schedulerx.triggerType}"'."\n" - .'echo "Scheduled timestamp: #{schedulerx.scheduleTime}"'."\n" - .'echo "Data timestamp: #{schedulerx.dataTime}"'."\n" - ."\n" - .'# The output of the last line will be returned as the result'."\n" - .'echo "hello world"'."\n" - ."\n" - .'# exit 1 indicates failure'."\n" - .'exit 0', - ], - ], - 'description' => 'The details of the historical script.', - ], - ], + 'AuthAction' => ['description' => 'The authentication action.', 'type' => 'string', 'example' => 'edas:ManageSchedulerxNotificationPolicy', 'title' => ''], + 'AuthPrincipalDisplayName' => ['description' => 'The principal name.'."\n", 'type' => 'string', 'example' => '209312833131416xxx', 'title' => ''], + 'AuthPrincipalOwnerId' => ['description' => 'The account of the principal.'."\n", 'type' => 'string', 'example' => '1827811800526xxx', 'title' => ''], + 'AuthPrincipalType' => ['description' => 'The principal type.'."\n", 'type' => 'string', 'example' => 'SubUser', 'title' => ''], + 'EncodedDiagnosticMessage' => ['description' => 'The encoded diagnostic message.'."\n", 'type' => 'string', 'example' => 'AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==', 'title' => ''], + 'NoPermissionType' => ['description' => 'The permission denial type.'."\n", 'type' => 'string', 'example' => 'ImplicitDeny', 'title' => ''], + 'PolicyType' => ['description' => 'The policy type.'."\n", 'type' => 'string', 'example' => 'AccountLevelIdentityBasedPolicy', 'title' => ''], ], + 'title' => '', + 'example' => '', ], ], 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Invalid parameter: policyName cannot be null\\\\n\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true,\\n \\"AccessDeniedDetail\\": {\\n \\"AuthAction\\": \\"edas:ManageSchedulerxNotificationPolicy\\",\\n \\"AuthPrincipalDisplayName\\": \\"209312833131416xxx\\",\\n \\"AuthPrincipalOwnerId\\": \\"1827811800526xxx\\",\\n \\"AuthPrincipalType\\": \\"SubUser\\",\\n \\"EncodedDiagnosticMessage\\": \\"AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==\\",\\n \\"NoPermissionType\\": \\"ImplicitDeny\\",\\n \\"PolicyType\\": \\"AccountLevelIdentityBasedPolicy\\"\\n }\\n}","type":"json"}]', + 'title' => 'ManageSchedulerxNotificationPolicy', + 'requestParamsDescription' => '# [](#channeltimerange-)ChannelTimeRange configuration description'."\n" + ."\n" + .'The time range configuration for notification channels. Supports both unified and independent configuration modes.'."\n" + ."\n" + .'## [](#)Configuration format'."\n" + ."\n" + .'This field should be in JSON format and supports the following core attributes:'."\n" + ."\n" + .'### [](#)Attribute description'."\n" + ."\n" + .'**sendChannel: Notification channel configuration (required).**'."\n" + ."\n" + .'* The required field that specifies the notification channels to configure.'."\n" + .'* Format: Multiple channels separated by commas, such as "sms,webhook,mail,phone".'."\n" + .'* Supported channels: sms, webhook (such as DingTalk, WeCom), mail, and phone.'."\n" + ."\n" + .'**timezone: Time zone setting**'."\n" + ."\n" + .'* Supports GMT or UTC format'."\n" + .'* Example: GMT+8 or UTC+08:00'."\n" + .'* Note: The time zone determines the reference standard for alert effective times, regardless of actual location. For example, if you configure "New York time zone (UTC-4), Monday 00:00-03:00" in Beijing, the system uses New York local time.'."\n" + ."\n" + .'**webhookIsAtAll: Webhook notification configuration**'."\n" + ."\n" + .'* Valid value: true or false.'."\n" + .'* Indicates whether to mention all members in webhook notifications.'."\n" + ."\n" + .'**timeRanges: Time range configuration (required)**'."\n" + ."\n" + .'* Supports two configuration modes:'."\n" + ."\n" + .' 1. Unified configuration: Use "all" as the key to set time ranges for all selected channels.'."\n" + .' 2. Independent configuration: Configure time ranges separately for each channel using the channel identifier as the key.'."\n" + ."\n" + .'### [](#)Time range configuration items'."\n" + ."\n" + .'Each time range contains the following attributes:'."\n" + ."\n" + .'* startTime: Start time in HH:mm format (required).'."\n" + .'* endTime: End time in HH:mm format (required).'."\n" + .'* daysOfWeek: Active days of the week in array format, where 1-7 represent Monday to Sunday (optional; the time range is inactive when empty)'."\n" + ."\n" + .'### [](#)Example configuration'."\n" + ."\n" + .'**Example 1: Unified configuration mode**'."\n" + ."\n" + .'```json'."\n" + .'{'."\n" + .' "sendChannel": "sms,webhook,mail,phone",'."\n" + .' "timezone": "UTC+08:00",'."\n" + .' "webhookIsAtAll": "false",'."\n" + .' "timeRanges": {'."\n" + .' "all": ['."\n" + .' {'."\n" + .' "startTime": "08:00",'."\n" + .' "endTime": "18:00",'."\n" + .' "daysOfWeek": [1, 2, 3, 4, 5]'."\n" + .' }'."\n" + .' ]'."\n" + .' }'."\n" + .'}'."\n" + .'```'."\n" + ."\n" + .'**Example 2: Independent configuration mode**'."\n" + ."\n" + .'```json'."\n" + .'{'."\n" + .' "sendChannel": "sms,webhook,mail,phone",'."\n" + .' "timezone": "GMT+8",'."\n" + .' "webhookIsAtAll": "false",'."\n" + .' "timeRanges": {'."\n" + .' "webhook": ['."\n" + .' {'."\n" + .' "startTime": "08:00",'."\n" + .' "endTime": "18:00",'."\n" + .' "daysOfWeek": [1, 2, 3, 4, 5]'."\n" + .' }'."\n" + .' ],'."\n" + .' "sms": ['."\n" + .' {'."\n" + .' "startTime": "08:00",'."\n" + .' "endTime": "18:00",'."\n" + .' "daysOfWeek": [1, 2, 3, 4, 5]'."\n" + .' }'."\n" + .' ],'."\n" + .' "mail": ['."\n" + .' {'."\n" + .' "startTime": "08:00",'."\n" + .' "endTime": "18:00",'."\n" + .' "daysOfWeek": [1, 2, 3, 4, 5]'."\n" + .' }'."\n" + .' ],'."\n" + .' "phone": ['."\n" + .' {'."\n" + .' "startTime": "08:00",'."\n" + .' "endTime": "18:00",'."\n" + .' "daysOfWeek": [1, 2, 3, 4, 5]'."\n" + .' }'."\n" + .' ]'."\n" + .' }'."\n" + .'}'."\n" + .'```'."\n" + ."\n" + .'### [](#)Usage notes'."\n" + ."\n" + .'1. The sendChannel field is required and can only contain supported notification channels.'."\n" + .'2. When timeRanges contains "all", it indicates unified configuration mode and cannot include configurations for other channels.'."\n" + .'3. When timeRanges does not contain "all", each channel specified in sendChannel must be configured independently.'."\n" + .'4. Time must use 24-hour format as HH:mm.'."\n" + .'5. Days of the week are represented by numbers 1-7, corresponding to Monday through Sunday.'."\n" + .'6. Time zones support both GMT and UTC format configurations'."\n", + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxNotificationPolicy', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"job is not existed, jobId=302\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"JobScriptHistoryInfos\\": [\\n {\\n \\"VersionesDescription\\": \\"init version\\",\\n \\"Creator\\": \\"1272118248844842\\",\\n \\"CreateTime\\": \\"2025-03-12 14:52:42\\\\n\\",\\n \\"ScriptContent\\": \\"#!/bin/bash\\\\n\\\\n# 以下是系统提供的预制变量,可以获取任务运行的信息\\\\necho \\\\\\"任务参数: #{schedulerx.jobParameters}\\\\\\"\\\\necho \\\\\\"分片序号: #{schedulerx.shardingId}\\\\\\"\\\\necho \\\\\\"分片参数: #{schedulerx.shardingParameters}\\\\\\"\\\\necho \\\\\\"分片总数: #{schedulerx.shardingNum}\\\\\\"\\\\necho \\\\\\"当前重试次数:#{schedulerx.attempt}\\\\\\"\\\\necho \\\\\\"触发类型:#{schedulerx.triggerType}\\\\\\"\\\\necho \\\\\\"调度时间戳:#{schedulerx.scheduleTime}\\\\\\"\\\\necho \\\\\\"数据时间戳:#{schedulerx.dataTime}\\\\\\"\\\\n\\\\n# 最后一行输出会作为结果返回\\\\necho \\\\\\"hello world\\\\\\"\\\\n\\\\n# exit 1 表示失败\\\\nexit 0\\\\n\\"\\n }\\n ]\\n }\\n}","type":"json"}]', - 'title' => 'ListJobScriptHistory', ], - 'ReadSchedulerxDesignateInfo' => [ - 'summary' => 'Queries the basic information of specified workers.', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'https', - ], + 'ReadSchedulerxCalendar' => [ + 'summary' => 'Retrieves the information of a calendar.', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', - 'systemTags' => [ - 'operationType' => 'get', - 'riskType' => 'none', - 'chargeType' => 'free', - 'tenantRelevance' => 'tenant', - ], + 'systemTags' => ['operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'tenantRelevance' => 'tenant'], 'parameters' => [ [ - 'name' => 'JobId', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The job ID. You can obtain the ID on the Tasks page in the SchedulerX console.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'docRequired' => true, - 'example' => '368', - ], + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'Namespace', + 'name' => 'CalendarName', 'in' => 'query', - 'schema' => [ - 'description' => 'The unique identifier (UID) of the namespace. You can obtain the namespace UID on the Namespaces page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****'."\n", - ], + 'schema' => ['title' => '', 'description' => 'The calendar name.'."\n", 'type' => 'string', 'required' => false, 'example' => '2025workday'], ], [ - 'name' => 'NamespaceSource', + 'name' => 'Year', 'in' => 'query', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'The year.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2025', 'title' => ''], ], [ - 'name' => 'GroupId', + 'name' => 'FetchSystemCalendar', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the application. You can obtain the application ID on the **Applications** page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'test.defalutGroup'."\n", - ], + 'schema' => ['description' => 'Specifies whether to retrieve system calendars. The default value is false.'."\n" + ."\n" + .'* false: Returns only user-defined calendars.'."\n" + .'* true: Returns both system calendars and user-defined calendars.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'false', 'default' => 'false', 'title' => ''], ], [ - 'name' => 'RegionId', + 'name' => 'FetchCalendarDetail', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the region.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'Specifies whether to retrieve calendar details. The default value is false.'."\n" + ."\n" + .'* false: Returns only basic information without the detailed list of days for each month.'."\n" + .'* true: Returns the detailed list of days for each month.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'false', 'default' => 'false', 'title' => ''], + ], + [ + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => ['description' => 'The maximum number of entries to return on this call. The default value is 20.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '15', 'default' => '20', 'title' => ''], + ], + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => ['description' => 'A token that specifies the starting position for retrieving the next page of data. You do not need to provide this parameter for the first request. An empty value indicates that all data has been read.'."\n", 'type' => 'string', 'required' => false, 'example' => 'AAAAAdYzT97YjSXWT8TQmxIAI5g=', 'title' => ''], ], ], 'responses' => [ @@ -8086,319 +6659,128 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code returned.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The error message returned only if an error occurs.'."\n", - 'type' => 'string', - 'example' => 'jobId=xxx is not existed', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful.'."\n", - 'type' => 'boolean', - 'example' => 'true', + 'Code' => ['description' => 'The status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message.'."\n", 'type' => 'string', 'example' => 'unknown exception occurred'."\n", 'title' => ''], + 'RequestId' => ['description' => 'The unique request ID.'."\n", 'type' => 'string', 'example' => 'C8E5FB4A-6D8D-424D-9AAA-4FE06BB74FF9', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'AccessDeniedDetail' => [ + 'description' => 'The access denial details.', + 'type' => 'object', + 'properties' => [ + 'AuthAction' => ['description' => 'The authentication action.', 'type' => 'string', 'example' => 'edas:ReadSchedulerxCalendar', 'title' => ''], + 'AuthPrincipalDisplayName' => ['description' => 'The principal name.'."\n", 'type' => 'string', 'example' => '209312833131416xxx', 'title' => ''], + 'AuthPrincipalOwnerId' => ['description' => 'The account of the principal.'."\n", 'type' => 'string', 'example' => '1827811800526xxx', 'title' => ''], + 'AuthPrincipalType' => ['description' => 'The principal type.'."\n", 'type' => 'string', 'example' => 'SubUser', 'title' => ''], + 'EncodedDiagnosticMessage' => ['description' => 'The encoded diagnostic message.'."\n", 'type' => 'string', 'example' => 'AQEAAAAAaDEssEE4MDg4NTQyLTVGMTYtNTFEQy1CODJCLUFFMDY4NUVDQ0ZBQQ==', 'title' => ''], + 'NoPermissionType' => ['description' => 'The permission denial type.', 'type' => 'string', 'example' => 'ImplicitDeny', 'title' => ''], + 'PolicyType' => ['description' => 'The policy type.'."\n", 'type' => 'string', 'example' => 'AccountLevelIdentityBasedPolicy', 'title' => ''], + ], + 'title' => '', + 'example' => '', ], 'Data' => [ 'description' => '*'."\n", 'type' => 'object', 'properties' => [ - 'DesignateDetailVos' => [ + 'Records' => [ 'description' => '*'."\n", 'type' => 'array', 'items' => [ 'description' => '*'."\n", 'type' => 'object', 'properties' => [ - 'Checked' => [ - 'description' => 'Indicates whether the workers are specified.'."\n" - ."\n" - .'* true: The workers are specified.'."\n" - .'* false: The workers are not specified.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Metrics' => [ - 'description' => 'The metric values.'."\n", - 'type' => 'object', - 'properties' => [ - 'SharePoolAvailableSize' => [ - 'description' => 'The number of available resources in the shared pool.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '72', - ], - 'Heap1Usage' => [ - 'description' => 'The most recent value of heap memory usage.'."\n", - 'type' => 'number', - 'format' => 'double', - 'example' => '0.06072874493927125', - ], - 'DiskUsage' => [ - 'description' => 'The disk usage.'."\n", - 'type' => 'number', - 'format' => 'double', - 'example' => '0.19142496008515167', - ], - 'CpuProcessors' => [ - 'description' => 'The number of available CPU processors.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Heap1Used' => [ - 'description' => 'The most recent value of used heap memory in MB.', - 'type' => 'number', - 'format' => 'double', - 'example' => '14', - ], - 'CpuLoad1' => [ - 'description' => 'The most recent value of CPU workload.'."\n", - 'type' => 'number', - 'format' => 'double', - 'example' => '0', - ], - 'CpuLoad5' => [ - 'description' => 'The average of the latest five values of CPU workload.'."\n", - 'type' => 'number', - 'format' => 'double', - 'example' => '0', - ], - 'ExecCount' => [ - 'description' => 'The number of job executions.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '56', - ], - 'SharePoolQueueSize' => [ - 'description' => 'The queue size in the shared pool.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'HeapMax' => [ - 'description' => 'The maximum heap memory in MB.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '500', - ], - 'DiskUsed' => [ - 'description' => 'The used disk space in MB.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '148', - ], - 'DiskMax' => [ - 'description' => 'The total disk capacity in MB.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1024', - ], - 'Heap5Usage' => [ - 'description' => 'The average of the latest five values of heap memory usage.'."\n", - 'type' => 'number', - 'format' => 'double', - 'example' => '0.06477732793522267', - ], - ], - ], - 'Version' => [ - 'description' => 'The version of the workers.'."\n", - 'type' => 'string', - 'example' => '1.12.5', - ], - 'Size' => [ - 'description' => 'The number of workers.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Busy' => [ - 'description' => 'The status of the workers. Valid values:'."\n" - ."\n" - .'* FREE: idle.'."\n" - .'* LOAD5\\_BUSY: The average of the latest five values of CPU workload is too high.'."\n" - .'* HEAP5\\_BUSY: The average of the latest five values of heap memory usage is too high.'."\n" - .'* DISK_BUSY: The disk usage is too high.'."\n", - 'type' => 'string', - 'example' => 'FREE', - ], - 'Offline' => [ - 'description' => 'Indicates whether the workers are offline.'."\n", - 'type' => 'boolean', - 'example' => 'fasle', - ], - 'Starter' => [ - 'description' => 'The startup method of the workers.'."\n", - 'type' => 'string', - 'example' => 'pod', - ], - 'Key' => [ - 'description' => 'The information returned based on the value of the DesignateType parameter.'."\n" - ."\n" - .'* If you set the DesignateType parameter to 2, the tags of the workers are returned.'."\n" - .'* If you set the DesignateType parameter to 1, the IP addresses of the workers are returned.'."\n", - 'type' => 'string', - 'example' => '10.52.169.25', - ], + 'CalendarName' => ['description' => 'The calendar name.'."\n", 'type' => 'string', 'example' => '2025workday', 'title' => ''], + 'Year' => ['description' => 'The year.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '2025', 'title' => ''], + 'MonthDaysContent' => ['description' => 'The months and days.'."\n", 'type' => 'string', 'example' => '['."\n" + .' {"month":1,"days":[3,4,5,6,9,10,11,12,13,16,17,18,19,20,28,29,30,31]},'."\n" + .' {"month":2,"days":[1,2,3,6,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28]},'."\n" + .' {"month":3,"days":[1,2,3,6,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28,29,30,31]},'."\n" + .' {"month":4,"days":[3,4,6,7,10,11,12,13,14,17,18,19,20,21,23,24,25,26,27,28]},'."\n" + .' {"month":5,"days":[4,5,6,8,9,10,11,12,15,16,17,18,19,22,23,24,25,26,29,30,31]},'."\n" + .' {"month":6,"days":[1,2,5,6,7,8,9,12,13,14,15,16,19,20,21,25,26,27,28,29,30]},'."\n" + .' {"month":7,"days":[3,4,5,6,7,10,11,12,13,14,17,18,19,20,21,24,25,26,27,28,31]},'."\n" + .' {"month":8,"days":[1,2,3,4,7,8,9,10,11,14,15,16,17,18,21,22,23,24,25,28,29,30,31]},'."\n" + .' {"month":9,"days":[1,4,5,6,7,8,11,12,13,14,15,18,19,20,21,22,25,26,27,28]},'."\n" + .' {"month":10,"days":[7,8,9,10,11,12,13,16,17,18,19,20,23,24,25,26,27,30,31]},'."\n" + .' {"month":11,"days":[1,2,3,6,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28,29,30]},'."\n" + .' {"month":12,"days":[1,4,5,6,7,8,11,12,13,14,15,18,19,20,21,22,25,26,27,28,29]}'."\n" + .']', 'title' => ''], + 'Creator' => ['description' => 'The creator.'."\n", 'type' => 'string', 'example' => '1827811800526xxx', 'title' => ''], + 'SystemCalendar' => ['description' => 'Indicates whether it is a system calendar.'."\n", 'type' => 'boolean', 'example' => 'false', 'title' => ''], ], + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], - 'DesignateType' => [ - 'description' => 'The information type of the specified workers.'."\n" - ."\n" - .'* 1: the IP address of the specified workers.'."\n" - .'* 2: the tags of the specified workers.'."\n" - ."\n" - .'> The default value of the DesignateType parameter is 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Transferable' => [ - 'description' => 'Indicates whether to enable failover for the workers. If you set this parameter to true, the job is scheduled to other workers when the specified workers go offline.'."\n" - ."\n" - .'* true: enables failover for the workers.'."\n" - .'* false: disables failover for the workers.'."\n" - ."\n" - .'> The default value of the Transferable parameter is false.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - ], - ], - 'AccessDeniedDetail' => [ - 'description' => 'The access denial details.', - 'type' => 'object', - 'properties' => [ - 'AuthAction' => [ - 'description' => 'The authentication operation.'."\n", - 'type' => 'string', - 'example' => 'edas:ReadSchedulerxDesignateInfo', - ], - 'AuthPrincipalDisplayName' => [ - 'description' => 'The principal name.', - 'type' => 'string', - 'example' => '209312833131416xxx', - ], - 'AuthPrincipalOwnerId' => [ - 'description' => 'The principal account.', - 'type' => 'string', - 'example' => '1827811800526xxx', - ], - 'AuthPrincipalType' => [ - 'description' => 'The principal type.', - 'type' => 'string', - 'example' => 'SubUser', - ], - 'EncodedDiagnosticMessage' => [ - 'description' => 'The encoded diagnostic message.'."\n", - 'type' => 'string', - 'example' => 'AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==', - ], - 'NoPermissionType' => [ - 'description' => 'The permission denial type.', - 'type' => 'string', - 'example' => 'ImplicitDeny', - ], - 'PolicyType' => [ - 'description' => 'The policy type.'."\n", - 'type' => 'string', - 'example' => 'AccountLevelIdentityBasedPolicy', - ], + 'NextToken' => ['description' => 'When there is more data to retrieve, the server returns a nextToken. You can use this token in a subsequent request to continue reading from where you left off.'."\n", 'type' => 'string', 'example' => 'O39nXKu5XafATl3/cJjSJw=='."\n", 'title' => ''], + 'Total' => ['description' => 'The total number of entries.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''], + 'MaxResults' => ['description' => 'The maximum number of entries returned.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '15', 'title' => ''], ], + 'title' => '', + 'example' => '', ], ], 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"unknown exception occurred\\\\n\\",\\n \\"RequestId\\": \\"C8E5FB4A-6D8D-424D-9AAA-4FE06BB74FF9\\",\\n \\"Success\\": true,\\n \\"AccessDeniedDetail\\": {\\n \\"AuthAction\\": \\"edas:ReadSchedulerxCalendar\\",\\n \\"AuthPrincipalDisplayName\\": \\"209312833131416xxx\\",\\n \\"AuthPrincipalOwnerId\\": \\"1827811800526xxx\\",\\n \\"AuthPrincipalType\\": \\"SubUser\\",\\n \\"EncodedDiagnosticMessage\\": \\"AQEAAAAAaDEssEE4MDg4NTQyLTVGMTYtNTFEQy1CODJCLUFFMDY4NUVDQ0ZBQQ==\\",\\n \\"NoPermissionType\\": \\"ImplicitDeny\\",\\n \\"PolicyType\\": \\"AccountLevelIdentityBasedPolicy\\"\\n },\\n \\"Data\\": {\\n \\"Records\\": [\\n {\\n \\"CalendarName\\": \\"2025workday\\",\\n \\"Year\\": 2025,\\n \\"MonthDaysContent\\": \\"[\\\\n {\\\\\\"month\\\\\\":1,\\\\\\"days\\\\\\":[3,4,5,6,9,10,11,12,13,16,17,18,19,20,28,29,30,31]},\\\\n {\\\\\\"month\\\\\\":2,\\\\\\"days\\\\\\":[1,2,3,6,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28]},\\\\n {\\\\\\"month\\\\\\":3,\\\\\\"days\\\\\\":[1,2,3,6,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28,29,30,31]},\\\\n {\\\\\\"month\\\\\\":4,\\\\\\"days\\\\\\":[3,4,6,7,10,11,12,13,14,17,18,19,20,21,23,24,25,26,27,28]},\\\\n {\\\\\\"month\\\\\\":5,\\\\\\"days\\\\\\":[4,5,6,8,9,10,11,12,15,16,17,18,19,22,23,24,25,26,29,30,31]},\\\\n {\\\\\\"month\\\\\\":6,\\\\\\"days\\\\\\":[1,2,5,6,7,8,9,12,13,14,15,16,19,20,21,25,26,27,28,29,30]},\\\\n {\\\\\\"month\\\\\\":7,\\\\\\"days\\\\\\":[3,4,5,6,7,10,11,12,13,14,17,18,19,20,21,24,25,26,27,28,31]},\\\\n {\\\\\\"month\\\\\\":8,\\\\\\"days\\\\\\":[1,2,3,4,7,8,9,10,11,14,15,16,17,18,21,22,23,24,25,28,29,30,31]},\\\\n {\\\\\\"month\\\\\\":9,\\\\\\"days\\\\\\":[1,4,5,6,7,8,11,12,13,14,15,18,19,20,21,22,25,26,27,28]},\\\\n {\\\\\\"month\\\\\\":10,\\\\\\"days\\\\\\":[7,8,9,10,11,12,13,16,17,18,19,20,23,24,25,26,27,30,31]},\\\\n {\\\\\\"month\\\\\\":11,\\\\\\"days\\\\\\":[1,2,3,6,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28,29,30]},\\\\n {\\\\\\"month\\\\\\":12,\\\\\\"days\\\\\\":[1,4,5,6,7,8,11,12,13,14,15,18,19,20,21,22,25,26,27,28,29]}\\\\n]\\",\\n \\"Creator\\": \\"1827811800526xxx\\",\\n \\"SystemCalendar\\": false\\n }\\n ],\\n \\"NextToken\\": \\"O39nXKu5XafATl3/cJjSJw==\\\\n\\",\\n \\"Total\\": 20,\\n \\"MaxResults\\": 15\\n }\\n}","type":"json"}]', + 'title' => 'ReadSchedulerxCalendar', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxCalendar', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"jobId=xxx is not existed\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"DesignateDetailVos\\": [\\n {\\n \\"Checked\\": true,\\n \\"Metrics\\": {\\n \\"SharePoolAvailableSize\\": 72,\\n \\"Heap1Usage\\": 0.06072874493927125,\\n \\"DiskUsage\\": 0.19142496008515167,\\n \\"CpuProcessors\\": 1,\\n \\"Heap1Used\\": 14,\\n \\"CpuLoad1\\": 0,\\n \\"CpuLoad5\\": 0,\\n \\"ExecCount\\": 56,\\n \\"SharePoolQueueSize\\": 1,\\n \\"HeapMax\\": 500,\\n \\"DiskUsed\\": 148,\\n \\"DiskMax\\": 1024,\\n \\"Heap5Usage\\": 0.06477732793522267\\n },\\n \\"Version\\": \\"1.12.5\\",\\n \\"Size\\": 1,\\n \\"Busy\\": \\"FREE\\",\\n \\"Offline\\": true,\\n \\"Starter\\": \\"pod\\",\\n \\"Key\\": \\"10.52.169.25\\"\\n }\\n ],\\n \\"DesignateType\\": 1,\\n \\"Transferable\\": true\\n },\\n \\"AccessDeniedDetail\\": {\\n \\"AuthAction\\": \\"edas:ReadSchedulerxDesignateInfo\\",\\n \\"AuthPrincipalDisplayName\\": \\"209312833131416xxx\\",\\n \\"AuthPrincipalOwnerId\\": \\"1827811800526xxx\\",\\n \\"AuthPrincipalType\\": \\"SubUser\\",\\n \\"EncodedDiagnosticMessage\\": \\"AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==\\",\\n \\"NoPermissionType\\": \\"ImplicitDeny\\",\\n \\"PolicyType\\": \\"AccountLevelIdentityBasedPolicy\\"\\n }\\n}","type":"json"}]', - 'title' => 'ReadSchedulerxDesignateInfo', ], 'ReadSchedulerxDesignateDetail' => [ 'summary' => 'Queries detailed information of the workers specified by a job.', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'https', - ], + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', - 'systemTags' => [ - 'operationType' => 'get', - 'riskType' => 'none', - 'chargeType' => 'free', - 'tenantRelevance' => 'tenant', - ], + 'systemTags' => ['operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'tenantRelevance' => 'tenant'], 'parameters' => [ [ 'name' => 'JobId', 'in' => 'query', - 'schema' => [ - 'description' => 'The job ID. You can obtain the ID on the Tasks page in the SchedulerX console.', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'docRequired' => true, - 'example' => '368', - ], + 'schema' => ['description' => 'The job ID. You can obtain the ID on the Tasks page in the SchedulerX console.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'docRequired' => true, 'example' => '368', 'title' => ''], ], [ 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The unique identifier (UID) of the namespace. You can obtain the namespace UID on the Namespaces page in the SchedulerX console.', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'schema' => ['description' => 'The unique identifier (UID) of the namespace. You can obtain the namespace UID on the Namespaces page in the SchedulerX console.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ 'name' => 'NamespaceSource', 'in' => 'query', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.', - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for a special third party.', 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the application. You can obtain the application ID on the Applications page in the SchedulerX console.', - 'type' => 'string', - 'required' => true, - 'example' => 'test.defalutGroup', - ], + 'schema' => ['description' => 'The ID of the application. You can obtain the application ID on the Applications page in the SchedulerX console.', 'type' => 'string', 'required' => true, 'example' => 'test.defalutGroup', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the region.', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The ID of the region.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'DesignateType', @@ -8412,10 +6794,8 @@ 'format' => 'int32', 'required' => false, 'example' => '1', - 'enum' => [ - '1', - '2', - ], + 'enum' => ['1', '2'], + 'title' => '', ], ], ], @@ -8424,27 +6804,10 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'Th status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The additional information returned only if an error occurs.', - 'type' => 'string', - 'example' => 'Invalid parameter: jobId=368 invalid ', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '883AFE93-FB03-4FA9-A958-E750C6DE120C', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful.', - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'Th status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The additional information returned only if an error occurs.', 'type' => 'string', 'example' => 'Invalid parameter: jobId=368 invalid ', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '883AFE93-FB03-4FA9-A958-E750C6DE120C', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Data' => [ 'description' => '*'."\n", 'type' => 'object', @@ -8456,532 +6819,128 @@ 'description' => '*'."\n", 'type' => 'object', 'properties' => [ - 'Offline' => [ - 'description' => 'Indicates whether the workers are offline.', - 'type' => 'boolean', - 'example' => 'fasle', - ], - 'Size' => [ - 'description' => 'The number of workers.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Starter' => [ - 'description' => 'The startup method of the workers.', - 'type' => 'string', - 'example' => 'pod', - ], - 'Busy' => [ - 'description' => 'The status of the workers. Valid values: '."\n" - ."\n" - .'FREE: idle. '."\n" - .'LOAD5_BUSY: The average of the latest five values of CPU workload is too high. '."\n" - .'HEAP5_BUSY: The average of the latest five values of heap memory usage is too high. '."\n" - .'DISK_BUSY: The disk usage is too high.', - 'type' => 'string', - 'example' => 'FREE', - ], - 'Checked' => [ - 'description' => 'Indicates whether the workers are specified. Valid values: true and false.', - 'type' => 'boolean', - 'example' => 'true', - ], - 'Version' => [ - 'description' => 'The version of the workers.', - 'type' => 'string', - 'example' => '1.12.5', - ], - 'Key' => [ - 'description' => 'The information returned based on the value of the DesignateType parameter.'."\n" - ."\n" - .'* If you set the DesignateType parameter to 2, the tags of the workers are returned.'."\n" - .'* If you set the DesignateType parameter to 1, the IP addresses of the workers are returned.'."\n", - 'type' => 'string', - 'example' => '10.52.169.25', - ], + 'Offline' => ['description' => 'Indicates whether the workers are offline.', 'type' => 'boolean', 'example' => 'fasle', 'title' => ''], + 'Size' => ['description' => 'The number of workers.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'Starter' => ['description' => 'The startup method of the workers.', 'type' => 'string', 'example' => 'pod', 'title' => ''], + 'Busy' => ['description' => 'The status of the workers. Valid values: '."\n" + ."\n" + .'FREE: idle. '."\n" + .'LOAD5_BUSY: The average of the latest five values of CPU workload is too high. '."\n" + .'HEAP5_BUSY: The average of the latest five values of heap memory usage is too high. '."\n" + .'DISK_BUSY: The disk usage is too high.', 'type' => 'string', 'example' => 'FREE', 'title' => ''], + 'Checked' => ['description' => 'Indicates whether the workers are specified. Valid values: true and false.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Version' => ['description' => 'The version of the workers.', 'type' => 'string', 'example' => '1.12.5', 'title' => ''], + 'Key' => ['description' => 'The information returned based on the value of the DesignateType parameter.'."\n" + ."\n" + .'* If you set the DesignateType parameter to 2, the tags of the workers are returned.'."\n" + .'* If you set the DesignateType parameter to 1, the IP addresses of the workers are returned.'."\n", 'type' => 'string', 'example' => '10.52.169.25', 'title' => ''], 'Metrics' => [ 'description' => 'The metric values.'."\n", 'type' => 'object', 'properties' => [ - 'CpuLoad1' => [ - 'description' => 'The most recent value of CPU workload.', - 'type' => 'number', - 'format' => 'double', - 'example' => '0', - ], - 'CpuLoad5' => [ - 'description' => 'The average of the latest five values of CPU workload.', - 'type' => 'number', - 'format' => 'double', - 'example' => '0', - ], - 'CpuProcessors' => [ - 'description' => 'The number of available CPU processors.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Heap1Usage' => [ - 'description' => 'The most recent value of heap memory usage.', - 'type' => 'number', - 'format' => 'double', - 'example' => '0.06072874493927125', - ], - 'Heap5Usage' => [ - 'description' => 'The average of the latest five values of heap memory usage.', - 'type' => 'number', - 'format' => 'double', - 'example' => '0.06477732793522267', - ], - 'Heap1Used' => [ - 'description' => 'The most recent value of used heap memory in MB.', - 'type' => 'number', - 'format' => 'double', - 'example' => '14', - ], - 'HeapMax' => [ - 'description' => 'The maximum heap memory in MB.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '500', - ], - 'DiskUsage' => [ - 'description' => 'The disk usage.', - 'type' => 'number', - 'format' => 'double', - 'example' => '0.19142496008515167', - ], - 'DiskUsed' => [ - 'description' => 'The used disk space in MB.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0.14865875', - ], - 'DiskMax' => [ - 'description' => 'The total disk capacity in MB.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1024', - ], - 'SharePoolQueueSize' => [ - 'description' => 'The queue size in the shared pool.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'SharePoolAvailableSize' => [ - 'description' => 'The number of available resources in the shared pool.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '72', - ], - 'ExecCount' => [ - 'description' => 'The number of job executions.', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '56', - ], + 'CpuLoad1' => ['description' => 'The most recent value of CPU workload.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''], + 'CpuLoad5' => ['description' => 'The average of the latest five values of CPU workload.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''], + 'CpuProcessors' => ['description' => 'The number of available CPU processors.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'Heap1Usage' => ['description' => 'The most recent value of heap memory usage.', 'type' => 'number', 'format' => 'double', 'example' => '0.06072874493927125', 'title' => ''], + 'Heap5Usage' => ['description' => 'The average of the latest five values of heap memory usage.', 'type' => 'number', 'format' => 'double', 'example' => '0.06477732793522267', 'title' => ''], + 'Heap1Used' => ['description' => 'The most recent value of used heap memory in MB.', 'type' => 'number', 'format' => 'double', 'example' => '14', 'title' => ''], + 'HeapMax' => ['description' => 'The maximum heap memory in MB.', 'type' => 'integer', 'format' => 'int32', 'example' => '500', 'title' => ''], + 'DiskUsage' => ['description' => 'The disk usage.', 'type' => 'number', 'format' => 'double', 'example' => '0.19142496008515167', 'title' => ''], + 'DiskUsed' => ['description' => 'The used disk space in MB.', 'type' => 'integer', 'format' => 'int32', 'example' => '148', 'title' => ''], + 'DiskMax' => ['description' => 'The total disk capacity in MB.', 'type' => 'integer', 'format' => 'int32', 'example' => '1024', 'title' => ''], + 'SharePoolQueueSize' => ['description' => 'The queue size in the shared pool.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'SharePoolAvailableSize' => ['description' => 'The number of available resources in the shared pool.', 'type' => 'integer', 'format' => 'int32', 'example' => '72', 'title' => ''], + 'ExecCount' => ['description' => 'The number of job executions.', 'type' => 'integer', 'format' => 'int64', 'example' => '56', 'title' => ''], ], + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], 'AccessDeniedDetail' => [ 'description' => 'The access denial details.', 'type' => 'object', 'properties' => [ - 'AuthAction' => [ - 'description' => 'The authentication operation.', - 'type' => 'string', - 'example' => 'edas:ReadSchedulerxDesignateDetail', - ], - 'AuthPrincipalDisplayName' => [ - 'description' => 'The principal name.'."\n", - 'type' => 'string', - 'example' => '209312833131416xxx', - ], - 'AuthPrincipalOwnerId' => [ - 'description' => 'The account of the principal.'."\n", - 'type' => 'string', - 'example' => '1827811800526xxx', - ], - 'AuthPrincipalType' => [ - 'description' => 'The principal type.'."\n", - 'type' => 'string', - 'example' => 'SubUser', - ], - 'EncodedDiagnosticMessage' => [ - 'description' => 'The encoded diagnostic message.'."\n", - 'type' => 'string', - 'example' => 'AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==', - ], - 'NoPermissionType' => [ - 'description' => 'The permission denial type.'."\n", - 'type' => 'string', - 'example' => 'ImplicitDeny', - ], - 'PolicyType' => [ - 'description' => 'The policy type.'."\n", - 'type' => 'string', - 'example' => 'AccountLevelIdentityBasedPolicy', - ], + 'AuthAction' => ['description' => 'The authentication operation.', 'type' => 'string', 'example' => 'edas:ReadSchedulerxDesignateDetail', 'title' => ''], + 'AuthPrincipalDisplayName' => ['description' => 'The principal name.'."\n", 'type' => 'string', 'example' => '209312833131416xxx', 'title' => ''], + 'AuthPrincipalOwnerId' => ['description' => 'The account of the principal.'."\n", 'type' => 'string', 'example' => '1827811800526xxx', 'title' => ''], + 'AuthPrincipalType' => ['description' => 'The principal type.'."\n", 'type' => 'string', 'example' => 'SubUser', 'title' => ''], + 'EncodedDiagnosticMessage' => ['description' => 'The encoded diagnostic message.'."\n", 'type' => 'string', 'example' => 'AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==', 'title' => ''], + 'NoPermissionType' => ['description' => 'The permission denial type.'."\n", 'type' => 'string', 'example' => 'ImplicitDeny', 'title' => ''], + 'PolicyType' => ['description' => 'The policy type.'."\n", 'type' => 'string', 'example' => 'AccountLevelIdentityBasedPolicy', 'title' => ''], ], + 'title' => '', + 'example' => '', ], ], 'description' => '', + 'title' => '', + 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Invalid parameter: jobId=368 invalid \\",\\n \\"RequestId\\": \\"883AFE93-FB03-4FA9-A958-E750C6DE120C\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"DesignateDetailVos\\": [\\n {\\n \\"Offline\\": true,\\n \\"Size\\": 1,\\n \\"Starter\\": \\"pod\\",\\n \\"Busy\\": \\"FREE\\",\\n \\"Checked\\": true,\\n \\"Version\\": \\"1.12.5\\",\\n \\"Key\\": \\"10.52.169.25\\",\\n \\"Metrics\\": {\\n \\"CpuLoad1\\": 0,\\n \\"CpuLoad5\\": 0,\\n \\"CpuProcessors\\": 1,\\n \\"Heap1Usage\\": 0.06072874493927125,\\n \\"Heap5Usage\\": 0.06477732793522267,\\n \\"Heap1Used\\": 14,\\n \\"HeapMax\\": 500,\\n \\"DiskUsage\\": 0.19142496008515167,\\n \\"DiskUsed\\": 148,\\n \\"DiskMax\\": 1024,\\n \\"SharePoolQueueSize\\": 1,\\n \\"SharePoolAvailableSize\\": 72,\\n \\"ExecCount\\": 56\\n }\\n }\\n ]\\n },\\n \\"AccessDeniedDetail\\": {\\n \\"AuthAction\\": \\"edas:ReadSchedulerxDesignateDetail\\",\\n \\"AuthPrincipalDisplayName\\": \\"209312833131416xxx\\",\\n \\"AuthPrincipalOwnerId\\": \\"1827811800526xxx\\",\\n \\"AuthPrincipalType\\": \\"SubUser\\",\\n \\"EncodedDiagnosticMessage\\": \\"AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==\\",\\n \\"NoPermissionType\\": \\"ImplicitDeny\\",\\n \\"PolicyType\\": \\"AccountLevelIdentityBasedPolicy\\"\\n }\\n}","type":"json"}]', 'title' => 'ReadSchedulerxDesignateDetail', - ], - 'ManageSchedulerxJobSync' => [ - 'summary' => 'Synchronizes tasks across namespaces.', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'operationType' => 'write', - 'systemTags' => [ - 'operationType' => 'create', - 'riskType' => 'none', - 'chargeType' => 'free', - 'tenantRelevance' => 'tenant', - ], - 'parameters' => [ - [ - 'name' => 'RegionId', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], - ], - [ - 'name' => 'OriginalNamespace', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The source namespace where the task resides.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****'."\n", - ], - ], - [ - 'name' => 'NamespaceSource', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The source of the namespace. Required only for specific third-party cases.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], - ], - [ - 'name' => 'OriginalGroupId', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The source application group to which the task belongs.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'testSchedulerx.defaultGroup'."\n", - ], - ], - [ - 'name' => 'JobIdList', - 'in' => 'formData', - 'style' => 'json', - 'schema' => [ - 'description' => 'The list of task IDs.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The task ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '207828442', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxDesignateDetail', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'AppGroup', 'arn' => 'acs:edas:{#regionId}:{#accountId}:namespace/{#Namespace}/JobGroup/{#GroupId}'], ], - 'required' => true, - 'docRequired' => true, - 'maxItems' => 1000, - ], - ], - [ - 'name' => 'TargetNamespace', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The destination namespace to which the task will be synchronized.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => '5f56ef65-b836-493d-b40b-c4db6425****', - ], - ], - [ - 'name' => 'TargetGroupId', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The ID of the destination application group to which the task will be synchronized.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'testSyncJobGroup', - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'Code' => [ - 'description' => 'The return code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The error message. Returned only when an error occurs.'."\n", - 'type' => 'string', - 'example' => 'jobId=xxx is not existed', - ], - 'RequestId' => [ - 'description' => 'The unique ID of the request.'."\n", - 'type' => 'string', - 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB58C', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - ], - 'description' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"jobId=xxx is not existed\\",\\n \\"RequestId\\": \\"71BCC0E3-64B2-4B63-A870-AFB64EBCB58C\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => 'ManageSchedulerxJobSync', ], - 'StopInstance' => [ - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'https', - ], + 'ReadSchedulerxDesignateInfo' => [ + 'summary' => 'Retrieves basic information for the specified instance.', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', - 'systemTags' => [ - 'operationType' => 'update', - ], + 'operationType' => 'read', + 'systemTags' => ['operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'tenantRelevance' => 'tenant'], 'parameters' => [ [ 'name' => 'JobId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the job. You can obtain the ID of the job on the Task Management page in the SchedulerX console.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'docRequired' => true, - 'example' => '92583', - ], - ], - [ - 'name' => 'InstanceId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the job instance in the running state.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'docRequired' => true, - 'example' => '11111111', - ], + 'schema' => ['description' => 'The job ID. You can find this ID on the **Task Management** page in the console.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'docRequired' => true, 'example' => '368', 'title' => ''], ], [ 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the namespace. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'schema' => ['description' => 'The namespace UID. You can find this UID on the **Namespace** page in the console.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****'."\n", 'title' => ''], ], [ 'name' => 'NamespaceSource', 'in' => 'query', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'This parameter is required only for specific third-party integrations.', 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the application. You can obtain the application ID on the Application Management page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'testSchedulerx.defaultGroup', - ], - ], - [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the region.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The application ID. You can find this ID on the **Application Management** page in the console.', 'type' => 'string', 'required' => true, 'example' => 'test.defalutGroup'."\n", 'title' => ''], ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code that is returned.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The error message that is returned only if an error occurs.'."\n", - 'type' => 'string', - 'example' => 'Your request is denied as lack of ssl protect.', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', - ], - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* **true**: The call is successful.'."\n" - .'* **false**: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - ], - ], - ], - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Your request is denied as lack of ssl protect.\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<StopInstanceResponse>\\n<RequestId>4F68ABED-AC31-4412-9297-D9A8F0401108</RequestId>\\n<Message>Your request is denied as lack of ssl protect.</Message>\\n<Code>200</Code>\\n<Success>true</Success>\\n</StopInstanceResponse>","errorExample":""}]', - 'title' => 'StopInstance', - 'summary' => 'Stops a job instance in the running state.', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'GetJobInstance' => [ - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'operationType' => 'read', - 'systemTags' => [ - 'operationType' => 'get', - ], - 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], - ], - [ - 'name' => 'Namespace', - 'in' => 'query', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], - ], - [ - 'name' => 'GroupId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The application ID. You can obtain the application ID on the Application Management page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'testSchedulerx.defaultGroup', - ], - ], - [ - 'name' => 'JobId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The job ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'docRequired' => true, - 'example' => '92583', - ], - ], - [ - 'name' => 'JobInstanceId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The job instance ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'docRequired' => true, - 'example' => '11111111', - ], - ], - [ - 'name' => 'NamespaceSource', - 'in' => 'query', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ @@ -8989,297 +6948,160 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The error message that is returned only if the corresponding error occurs.'."\n", - 'type' => 'string', - 'example' => 'jobid: 92583 not match groupId: testSchedulerx.defaultGroup', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* **true**'."\n" - .'* **false**'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The return code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message returned if the request fails.', 'type' => 'string', 'example' => 'jobId=xxx is not existed', 'title' => ''], + 'RequestId' => ['description' => 'The unique Request ID.', 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Data' => [ - 'description' => 'The information about the job instance.'."\n", + 'description' => '- The returned data object.', 'type' => 'object', 'properties' => [ - 'JobInstanceDetail' => [ - 'description' => 'The details of the job instance.'."\n", - 'type' => 'object', - 'properties' => [ - 'Status' => [ - 'description' => 'The state of the job instance. Valid values:'."\n" + 'DesignateDetailVos' => [ + 'description' => '- The details of the designated Workers.', + 'type' => 'array', + 'items' => [ + 'description' => '- The details of a designated Worker.', + 'type' => 'object', + 'properties' => [ + 'Offline' => ['description' => 'Indicates whether the Worker is offline.', 'type' => 'boolean', 'example' => 'fasle', 'title' => ''], + 'Size' => ['description' => 'The number of Workers.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'Starter' => ['description' => 'The startup mode of the Worker.', 'type' => 'string', 'example' => 'pod', 'title' => ''], + 'Busy' => ['description' => 'The status of the Worker. Valid values:'."\n" ."\n" - .'* **1**: The job instance is waiting for execution.'."\n" - .'* **3**: The job instance is running.'."\n" - .'* **4**: The job instance is successful.'."\n" - .'* **5**: The job instance failed.'."\n" - .'* **9**: The job instance is rejected.'."\n" + .'- `FREE`: The Worker is idle.'."\n" ."\n" - .'Enumeration class: com.alibaba.schedulerx.common.domain.InstanceStatus'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '4', - ], - 'Progress' => [ - 'description' => 'The progress of the job instance.'."\n", - 'type' => 'string', - 'example' => 'complete', - ], - 'Result' => [ - 'description' => 'The execution results of the job instance.'."\n", - 'type' => 'string', - 'example' => 'success', - ], - 'InstanceId' => [ - 'description' => 'The job instance ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '11111111', - ], - 'TimeType' => [ - 'description' => 'The method that is used to specify the time when to schedule the job instance. Valid values:'."\n" + .'- `LOAD5_BUSY`: The 5-minute average CPU Load is high.'."\n" ."\n" - .'* **1**: cron'."\n" - .'* **3**: fix_rate'."\n" - .'* **4**: second_delay'."\n" - .'* **100**: api'."\n" + .'- `HEAP5_BUSY`: The 5-minute average Heap Memory usage is high.'."\n" ."\n" - .'Enumeration class: com.alibaba.schedulerx.common.domain.TimeType'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'TriggerType' => [ - 'description' => 'The trigger type of the job instance. Valid values:'."\n" + .'- `DISK_BUSY`: The Disk Usage is high.', 'type' => 'string', 'example' => 'FREE', 'title' => ''], + 'Checked' => ['description' => 'Indicates whether the Worker is designated. Valid values:'."\n" ."\n" - .'* **1**: The job instance was triggered at the scheduled time.'."\n" - .'* **2**: The job instance was triggered due to data update.'."\n" - .'* **3**: The job instance was triggered by an API call.'."\n" - .'* **4**: The job instance was triggered because it is manually rerun.'."\n" - .'* **5**: The job instance was triggered because the system automatically reruns the job instance upon a system exception, such as a database exception.'."\n" + .'- `true`: The Worker is designated.'."\n" ."\n" - .'Enumeration class: com.alibaba.schedulerx.common.domain.TriggerType'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '3', - ], - 'EndTime' => [ - 'description' => 'The end time of the job execution.'."\n", - 'type' => 'string', - 'example' => '2020-07-27 11:52:10', - ], - 'StartTime' => [ - 'description' => 'The start time of the job execution.'."\n", - 'type' => 'string', - 'example' => '2020-07-27 11:52:10', - ], - 'Executor' => [ - 'description' => 'The user who executes the job.'."\n", - 'type' => 'string', - 'example' => 'A', - ], - 'JobId' => [ - 'description' => 'The job ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '92583', - ], - 'ScheduleTime' => [ - 'description' => 'The time when the job was scheduled to run.'."\n", - 'type' => 'string', - 'example' => '2020-07-27 11:52:10', - ], - 'DataTime' => [ - 'description' => 'The data timestamp of the job instance.'."\n", - 'type' => 'string', - 'example' => '2020-07-27 11:52:10', - ], - 'WorkAddr' => [ - 'description' => 'The endpoint of the triggered client. The value is in the IP address:Port number format.'."\n", - 'type' => 'string', - 'example' => '192.168.0.0:16', - ], - 'Parameters' => [ - 'description' => 'The parameters of the job instance.'."\n", - 'type' => 'string', - 'example' => '{\\"alertId\\":11111}', - ], - 'JobName' => [ - 'description' => 'The job name.'."\n", - 'type' => 'string', - 'example' => 'ManualJob', - ], - 'TraceId' => [ - 'description' => 'The trace ID, which can be used to query trace details.'."\n", - 'type' => 'string', - 'example' => '210e845016596663430048015d0a2c', + .'- `false`: The Worker is not designated.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Version' => ['description' => 'The version of the Worker.', 'type' => 'string', 'example' => '1.12.5', 'title' => ''], + 'Key' => ['description' => 'The value of the key. The meaning of this parameter depends on the value of the `DesignateType` parameter.'."\n" + ."\n" + .'- If `DesignateType` is `1`, this parameter indicates the address of the Worker.'."\n" + ."\n" + .'- If `DesignateType` is `2`, this parameter indicates the Tag of the Worker.', 'type' => 'string', 'example' => '10.52.169.25', 'title' => ''], + 'Metrics' => [ + 'description' => 'The performance metrics for the Worker.', + 'type' => 'object', + 'properties' => [ + 'CpuLoad1' => ['description' => 'The most recent CPU Load.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''], + 'CpuLoad5' => ['description' => 'The average CPU Load over the last five minutes.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''], + 'CpuProcessors' => ['description' => 'The number of available CPU cores.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'Heap1Usage' => ['description' => 'The most recent Heap Memory usage, as a percentage.', 'type' => 'number', 'format' => 'double', 'example' => '0.06072874493927125', 'title' => ''], + 'Heap5Usage' => ['description' => 'The average Heap Memory usage over the last five minutes, as a percentage.', 'type' => 'number', 'format' => 'double', 'example' => '0.06477732793522267', 'title' => ''], + 'Heap1Used' => ['description' => 'The amount of Heap Memory used in the most recent measurement, in MB.', 'type' => 'number', 'format' => 'double', 'example' => '14', 'title' => ''], + 'HeapMax' => ['description' => 'The maximum available Heap Memory, in MB.', 'type' => 'integer', 'format' => 'int32', 'example' => '500', 'title' => ''], + 'DiskUsage' => ['description' => 'The Disk Usage, as a percentage.', 'type' => 'number', 'format' => 'double', 'example' => '0.19142496008515167', 'title' => ''], + 'DiskUsed' => ['description' => 'The used disk space, in MB.', 'type' => 'integer', 'format' => 'int32', 'example' => '148', 'title' => ''], + 'DiskMax' => ['description' => 'The total disk capacity, in MB.', 'type' => 'integer', 'format' => 'int32', 'example' => '1024', 'title' => ''], + 'SharePoolQueueSize' => ['description' => 'The size of the queue in the shared pool.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'SharePoolAvailableSize' => ['description' => 'The number of available resources in the shared pool.', 'type' => 'integer', 'format' => 'int32', 'example' => '72', 'title' => ''], + 'ExecCount' => ['description' => 'The number of task executions.', 'type' => 'integer', 'format' => 'int64', 'example' => '56', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], ], + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], + 'DesignateType' => ['description' => 'The type of designated resource. Valid values:'."\n" + ."\n" + .'- `1`: The task is designated to run on a specific Worker.'."\n" + ."\n" + .'- `2`: The task is designated to run on Workers with a specific tag.'."\n" + ."\n" + .'> The default configuration for a task is to designate a specific Worker (`1`).', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'Transferable' => ['description' => 'Indicates whether Failover is enabled. If enabled, the task can be scheduled on non-designated Workers if all designated Workers are offline. Valid values:'."\n" + ."\n" + .'- `true`: Enabled.'."\n" + ."\n" + .'- `false`: Disabled.'."\n" + ."\n" + .'> By default, Failover is disabled (false).', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'AccessDeniedDetail' => [ + 'description' => 'Details about the access denial.', + 'type' => 'object', + 'properties' => [ + 'AuthAction' => ['description' => 'The requested operation that was denied.', 'type' => 'string', 'example' => 'edas:ReadSchedulerxDesignateInfo', 'title' => ''], + 'AuthPrincipalDisplayName' => ['description' => 'The display name of the Principal.', 'type' => 'string', 'example' => '209312833131416xxx', 'title' => ''], + 'AuthPrincipalOwnerId' => ['description' => 'The ID of the Alibaba Cloud account to which the Principal belongs.', 'type' => 'string', 'example' => '1827811800526xxx', 'title' => ''], + 'AuthPrincipalType' => ['description' => 'The type of the Principal.', 'type' => 'string', 'example' => 'SubUser', 'title' => ''], + 'EncodedDiagnosticMessage' => ['description' => 'The encoded diagnostic message.', 'type' => 'string', 'example' => 'AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==', 'title' => ''], + 'NoPermissionType' => ['description' => 'The type of permission denial.', 'type' => 'string', 'example' => 'ImplicitDeny', 'title' => ''], + 'PolicyType' => ['description' => 'The type of Policy that caused the denial.', 'type' => 'string', 'example' => 'AccountLevelIdentityBasedPolicy', 'title' => ''], ], + 'title' => '', + 'example' => '', ], ], - 'description' => '', + 'description' => 'The response object.', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"jobId=xxx is not existed\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"JobInstanceDetail\\": {\\n \\"Status\\": 4,\\n \\"Progress\\": \\"{\\\\\\"taskProgress\\\\\\":[{\\\\\\"name\\\\\\":\\\\\\"MAP_TASK_ROOT\\\\\\",\\\\\\"total\\\\\\":1,\\\\\\"pulled\\\\\\":1,\\\\\\"running\\\\\\":0,\\\\\\"success\\\\\\":0,\\\\\\"failed\\\\\\":0}],\\\\\\"workerProgress\\\\\\":[{\\\\\\"workerAddr\\\\\\":\\\\\\"11.122.241.245:34865\\\\\\",\\\\\\"total\\\\\\":1,\\\\\\"pulled\\\\\\":1,\\\\\\"running\\\\\\":0,\\\\\\"success\\\\\\":0,\\\\\\"failed\\\\\\":0}]}\\",\\n \\"Result\\": \\"{\'TotalSize\': 31, \'CurrentPage\': 5, \'PageSize\': 10}\\",\\n \\"InstanceId\\": 1189853849,\\n \\"TimeType\\": 1,\\n \\"TriggerType\\": 1,\\n \\"EndTime\\": \\"2020-07-27 11:52:10\\",\\n \\"StartTime\\": \\"2020-07-27 11:52:10\\",\\n \\"Executor\\": \\"张三\\\\n\\",\\n \\"JobId\\": 92583,\\n \\"ScheduleTime\\": \\"2020-07-27 11:52:10\\",\\n \\"DataTime\\": \\"2020-07-27 11:52:10\\",\\n \\"WorkAddr\\": \\"192.168.0.0:16\\",\\n \\"Parameters\\": \\"{\\\\\\\\\\\\\\"alertId\\\\\\\\\\\\\\":11111}\\",\\n \\"JobName\\": \\"ManualJob\\",\\n \\"TraceId\\": \\"210e845016596663430048015d0a2c\\"\\n }\\n }\\n}","type":"json"}]', - 'title' => 'GetJobInstance', - 'summary' => 'Queries the information about a job instance. You can view the status and progress of the job instance.', - ], - 'GetJobInstanceList' => [ - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => 'ReadSchedulerxDesignateInfo', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxDesignateInfo', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'AppGroup', 'arn' => 'acs:edas:{#regionId}:{#accountId}:namespace/{#Namespace}/JobGroup/{#GroupId}'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"jobId=xxx is not existed\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"DesignateDetailVos\\": [\\n {\\n \\"Offline\\": true,\\n \\"Size\\": 1,\\n \\"Starter\\": \\"pod\\",\\n \\"Busy\\": \\"FREE\\",\\n \\"Checked\\": true,\\n \\"Version\\": \\"1.12.5\\",\\n \\"Key\\": \\"10.52.169.25\\",\\n \\"Metrics\\": {\\n \\"CpuLoad1\\": 0,\\n \\"CpuLoad5\\": 0,\\n \\"CpuProcessors\\": 1,\\n \\"Heap1Usage\\": 0.06072874493927125,\\n \\"Heap5Usage\\": 0.06477732793522267,\\n \\"Heap1Used\\": 14,\\n \\"HeapMax\\": 500,\\n \\"DiskUsage\\": 0.19142496008515167,\\n \\"DiskUsed\\": 148,\\n \\"DiskMax\\": 1024,\\n \\"SharePoolQueueSize\\": 1,\\n \\"SharePoolAvailableSize\\": 72,\\n \\"ExecCount\\": 56\\n }\\n }\\n ],\\n \\"DesignateType\\": 1,\\n \\"Transferable\\": true\\n },\\n \\"AccessDeniedDetail\\": {\\n \\"AuthAction\\": \\"edas:ReadSchedulerxDesignateInfo\\",\\n \\"AuthPrincipalDisplayName\\": \\"209312833131416xxx\\",\\n \\"AuthPrincipalOwnerId\\": \\"1827811800526xxx\\",\\n \\"AuthPrincipalType\\": \\"SubUser\\",\\n \\"EncodedDiagnosticMessage\\": \\"AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==\\",\\n \\"NoPermissionType\\": \\"ImplicitDeny\\",\\n \\"PolicyType\\": \\"AccountLevelIdentityBasedPolicy\\"\\n }\\n}","type":"json"}]', + ], + 'ReadSchedulerxNotificationPolicy' => [ + 'summary' => 'Queries notification policies.', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', - 'systemTags' => [ - 'operationType' => 'get', - ], + 'systemTags' => ['operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'tenantRelevance' => 'tenant'], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], - ], - [ - 'name' => 'Namespace', - 'in' => 'query', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the **Namespace** page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], - ], - [ - 'name' => 'NamespaceSource', - 'in' => 'query', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], - ], - [ - 'name' => 'GroupId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The application group ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'testSchedulerx.defaultGroup', - ], - ], - [ - 'name' => 'JobId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The job ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'docRequired' => true, - 'example' => '92583', - ], - ], - [ - 'name' => 'Status', - 'in' => 'query', - 'allowEmptyValue' => true, - 'schema' => [ - 'title' => '查询指定状态的任务实例列表', - 'description' => 'The status of the job instance. Valid values:'."\n" - ."\n" - .'1: The job instance is pending. 3: The job instance is running. 4: The job instance is run. 5: The job instance fails. 9: The request for running the job instance is rejected. To specify this parameter, you must declare the following enumeration class: com.alibaba.schedulerx.common.domain.InstanceStatus.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '5', - 'enum' => [], - ], - ], - [ - 'name' => 'StartTimestamp', - 'in' => 'query', - 'allowEmptyValue' => true, - 'schema' => [ - 'title' => '开始时间戳(毫秒)', - 'description' => 'The beginning of the time range to query. Specify a UNIX timestamp.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1684116000000', - ], + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'EndTimestamp', + 'name' => 'PolicyName', 'in' => 'query', - 'allowEmptyValue' => true, - 'schema' => [ - 'title' => '结束时间戳(毫秒)', - 'description' => 'The end of the time range to query. Specify a UNIX timestamp.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1684202400000', - ], + 'schema' => ['title' => '', 'description' => 'The name of the notification policy. Supports fuzzy matching.'."\n", 'type' => 'string', 'required' => false, 'example' => 'test-weekdays'], ], [ - 'name' => 'PageNum', + 'name' => 'MaxResults', 'in' => 'query', - 'schema' => [ - 'title' => '分页获取数据,分页号,默认是1', - 'description' => 'The page number. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => 'The maximum number of entries returned. Default value: 20.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'default' => '20', 'title' => ''], ], [ - 'name' => 'PageSize', + 'name' => 'NextToken', 'in' => 'query', - 'schema' => [ - 'title' => '分页获取数据,分页大小,默认是10', - 'description' => 'The number of entries per page. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => 'The cursor for pagination. Leave this parameter empty for the first request. When the returned value is empty, all data has been retrieved.'."\n", 'type' => 'string', 'required' => false, 'example' => 'O39nXKu5XafATl3/cJjSJw==', 'title' => ''], ], ], 'responses' => [ @@ -9287,227 +7109,208 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The error message that is returned only if the corresponding error occurs.'."\n", - 'type' => 'string', - 'example' => 'jobid: 92583 not match groupId: testSchedulerx.defaultGroup', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* **true**'."\n" - .'* **false**'."\n", - 'type' => 'boolean', - 'example' => 'true', + 'Code' => ['description' => 'The status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message.'."\n", 'type' => 'string', 'example' => 'unknown exception occurred', 'title' => ''], + 'RequestId' => ['description' => 'The unique request ID.'."\n", 'type' => 'string', 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'AccessDeniedDetail' => [ + 'description' => 'The access denial details.', + 'type' => 'object', + 'properties' => [ + 'AuthAction' => ['description' => 'The authentication operation.', 'type' => 'string', 'example' => 'edas:ReadSchedulerxNotificationPolicy', 'title' => ''], + 'AuthPrincipalDisplayName' => ['description' => 'The principal name.'."\n", 'type' => 'string', 'example' => '209312833131416xxx', 'title' => ''], + 'AuthPrincipalOwnerId' => ['description' => 'The account of the principal.'."\n", 'type' => 'string', 'example' => '1827811800526xxx', 'title' => ''], + 'AuthPrincipalType' => ['description' => 'The principal type.'."\n", 'type' => 'string', 'example' => 'SubUser', 'title' => ''], + 'EncodedDiagnosticMessage' => ['description' => 'The encoded diagnostic message.'."\n", 'type' => 'string', 'example' => 'AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==', 'title' => ''], + 'NoPermissionType' => ['description' => 'The permission denial type.'."\n", 'type' => 'string', 'example' => 'ImplicitDeny', 'title' => ''], + 'PolicyType' => ['description' => 'The policy type.'."\n", 'type' => 'string', 'example' => 'AccountLevelIdentityBasedPolicy', 'title' => ''], + ], + 'title' => '', + 'example' => '', ], 'Data' => [ - 'description' => 'The information about the job instances.'."\n", + 'description' => '*'."\n", 'type' => 'object', 'properties' => [ - 'JobInstanceDetails' => [ - 'description' => 'The details of the job instance.'."\n", + 'Records' => [ + 'description' => 'The data records.', 'type' => 'array', 'items' => [ + 'description' => 'The record.'."\n", 'type' => 'object', 'properties' => [ - 'Status' => [ - 'description' => 'The state of the job instance. Valid values:'."\n" - ."\n" - .'* **1**: The job instance is waiting for execution.'."\n" - .'* **3**: The job instance is running.'."\n" - .'* **4**: The job instance is successful.'."\n" - .'* **5**: The job instance failed.'."\n" - .'* **9**: The job instance is rejected.'."\n" - ."\n" - .'Enumeration class: com.alibaba.schedulerx.common.domain.InstanceStatus'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '4', - ], - 'Progress' => [ - 'description' => 'The progress of the job instance.'."\n", - 'type' => 'string', - 'example' => 'complete', - ], - 'Result' => [ - 'description' => 'The execution results of the job instance.'."\n", - 'type' => 'string', - 'example' => 'success', - ], - 'InstanceId' => [ - 'description' => 'The job instance ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '11111111', - ], - 'TimeType' => [ - 'description' => 'The method that is used to specify the time when to schedule the job instance. Valid values:'."\n" - ."\n" - .'* **1**: cron'."\n" - .'* **3**: fix_rate'."\n" - .'* **4**: second_delay'."\n" - .'* **100**: api'."\n" - ."\n" - .'Enumeration class: com.alibaba.schedulerx.common.domain.TimeType'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'TriggerType' => [ - 'description' => 'The trigger type of the job instance. Valid values:'."\n" - ."\n" - .'* **1**: The job instance was triggered at the scheduled time.'."\n" - .'* **2**: The job instance was triggered due to data updates.'."\n" - .'* **3**: The job instance was triggered by an API call.'."\n" - .'* **4**: The job instance was triggered because it is manually rerun.'."\n" - .'* **5**: The job instance was triggered because the system automatically reruns the job instance upon a system exception, such as a database exception.'."\n" - ."\n" - .'Enumeration class: com.alibaba.schedulerx.common.domain.TriggerType'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '3', - ], - 'EndTime' => [ - 'description' => 'The end time of the job execution.'."\n", - 'type' => 'string', - 'example' => '2020-07-27 11:52:10', - ], - 'StartTime' => [ - 'description' => 'The start time of the job execution.'."\n", - 'type' => 'string', - 'example' => '2020-07-27 11:52:10', - ], - 'Executor' => [ - 'description' => 'The user who executes the job.'."\n", - 'type' => 'string', - 'example' => 'A', - ], - 'JobId' => [ - 'description' => 'The job ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '92583', - ], - 'ScheduleTime' => [ - 'description' => 'The time when the job was scheduled to run.'."\n", - 'type' => 'string', - 'example' => '2020-07-27 11:52:10', - ], - 'DataTime' => [ - 'description' => 'The data timestamp of the job instance.'."\n", - 'type' => 'string', - 'example' => '2020-07-27 11:52:10', - ], - 'WorkAddr' => [ - 'description' => 'The endpoint of the triggered client. The value is in the IP address:Port number format.'."\n", - 'type' => 'string', - 'example' => '192.168.0.0:16', + 'PolicyName' => ['description' => 'The name of the notification policy.'."\n", 'type' => 'string', 'example' => 'test-weekdays', 'title' => ''], + 'Description' => ['description' => 'The description of the notification policy.'."\n", 'type' => 'string', 'example' => 'Monday-Friday only'."\n", 'title' => ''], + 'Creator' => ['description' => 'The creator.'."\n", 'type' => 'string', 'example' => '201576653956616970', 'title' => ''], + 'Updater' => ['description' => 'The updater.'."\n", 'type' => 'string', 'example' => '1144881807903942', 'title' => ''], + 'CreateTime' => ['description' => 'The creation time.'."\n", 'type' => 'string', 'example' => '2025-09-17 11:21:01', 'title' => ''], + 'UpdateTime' => ['description' => 'The update time.'."\n", 'type' => 'string', 'example' => '2025-09-17 11:21:01', 'title' => ''], + 'ChannelTimeRange' => ['description' => 'The configuration of the notification policy.'."\n", 'type' => 'string', 'example' => '{'."\n" + .' "isUnifiedSetting": false,'."\n" + .' "timezone": "GMT+8",'."\n" + .' "webhookIsAtAll": "false",'."\n" + .' "timeRanges": {'."\n" + .' "webhook": ['."\n" + .' {'."\n" + .' "startTime": "08:00",'."\n" + .' "endTime": "18:00",'."\n" + .' "daysOfWeek": ['."\n" + .' 1,'."\n" + .' 2,'."\n" + .' 3,'."\n" + .' 4,'."\n" + .' 5'."\n" + .' ]'."\n" + .' }'."\n" + .' ],'."\n" + .' "sms": ['."\n" + .' {'."\n" + .' "startTime": "08:00",'."\n" + .' "endTime": "18:00",'."\n" + .' "daysOfWeek": ['."\n" + .' 1,'."\n" + .' 2,'."\n" + .' 3,'."\n" + .' 4,'."\n" + .' 5'."\n" + .' ]'."\n" + .' }'."\n" + .' ],'."\n" + .' "mail": ['."\n" + .' {'."\n" + .' "startTime": "08:00",'."\n" + .' "endTime": "18:00",'."\n" + .' "daysOfWeek": ['."\n" + .' 1,'."\n" + .' 2,'."\n" + .' 3,'."\n" + .' 4,'."\n" + .' 5'."\n" + .' ]'."\n" + .' }'."\n" + .' ],'."\n" + .' "phone": ['."\n" + .' {'."\n" + .' "startTime": "08:00",'."\n" + .' "endTime": "18:00",'."\n" + .' "daysOfWeek": ['."\n" + .' 1,'."\n" + .' 2,'."\n" + .' 3,'."\n" + .' 4,'."\n" + .' 5'."\n" + .' ]'."\n" + .' }'."\n" + .' ]'."\n" + .' }'."\n" + .'}', 'title' => ''], + 'ReferenceApps' => [ + 'description' => 'The list of applications associated with the notification policy.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about an associated application.', + 'type' => 'object', + 'properties' => [ + 'AppGroupId' => ['description' => 'The ID of the task group.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '123', 'title' => ''], + 'GroupId' => ['description' => 'The ID of the application.'."\n", 'type' => 'string', 'example' => 'test-app', 'title' => ''], + 'NamespaceUid' => ['description' => 'The unique identifier of the namespace.'."\n", 'type' => 'string', 'example' => '18271388-aa16-4eab-9a6f-55f65d7e4391', 'title' => ''], + 'NamespaceName' => ['description' => 'The name of the namespace.'."\n", 'type' => 'string', 'example' => 'Notification strategy testing namespace', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], + 'NextToken' => ['description' => 'When data that matches the query conditions has not been fully retrieved, the server returns nextToken. You can then use nextToken to continue retrieving the remaining data.'."\n", 'type' => 'string', 'example' => 'O39nXKu5XafATl3/cJjSJw=='."\n", 'title' => ''], + 'Total' => ['description' => 'The total number of records.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '42', 'title' => ''], + 'MaxResults' => ['description' => 'The maximum number of entries returned.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], ], + 'title' => '', + 'example' => '', ], ], 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"jobid: 92583 not match groupId: testSchedulerx.defaultGroup\\",\\n \\"RequestId\\": \\"704A2A61-3681-5568-92F7-2DFCC53F33D1\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"JobInstanceDetails\\": [\\n {\\n \\"Status\\": 4,\\n \\"Progress\\": \\"\\",\\n \\"Result\\": \\"\\",\\n \\"InstanceId\\": 1042499986,\\n \\"TimeType\\": 1,\\n \\"TriggerType\\": 3,\\n \\"EndTime\\": \\"2020-07-27 11:52:10\\",\\n \\"StartTime\\": \\"2020-07-27 11:52:10\\",\\n \\"Executor\\": \\"A\\",\\n \\"JobId\\": 92583,\\n \\"ScheduleTime\\": \\"2020-07-27 11:52:10\\",\\n \\"DataTime\\": \\"2020-07-27 11:52:10\\",\\n \\"WorkAddr\\": \\"192.168.0.0:16\\"\\n }\\n ]\\n }\\n}","type":"json"}]', - 'title' => 'GetJobInstanceList', - 'summary' => 'Queries the most recent 10 execution instances of a job.', - ], - 'RetryJobInstance' => [ - 'summary' => 'Reruns a successful or failed job instance. You can call this operation only in the professional edition.', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"unknown exception occurred\\",\\n \\"RequestId\\": \\"71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7\\",\\n \\"Success\\": true,\\n \\"AccessDeniedDetail\\": {\\n \\"AuthAction\\": \\"edas:ReadSchedulerxNotificationPolicy\\",\\n \\"AuthPrincipalDisplayName\\": \\"209312833131416xxx\\",\\n \\"AuthPrincipalOwnerId\\": \\"1827811800526xxx\\",\\n \\"AuthPrincipalType\\": \\"SubUser\\",\\n \\"EncodedDiagnosticMessage\\": \\"AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==\\",\\n \\"NoPermissionType\\": \\"ImplicitDeny\\",\\n \\"PolicyType\\": \\"AccountLevelIdentityBasedPolicy\\"\\n },\\n \\"Data\\": {\\n \\"Records\\": [\\n {\\n \\"PolicyName\\": \\"test-weekdays\\",\\n \\"Description\\": \\"Monday-Friday only\\\\n\\",\\n \\"Creator\\": \\"201576653956616970\\",\\n \\"Updater\\": \\"1144881807903942\\",\\n \\"CreateTime\\": \\"2025-09-17 11:21:01\\",\\n \\"UpdateTime\\": \\"2025-09-17 11:21:01\\",\\n \\"ChannelTimeRange\\": \\"{\\\\n \\\\\\"isUnifiedSetting\\\\\\": false,\\\\n \\\\\\"timezone\\\\\\": \\\\\\"GMT+8\\\\\\",\\\\n \\\\\\"webhookIsAtAll\\\\\\": \\\\\\"false\\\\\\",\\\\n \\\\\\"timeRanges\\\\\\": {\\\\n \\\\\\"webhook\\\\\\": [\\\\n {\\\\n \\\\\\"startTime\\\\\\": \\\\\\"08:00\\\\\\",\\\\n \\\\\\"endTime\\\\\\": \\\\\\"18:00\\\\\\",\\\\n \\\\\\"daysOfWeek\\\\\\": [\\\\n 1,\\\\n 2,\\\\n 3,\\\\n 4,\\\\n 5\\\\n ]\\\\n }\\\\n ],\\\\n \\\\\\"sms\\\\\\": [\\\\n {\\\\n \\\\\\"startTime\\\\\\": \\\\\\"08:00\\\\\\",\\\\n \\\\\\"endTime\\\\\\": \\\\\\"18:00\\\\\\",\\\\n \\\\\\"daysOfWeek\\\\\\": [\\\\n 1,\\\\n 2,\\\\n 3,\\\\n 4,\\\\n 5\\\\n ]\\\\n }\\\\n ],\\\\n \\\\\\"mail\\\\\\": [\\\\n {\\\\n \\\\\\"startTime\\\\\\": \\\\\\"08:00\\\\\\",\\\\n \\\\\\"endTime\\\\\\": \\\\\\"18:00\\\\\\",\\\\n \\\\\\"daysOfWeek\\\\\\": [\\\\n 1,\\\\n 2,\\\\n 3,\\\\n 4,\\\\n 5\\\\n ]\\\\n }\\\\n ],\\\\n \\\\\\"phone\\\\\\": [\\\\n {\\\\n \\\\\\"startTime\\\\\\": \\\\\\"08:00\\\\\\",\\\\n \\\\\\"endTime\\\\\\": \\\\\\"18:00\\\\\\",\\\\n \\\\\\"daysOfWeek\\\\\\": [\\\\n 1,\\\\n 2,\\\\n 3,\\\\n 4,\\\\n 5\\\\n ]\\\\n }\\\\n ]\\\\n }\\\\n}\\",\\n \\"ReferenceApps\\": [\\n {\\n \\"AppGroupId\\": 123,\\n \\"GroupId\\": \\"test-app\\",\\n \\"NamespaceUid\\": \\"18271388-aa16-4eab-9a6f-55f65d7e4391\\",\\n \\"NamespaceName\\": \\"Notification strategy testing namespace\\"\\n }\\n ]\\n }\\n ],\\n \\"NextToken\\": \\"O39nXKu5XafATl3/cJjSJw==\\\\n\\",\\n \\"Total\\": 42,\\n \\"MaxResults\\": 10\\n }\\n}","type":"json"}]', + 'title' => 'ReadSchedulerxNotificationPolicy', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxNotificationPolicy', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'RerunJob' => [ + 'summary' => 'Reruns a job to obtain the historical data of the job. You can call this operation only in the professional edition.', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'none', - ], + 'systemTags' => ['operationType' => 'none'], 'parameters' => [ [ 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'in' => 'formData', + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Namespace', - 'in' => 'query', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'in' => 'formData', + 'schema' => ['description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ 'name' => 'NamespaceSource', - 'in' => 'query', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'in' => 'formData', + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ 'name' => 'GroupId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The application group ID. You can obtain the application group ID on the Application Management page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'testSchedulerx.defaultGroup', - ], + 'in' => 'formData', + 'schema' => ['description' => 'The application group ID. You can obtain the application group ID on the Application Management page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ 'name' => 'JobId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The job ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '123', - ], + 'in' => 'formData', + 'schema' => ['description' => 'The job ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123', 'title' => ''], ], [ - 'name' => 'JobInstanceId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The job instance ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '123456', - ], + 'name' => 'StartDate', + 'in' => 'formData', + 'schema' => ['description' => 'The time when the job starts to rerun. Specify a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1645459200000', 'title' => ''], + ], + [ + 'name' => 'EndDate', + 'in' => 'formData', + 'schema' => ['description' => 'The time when the job stops running. Specify a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1645718400000', 'title' => ''], + ], + [ + 'name' => 'DataTime', + 'in' => 'formData', + 'schema' => ['description' => 'The data timestamp of the job. Specify a string in the HH:mm:ss format.'."\n", 'type' => 'string', 'required' => true, 'example' => '10:00:00', 'title' => ''], ], ], 'responses' => [ @@ -9517,121 +7320,81 @@ 'description' => 'The response schema.'."\n", 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0', - ], - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Message' => [ - 'description' => 'The returned error message.'."\n", - 'type' => 'string', - 'example' => 'jobId=xxx is not existed', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0'], + 'Code' => ['description' => 'The HTTP status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Message' => ['description' => 'The returned error message.'."\n", 'type' => 'string', 'example' => 'jobId=xxx is not existed', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], + 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"jobId=xxx is not existed\\"\\n}","type":"json"}]', - 'title' => 'RetryJobInstance', - ], - 'SetJobInstanceSuccess' => [ - 'summary' => 'Forcibly sets the state of a job instance to successful. You can call this operation only in the professional edition.', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => 'RerunJob', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-21T02:51:00.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-03-30T08:41:55.000Z', 'description' => 'Response parameters changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxJobRerun', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'RetryJobInstance' => [ + 'summary' => 'Reruns a successful or failed job instance. You can call this operation only in the professional edition.', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - ], + 'systemTags' => ['operationType' => 'none'], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'schema' => ['description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ 'name' => 'NamespaceSource', 'in' => 'query', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The application group ID. You can obtain the application group ID on the Application Management page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'testSchedulerx.defaultGroup', - ], + 'schema' => ['description' => 'The application group ID. You can obtain the application group ID on the Application Management page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ 'name' => 'JobId', 'in' => 'query', - 'schema' => [ - 'description' => 'The job ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '123', - ], + 'schema' => ['description' => 'The job ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123', 'title' => ''], ], [ 'name' => 'JobInstanceId', 'in' => 'query', - 'schema' => [ - 'description' => 'The job instance ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '123456', - ], + 'schema' => ['description' => 'The job instance ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456', 'title' => ''], ], ], 'responses' => [ @@ -9641,186 +7404,42 @@ 'description' => 'The response schema.'."\n", 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0', - ], - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Message' => [ - 'description' => 'The returned error message.'."\n", - 'type' => 'string', - 'example' => 'jobId=xxx is not existed', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0'], + 'Code' => ['description' => 'The HTTP status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Message' => ['description' => 'The returned error message.'."\n", 'type' => 'string', 'example' => 'jobId=xxx is not existed', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], + 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"jobId=xxx is not existed\\"\\n}","type":"json"}]', - 'title' => 'SetJobInstanceSuccess', - ], - 'GrantPermission' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'operationType' => 'write', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'create', - ], - 'parameters' => [ - [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], - ], - [ - 'name' => 'Namespace', - 'in' => 'query', - 'schema' => [ - 'description' => 'The namespace ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffcdf01', - ], - ], - [ - 'name' => 'NamespaceSource', - 'in' => 'query', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], - ], - [ - 'name' => 'GroupId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The application group ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'test.defaultGroup', - ], - ], - [ - 'name' => 'UserId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The user ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => '277641081920123456', - ], - ], - [ - 'name' => 'UserName', - 'in' => 'query', - 'schema' => [ - 'description' => 'The username.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'lilei', - ], - ], - [ - 'name' => 'GrantOption', - 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to grant the permissions with the GRANT option. Valid values: -**true** -**false**'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '400', - ], - 'Message' => [ - 'description' => 'The error message that is returned only if the corresponding error occurs.'."\n", - 'type' => 'string', - 'example' => 'Your request is denied as lack of ssl protect.', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* **true**'."\n" - .'* **false**'."\n", - 'type' => 'boolean', - 'example' => 'false', - ], + 'title' => 'RetryJobInstance', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-18T05:48:50.000Z', 'description' => 'Response parameters changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxJobInstRun', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 400,\\n \\"Message\\": \\"Your request is denied as lack of ssl protect.\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": false\\n}","errorExample":""},{"type":"xml","example":"<RequestId>4F68ABED-AC31-4412-9297-D9A8F0401108</RequestId>\\n<Message>Your request is denied as lack of ssl protect.</Message>\\n<Code>400</Code>\\n<Success>false</Success>","errorExample":""}]', - 'title' => 'GrantPermission', - 'summary' => 'Grants permissions to an application group.', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', ], 'RevokePermission' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -9828,63 +7447,32 @@ ], 'operationType' => 'write', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'delete', - ], + 'systemTags' => ['operationType' => 'delete'], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-shenzhen', - ], + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-shenzhen', 'title' => ''], ], [ 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The unique identifier (UID) of the namespace. You can obtain the namespace UID on the Namespace page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffcdf01', - ], + 'schema' => ['description' => 'The unique identifier (UID) of the namespace. You can obtain the namespace UID on the Namespace page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffcdf01', 'title' => ''], ], [ 'name' => 'NamespaceSource', 'in' => 'query', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The application ID. You can obtain the application ID on the Application Management page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'test.defalutGroup', - ], + 'schema' => ['description' => 'The application ID. You can obtain the application ID on the Application Management page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'test.defalutGroup', 'title' => ''], ], [ 'name' => 'UserId', 'in' => 'query', - 'schema' => [ - 'description' => 'The UID of the RAM user.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => '277641081920123456', - ], + 'schema' => ['description' => 'The UID of the RAM user.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '277641081920123456', 'title' => ''], ], ], 'responses' => [ @@ -9892,31 +7480,17 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '400', - ], - 'Message' => [ - 'description' => 'The error message that is returned only if the corresponding error occurs.'."\n", - 'type' => 'string', - 'example' => 'Your request is denied as lack of ssl protect.', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* **true**'."\n" - .'* **false**'."\n", - 'type' => 'boolean', - 'example' => 'false', - ], + 'Code' => ['description' => 'The HTTP status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '400', 'title' => ''], + 'Message' => ['description' => 'The error message that is returned only if the corresponding error occurs.'."\n", 'type' => 'string', 'example' => 'Your request is denied as lack of ssl protect.', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", 'type' => 'boolean', 'example' => 'false', 'title' => ''], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], @@ -9926,163 +7500,66 @@ 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', - ], - 'GetLog' => [ - 'summary' => 'Queries the operational logs of a job. You can call this operation only in the professional edition.', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-18T05:48:50.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-12-26T01:59:00.000Z', 'description' => 'Request parameters changed, Error codes changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'edas:GrantSchedulerxRevokePermission', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'SetJobInstanceSuccess' => [ + 'summary' => 'Forcibly sets the state of a job instance to successful. You can call this operation only in the professional edition.', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - ], + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'schema' => ['description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ 'name' => 'NamespaceSource', 'in' => 'query', - 'schema' => [ - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The application group ID. You can obtain the application group ID on the Application Management page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'testSchedulerx.defaultGroup', - ], + 'schema' => ['description' => 'The application group ID. You can obtain the application group ID on the Application Management page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ 'name' => 'JobId', 'in' => 'query', - 'allowEmptyValue' => true, - 'schema' => [ - 'description' => 'The job ID.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '123', - ], + 'schema' => ['description' => 'The job ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123', 'title' => ''], ], [ 'name' => 'JobInstanceId', 'in' => 'query', - 'allowEmptyValue' => true, - 'schema' => [ - 'description' => 'The job instance ID.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '123456', - ], - ], - [ - 'name' => 'StartTimestamp', - 'in' => 'query', - 'allowEmptyValue' => true, - 'schema' => [ - 'description' => 'The time when the job starts to run. Specify a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1675739364000', - ], - ], - [ - 'name' => 'EndTimestamp', - 'in' => 'query', - 'allowEmptyValue' => true, - 'schema' => [ - 'description' => 'The time when the job stops running. Specify a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1675739484000', - ], - ], - [ - 'name' => 'Keyword', - 'in' => 'query', - 'allowEmptyValue' => true, - 'schema' => [ - 'description' => 'The keyword.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'ERROR', - ], - ], - [ - 'name' => 'Line', - 'in' => 'query', - 'allowEmptyValue' => true, - 'schema' => [ - 'description' => 'The number of rows to return. The maximum number is 200.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '200', - 'minimum' => '0', - 'example' => '50', - 'default' => '50', - ], - ], - [ - 'name' => 'Offset', - 'in' => 'query', - 'allowEmptyValue' => true, - 'schema' => [ - 'description' => 'The number of offset rows. This parameter can be used for a paged query.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '0', - 'default' => '0', - ], - ], - [ - 'name' => 'Reverse', - 'in' => 'query', - 'allowEmptyValue' => true, - 'schema' => [ - 'description' => 'Specifies whether to reverse the order. By default, the order is reversed.'."\n", - 'type' => 'boolean', - 'deprecated' => false, - 'required' => false, - 'example' => 'true', - 'default' => 'true', - ], + 'schema' => ['description' => 'The job instance ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456', 'title' => ''], ], ], 'responses' => [ @@ -10092,283 +7569,212 @@ 'description' => 'The response schema.'."\n", 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0', - ], - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Message' => [ - 'description' => 'The returned error message.'."\n", - 'type' => 'string', - 'example' => 'jobid=xxx is not existed', - ], - 'Data' => [ - 'description' => 'The returned data.'."\n", - 'type' => 'object', - 'properties' => [ - 'Logs' => [ - 'description' => 'The logs. The value is an array of strings.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The log in each row.'."\n", - 'type' => 'string', - 'example' => 'hello world', - ], - ], - ], - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0'], + 'Code' => ['description' => 'The HTTP status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Message' => ['description' => 'The returned error message.'."\n", 'type' => 'string', 'example' => 'jobId=xxx is not existed', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"jobId=xxx is not existed\\"\\n}","type":"json"}]', + 'title' => 'SetJobInstanceSuccess', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-18T05:48:50.000Z', 'description' => 'Response parameters changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxJobInstMarkSuccess', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"jobid=xxx is not existed\\",\\n \\"Data\\": {\\n \\"Logs\\": [\\n \\"hello world\\"\\n ]\\n }\\n}","type":"json"}]', - 'title' => 'GetLog', ], - 'DeleteRouteStrategy' => [ - 'summary' => 'Deletes a routing policy.', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'SetWfInstanceSuccess' => [ + 'summary' => 'Forcibly sets the state of a workflow instance to successful. You can call this operation only in the professional edition.', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'delete', - ], + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the ID of the namespace on the **Namespace** page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'schema' => ['description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], + ], + [ + 'name' => 'NamespaceSource', + 'in' => 'query', + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The application ID. You can obtain the application ID on the **Application Management** page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'testSchedulerx.defaultGroup', - ], + 'schema' => ['description' => 'The application group ID. You can obtain the application group ID on the Application Management page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ - 'name' => 'JobId', + 'name' => 'WorkflowId', 'in' => 'query', - 'schema' => [ - 'description' => 'The job ID. You can obtain the job ID on the **Task Management** page in the SchedulerX console.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '92583', - 'default' => '-1', - ], + 'schema' => ['description' => 'The workflow ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123', 'title' => ''], + ], + [ + 'name' => 'WfInstanceId', + 'in' => 'query', + 'schema' => ['description' => 'The workflow instance ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'Schema of Response'."\n", + 'description' => 'The information about the array object.'."\n", 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code that is returned.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The additional information that is returned.'."\n", - 'type' => 'string', - 'example' => 'strategy is already deleted.', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108'], + 'Code' => ['description' => 'The HTTP status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Message' => ['description' => 'The error message that is returned only if the corresponding error occurs.'."\n", 'type' => 'string', 'example' => 'wofkflowId is not existed', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"wofkflowId is not existed\\"\\n}","type":"json"}]', + 'title' => 'SetWfInstanceSuccess', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-18T05:48:50.000Z', 'description' => 'Response parameters changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxWfInstanceMarkSuccess', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"strategy is already deleted.\\",\\n \\"RequestId\\": \\"71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => 'DeleteRouteStrategy', ], - 'BatchDeleteRouteStrategy' => [ - 'summary' => 'Deletes multiple routing policies at a time.', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'StopInstance' => [ + 'methods' => ['get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'delete', - ], + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'JobId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the region.', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The ID of the job. You can obtain the ID of the job on the Task Management page in the SchedulerX console.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'docRequired' => true, 'example' => '92583', 'title' => ''], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the job instance in the running state.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'docRequired' => true, 'example' => '11111111', 'title' => ''], ], [ 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the namespace. You can obtain the ID of the namespace on the Namespace page in the SchedulerX console.', - 'type' => 'string', - 'required' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'schema' => ['description' => 'The ID of the namespace. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], + ], + [ + 'name' => 'NamespaceSource', + 'in' => 'query', + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the application. You can obtain the application ID on the Application Management page in the SchedulerX console.', - 'type' => 'string', - 'required' => true, - 'example' => 'testSchedulerx.defaultGroup', - ], + 'schema' => ['description' => 'The ID of the application. You can obtain the application ID on the Application Management page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ - 'name' => 'JobIdList', - 'in' => 'formData', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'The IDs of the jobs.', - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the job. You can obtain the ID of the job on the Task Management page in the SchedulerX console.', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '99341', - ], - 'required' => false, - 'maxItems' => 3000, - ], + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the region.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'The schema of the response.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.', - 'type' => 'string', - 'example' => '704A2A61-3681-5568-92F7-2DFCC53F33D1', - ], - 'Code' => [ - 'description' => 'The HTTP status code that is returned.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The additional information that is returned.', - 'type' => 'string', - 'example' => 'job is not existed, jobId=162837', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'true: The request was successful.'."\n" - .'false: The request failed.', - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The HTTP status code that is returned.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The error message that is returned only if an error occurs.'."\n", 'type' => 'string', 'example' => 'Your request is denied as lack of ssl protect.', 'title' => ''], + 'RequestId' => ['description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the call is successful. Valid values:'."\n" + ."\n" + .'* **true**: The call is successful.'."\n" + .'* **false**: The call fails.'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Your request is denied as lack of ssl protect.\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<StopInstanceResponse>\\n<RequestId>4F68ABED-AC31-4412-9297-D9A8F0401108</RequestId>\\n<Message>Your request is denied as lack of ssl protect.</Message>\\n<Code>200</Code>\\n<Success>true</Success>\\n</StopInstanceResponse>","errorExample":""}]', + 'title' => 'StopInstance', + 'summary' => 'Stops a job instance in the running state.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-21T05:52:09.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-12-26T01:58:59.000Z', 'description' => 'Request parameters changed, Error codes changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxJobInstStop', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"704A2A61-3681-5568-92F7-2DFCC53F33D1\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"job is not existed, jobId=162837\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => 'BatchDeleteRouteStrategy', ], - 'CreateRouteStrategy' => [ - 'summary' => 'Creates a routing policy.', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'UpdateAppGroup' => [ + 'summary' => 'Update the application group.', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -10376,1183 +7782,518 @@ ], 'operationType' => 'write', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'create', - ], + 'systemTags' => ['operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'Description', 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The description of the application.', 'type' => 'string', 'required' => false, 'example' => 'Test', 'title' => ''], ], [ - 'name' => 'Name', + 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the routing policy.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'test-strategy', - ], + 'schema' => ['description' => 'The ID of the application. You can obtain the application ID on the **Application Management** page in the SchedulerX console.', 'type' => 'string', 'required' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ - 'name' => 'GroupId', + 'name' => 'MaxConcurrency', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the application group. You can obtain the ID on the **Application Management** page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'testSchedulerx.defaultGroup', - ], + 'schema' => ['description' => 'The maximum number of concurrent instances. Default value: 1. A value of 1 specifies that if the last triggered instance is running, the next instance is not triggered even if the scheduled point in time for running the next instance is reached.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ - 'name' => 'JobId', + 'name' => 'Namespace', 'in' => 'query', - 'schema' => [ - 'description' => 'The job ID. You can obtain the ID on the **Task Management** page in the SchedulerX console.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '54978', - 'default' => '-1', - ], + 'schema' => ['description' => 'The ID of the namespace. You can obtain the ID of the namespace on the Namespace page in the SchedulerX console.', 'type' => 'string', 'required' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ - 'name' => 'Type', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the routing policy. Valid value:'."\n" - ."\n" - .'* **3**: routes by proportion.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '3', - 'default' => '1', - ], + 'schema' => ['description' => 'The ID of the region.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'Status', + 'name' => 'AppVersion', 'in' => 'query', 'schema' => [ - 'description' => 'Specifies whether to enable the routing policy. Valid values:'."\n" - ."\n" - .'* **0**: disables the routing policy.'."\n" - .'* **1**: enables the routing policy.'."\n", + 'description' => 'The application version. 1: Basic version, 2: Professional version.', 'type' => 'integer', 'format' => 'int32', + 'example' => '2', + 'default' => '2', + 'enum' => ['1', '2'], + 'title' => '', 'required' => false, - 'example' => '1', - 'default' => '1', ], ], [ - 'name' => 'StrategyContent', + 'name' => 'MonitorConfigJson', 'in' => 'query', - 'schema' => [ - 'description' => 'The details of the routing policy. The value is a JSON string. For more information about this parameter, see **the additional information about request parameters** below this table.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '[{"percentage":20,"target":"[\\"version1\\"]","targetType":"label"}]', - ], + 'schema' => ['description' => 'The configuration of the alert. The value is a JSON string. For more information about this parameter, see **Additional information about request parameters**.', 'type' => 'string', 'required' => false, 'example' => '{'."\n" + .' "sendChannel": "ding,sms,mail,phone",'."\n" + .' "alarmType": "Contacts",'."\n" + .' "webhookIsAtAll": false'."\n" + .'}', 'title' => ''], ], [ - 'name' => 'Namespace', + 'name' => 'MonitorContactsJson', 'in' => 'query', - 'schema' => [ - 'description' => 'The namespace ID. You can obtain the namespace ID on the **Namespace** page in the SchedulerX console.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response'."\n", - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', - ], - 'Code' => [ - 'description' => 'The HTTP status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The additional information, including errors and tips.'."\n", - 'type' => 'string', - 'example' => 'strategy name is null or empty.', - ], - 'Success' => [ - 'description' => 'Indicates whether the call was successful. Valid values:'."\n" - ."\n" - .'* **true**'."\n" - .'* **false**'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Data' => [ - 'description' => 'The returned data.'."\n", - 'type' => 'object', - 'properties' => [], - ], - ], - ], - ], - ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"strategy name is null or empty.\\",\\n \\"Success\\": true,\\n \\"Data\\": {}\\n}","type":"json"}]', - 'title' => 'CreateRouteStrategy', - 'requestParamsDescription' => 'If you set Type to **3**, set the parameters that are nested under StrategyContent based on the following requirements:'."\n" - ."\n" - .'* **percentage**: the percentage of routed traffic. Valid values: **0 to 100**. Unit: %.'."\n" - .'* **target**: routing destinations. If you set **targetType** to **label**, set this parameter to label names. If you set **targetType** to **worker**, set this parameter to the IP addresses of workers.********'."\n" - .'* **targetType**: the type of routing destinations. If you set this parameter to **label**, traffic is routed to workers with the specified labels. If you set this parameter to **worker**, traffic is routed to workers with the specified IP addresses.'."\n", - ], - 'CreateSchedulerxNotificationPolicy' => [ - 'summary' => 'Creates a notification policy.', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'operationType' => 'write', - 'systemTags' => [ - 'operationType' => 'create', - 'riskType' => 'none', - 'chargeType' => 'free', - 'tenantRelevance' => 'publicInformation', - ], - 'parameters' => [ - [ - 'name' => 'RegionId', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The configuration of alert contacts. The value is a JSON string.', 'type' => 'string', 'required' => false, 'example' => '['."\n" + .' {"name": "Alice Johnson"},'."\n" + .' {"name": "Lee Smith"}'."\n" + .']', 'title' => ''], ], [ - 'name' => 'PolicyName', - 'in' => 'formData', - 'schema' => [ - 'title' => '通知策略名称', - 'description' => 'The name of the notification policy.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'test-weekdays', - ], - ], - [ - 'name' => 'Description', - 'in' => 'formData', - 'schema' => [ - 'title' => '策略描述', - 'description' => 'The description of the notification policy.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Monday-Friday only', - ], + 'name' => 'NotificationPolicyName', + 'in' => 'query', + 'schema' => ['title' => 'Notification policy name', 'description' => 'Notification policy name', 'type' => 'string', 'example' => 'test-workday-notification', 'required' => false], ], [ - 'name' => 'ChannelTimeRange', - 'in' => 'formData', - 'schema' => [ - 'title' => '通知渠道生效时间段配置'."\n", - 'description' => 'The configuration for the effective time periods of notification channels.'."\n" - ."\n" - .'> Please see the detailed explanation of this parameter below.', - 'type' => 'string', - 'required' => true, - 'example' => '{'."\n" - .' "sendChannel": "sms,webhook,mail,phone",'."\n" - .' "timezone": "UTC+08:00",'."\n" - .' "webhookIsAtAll": "false",'."\n" - .' "timeRanges": {'."\n" - .' "all": ['."\n" - .' {'."\n" - .' "startTime": "08:00",'."\n" - .' "endTime": "18:00",'."\n" - .' "daysOfWeek": [1, 2, 3, 4, 5]'."\n" - .' }'."\n" - .' ]'."\n" - .' }'."\n" - .'}'."\n", - ], + 'name' => 'EnableLog', + 'in' => 'query', + 'schema' => ['title' => 'Enable logging', 'description' => 'Enable logging', 'type' => 'boolean', 'required' => false, 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The schema of the response.', 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'Additional information. Returned only when an error occurs.'."\n", - 'type' => 'string', - 'example' => 'Invalid parameter: Notification policy already exists: test-weekdays'."\n", - ], - 'RequestId' => [ - 'description' => 'The unique request ID.'."\n", - 'type' => 'string', - 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'AccessDeniedDetail' => [ - 'description' => 'The access denial details.', - 'type' => 'object', - 'properties' => [ - 'AuthAction' => [ - 'description' => 'The authentication action.', - 'type' => 'string', - 'example' => 'edas:CreateSchedulerxNotificationPolicy', - ], - 'AuthPrincipalDisplayName' => [ - 'description' => 'The principal name.'."\n", - 'type' => 'string', - 'example' => '209312833131416xxx', - ], - 'AuthPrincipalOwnerId' => [ - 'description' => 'The account of the principal.'."\n", - 'type' => 'string', - 'example' => '1827811800526xxx', - ], - 'AuthPrincipalType' => [ - 'description' => 'The principal type.'."\n", - 'type' => 'string', - 'example' => 'SubUser', - ], - 'EncodedDiagnosticMessage' => [ - 'description' => 'The encoded diagnostic message.'."\n", - 'type' => 'string', - 'example' => 'AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==', - ], - 'NoPermissionType' => [ - 'description' => 'The permission denial type.', - 'type' => 'string', - 'example' => 'ImplicitDeny', - ], - 'PolicyType' => [ - 'description' => 'The policy type.'."\n", - 'type' => 'string', - 'example' => 'AccountLevelIdentityBasedPolicy', - ], - ], - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.', 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108'], + 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The additional information that is returned.', 'type' => 'string', 'example' => 'app is not existed, groupId=xxxx, namesapce=xxxx', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], - 'description' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Invalid parameter: Notification policy already exists: test-weekdays\\\\n\\",\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Success\\": true,\\n \\"AccessDeniedDetail\\": {\\n \\"AuthAction\\": \\"edas:CreateSchedulerxNotificationPolicy\\",\\n \\"AuthPrincipalDisplayName\\": \\"209312833131416xxx\\",\\n \\"AuthPrincipalOwnerId\\": \\"1827811800526xxx\\",\\n \\"AuthPrincipalType\\": \\"SubUser\\",\\n \\"EncodedDiagnosticMessage\\": \\"AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==\\",\\n \\"NoPermissionType\\": \\"ImplicitDeny\\",\\n \\"PolicyType\\": \\"AccountLevelIdentityBasedPolicy\\"\\n }\\n}","type":"json"}]', - 'title' => 'CreateSchedulerxNotificationPolicy', - 'requestParamsDescription' => '# [](#channeltimerange-)ChannelTimeRange configuration description'."\n" - ."\n" - .'Configuration for the effective time of notification channels. Supports two modes: unified configuration and separate configuration.'."\n" - ."\n" - .'## [](#)Format'."\n" + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"app is not existed, groupId=xxxx, namesapce=xxxx\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'Update application group', + 'responseParamsDescription' => '## **Additional Notes for MonitorConfigJson**'."\n" ."\n" - .'This field must be in JSON format and supports the following core properties:'."\n" + .'The configuration for alert notifications supports the following properties: `sendChannel`, `alarmType`, and `webhookIsAtAll`.'."\n" ."\n" - .'### [](#)Properties'."\n" + .'## **Configuration Format**'."\n" ."\n" - .'**sendChannel: Notification channel configuration (required)**'."\n" + .'This field must be in JSON format and supports the following properties:'."\n" ."\n" - .'* A required field that specifies the notification channels to be configured.'."\n" - .'* Format: Multiple channels separated by commas, e.g., "sms,webhook,mail,phone".'."\n" - .'* Supported channels: sms, webhook (e.g., DingTalk, WeCom), mail, and phone.'."\n" + .'## **Property Descriptions**'."\n" ."\n" - .'**timezone: Time zone setting**'."\n" + .'- **Sending Channel** (`sendChannel`):'."\n" ."\n" - .'* Supports GMT or UTC format.'."\n" - .'* Example: GMT+8 or UTC+08:00.'."\n" - .'* Note: The time zone determines the reference standard for the effective time of alerts and is independent of the actual geographical location. For example, if you are in the Beijing region but configure "New York Time Zone (UTC-4), Monday 00:00-03:00", the system will operate based on the local time in New York.'."\n" + .' - Supports multiple channels, separated by commas. Available options include:'."\n" ."\n" - .'**webhookIsAtAll: Webhook notification configuration**'."\n" + .' - **webhook**: `ding`'."\n" ."\n" - .'* The value is "true" or "false".'."\n" - .'* Indicates whether to @all members in a Webhook notification.'."\n" + .' - **text message**: `sms`'."\n" ."\n" - .'**timeRanges: Time range configuration (required)**'."\n" + .' - **Email**: `mail`'."\n" ."\n" - .'* Supports two configuration modes:'."\n" + .' - **Phone**: `phone`'."\n" ."\n" - .' 1. Unified Configuration: Use "all" as the key to set a single time period for all selected channels.'."\n" - .' 2. Separate Configuration: Configure a time period for each channel individually, with the key being the specific channel identifier.'."\n" + .'- **Alarm Type** (`alarmType`):'."\n" ."\n" - .'### [](#)Time period configuration items'."\n" + .' - **Contacts**: indicates alert contacts'."\n" ."\n" - .'Each time period includes the following properties:'."\n" + .' - **ContactGroup**: indicates an alert contact group'."\n" ."\n" - .'* startTime: The start time, in HH:mm format (required).'."\n" - .'* endTime: The end time, in HH:mm format (required).'."\n" - .'* daysOfWeek: The effective days of the week, in an array format. 1-7 represent Monday to Sunday (optional. If empty, this time period is not effective).'."\n" + .'- **Whether to @ All Members** (`webhookIsAtAll`):'."\n" ."\n" - .'### [](#)Example configurations'."\n" + .' - The value is either `"true"` or `"false"`, indicating whether to @ all members in the group when sending a notification.'."\n" ."\n" - .'**Example 1: Unified configuration mode**'."\n" + .'## **Sample**:'."\n" ."\n" .'```json'."\n" .'{'."\n" - .' "sendChannel": "sms,webhook,mail,phone",'."\n" - .' "timezone": "UTC+08:00",'."\n" - .' "webhookIsAtAll": "false",'."\n" - .' "timeRanges": {'."\n" - .' "all": ['."\n" - .' {'."\n" - .' "startTime": "08:00",'."\n" - .' "endTime": "18:00",'."\n" - .' "daysOfWeek": [1, 2, 3, 4, 5]'."\n" - .' }'."\n" - .' ]'."\n" - .' }'."\n" + .' "sendChannel": "ding,sms,mail,phone",'."\n" + .' "alarmType": "Contacts",'."\n" + .' "webhookIsAtAll": true'."\n" .'}'."\n" .'```'."\n" ."\n" - .'**Example 2: Separate configuration mode**'."\n" + .'***'."\n" ."\n" - .'```json'."\n" - .'{'."\n" - .' "sendChannel": "sms,webhook,mail,phone",'."\n" - .' "timezone": "GMT+8",'."\n" - .' "webhookIsAtAll": "false",'."\n" - .' "timeRanges": {'."\n" - .' "webhook": ['."\n" - .' {'."\n" - .' "startTime": "08:00",'."\n" - .' "endTime": "18:00",'."\n" - .' "daysOfWeek": [1, 2, 3, 4, 5]'."\n" - .' }'."\n" - .' ],'."\n" - .' "sms": ['."\n" - .' {'."\n" - .' "startTime": "08:00",'."\n" - .' "endTime": "18:00",'."\n" - .' "daysOfWeek": [1, 2, 3, 4, 5]'."\n" - .' }'."\n" - .' ],'."\n" - .' "mail": ['."\n" - .' {'."\n" - .' "startTime": "08:00",'."\n" - .' "endTime": "18:00",'."\n" - .' "daysOfWeek": [1, 2, 3, 4, 5]'."\n" - .' }'."\n" - .' ],'."\n" - .' "phone": ['."\n" - .' {'."\n" - .' "startTime": "08:00",'."\n" - .' "endTime": "18:00",'."\n" - .' "daysOfWeek": [1, 2, 3, 4, 5]'."\n" - .' }'."\n" - .' ]'."\n" - .' }'."\n" - .'}'."\n" - .'```'."\n" + .'## **Additional Notes for MonitorContactsJson**'."\n" ."\n" - .'### [](#)Note'."\n" + .'The alert contact configuration provides two formats depending on the value of `alarmType`.'."\n" ."\n" - .'1. The sendChannel field is required and can only contain supported notification channels.'."\n" - .'2. When timeRanges contains "all", it signifies the unified configuration mode. In this case, it cannot contain configurations for other individual channels.'."\n" - .'3. When timeRanges does not contain "all", you need to configure each channel specified in sendChannel separately.'."\n" - .'4. Time must use the 24-hour format (HH:mm).'."\n" - .'5. Days of the week are represented by numbers from 1 to 7, corresponding to Monday through Sunday.'."\n" - .'6. The time zone supports configuration in both GMT and UTC formats.'."\n", - ], - 'DeleteSchedulerxNotificationPolicy' => [ - 'summary' => 'Deletes a notification policy.', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'https', + .'## **Configuration Format**'."\n" + ."\n" + .'This field must be in JSON format and supports two configurations: an array of contacts or a contact group object.'."\n" + ."\n" + .'## **Property Descriptions**'."\n" + ."\n" + .'- **When `alarmType` is `Contacts`**:'."\n" + ."\n" + .' - Configure as an array containing multiple contact objects. Each object must include:'."\n" + ."\n" + .' - **name**: The name of the contact'."\n" + ."\n" + .'- **When `alarmType` is `ContactGroup`**:'."\n" + ."\n" + .' - Configure as a single object containing:'."\n" + ."\n" + .' - **name**: The name of the contact group'."\n" + ."\n" + .'## **Notes**'."\n" + ."\n" + .'We recommend creating contacts and contact groups in advance. If they are not created beforehand, the system will automatically generate the corresponding contacts and contact groups. You must configure contact information such as phone numbers and email addresses and activate them on the **Notifications Contacts** page to ensure that alerts can be sent normally.'."\n" + ."\n" + .'## **Sample**:'."\n" + ."\n" + .'- **Sample 1** (when `alarmType` is `Contacts`):'."\n" + ."\n" + .' ```json'."\n" + .' ['."\n" + .' {"name": "Zhang San"},'."\n" + .' {"name": "Li Si"}'."\n" + .' ]'."\n" + .' ```'."\n" + ."\n" + .'- **Sample 2** (when `alarmType` is `ContactGroup`):'."\n" + ."\n" + .' ```json'."\n" + .' {'."\n" + .' "name": "alert contact group-1"'."\n" + .' }'."\n" + .' ```', + 'changeSet' => [ + ['createdAt' => '2025-12-16T07:30:33.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-10-27T08:05:07.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-01-15T06:51:02.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-18T05:48:50.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-06-05T07:37:28.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2023-03-30T08:41:55.000Z', 'description' => 'Response parameters changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxAppGroupModify', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'UpdateJob' => [ + 'summary' => 'Update job configuration information. By default, the system first invokes the operation to retrieve the job and locate the corresponding field for modification.', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', - 'systemTags' => [ - 'operationType' => 'delete', - 'riskType' => 'none', - 'chargeType' => 'free', - 'tenantRelevance' => 'tenant', - ], + 'deprecated' => false, + 'systemTags' => ['operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ 'name' => 'RegionId', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'in' => 'query', + 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'PolicyName', + 'name' => 'Namespace', 'in' => 'formData', - 'schema' => [ - 'title' => '通知策略名称', - 'description' => 'The name of the notification policy.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'test-weekdays', - ], + 'schema' => ['description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'Code' => [ - 'description' => 'The status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The error message. Returned only when an error occurs.'."\n", - 'type' => 'string', - 'example' => 'Invalid parameter: policyName cannot be null', - ], - 'RequestId' => [ - 'description' => 'The unique request ID.'."\n", - 'type' => 'string', - 'example' => 'C8E5FB4A-6D8D-424D-9AAA-4FE06BB74FF9', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'AccessDeniedDetail' => [ - 'description' => 'The access denial details.', - 'type' => 'object', - 'properties' => [ - 'AuthAction' => [ - 'description' => 'The authentication action.', - 'type' => 'string', - 'example' => 'edas:DeleteSchedulerxNotificationPolicy', - ], - 'AuthPrincipalDisplayName' => [ - 'description' => 'The principal name.'."\n", - 'type' => 'string', - 'example' => '209312833131416xxx', - ], - 'AuthPrincipalOwnerId' => [ - 'description' => 'The account of the principal.'."\n", - 'type' => 'string', - 'example' => '1827811800526xxx', - ], - 'AuthPrincipalType' => [ - 'description' => 'The principal type.'."\n", - 'type' => 'string', - 'example' => 'SubUser', - ], - 'EncodedDiagnosticMessage' => [ - 'description' => 'The encoded diagnostic message.'."\n", - 'type' => 'string', - 'example' => 'AQFoiYKaaImCmkI3QjgzNzM1LTIzQTUtNURENy1COUQ3LTBFOTIxRkRFOEM3NQ==', - ], - 'NoPermissionType' => [ - 'description' => 'The permission denial type.', - 'type' => 'string', - 'example' => 'ImplicitDeny', - ], - 'PolicyType' => [ - 'description' => 'The policy type.'."\n", - 'type' => 'string', - 'example' => 'AccountLevelIdentityBasedPolicy', - ], - ], - ], - ], - 'description' => '', - ], + [ + 'name' => 'NamespaceSource', + 'in' => 'formData', + 'schema' => ['description' => 'The namespace source. This parameter is required only for a special third party.', 'type' => 'string', 'required' => false, 'default' => 'schedulerx', 'example' => 'schedulerx', 'title' => ''], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Invalid parameter: policyName cannot be null\\",\\n \\"RequestId\\": \\"C8E5FB4A-6D8D-424D-9AAA-4FE06BB74FF9\\",\\n \\"Success\\": true,\\n \\"AccessDeniedDetail\\": {\\n \\"AuthAction\\": \\"edas:DeleteSchedulerxNotificationPolicy\\",\\n \\"AuthPrincipalDisplayName\\": \\"209312833131416xxx\\",\\n \\"AuthPrincipalOwnerId\\": \\"1827811800526xxx\\",\\n \\"AuthPrincipalType\\": \\"SubUser\\",\\n \\"EncodedDiagnosticMessage\\": \\"AQFoiYKaaImCmkI3QjgzNzM1LTIzQTUtNURENy1COUQ3LTBFOTIxRkRFOEM3NQ==\\",\\n \\"NoPermissionType\\": \\"ImplicitDeny\\",\\n \\"PolicyType\\": \\"AccountLevelIdentityBasedPolicy\\"\\n }\\n}","type":"json"}]', - 'title' => 'DeleteSchedulerxNotificationPolicy', - ], - 'ManageSchedulerxNotificationPolicy' => [ - 'summary' => 'Updates a notification policy.', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'GroupId', + 'in' => 'formData', + 'schema' => ['description' => 'The application ID. You can obtain the application ID on the Application Management page in the SchedulerX console.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], - ], - 'operationType' => 'write', - 'systemTags' => [ - 'operationType' => 'create', - 'riskType' => 'none', - 'chargeType' => 'free', - 'tenantRelevance' => 'tenant', - ], - 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'JobId', 'in' => 'formData', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The job ID. You can obtain the job ID on the Task Management page in the SchedulerX console.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'docRequired' => true, 'example' => '92583', 'title' => ''], ], [ - 'name' => 'PolicyName', + 'name' => 'Name', 'in' => 'formData', - 'schema' => [ - 'title' => '通知策略名称', - 'description' => 'The name of the notification policy.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'test-weekdays', - ], + 'schema' => ['description' => 'The job name.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'helloword', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'formData', - 'schema' => [ - 'title' => '策略描述', - 'description' => 'The notification policy description.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Monday-Friday only', - ], + 'schema' => ['description' => 'The job description.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''], ], [ - 'name' => 'ChannelTimeRange', + 'name' => 'ExecuteMode', 'in' => 'formData', - 'schema' => [ - 'title' => '通知渠道生效时间段配置'."\n", - 'description' => 'The time range configuration for notification channels.'."\n" - ."\n" - .'> See the supplementary description of ChannelTimeRange in the request parameters.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '{'."\n" - .' "sendChannel": "sms,webhook,mail,phone",'."\n" - .' "timezone": "UTC+08:00",'."\n" - .' "webhookIsAtAll": "false",'."\n" - .' "timeRanges": {'."\n" - .' "all": ['."\n" - .' {'."\n" - .' "startTime": "08:00",'."\n" - .' "endTime": "18:00",'."\n" - .' "daysOfWeek": [1, 2, 3, 4, 5]'."\n" - .' }'."\n" - .' ]'."\n" - .' }'."\n" - .'}'."\n", - ], + 'schema' => ['description' => 'The execution mode of the job. Valid values:'."\n" + ."\n" + .'- **Stand-alone operation**: standalone'."\n" + ."\n" + .'- **Broadcast run**: broadcatst'."\n" + ."\n" + .'- **Visual MapReduce**: parallel'."\n" + ."\n" + .'- **MapReduce**: batch'."\n" + ."\n" + .'- **Shard run**: shard', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'standalone', 'title' => ''], ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'Code' => [ - 'description' => 'The status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The error message, returned only when an error occurs.'."\n", - 'type' => 'string', - 'example' => 'Invalid parameter: policyName cannot be null'."\n", - ], - 'RequestId' => [ - 'description' => 'The unique request ID.'."\n", - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'AccessDeniedDetail' => [ - 'description' => 'The access denial details.', - 'type' => 'object', - 'properties' => [ - 'AuthAction' => [ - 'description' => 'The authentication action.', - 'type' => 'string', - 'example' => 'edas:ManageSchedulerxNotificationPolicy', - ], - 'AuthPrincipalDisplayName' => [ - 'description' => 'The principal name.'."\n", - 'type' => 'string', - 'example' => '209312833131416xxx', - ], - 'AuthPrincipalOwnerId' => [ - 'description' => 'The account of the principal.'."\n", - 'type' => 'string', - 'example' => '1827811800526xxx', - ], - 'AuthPrincipalType' => [ - 'description' => 'The principal type.'."\n", - 'type' => 'string', - 'example' => 'SubUser', - ], - 'EncodedDiagnosticMessage' => [ - 'description' => 'The encoded diagnostic message.'."\n", - 'type' => 'string', - 'example' => 'AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==', - ], - 'NoPermissionType' => [ - 'description' => 'The permission denial type.'."\n", - 'type' => 'string', - 'example' => 'ImplicitDeny', - ], - 'PolicyType' => [ - 'description' => 'The policy type.'."\n", - 'type' => 'string', - 'example' => 'AccountLevelIdentityBasedPolicy', - ], - ], - ], - ], - 'description' => '', - ], + [ + 'name' => 'ClassName', + 'in' => 'formData', + 'schema' => ['description' => 'The full path of the job interface class.'."\n" + ."\n" + .'This field is available only when you set the job type to java. In this case, you must enter a full path.', 'type' => 'string', 'required' => false, 'example' => 'com.alibaba.test.helloworld', 'title' => ''], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Invalid parameter: policyName cannot be null\\\\n\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true,\\n \\"AccessDeniedDetail\\": {\\n \\"AuthAction\\": \\"edas:ManageSchedulerxNotificationPolicy\\",\\n \\"AuthPrincipalDisplayName\\": \\"209312833131416xxx\\",\\n \\"AuthPrincipalOwnerId\\": \\"1827811800526xxx\\",\\n \\"AuthPrincipalType\\": \\"SubUser\\",\\n \\"EncodedDiagnosticMessage\\": \\"AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==\\",\\n \\"NoPermissionType\\": \\"ImplicitDeny\\",\\n \\"PolicyType\\": \\"AccountLevelIdentityBasedPolicy\\"\\n }\\n}","type":"json"}]', - 'title' => 'ManageSchedulerxNotificationPolicy', - 'requestParamsDescription' => '# [](#channeltimerange-)ChannelTimeRange configuration description'."\n" - ."\n" - .'The time range configuration for notification channels. Supports both unified and independent configuration modes.'."\n" - ."\n" - .'## [](#)Configuration format'."\n" - ."\n" - .'This field should be in JSON format and supports the following core attributes:'."\n" - ."\n" - .'### [](#)Attribute description'."\n" - ."\n" - .'**sendChannel: Notification channel configuration (required).**'."\n" - ."\n" - .'* The required field that specifies the notification channels to configure.'."\n" - .'* Format: Multiple channels separated by commas, such as "sms,webhook,mail,phone".'."\n" - .'* Supported channels: sms, webhook (such as DingTalk, WeCom), mail, and phone.'."\n" - ."\n" - .'**timezone: Time zone setting**'."\n" - ."\n" - .'* Supports GMT or UTC format'."\n" - .'* Example: GMT+8 or UTC+08:00'."\n" - .'* Note: The time zone determines the reference standard for alert effective times, regardless of actual location. For example, if you configure "New York time zone (UTC-4), Monday 00:00-03:00" in Beijing, the system uses New York local time.'."\n" - ."\n" - .'**webhookIsAtAll: Webhook notification configuration**'."\n" - ."\n" - .'* Valid value: true or false.'."\n" - .'* Indicates whether to mention all members in webhook notifications.'."\n" - ."\n" - .'**timeRanges: Time range configuration (required)**'."\n" - ."\n" - .'* Supports two configuration modes:'."\n" - ."\n" - .' 1. Unified configuration: Use "all" as the key to set time ranges for all selected channels.'."\n" - .' 2. Independent configuration: Configure time ranges separately for each channel using the channel identifier as the key.'."\n" - ."\n" - .'### [](#)Time range configuration items'."\n" - ."\n" - .'Each time range contains the following attributes:'."\n" - ."\n" - .'* startTime: Start time in HH:mm format (required).'."\n" - .'* endTime: End time in HH:mm format (required).'."\n" - .'* daysOfWeek: Active days of the week in array format, where 1-7 represent Monday to Sunday (optional; the time range is inactive when empty)'."\n" - ."\n" - .'### [](#)Example configuration'."\n" - ."\n" - .'**Example 1: Unified configuration mode**'."\n" - ."\n" - .'```json'."\n" - .'{'."\n" - .' "sendChannel": "sms,webhook,mail,phone",'."\n" - .' "timezone": "UTC+08:00",'."\n" - .' "webhookIsAtAll": "false",'."\n" - .' "timeRanges": {'."\n" - .' "all": ['."\n" - .' {'."\n" - .' "startTime": "08:00",'."\n" - .' "endTime": "18:00",'."\n" - .' "daysOfWeek": [1, 2, 3, 4, 5]'."\n" - .' }'."\n" - .' ]'."\n" - .' }'."\n" - .'}'."\n" - .'```'."\n" - ."\n" - .'**Example 2: Independent configuration mode**'."\n" - ."\n" - .'```json'."\n" - .'{'."\n" - .' "sendChannel": "sms,webhook,mail,phone",'."\n" - .' "timezone": "GMT+8",'."\n" - .' "webhookIsAtAll": "false",'."\n" - .' "timeRanges": {'."\n" - .' "webhook": ['."\n" - .' {'."\n" - .' "startTime": "08:00",'."\n" - .' "endTime": "18:00",'."\n" - .' "daysOfWeek": [1, 2, 3, 4, 5]'."\n" - .' }'."\n" - .' ],'."\n" - .' "sms": ['."\n" - .' {'."\n" - .' "startTime": "08:00",'."\n" - .' "endTime": "18:00",'."\n" - .' "daysOfWeek": [1, 2, 3, 4, 5]'."\n" - .' }'."\n" - .' ],'."\n" - .' "mail": ['."\n" - .' {'."\n" - .' "startTime": "08:00",'."\n" - .' "endTime": "18:00",'."\n" - .' "daysOfWeek": [1, 2, 3, 4, 5]'."\n" - .' }'."\n" - .' ],'."\n" - .' "phone": ['."\n" - .' {'."\n" - .' "startTime": "08:00",'."\n" - .' "endTime": "18:00",'."\n" - .' "daysOfWeek": [1, 2, 3, 4, 5]'."\n" - .' }'."\n" - .' ]'."\n" - .' }'."\n" - .'}'."\n" - .'```'."\n" - ."\n" - .'### [](#)Usage notes'."\n" - ."\n" - .'1. The sendChannel field is required and can only contain supported notification channels.'."\n" - .'2. When timeRanges contains "all", it indicates unified configuration mode and cannot include configurations for other channels.'."\n" - .'3. When timeRanges does not contain "all", each channel specified in sendChannel must be configured independently.'."\n" - .'4. Time must use 24-hour format as HH:mm.'."\n" - .'5. Days of the week are represented by numbers 1-7, corresponding to Monday through Sunday.'."\n" - .'6. Time zones support both GMT and UTC format configurations'."\n", - ], - 'ReadSchedulerxNotificationPolicy' => [ - 'summary' => 'Queries notification policies.', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'Content', + 'in' => 'formData', + 'schema' => ['description' => 'The script content. This parameter is required when you set the job type to python, shell, go, or k8s.', 'type' => 'string', 'required' => false, 'example' => 'echo \'hello\'', 'title' => ''], ], - ], - 'operationType' => 'read', - 'systemTags' => [ - 'operationType' => 'list', - 'riskType' => 'none', - 'chargeType' => 'free', - 'tenantRelevance' => 'tenant', - ], - 'parameters' => [ [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'name' => 'Parameters', + 'in' => 'formData', + 'schema' => ['description' => 'The user-defined parameters that you can obtain when the job is running.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''], ], [ - 'name' => 'PolicyName', - 'in' => 'query', - 'schema' => [ - 'title' => '通知策略名称', - 'description' => 'The name of the notification policy. Supports fuzzy matching.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'test-weekdays', - ], + 'name' => 'MaxConcurrency', + 'in' => 'formData', + 'schema' => ['description' => 'The maximum number of concurrent instances. Default value: 1. The default value indicates that only one instance is allowed to run at a time. When an instance is running, another instance is not triggered even if the scheduled time for running the instance is reached.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '200', 'minimum' => '1', 'example' => '1', 'default' => '1', 'title' => ''], ], [ - 'name' => 'MaxResults', - 'in' => 'query', - 'schema' => [ - 'description' => 'The maximum number of entries returned. Default value: 20.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - 'default' => '20', - ], + 'name' => 'MaxAttempt', + 'in' => 'formData', + 'schema' => ['description' => 'The maximum number of retries after a job failure. This parameter is specified based on your business requirements.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'default' => '0', 'title' => ''], ], [ - 'name' => 'NextToken', - 'in' => 'query', + 'name' => 'AttemptInterval', + 'in' => 'formData', + 'schema' => ['description' => 'The interval of retries after a job failure. Default value: 30. Unit: seconds.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '30', 'default' => '30', 'title' => ''], + ], + [ + 'name' => 'PageSize', + 'in' => 'formData', + 'schema' => ['description' => 'The number of tasks that can be pulled at a time. Default value: 100. This parameter is an advanced configuration item of the MapReduce job.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100', 'default' => '100', 'title' => ''], + ], + [ + 'name' => 'TaskDispatchMode', + 'in' => 'formData', 'schema' => [ - 'description' => 'The cursor for pagination. Leave this parameter empty for the first request. When the returned value is empty, all data has been retrieved.'."\n", + 'description' => 'The job mode. Valid values: push and pull. This parameter is an advanced configuration item of the MapReduce job.', + 'enumValueTitles' => ['pull' => 'pull', 'push' => 'push'], 'type' => 'string', 'required' => false, - 'example' => 'O39nXKu5XafATl3/cJjSJw==', + 'example' => 'push', + 'title' => '', ], ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'Code' => [ - 'description' => 'The status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The error message.'."\n", - 'type' => 'string', - 'example' => 'unknown exception occurred', - ], - 'RequestId' => [ - 'description' => 'The unique request ID.'."\n", - 'type' => 'string', - 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'AccessDeniedDetail' => [ - 'description' => 'The access denial details.', - 'type' => 'object', - 'properties' => [ - 'AuthAction' => [ - 'description' => 'The authentication operation.', - 'type' => 'string', - 'example' => 'edas:ReadSchedulerxNotificationPolicy', - ], - 'AuthPrincipalDisplayName' => [ - 'description' => 'The principal name.'."\n", - 'type' => 'string', - 'example' => '209312833131416xxx', - ], - 'AuthPrincipalOwnerId' => [ - 'description' => 'The account of the principal.'."\n", - 'type' => 'string', - 'example' => '1827811800526xxx', - ], - 'AuthPrincipalType' => [ - 'description' => 'The principal type.'."\n", - 'type' => 'string', - 'example' => 'SubUser', - ], - 'EncodedDiagnosticMessage' => [ - 'description' => 'The encoded diagnostic message.'."\n", - 'type' => 'string', - 'example' => 'AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==', - ], - 'NoPermissionType' => [ - 'description' => 'The permission denial type.'."\n", - 'type' => 'string', - 'example' => 'ImplicitDeny', - ], - 'PolicyType' => [ - 'description' => 'The policy type.'."\n", - 'type' => 'string', - 'example' => 'AccountLevelIdentityBasedPolicy', - ], - ], - ], - 'Data' => [ - 'description' => '*'."\n", - 'type' => 'object', - 'properties' => [ - 'Records' => [ - 'description' => 'The data records.', - 'type' => 'array', - 'items' => [ - 'description' => 'The record.'."\n", - 'type' => 'object', - 'properties' => [ - 'PolicyName' => [ - 'description' => 'The name of the notification policy.'."\n", - 'type' => 'string', - 'example' => 'test-weekdays', - ], - 'Description' => [ - 'description' => 'The description of the notification policy.'."\n", - 'type' => 'string', - 'example' => 'Monday-Friday only'."\n", - ], - 'Creator' => [ - 'description' => 'The creator.'."\n", - 'type' => 'string', - 'example' => '201576653956616970', - ], - 'Updater' => [ - 'description' => 'The updater.'."\n", - 'type' => 'string', - 'example' => '1144881807903942', - ], - 'CreateTime' => [ - 'description' => 'The creation time.'."\n", - 'type' => 'string', - 'example' => '2025-09-17 11:21:01', - ], - 'UpdateTime' => [ - 'description' => 'The update time.'."\n", - 'type' => 'string', - 'example' => '2025-09-17 11:21:01', - ], - 'ChannelTimeRange' => [ - 'description' => 'The configuration of the notification policy.'."\n", - 'type' => 'string', - 'example' => '{'."\n" - .' "isUnifiedSetting": false,'."\n" - .' "timezone": "GMT+8",'."\n" - .' "webhookIsAtAll": "false",'."\n" - .' "timeRanges": {'."\n" - .' "webhook": ['."\n" - .' {'."\n" - .' "startTime": "08:00",'."\n" - .' "endTime": "18:00",'."\n" - .' "daysOfWeek": ['."\n" - .' 1,'."\n" - .' 2,'."\n" - .' 3,'."\n" - .' 4,'."\n" - .' 5'."\n" - .' ]'."\n" - .' }'."\n" - .' ],'."\n" - .' "sms": ['."\n" - .' {'."\n" - .' "startTime": "08:00",'."\n" - .' "endTime": "18:00",'."\n" - .' "daysOfWeek": ['."\n" - .' 1,'."\n" - .' 2,'."\n" - .' 3,'."\n" - .' 4,'."\n" - .' 5'."\n" - .' ]'."\n" - .' }'."\n" - .' ],'."\n" - .' "mail": ['."\n" - .' {'."\n" - .' "startTime": "08:00",'."\n" - .' "endTime": "18:00",'."\n" - .' "daysOfWeek": ['."\n" - .' 1,'."\n" - .' 2,'."\n" - .' 3,'."\n" - .' 4,'."\n" - .' 5'."\n" - .' ]'."\n" - .' }'."\n" - .' ],'."\n" - .' "phone": ['."\n" - .' {'."\n" - .' "startTime": "08:00",'."\n" - .' "endTime": "18:00",'."\n" - .' "daysOfWeek": ['."\n" - .' 1,'."\n" - .' 2,'."\n" - .' 3,'."\n" - .' 4,'."\n" - .' 5'."\n" - .' ]'."\n" - .' }'."\n" - .' ]'."\n" - .' }'."\n" - .'}', - ], - 'ReferenceApps' => [ - 'description' => 'The list of applications associated with the notification policy.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The information about an associated application.', - 'type' => 'object', - 'properties' => [ - 'AppGroupId' => [ - 'description' => 'The ID of the task group.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '123', - ], - 'GroupId' => [ - 'description' => 'The ID of the application.'."\n", - 'type' => 'string', - 'example' => 'test-app', - ], - 'NamespaceUid' => [ - 'description' => 'The unique identifier of the namespace.'."\n", - 'type' => 'string', - 'example' => '18271388-aa16-4eab-9a6f-55f65d7e4391', - ], - 'NamespaceName' => [ - 'description' => 'The name of the namespace.'."\n", - 'type' => 'string', - 'example' => 'Notification strategy testing namespace', - ], - ], - ], - ], - ], - ], - ], - 'NextToken' => [ - 'description' => 'When data that matches the query conditions has not been fully retrieved, the server returns nextToken. You can then use nextToken to continue retrieving the remaining data.'."\n", - 'type' => 'string', - 'example' => 'O39nXKu5XafATl3/cJjSJw=='."\n", - ], - 'Total' => [ - 'description' => 'The total number of records.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '42', - ], - 'MaxResults' => [ - 'description' => 'The maximum number of entries returned.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - ], - ], - ], - 'description' => '', - ], + [ + 'name' => 'ConsumerSize', + 'in' => 'formData', + 'schema' => ['description' => 'The number of threads that are triggered by a single worker at a time. Default value: 5. This parameter is an advanced configuration item of the MapReduce job.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5', 'default' => '5', 'title' => ''], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"unknown exception occurred\\",\\n \\"RequestId\\": \\"71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7\\",\\n \\"Success\\": true,\\n \\"AccessDeniedDetail\\": {\\n \\"AuthAction\\": \\"edas:ReadSchedulerxNotificationPolicy\\",\\n \\"AuthPrincipalDisplayName\\": \\"209312833131416xxx\\",\\n \\"AuthPrincipalOwnerId\\": \\"1827811800526xxx\\",\\n \\"AuthPrincipalType\\": \\"SubUser\\",\\n \\"EncodedDiagnosticMessage\\": \\"AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==\\",\\n \\"NoPermissionType\\": \\"ImplicitDeny\\",\\n \\"PolicyType\\": \\"AccountLevelIdentityBasedPolicy\\"\\n },\\n \\"Data\\": {\\n \\"Records\\": [\\n {\\n \\"PolicyName\\": \\"test-weekdays\\",\\n \\"Description\\": \\"Monday-Friday only\\\\n\\",\\n \\"Creator\\": \\"201576653956616970\\",\\n \\"Updater\\": \\"1144881807903942\\",\\n \\"CreateTime\\": \\"2025-09-17 11:21:01\\",\\n \\"UpdateTime\\": \\"2025-09-17 11:21:01\\",\\n \\"ChannelTimeRange\\": \\"{\\\\n \\\\\\"isUnifiedSetting\\\\\\": false,\\\\n \\\\\\"timezone\\\\\\": \\\\\\"GMT+8\\\\\\",\\\\n \\\\\\"webhookIsAtAll\\\\\\": \\\\\\"false\\\\\\",\\\\n \\\\\\"timeRanges\\\\\\": {\\\\n \\\\\\"webhook\\\\\\": [\\\\n {\\\\n \\\\\\"startTime\\\\\\": \\\\\\"08:00\\\\\\",\\\\n \\\\\\"endTime\\\\\\": \\\\\\"18:00\\\\\\",\\\\n \\\\\\"daysOfWeek\\\\\\": [\\\\n 1,\\\\n 2,\\\\n 3,\\\\n 4,\\\\n 5\\\\n ]\\\\n }\\\\n ],\\\\n \\\\\\"sms\\\\\\": [\\\\n {\\\\n \\\\\\"startTime\\\\\\": \\\\\\"08:00\\\\\\",\\\\n \\\\\\"endTime\\\\\\": \\\\\\"18:00\\\\\\",\\\\n \\\\\\"daysOfWeek\\\\\\": [\\\\n 1,\\\\n 2,\\\\n 3,\\\\n 4,\\\\n 5\\\\n ]\\\\n }\\\\n ],\\\\n \\\\\\"mail\\\\\\": [\\\\n {\\\\n \\\\\\"startTime\\\\\\": \\\\\\"08:00\\\\\\",\\\\n \\\\\\"endTime\\\\\\": \\\\\\"18:00\\\\\\",\\\\n \\\\\\"daysOfWeek\\\\\\": [\\\\n 1,\\\\n 2,\\\\n 3,\\\\n 4,\\\\n 5\\\\n ]\\\\n }\\\\n ],\\\\n \\\\\\"phone\\\\\\": [\\\\n {\\\\n \\\\\\"startTime\\\\\\": \\\\\\"08:00\\\\\\",\\\\n \\\\\\"endTime\\\\\\": \\\\\\"18:00\\\\\\",\\\\n \\\\\\"daysOfWeek\\\\\\": [\\\\n 1,\\\\n 2,\\\\n 3,\\\\n 4,\\\\n 5\\\\n ]\\\\n }\\\\n ]\\\\n }\\\\n}\\",\\n \\"ReferenceApps\\": [\\n {\\n \\"AppGroupId\\": 123,\\n \\"GroupId\\": \\"test-app\\",\\n \\"NamespaceUid\\": \\"18271388-aa16-4eab-9a6f-55f65d7e4391\\",\\n \\"NamespaceName\\": \\"Notification strategy testing namespace\\"\\n }\\n ]\\n }\\n ],\\n \\"NextToken\\": \\"O39nXKu5XafATl3/cJjSJw==\\\\n\\",\\n \\"Total\\": 42,\\n \\"MaxResults\\": 10\\n }\\n}","type":"json"}]', - 'title' => 'ReadSchedulerxNotificationPolicy', - ], - 'CreateSchedulerxCalendar' => [ - 'summary' => 'Creates a calendar.', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'QueueSize', + 'in' => 'formData', + 'schema' => ['description' => 'The maximum number of tasks that can be queued. Default value: 10000. This parameter is an advanced configuration item of the MapReduce job.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10000', 'default' => '10000', 'title' => ''], ], - ], - 'operationType' => 'write', - 'systemTags' => [ - 'operationType' => 'create', - 'riskType' => 'none', - 'chargeType' => 'free', - 'tenantRelevance' => 'publicInformation', - ], - 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'DispatcherSize', + 'in' => 'formData', + 'schema' => ['description' => 'The number of task distribution threads. Default value: 5. This parameter is an advanced configuration item of the MapReduce job.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5', 'default' => '5', 'title' => ''], + ], + [ + 'name' => 'TaskMaxAttempt', + 'in' => 'formData', + 'schema' => ['description' => 'The number of retries after a task failure. This parameter is an advanced configuration item of the MapReduce job.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '10', 'minimum' => '0', 'example' => '0', 'default' => '0', 'title' => ''], + ], + [ + 'name' => 'TaskAttemptInterval', + 'in' => 'formData', + 'schema' => ['description' => 'The interval of retries after a task failure. This parameter is an advanced configuration item of the MapReduce job.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '0', 'example' => '0', 'default' => '0', 'title' => ''], + ], + [ + 'name' => 'TimeType', + 'in' => 'formData', + 'schema' => ['description' => 'The time type. Valid values:'."\n" + ."\n" + .'- **1**: cron'."\n" + ."\n" + .'- **3**: fix\\_rate'."\n" + ."\n" + .'- **4**: second\\_delay'."\n" + ."\n" + .'- **100**: api', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'docRequired' => false, 'example' => '1', 'title' => ''], + ], + [ + 'name' => 'TimeExpression', + 'in' => 'formData', + 'schema' => ['description' => 'The time expression. Specify the time expression based on the value of TimeType:'."\n" + ."\n" + .'- If you set TimeType to **1** (cron), specify this parameter to a standard CRON expression.'."\n" + ."\n" + .'- If you set TimeType to **100** (api), no time expression is required.'."\n" + ."\n" + .'- If you set TimeType to **3** (fixed\\_rate), specify this parameter to a fixed frequency in seconds. For example, if you set this parameter to 30, the system triggers a job every 30 seconds.'."\n" + ."\n" + .'- If you set TimeType to **4** (second\\_delay), specify this parameter to a fixed delay after which the job is triggered. Valid values: 1 to 60. Unit: seconds.', 'type' => 'string', 'required' => false, 'example' => '30', 'title' => ''], + ], + [ + 'name' => 'Calendar', + 'in' => 'formData', + 'schema' => ['description' => 'If you set TimeType to 1 (cron), you can specify calendar days.', 'type' => 'string', 'required' => false, 'example' => 'workday', 'title' => ''], + ], + [ + 'name' => 'DataOffset', + 'in' => 'formData', + 'schema' => ['description' => 'If you set TimeType to 1 (cron), you can specify a time offset. Unit: seconds.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2400', 'title' => ''], + ], + [ + 'name' => 'Timezone', + 'in' => 'formData', + 'schema' => ['description' => 'Time zone.', 'type' => 'string', 'example' => 'GMT+8', 'required' => false, 'title' => ''], + ], + [ + 'name' => 'TimeoutEnable', + 'in' => 'formData', + 'schema' => ['description' => 'Specifies whether to turn on Timeout alarm. If the switch is turned on, an alert will be generated upon a timeout. Valid values:'."\n" + ."\n" + .'- **true**'."\n" + ."\n" + .'- **false**', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'default' => 'true', 'title' => ''], + ], + [ + 'name' => 'Timeout', + 'in' => 'formData', + 'schema' => ['description' => 'The timeout threshold. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '7200', 'default' => '7200', 'title' => ''], + ], + [ + 'name' => 'TimeoutKillEnable', + 'in' => 'formData', + 'schema' => ['description' => 'Specifies whether to turn on Timeout termination. If the switch is turned on, the job will be terminated upon a timeout. Valid values:'."\n" + ."\n" + .'- **true**'."\n" + ."\n" + .'- **false**', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'default' => 'true', 'title' => ''], + ], + [ + 'name' => 'FailEnable', + 'in' => 'formData', + 'schema' => ['description' => 'Specifies whether to turn on Failure alarm. If the switch is turned on, an alert will be generated upon a failure. Valid values:'."\n" + ."\n" + .'- **true**'."\n" + ."\n" + .'- **false**', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'default' => 'true', 'title' => ''], + ], + [ + 'name' => 'FailTimes', + 'in' => 'formData', + 'schema' => ['description' => 'The number of consecutive failures. An alert will be received if the number of consecutive failures reaches the value of this parameter.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'default' => '1', 'title' => ''], + ], + [ + 'name' => 'MissWorkerEnable', + 'in' => 'formData', + 'schema' => ['description' => 'Specifies whether to turn on No machine alarm available. If the switch is turned on, an alert will be generated when no machine is available for running the job. Valid values:'."\n" + ."\n" + .'- **true**'."\n" + ."\n" + .'- **false**', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'default' => 'true', 'title' => ''], + ], + [ + 'name' => 'SuccessNoticeEnable', + 'in' => 'formData', + 'schema' => ['description' => 'Specifies whether to turn on Successful notice. If the switch is turned on, a notice will be sent when a job succeeds.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'default' => 'false', 'title' => ''], + ], + [ + 'name' => 'SendChannel', 'in' => 'formData', 'schema' => [ - 'description' => 'The region ID.'."\n", + 'description' => 'The method that is used to send alerts. Only Short Message Service (SMS) is supported.', + 'enumValueTitles' => [], 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', + 'required' => false, + 'example' => 'sms', + 'title' => '', ], ], [ - 'name' => 'CalendarName', + 'name' => 'ContactInfo', 'in' => 'formData', + 'style' => 'repeatList', 'schema' => [ + 'description' => 'The information about the alert contact.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'UserPhone' => ['description' => 'The mobile phone number of the alert contact.', 'type' => 'string', 'required' => false, 'example' => '1381111****', 'title' => ''], + 'UserName' => ['description' => 'The name of the alert contact.', 'type' => 'string', 'required' => false, 'example' => 'userA', 'title' => ''], + 'UserMail' => ['description' => 'The email address of the alert contact.', 'type' => 'string', 'required' => false, 'example' => 'test***@***.com', 'title' => ''], + 'Ding' => ['description' => 'The webhook URL of the DingTalk chatbot.[](https://open.dingtalk.com/document/org/application-types)', 'type' => 'string', 'required' => false, 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=**********', 'title' => ''], + ], + 'required' => false, + 'description' => '-', + 'title' => '', + 'example' => '', + ], + 'required' => false, + 'maxItems' => 10, 'title' => '', - 'description' => 'The calendar name.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => '2025workday', + 'example' => '', ], ], [ - 'name' => 'Year', + 'name' => 'XAttrs', 'in' => 'formData', - 'schema' => [ - 'description' => 'The year.', - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'example' => '2025', - ], + 'schema' => ['description' => 'If you set JobType to k8s, this parameter is required. xxljob task: {"resource":"job"} shell task: {"image":"busybox","resource":"shell"}', 'type' => 'string', 'example' => ' {"resource":"shell","fileFormat":"unix","templateType":"customTemplate"}', 'required' => false, 'title' => ''], ], [ - 'name' => 'MonthDaysContent', + 'name' => 'Template', 'in' => 'formData', - 'schema' => [ - 'title' => '', - 'description' => 'The month and days.', - 'type' => 'string', - 'required' => true, - 'example' => '['."\n" - .' {"month":1,"days":[3,4,5,6,9,10,11,12,13,16,17,18,19,20,28,29,30,31]},'."\n" - .' {"month":2,"days":[1,2,3,6,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28]},'."\n" - .' {"month":3,"days":[1,2,3,6,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28,29,30,31]},'."\n" - .' {"month":4,"days":[3,4,6,7,10,11,12,13,14,17,18,19,20,21,23,24,25,26,27,28]},'."\n" - .' {"month":5,"days":[4,5,6,8,9,10,11,12,15,16,17,18,19,22,23,24,25,26,29,30,31]},'."\n" - .' {"month":6,"days":[1,2,5,6,7,8,9,12,13,14,15,16,19,20,21,25,26,27,28,29,30]},'."\n" - .' {"month":7,"days":[3,4,5,6,7,10,11,12,13,14,17,18,19,20,21,24,25,26,27,28,31]},'."\n" - .' {"month":8,"days":[1,2,3,4,7,8,9,10,11,14,15,16,17,18,21,22,23,24,25,28,29,30,31]},'."\n" - .' {"month":9,"days":[1,4,5,6,7,8,11,12,13,14,15,18,19,20,21,22,25,26,27,28]},'."\n" - .' {"month":10,"days":[7,8,9,10,11,12,13,16,17,18,19,20,23,24,25,26,27,30,31]},'."\n" - .' {"month":11,"days":[1,2,3,6,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28,29,30]},'."\n" - .' {"month":12,"days":[1,4,5,6,7,8,11,12,13,14,15,18,19,20,21,22,25,26,27,28,29]}'."\n" - .']', - ], + 'schema' => ['description' => 'Custom task template for the k8s task type.', 'type' => 'string', 'required' => false, 'example' => 'apiVersion: v1'."\n" + .'kind: Pod'."\n" + .'metadata:'."\n" + .' name: schedulerx-node-{JOB_ID}'."\n" + .' namespace: {NAMESPACE}'."\n" + .'spec:'."\n" + .' containers:'."\n" + .' - name: node-job'."\n" + .' image: node:16'."\n" + .' imagePullPolicy: IfNotPresent'."\n" + .' volumeMounts:'."\n" + .' - name: script-node'."\n" + .' mountPath: script/node'."\n" + .' command: ["node", "script/node/node-{JOB_ID}.js"]'."\n" + .' volumes:'."\n" + .' - name: script-node'."\n" + .' configMap:'."\n" + .' name: schedulerx-configmap'."\n" + .' items:'."\n" + .' - key: schedulerx-node-{JOB_ID}'."\n" + .' path: node-{JOB_ID}.js'."\n" + .' restartPolicy: Never', 'title' => ''], + ], + [ + 'name' => 'Priority', + 'in' => 'query', + 'schema' => ['description' => 'Task Priority. Valid values:'."\n" + ."\n" + .'- **1**: Low'."\n" + ."\n" + .'- **5**: Medium'."\n" + ."\n" + .'- **10**: High'."\n" + ."\n" + .'- **15**: Very High', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5', 'title' => ''], ], ], 'responses' => [ @@ -11560,129 +8301,108 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'Th status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'Additional information. Returned only when an error occurs.'."\n", - 'type' => 'string', - 'example' => 'calendar \'2025workday\' already exists in year 2025', - ], - 'RequestId' => [ - 'description' => 'The unique request ID.'."\n", - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'AccessDeniedDetail' => [ - 'description' => 'The access denial details.', - 'type' => 'object', - 'properties' => [ - 'AuthAction' => [ - 'description' => 'The authentication action.', - 'type' => 'string', - 'example' => 'edas: CreateSchedulerxCalendar', - ], - 'AuthPrincipalDisplayName' => [ - 'description' => 'The principal name.'."\n", - 'type' => 'string', - 'example' => '209312833131416xxx', - ], - 'AuthPrincipalOwnerId' => [ - 'description' => 'The account of the principal.'."\n", - 'type' => 'string', - 'example' => '1827811800526xxx', - ], - 'AuthPrincipalType' => [ - 'description' => 'The principal type.'."\n", - 'type' => 'string', - 'example' => 'SubUser', - ], - 'EncodedDiagnosticMessage' => [ - 'description' => 'The encoded diagnostic message.'."\n", - 'type' => 'string', - 'example' => 'AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==', - ], - 'NoPermissionType' => [ - 'description' => 'The permission denial type.'."\n", - 'type' => 'string', - 'example' => 'ImplicitDeny', - ], - 'PolicyType' => [ - 'description' => 'The policy type.'."\n", - 'type' => 'string', - 'example' => 'AccountLevelIdentityBasedPolicy', - ], - ], - ], + 'Code' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The additional information returned only if an error occurs.', 'type' => 'string', 'example' => 'job type is java className can not be blank', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"calendar \'2025workday\' already exists in year 2025\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true,\\n \\"AccessDeniedDetail\\": {\\n \\"AuthAction\\": \\"edas: CreateSchedulerxCalendar\\",\\n \\"AuthPrincipalDisplayName\\": \\"209312833131416xxx\\",\\n \\"AuthPrincipalOwnerId\\": \\"1827811800526xxx\\",\\n \\"AuthPrincipalType\\": \\"SubUser\\",\\n \\"EncodedDiagnosticMessage\\": \\"AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==\\",\\n \\"NoPermissionType\\": \\"ImplicitDeny\\",\\n \\"PolicyType\\": \\"AccountLevelIdentityBasedPolicy\\"\\n }\\n}","type":"json"}]', - 'title' => 'CreateSchedulerxCalendar', - ], - 'DeleteSchedulerxCalendar' => [ - 'summary' => 'Deletes a calendar.', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'https', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"job type is java className can not be blank\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'Update Job Configuration Information ', + 'requestParamsDescription' => '> When you invoke UpdateJob to update a scheduling task, the system deletes the previous configuration of the corresponding parameter instead of retaining it. Therefore, you must first invoke [GetJobInfo](~~176507~~) to obtain the previous configuration of the target task, and then configure it based on your actual requirements.', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [ + ['createdAt' => '2025-02-10T07:10:18.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-18T05:48:50.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2023-06-06T17:05:13.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2023-03-30T08:41:55.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2022-12-26T01:58:59.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2022-09-28T11:24:07.000Z', 'description' => 'Request parameters changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxJobModify', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'UpdateJobScript' => [ + 'summary' => 'Updates the execution script of a job.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', - 'systemTags' => [ - 'operationType' => 'delete', - 'riskType' => 'none', - 'chargeType' => 'free', - 'tenantRelevance' => 'tenant', - ], + 'systemTags' => ['operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'tenantRelevance' => 'tenant'], 'parameters' => [ [ + 'name' => 'JobId', + 'in' => 'formData', + 'schema' => ['description' => 'The job ID. You can obtain the ID on the Tasks page in the SchedulerX console.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'docRequired' => true, 'example' => '301', 'title' => ''], + ], + [ + 'name' => 'Namespace', + 'in' => 'formData', + 'schema' => ['description' => 'The namespace ID. You can obtain the namespace ID on the Namespaces page in the SchedulerX console.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => ' '."\n" + .'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****'."\n", 'title' => ''], + ], + [ + 'name' => 'NamespaceSource', + 'in' => 'formData', + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for a special third party.', 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], + ], + [ + 'name' => 'GroupId', + 'in' => 'formData', + 'schema' => ['description' => 'The application ID. You can obtain the application ID on the Applications page in the SchedulerX console.', 'type' => 'string', 'required' => true, 'example' => 'testSchedulerx.defaultGroup'."\n", 'title' => ''], + ], + [ 'name' => 'RegionId', 'in' => 'formData', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou'."\n", 'title' => ''], ], [ - 'name' => 'CalendarName', + 'name' => 'VersionDescription', 'in' => 'formData', - 'schema' => [ - 'title' => '', - 'description' => 'The calendar name.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => '2025workday', - ], + 'schema' => ['description' => 'The description of the script version.', 'type' => 'string', 'required' => false, 'example' => 'Print job runtime information', 'title' => ''], ], [ - 'name' => 'Year', + 'name' => 'ScriptContent', 'in' => 'formData', - 'schema' => [ - 'description' => 'The year.', - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'example' => '2025', - ], + 'schema' => ['description' => 'The script content.', 'type' => 'string', 'required' => false, 'example' => '#!/bin/bash'."\n" + ."\n" + .'# The following are built-in variables provided by the system to retrieve job runtime information'."\n" + .'echo "Job parameters: #{schedulerx.jobParameters}"'."\n" + .'echo "Sharding ID: #{schedulerx.shardingId}"'."\n" + .'echo "Sharding parameters: #{schedulerx.shardingParameters}"'."\n" + .'echo "Total shards: #{schedulerx.shardingNum}"'."\n" + .'echo "Retry attempts: #{schedulerx.attempt}"'."\n" + .'echo "Trigger type: #{schedulerx.triggerType}"'."\n" + .'echo "Schedule timestamp: #{schedulerx.scheduleTime}"'."\n" + .'echo "Data timestamp: #{schedulerx.dataTime}"'."\n" + ."\n" + .'# The last line of output will be returned as the result'."\n" + .'echo "hello world"'."\n" + ."\n" + .'# exit 1 indicates failure'."\n" + .'exit 0', 'title' => ''], ], ], 'responses' => [ @@ -11690,773 +8410,1381 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'Additional information. Returned only when an error occurs.'."\n", - 'type' => 'string', - 'example' => 'calendar \'2025workday\' does not exist in year 2025', - ], - 'RequestId' => [ - 'description' => 'The unique request ID.'."\n", - 'type' => 'string', - 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'AccessDeniedDetail' => [ - 'description' => 'The access denial details.', - 'type' => 'object', - 'properties' => [ - 'AuthAction' => [ - 'description' => 'The authentication action.', - 'type' => 'string', - 'example' => 'edas:DeleteSchedulerxCalendar', - ], - 'AuthPrincipalDisplayName' => [ - 'description' => 'The principal name.'."\n", - 'type' => 'string', - 'example' => '209312833131416xxx', - ], - 'AuthPrincipalOwnerId' => [ - 'description' => 'The account of the principal.'."\n", - 'type' => 'string', - 'example' => '1827811800526xxx', - ], - 'AuthPrincipalType' => [ - 'description' => 'The principal type.'."\n", - 'type' => 'string', - 'example' => 'SubUser', - ], - 'EncodedDiagnosticMessage' => [ - 'description' => 'The encoded diagnostic message.'."\n", - 'type' => 'string', - 'example' => 'AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==', - ], - 'NoPermissionType' => [ - 'description' => 'The permission denial type.', - 'type' => 'string', - 'example' => 'ImplicitDeny', - ], - 'PolicyType' => [ - 'description' => 'The policy type.'."\n", - 'type' => 'string', - 'example' => 'AccountLevelIdentityBasedPolicy', - ], - ], - ], + 'Code' => ['description' => 'The returned code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The additional information returned only if an error occurs.', 'type' => 'string', 'example' => 'job is not existed, jobId=302', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108'."\n", 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"calendar \'2025workday\' does not exist in year 2025\\",\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Success\\": true,\\n \\"AccessDeniedDetail\\": {\\n \\"AuthAction\\": \\"edas:DeleteSchedulerxCalendar\\",\\n \\"AuthPrincipalDisplayName\\": \\"209312833131416xxx\\",\\n \\"AuthPrincipalOwnerId\\": \\"1827811800526xxx\\",\\n \\"AuthPrincipalType\\": \\"SubUser\\",\\n \\"EncodedDiagnosticMessage\\": \\"AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==\\",\\n \\"NoPermissionType\\": \\"ImplicitDeny\\",\\n \\"PolicyType\\": \\"AccountLevelIdentityBasedPolicy\\"\\n }\\n}","type":"json"}]', - 'title' => 'DeleteSchedulerxCalendar', - ], - 'ManageSchedulerxCalendar' => [ - 'summary' => 'Updates a calendar.', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'https', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"job is not existed, jobId=302\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\\\n\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'UpdateJobScript', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxJobModify', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'UpdateNamespace' => [ + 'summary' => 'Updates a namespace.', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', - 'systemTags' => [ - 'operationType' => 'update', - 'riskType' => 'none', - 'chargeType' => 'free', - 'tenantRelevance' => 'tenant', - ], + 'deprecated' => false, + 'systemTags' => ['operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ 'name' => 'RegionId', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], - ], - [ - 'name' => 'CalendarName', - 'in' => 'formData', - 'schema' => [ - 'title' => '', - 'description' => 'The calendar name.', - 'type' => 'string', - 'required' => true, - 'example' => '2025workday', - ], + 'in' => 'query', + 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'Year', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The year.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'example' => '2025', - ], + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => ['description' => 'The namespace ID. You can obtain the namespace ID on the Namespaces page in the SchedulerX console.', 'type' => 'string', 'required' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****'."\n", 'title' => ''], ], [ - 'name' => 'MonthDaysContent', - 'in' => 'formData', - 'schema' => [ - 'title' => '', - 'description' => 'The month and days.', - 'type' => 'string', - 'required' => true, - 'example' => '['."\n" - .' {"month":1,"days":[3,4,5,6,9,10,11,12,13,16,17,18,19,20,28,29,30,31]},'."\n" - .' {"month":2,"days":[1,2,3,6,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28]},'."\n" - .' {"month":3,"days":[1,2,3,6,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28,29,30,31]},'."\n" - .' {"month":4,"days":[3,4,6,7,10,11,12,13,14,17,18,19,20,21,23,24,25,26,27,28]},'."\n" - .' {"month":5,"days":[4,5,6,8,9,10,11,12,15,16,17,18,19,22,23,24,25,26,29,30,31]},'."\n" - .' {"month":6,"days":[1,2,5,6,7,8,9,12,13,14,15,16,19,20,21,25,26,27,28,29,30]},'."\n" - .' {"month":7,"days":[3,4,5,6,7,10,11,12,13,14,17,18,19,20,21,24,25,26,27,28,31]},'."\n" - .' {"month":8,"days":[1,2,3,4,7,8,9,10,11,14,15,16,17,18,21,22,23,24,25,28,29,30,31]},'."\n" - .' {"month":9,"days":[1,4,5,6,7,8,11,12,13,14,15,18,19,20,21,22,25,26,27,28]},'."\n" - .' {"month":10,"days":[7,8,9,10,11,12,13,16,17,18,19,20,23,24,25,26,27,30,31]},'."\n" - .' {"month":11,"days":[1,2,3,6,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28,29,30]},'."\n" - .' {"month":12,"days":[1,4,5,6,7,8,11,12,13,14,15,18,19,20,21,22,25,26,27,28,29]}'."\n" - .']', - ], + 'name' => 'NamespaceName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the namespace.', 'type' => 'string', 'required' => false, 'example' => 'Test Namespace', 'title' => ''], ], [ - 'name' => 'Incremental', - 'in' => 'formData', - 'schema' => [ - 'description' => 'Specifies whether to perform an incremental update. Default value: false.'."\n" - ."\n" - .'* false: Updates the specified months and removes configurations for all other months.'."\n" - .'* true: Updates only the specified months and preserves existing configurations for other months.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - 'default' => 'false', - ], + 'name' => 'Description', + 'in' => 'query', + 'schema' => ['description' => 'The description of the namespace.', 'type' => 'string', 'required' => false, 'example' => 'Namespace reserved for testing', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'Additional information. Returned only if an error occurs.', - 'type' => 'string', - 'example' => 'calendar \'2025workday\' does not exist in year 2025', - ], - 'RequestId' => [ - 'description' => 'The unique request ID.'."\n", - 'type' => 'string', - 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'AccessDeniedDetail' => [ - 'description' => 'The access denial details.', - 'type' => 'object', - 'properties' => [ - 'AuthAction' => [ - 'description' => 'The authentication action.', - 'type' => 'string', - 'example' => 'edas:ManageSchedulerxCalendar', - ], - 'AuthPrincipalDisplayName' => [ - 'description' => 'The principal name.'."\n", - 'type' => 'string', - 'example' => '209312833131416xxx', - ], - 'AuthPrincipalOwnerId' => [ - 'description' => 'The principal name.'."\n", - 'type' => 'string', - 'example' => '1827811800526xxx', - ], - 'AuthPrincipalType' => [ - 'description' => 'The principal type.'."\n", - 'type' => 'string', - 'example' => 'SubUser', - ], - 'EncodedDiagnosticMessage' => [ - 'description' => 'The encoded diagnostic message.'."\n", - 'type' => 'string', - 'example' => 'AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==', - ], - 'NoPermissionType' => [ - 'description' => 'The permission denial type.'."\n", - 'type' => 'string', - 'example' => 'ImplicitDeny', - ], - 'PolicyType' => [ - 'description' => 'The policy type.'."\n", - 'type' => 'string', - 'example' => 'AccountLevelIdentityBasedPolicy', - ], - ], - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0'], + 'Code' => ['description' => 'The returned code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The additional information returned only if an error occurs.', 'type' => 'string', 'example' => 'The system namespace cannot be modified', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], - 'description' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"calendar \'2025workday\' does not exist in year 2025\\",\\n \\"RequestId\\": \\"4F68ABED-AC31-4412-9297-D9A8F0401108\\",\\n \\"Success\\": true,\\n \\"AccessDeniedDetail\\": {\\n \\"AuthAction\\": \\"edas:ManageSchedulerxCalendar\\",\\n \\"AuthPrincipalDisplayName\\": \\"209312833131416xxx\\",\\n \\"AuthPrincipalOwnerId\\": \\"1827811800526xxx\\",\\n \\"AuthPrincipalType\\": \\"SubUser\\",\\n \\"EncodedDiagnosticMessage\\": \\"AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==\\",\\n \\"NoPermissionType\\": \\"ImplicitDeny\\",\\n \\"PolicyType\\": \\"AccountLevelIdentityBasedPolicy\\"\\n }\\n}","type":"json"}]', - 'title' => 'ManageSchedulerxCalendar', - ], - 'ReadSchedulerxCalendar' => [ - 'summary' => 'Retrieves the information of a calendar.', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'https', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"The system namespace cannot be modified\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'UpdateNamespace', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxNamespaceModify', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'UpdateWorkflow' => [ + 'summary' => 'Updates the basic information about a workflow. You can call this operation only in the professional edition.', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', - 'systemTags' => [ - 'operationType' => 'list', - 'riskType' => 'none', - 'chargeType' => 'free', - 'tenantRelevance' => 'tenant', - ], + 'deprecated' => false, + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'CalendarName', - 'in' => 'query', - 'schema' => [ - 'title' => '通知策略名称', - 'description' => 'The calendar name.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '2025workday', - ], + 'name' => 'Namespace', + 'in' => 'formData', + 'schema' => ['description' => 'The namespace ID. You can obtain the namespace ID on the Namespace page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ - 'name' => 'Year', - 'in' => 'query', - 'schema' => [ - 'description' => 'The year.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '2025', - ], + 'name' => 'NamespaceSource', + 'in' => 'formData', + 'schema' => ['description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ - 'name' => 'FetchSystemCalendar', - 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to retrieve system calendars. The default value is false.'."\n" - ."\n" - .'* false: Returns only user-defined calendars.'."\n" - .'* true: Returns both system calendars and user-defined calendars.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - 'default' => 'false', - ], + 'name' => 'GroupId', + 'in' => 'formData', + 'schema' => ['description' => 'The application group ID. You can obtain the application group ID on the Application Management page in the SchedulerX console.'."\n", 'type' => 'string', 'required' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ - 'name' => 'FetchCalendarDetail', - 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to retrieve calendar details. The default value is false.'."\n" - ."\n" - .'* false: Returns only basic information without the detailed list of days for each month.'."\n" - .'* true: Returns the detailed list of days for each month.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - 'default' => 'false', - ], + 'name' => 'WorkflowId', + 'in' => 'formData', + 'schema' => ['description' => 'The workflow ID.'."\n", 'type' => 'string', 'required' => true, 'example' => '123', 'title' => ''], ], [ - 'name' => 'MaxResults', - 'in' => 'query', - 'schema' => [ - 'description' => 'The maximum number of entries to return on this call. The default value is 20.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '15', - 'default' => '20', - ], + 'name' => 'Name', + 'in' => 'formData', + 'schema' => ['description' => 'The name of the workflow.'."\n", 'type' => 'string', 'required' => false, 'example' => 'helloworld', 'title' => ''], ], [ - 'name' => 'NextToken', - 'in' => 'query', - 'schema' => [ - 'description' => 'A token that specifies the starting position for retrieving the next page of data. You do not need to provide this parameter for the first request. An empty value indicates that all data has been read.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'AAAAAdYzT97YjSXWT8TQmxIAI5g=', - ], + 'name' => 'Description', + 'in' => 'formData', + 'schema' => ['description' => 'The description of the workflow.'."\n", 'type' => 'string', 'required' => false, 'example' => 'Test', 'title' => ''], + ], + [ + 'name' => 'TimeType', + 'in' => 'formData', + 'schema' => ['description' => 'The method that is used to specify the time. Valid values:'."\n" + ."\n" + .'* 1: cron'."\n" + .'* 100: api'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], + ], + [ + 'name' => 'TimeExpression', + 'in' => 'formData', + 'schema' => ['description' => 'The time expression. You can set the time expression based on the selected method that is used to specify time.'."\n" + ."\n" + .'* If you set TimeType to cron, you need to enter a standard cron expression. Online verification is supported.'."\n" + .'* If you set TimeType to api, no time expression is required.'."\n", 'type' => 'string', 'required' => false, 'example' => '0 0/10 * * * ?', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response schema.'."\n", 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The status code.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The error message.'."\n", - 'type' => 'string', - 'example' => 'unknown exception occurred'."\n", - ], - 'RequestId' => [ - 'description' => 'The unique request ID.'."\n", - 'type' => 'string', - 'example' => 'C8E5FB4A-6D8D-424D-9AAA-4FE06BB74FF9', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'AccessDeniedDetail' => [ - 'description' => 'The access denial details.', - 'type' => 'object', - 'properties' => [ - 'AuthAction' => [ - 'description' => 'The authentication action.', - 'type' => 'string', - 'example' => 'edas:ReadSchedulerxCalendar', - ], - 'AuthPrincipalDisplayName' => [ - 'description' => 'The principal name.'."\n", - 'type' => 'string', - 'example' => '209312833131416xxx', - ], - 'AuthPrincipalOwnerId' => [ - 'description' => 'The account of the principal.'."\n", - 'type' => 'string', - 'example' => '1827811800526xxx', - ], - 'AuthPrincipalType' => [ - 'description' => 'The principal type.'."\n", - 'type' => 'string', - 'example' => 'SubUser', - ], - 'EncodedDiagnosticMessage' => [ - 'description' => 'The encoded diagnostic message.'."\n", - 'type' => 'string', - 'example' => 'AQEAAAAAaDEssEE4MDg4NTQyLTVGMTYtNTFEQy1CODJCLUFFMDY4NUVDQ0ZBQQ==', - ], - 'NoPermissionType' => [ - 'description' => 'The permission denial type.', - 'type' => 'string', - 'example' => 'ImplicitDeny', - ], - 'PolicyType' => [ - 'description' => 'The policy type.'."\n", - 'type' => 'string', - 'example' => 'AccountLevelIdentityBasedPolicy', - ], - ], - ], - 'Data' => [ - 'description' => '*'."\n", - 'type' => 'object', - 'properties' => [ - 'Records' => [ - 'description' => '*'."\n", - 'type' => 'array', - 'items' => [ - 'description' => '*'."\n", - 'type' => 'object', - 'properties' => [ - 'CalendarName' => [ - 'description' => 'The calendar name.'."\n", - 'type' => 'string', - 'example' => '2025workday', - ], - 'Year' => [ - 'description' => 'The year.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2025', - ], - 'MonthDaysContent' => [ - 'description' => 'The months and days.'."\n", - 'type' => 'string', - 'example' => '['."\n" - .' {"month":1,"days":[3,4,5,6,9,10,11,12,13,16,17,18,19,20,28,29,30,31]},'."\n" - .' {"month":2,"days":[1,2,3,6,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28]},'."\n" - .' {"month":3,"days":[1,2,3,6,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28,29,30,31]},'."\n" - .' {"month":4,"days":[3,4,6,7,10,11,12,13,14,17,18,19,20,21,23,24,25,26,27,28]},'."\n" - .' {"month":5,"days":[4,5,6,8,9,10,11,12,15,16,17,18,19,22,23,24,25,26,29,30,31]},'."\n" - .' {"month":6,"days":[1,2,5,6,7,8,9,12,13,14,15,16,19,20,21,25,26,27,28,29,30]},'."\n" - .' {"month":7,"days":[3,4,5,6,7,10,11,12,13,14,17,18,19,20,21,24,25,26,27,28,31]},'."\n" - .' {"month":8,"days":[1,2,3,4,7,8,9,10,11,14,15,16,17,18,21,22,23,24,25,28,29,30,31]},'."\n" - .' {"month":9,"days":[1,4,5,6,7,8,11,12,13,14,15,18,19,20,21,22,25,26,27,28]},'."\n" - .' {"month":10,"days":[7,8,9,10,11,12,13,16,17,18,19,20,23,24,25,26,27,30,31]},'."\n" - .' {"month":11,"days":[1,2,3,6,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28,29,30]},'."\n" - .' {"month":12,"days":[1,4,5,6,7,8,11,12,13,14,15,18,19,20,21,22,25,26,27,28,29]}'."\n" - .']', - ], - 'Creator' => [ - 'description' => 'The creator.'."\n", - 'type' => 'string', - 'example' => '1827811800526xxx', - ], - 'SystemCalendar' => [ - 'description' => 'Indicates whether it is a system calendar.'."\n", - 'type' => 'boolean', - 'example' => 'false', - ], - ], - ], - ], - 'NextToken' => [ - 'description' => 'When there is more data to retrieve, the server returns a nextToken. You can use this token in a subsequent request to continue reading from where you left off.'."\n", - 'type' => 'string', - 'example' => 'O39nXKu5XafATl3/cJjSJw=='."\n", - ], - 'Total' => [ - 'description' => 'The total number of entries.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '20', - ], - 'MaxResults' => [ - 'description' => 'The maximum number of entries returned.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '15', - ], - ], - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0'], + 'Code' => ['description' => 'The HTTP status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Message' => ['description' => 'The returned error message.'."\n", 'type' => 'string', 'example' => 'timetype is invalid', 'title' => ''], ], - 'description' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"unknown exception occurred\\\\n\\",\\n \\"RequestId\\": \\"C8E5FB4A-6D8D-424D-9AAA-4FE06BB74FF9\\",\\n \\"Success\\": true,\\n \\"AccessDeniedDetail\\": {\\n \\"AuthAction\\": \\"edas:ReadSchedulerxCalendar\\",\\n \\"AuthPrincipalDisplayName\\": \\"209312833131416xxx\\",\\n \\"AuthPrincipalOwnerId\\": \\"1827811800526xxx\\",\\n \\"AuthPrincipalType\\": \\"SubUser\\",\\n \\"EncodedDiagnosticMessage\\": \\"AQEAAAAAaDEssEE4MDg4NTQyLTVGMTYtNTFEQy1CODJCLUFFMDY4NUVDQ0ZBQQ==\\",\\n \\"NoPermissionType\\": \\"ImplicitDeny\\",\\n \\"PolicyType\\": \\"AccountLevelIdentityBasedPolicy\\"\\n },\\n \\"Data\\": {\\n \\"Records\\": [\\n {\\n \\"CalendarName\\": \\"2025workday\\",\\n \\"Year\\": 2025,\\n \\"MonthDaysContent\\": \\"[\\\\n {\\\\\\"month\\\\\\":1,\\\\\\"days\\\\\\":[3,4,5,6,9,10,11,12,13,16,17,18,19,20,28,29,30,31]},\\\\n {\\\\\\"month\\\\\\":2,\\\\\\"days\\\\\\":[1,2,3,6,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28]},\\\\n {\\\\\\"month\\\\\\":3,\\\\\\"days\\\\\\":[1,2,3,6,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28,29,30,31]},\\\\n {\\\\\\"month\\\\\\":4,\\\\\\"days\\\\\\":[3,4,6,7,10,11,12,13,14,17,18,19,20,21,23,24,25,26,27,28]},\\\\n {\\\\\\"month\\\\\\":5,\\\\\\"days\\\\\\":[4,5,6,8,9,10,11,12,15,16,17,18,19,22,23,24,25,26,29,30,31]},\\\\n {\\\\\\"month\\\\\\":6,\\\\\\"days\\\\\\":[1,2,5,6,7,8,9,12,13,14,15,16,19,20,21,25,26,27,28,29,30]},\\\\n {\\\\\\"month\\\\\\":7,\\\\\\"days\\\\\\":[3,4,5,6,7,10,11,12,13,14,17,18,19,20,21,24,25,26,27,28,31]},\\\\n {\\\\\\"month\\\\\\":8,\\\\\\"days\\\\\\":[1,2,3,4,7,8,9,10,11,14,15,16,17,18,21,22,23,24,25,28,29,30,31]},\\\\n {\\\\\\"month\\\\\\":9,\\\\\\"days\\\\\\":[1,4,5,6,7,8,11,12,13,14,15,18,19,20,21,22,25,26,27,28]},\\\\n {\\\\\\"month\\\\\\":10,\\\\\\"days\\\\\\":[7,8,9,10,11,12,13,16,17,18,19,20,23,24,25,26,27,30,31]},\\\\n {\\\\\\"month\\\\\\":11,\\\\\\"days\\\\\\":[1,2,3,6,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28,29,30]},\\\\n {\\\\\\"month\\\\\\":12,\\\\\\"days\\\\\\":[1,4,5,6,7,8,11,12,13,14,15,18,19,20,21,22,25,26,27,28,29]}\\\\n]\\",\\n \\"Creator\\": \\"1827811800526xxx\\",\\n \\"SystemCalendar\\": false\\n }\\n ],\\n \\"NextToken\\": \\"O39nXKu5XafATl3/cJjSJw==\\\\n\\",\\n \\"Total\\": 20,\\n \\"MaxResults\\": 15\\n }\\n}","type":"json"}]', - 'title' => 'ReadSchedulerxCalendar', - ], - 'GetOverview' => [ - 'summary' => 'Retrieves job scheduling data for Professional Edition applications.', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"timetype is invalid\\"\\n}","type":"json"}]', + 'title' => 'UpdateWorkflow', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-18T05:48:50.000Z', 'description' => 'Response parameters changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxWorkflowModify', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'UpdateWorkflowDag' => [ + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - ], + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'title' => '区域Region ID', - 'description' => 'The region ID.', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The Region ID.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Namespace', - 'in' => 'query', - 'schema' => [ - 'title' => '命名空间UID', - 'description' => 'The unique identifier (UID) of the namespace.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', - ], + 'in' => 'formData', + 'schema' => ['description' => 'The Namespace ID. You can obtain the ID on the **Namespaces** page in the console.', 'type' => 'string', 'required' => true, 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****', 'title' => ''], ], [ 'name' => 'NamespaceSource', - 'in' => 'query', - 'schema' => [ - 'title' => '', - 'description' => 'The source of the namespace. This parameter is required only for a special third party.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'schedulerx', - ], + 'in' => 'formData', + 'schema' => ['description' => 'This parameter is required only for specific third-party integrations.', 'type' => 'string', 'required' => false, 'example' => 'schedulerx', 'title' => ''], ], [ 'name' => 'GroupId', - 'in' => 'query', - 'schema' => [ - 'title' => '应用分组ID', - 'description' => 'The application group ID.', - 'type' => 'string', - 'required' => false, - 'example' => 'testSchedulerx.defaultGroup', - ], - ], - [ - 'name' => 'Operate', - 'in' => 'query', - 'schema' => [ - 'title' => '可选项'."\n" - .'query:查询区间数据'."\n" - .'query_range:查询区间时许数据', - 'description' => 'The query type. Valid values:'."\n" - ."\n" - .'* query: queries data in a time range.'."\n" - .'* query_range: queries time series data in a time range.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'query', - 'enum' => [ - 'query', - 'query_range', - ], - ], - ], - [ - 'name' => 'MetricType', - 'in' => 'query', - 'schema' => [ - 'title' => '可选项'."\n" - .'0:任务类基础信息'."\n" - .'1:任务运行信息', - 'description' => 'The metric type. Valid values:'."\n" - ."\n" - .'* 0: the basic job data.'."\n" - .'* 1: the job running data.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'example' => '0', - 'enum' => [ - '0', - '1', - ], - ], + 'in' => 'formData', + 'schema' => ['description' => 'The Application Group ID. You can find this ID on the **Application Management** page in the console.', 'type' => 'string', 'required' => true, 'example' => 'testSchedulerx.defaultGroup', 'title' => ''], ], [ - 'name' => 'StartTime', - 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'title' => '数据起始时间戳(单位:秒),如:1684166400', - 'description' => 'The beginning of the time range to query. The value must be a UNIX timestamp (in seconds).', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '1684166400', - ], + 'name' => 'WorkflowId', + 'in' => 'formData', + 'schema' => ['description' => 'The Workflow ID.', 'type' => 'string', 'required' => true, 'example' => '123', 'title' => ''], ], [ - 'name' => 'EndTime', - 'in' => 'query', - 'schema' => [ - 'title' => '数据结束时间戳(单位:秒),如:1684166400 '."\n" - .'不填默认为当前时间', - 'description' => 'The end of the time range to query. The value must be a UNIX timestamp (in seconds). If left empty, the current time is used.', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1684166400', - ], + 'name' => 'DagJson', + 'in' => 'formData', + 'schema' => ['description' => 'The definition of the workflow\'s directed acyclic graph (DAG), including nodes and edges, as a JSON string.', 'type' => 'string', 'required' => true, 'example' => '{"nodes":[{"id":2300691},{"id":10518089},{"id":1758851}],"edges":[{"source":10518089,"target":1758851},{"source":10518089,"target":2300691}]}', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'Schema of Response'."\n", + 'description' => 'The data returned.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0', - ], - 'Code' => [ - 'description' => 'The status code.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* **true**'."\n" - .'* **false**'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Message' => [ - 'description' => 'Additional information. Returned only if an error occurs.', - 'type' => 'string', - 'example' => 'No access permission for the namespace [***]', - ], - 'Data' => [ - 'description' => 'The data returned in JSON format. Valid data types:'."\n" - ."\n" - .'* Basic job data.'."\n" - .'* Job running data.'."\n" - .'* Time series data for job execution: includes triggering statistics, records of successful and failed executions, and their associated timestamps within a specific time range.'."\n", - 'type' => 'string', - 'example' => '{"schedulerx_job_counter_disable": "4","schedulerx_job_trigger_counter_running": "0","schedulerx_job_counter_enable": "70","schedulerx_job_counter_all": "74","schedulerx_worker_counter": "2"}', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The Request ID.', 'type' => 'string', 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0'], + 'Code' => ['description' => 'The Return Code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the API call succeeded. Valid values:'."\n" + ."\n" + .'- true: The API call succeeded.'."\n" + ."\n" + .'- false: The API call failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Message' => ['description' => 'The Error Message returned on failure.', 'type' => 'string', 'title' => '', 'example' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'UpdateWorkflowDag', + 'summary' => 'Updates the nodes and dependencies of a workflow. This operation is available only in the Enterprise Edition.', + 'changeSet' => [ + ['createdAt' => '2024-12-20T02:24:30.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-18T05:48:50.000Z', 'description' => 'Response parameters changed'], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxWorkflowDagModify', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"No access permission for the namespace [***]\\",\\n \\"Data\\": \\"基础信息:{\\\\\\"schedulerx_job_counter_disable\\\\\\": \\\\\\"4\\\\\\",\\\\\\"schedulerx_job_trigger_counter_running\\\\\\": \\\\\\"0\\\\\\",\\\\\\"schedulerx_job_counter_enable\\\\\\": \\\\\\"70\\\\\\",\\\\\\"schedulerx_job_counter_all\\\\\\": \\\\\\"74\\\\\\",\\\\\\"schedulerx_worker_counter\\\\\\": \\\\\\"2\\\\\\"}\\"\\n}","type":"json"}]', - 'title' => 'GetOverview', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"\\"\\n}","type":"json"}]', ], ], 'endpoints' => [ + ['regionId' => 'ap-southeast-8', 'regionName' => 'Malaysia (Johor)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'schedulerx.aliyuncs.com', 'endpoint' => 'schedulerx.aliyuncs.com', 'vpc' => ''], + ['regionId' => 'cn-shenzhen', 'regionName' => 'China (Shenzhen)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'schedulerx.aliyuncs.com', 'endpoint' => 'schedulerx.aliyuncs.com', 'vpc' => 'schedulerx-vpc.cn-shenzhen.aliyuncs.com'], + ['regionId' => 'cn-wulanchabu', 'regionName' => 'China (Ulanqab)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'schedulerx.aliyuncs.com', 'endpoint' => 'schedulerx.aliyuncs.com', 'vpc' => 'schedulerx-vpc.cn-wulanchabu.aliyuncs.com'], + ['regionId' => 'cn-beijing', 'regionName' => 'China (Beijing)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'schedulerx.aliyuncs.com', 'endpoint' => 'schedulerx.aliyuncs.com', 'vpc' => 'schedulerx-vpc.cn-beijing.aliyuncs.com'], + ['regionId' => 'ap-northeast-1', 'regionName' => 'Japan (Tokyo)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'schedulerx.aliyuncs.com', 'endpoint' => 'schedulerx.aliyuncs.com', 'vpc' => 'schedulerx-vpc.ap-northeast-1.aliyuncs.com'], + ['regionId' => 'cn-chengdu', 'regionName' => 'China (Chengdu)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'schedulerx.aliyuncs.com', 'endpoint' => 'schedulerx.aliyuncs.com', 'vpc' => 'schedulerx-vpc.cn-chengdu.aliyuncs.com'], + ['regionId' => 'cn-qingdao', 'regionName' => 'China (Qingdao)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'schedulerx.aliyuncs.com', 'endpoint' => 'schedulerx.aliyuncs.com', 'vpc' => 'schedulerx-vpc.cn-qingdao.aliyuncs.com'], + ['regionId' => 'cn-shanghai', 'regionName' => 'China (Shanghai)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'schedulerx.aliyuncs.com', 'endpoint' => 'schedulerx.aliyuncs.com', 'vpc' => 'schedulerx-vpc.cn-shanghai.aliyuncs.com'], + ['regionId' => 'cn-guangzhou', 'regionName' => 'China (Guangzhou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'schedulerx.aliyuncs.com', 'endpoint' => 'schedulerx.aliyuncs.com', 'vpc' => 'schedulerx-vpc.cn-guangzhou.aliyuncs.com'], + ['regionId' => 'cn-hongkong', 'regionName' => 'China (Hong Kong)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'schedulerx.aliyuncs.com', 'endpoint' => 'schedulerx.aliyuncs.com', 'vpc' => 'schedulerx-vpc.cn-hongkong.aliyuncs.com'], + ['regionId' => 'ap-southeast-1', 'regionName' => 'Singapore', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'schedulerx.aliyuncs.com', 'endpoint' => 'schedulerx.aliyuncs.com', 'vpc' => 'schedulerx-vpc.ap-southeast-1.aliyuncs.com'], + ['regionId' => 'ap-southeast-3', 'regionName' => 'Malaysia (Kuala Lumpur)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'schedulerx.aliyuncs.com', 'endpoint' => 'schedulerx.aliyuncs.com', 'vpc' => 'schedulerx-vpc.ap-southeast-3.aliyuncs.com'], + ['regionId' => 'cn-huhehaote', 'regionName' => 'China (Hohhot)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'schedulerx.aliyuncs.com', 'endpoint' => 'schedulerx.aliyuncs.com', 'vpc' => 'schedulerx-vpc.cn-huhehaote.aliyuncs.com'], + ['regionId' => 'ap-southeast-5', 'regionName' => 'Indonesia (Jakarta)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'schedulerx.aliyuncs.com', 'endpoint' => 'schedulerx.aliyuncs.com', 'vpc' => 'schedulerx-vpc.ap-southeast-5.aliyuncs.com'], + ['regionId' => 'ap-southeast-6', 'regionName' => 'Philippines (Manila)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'schedulerx.aliyuncs.com', 'endpoint' => 'schedulerx.aliyuncs.com', 'vpc' => 'schedulerx-vpc.ap-southeast-6.aliyuncs.com'], + ['regionId' => 'cn-zhangjiakou', 'regionName' => 'China (Zhangjiakou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'schedulerx.aliyuncs.com', 'endpoint' => 'schedulerx.aliyuncs.com', 'vpc' => 'schedulerx-vpc.cn-zhangjiakou.aliyuncs.com'], + ['regionId' => 'ap-southeast-7', 'regionName' => 'Thailand (Bangkok)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'schedulerx.aliyuncs.com', 'endpoint' => 'schedulerx.aliyuncs.com', 'vpc' => 'schedulerx-vpc.ap-southeast-7.aliyuncs.com'], + ['regionId' => 'cn-hangzhou', 'regionName' => 'China (Hangzhou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'schedulerx.aliyuncs.com', 'endpoint' => 'schedulerx.aliyuncs.com', 'vpc' => 'schedulerx-vpc.cn-hangzhou.aliyuncs.com'], + ['regionId' => 'us-west-1', 'regionName' => 'US (Silicon Valley)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'schedulerx.aliyuncs.com', 'endpoint' => 'schedulerx.aliyuncs.com', 'vpc' => 'schedulerx-vpc.us-west-1.aliyuncs.com'], + ['regionId' => 'us-east-1', 'regionName' => 'US (Virginia)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'schedulerx.aliyuncs.com', 'endpoint' => 'schedulerx.aliyuncs.com', 'vpc' => 'schedulerx-vpc.us-east-1.aliyuncs.com'], + ['regionId' => 'eu-central-1', 'regionName' => 'Germany (Frankfurt)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'schedulerx.aliyuncs.com', 'endpoint' => 'schedulerx.aliyuncs.com', 'vpc' => 'schedulerx-vpc.eu-central-1.aliyuncs.com'], + ['regionId' => 'eu-west-1', 'regionName' => 'UK (London)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'schedulerx.aliyuncs.com', 'endpoint' => 'schedulerx.aliyuncs.com', 'vpc' => 'schedulerx-vpc.eu-west-1.aliyuncs.com'], + ['regionId' => 'public', 'regionName' => 'Public network', 'areaId' => 'other', 'areaName' => 'Other', 'public' => 'schedulerx.aliyuncs.com', 'endpoint' => 'schedulerx.aliyuncs.com', 'vpc' => ''], + ['regionId' => 'cn-shanghai-finance-1', 'regionName' => 'China East 2 Finance', 'areaId' => 'industryCloud', 'areaName' => 'Industry Cloud', 'public' => 'schedulerx.aliyuncs.com', 'endpoint' => 'schedulerx.aliyuncs.com', 'vpc' => 'schedulerx-vpc.cn-shanghai-finance-1.aliyuncs.com'], + ], + 'errorCodes' => [], + 'changeSet' => [ [ - 'regionId' => 'public', - 'endpoint' => 'schedulerx.aliyuncs.com', + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'GetAppGroup'], + ['description' => 'Response parameters changed', 'api' => 'ListGroups'], + ['description' => 'Request parameters changed', 'api' => 'UpdateAppGroup'], + ], + 'createdAt' => '2025-12-16T07:30:48.000Z', + 'description' => '', ], [ - 'regionId' => 'cn-beijing', - 'endpoint' => 'schedulerx.aliyuncs.com', + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'CreateAppGroup'], + ['description' => 'Response parameters changed', 'api' => 'GetAppGroup'], + ['description' => 'Request parameters changed', 'api' => 'UpdateAppGroup'], + ], + 'createdAt' => '2025-10-27T08:05:21.000Z', + 'description' => '', ], [ - 'regionId' => 'cn-zhangjiakou', - 'endpoint' => 'schedulerx.aliyuncs.com', + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'BatchDeleteRouteStrategy'], + ['description' => 'Response parameters changed', 'api' => 'StopInstance'], + ], + 'createdAt' => '2024-10-21T05:52:16.000Z', + 'description' => '', ], [ - 'regionId' => 'cn-huhehaote', - 'endpoint' => 'schedulerx.aliyuncs.com', + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'BatchDeleteJobs'], + ['description' => 'Response parameters changed', 'api' => 'BatchDisableJobs'], + ['description' => 'Response parameters changed', 'api' => 'BatchEnableJobs'], + ['description' => 'Response parameters changed', 'api' => 'CreateAppGroup'], + ['description' => 'Response parameters changed', 'api' => 'CreateJob'], + ['description' => 'Response parameters changed', 'api' => 'CreateNamespace'], + ['description' => 'Response parameters changed', 'api' => 'CreateRouteStrategy'], + ['description' => 'Response parameters changed', 'api' => 'CreateWorkflow'], + ['description' => 'Response parameters changed', 'api' => 'DeleteAppGroup'], + ['description' => 'Response parameters changed', 'api' => 'DeleteJob'], + ], + 'createdAt' => '2024-10-21T02:51:10.000Z', + 'description' => '', ], [ - 'regionId' => 'cn-hangzhou', - 'endpoint' => 'schedulerx.aliyuncs.com', + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'ExecuteWorkflow'], + ['description' => 'Response parameters changed', 'api' => 'GetJobInfo'], + ['description' => 'Response parameters changed', 'api' => 'GetJobInstance'], + ['description' => 'Response parameters changed', 'api' => 'GetJobInstanceList'], + ['description' => 'Response parameters changed', 'api' => 'GetLog'], + ['description' => 'Response parameters changed', 'api' => 'GetOverview'], + ['description' => 'Response parameters changed', 'api' => 'GetWorkerList'], + ['description' => 'Response parameters changed', 'api' => 'GetWorkFlow'], + ['description' => 'Response parameters changed', 'api' => 'GetWorkflowInstance'], + ['description' => 'Response parameters changed', 'api' => 'ListGroups'], + ], + 'createdAt' => '2024-10-18T05:49:01.000Z', + 'description' => '', ], [ - 'regionId' => 'cn-shanghai', - 'endpoint' => 'schedulerx.aliyuncs.com', + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'GetAppGroup'], + ['description' => 'Response parameters changed', 'api' => 'ListNamespaces'], + ], + 'createdAt' => '2024-10-17T09:46:02.000Z', + 'description' => '', ], [ - 'regionId' => 'cn-shenzhen', - 'endpoint' => 'schedulerx.aliyuncs.com', + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'GrantPermission'], + ], + 'createdAt' => '2024-10-15T09:38:07.000Z', + 'description' => '', ], [ - 'regionId' => 'cn-guangzhou', - 'endpoint' => 'schedulerx.aliyuncs.com', + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'CreateAppGroup'], + ['description' => 'Response parameters changed', 'api' => 'GetAppGroup'], + ['description' => 'Response parameters changed', 'api' => 'ListGroups'], + ['description' => 'Request parameters changed', 'api' => 'UpdateAppGroup'], + ], + 'createdAt' => '2024-06-05T07:37:35.000Z', + 'description' => '', ], [ - 'regionId' => 'cn-chengdu', - 'endpoint' => 'schedulerx.aliyuncs.com', + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'CreateWorkflow'], + ['description' => 'Request parameters changed', 'api' => 'DescribeRegions'], + ], + 'createdAt' => '2024-05-30T07:43:30.000Z', + 'description' => '', ], [ - 'regionId' => 'cn-hongkong', - 'endpoint' => 'schedulerx.aliyuncs.com', + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'ListGroups'], + ], + 'createdAt' => '2024-05-29T09:53:55.000Z', + 'description' => '', ], [ - 'regionId' => 'ap-northeast-1', - 'endpoint' => 'schedulerx.aliyuncs.com', + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'GetJobInstanceList'], + ], + 'createdAt' => '2024-05-17T01:26:54.000Z', + 'description' => '', ], [ - 'regionId' => 'ap-southeast-1', - 'endpoint' => 'schedulerx.aliyuncs.com', + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'CreateWorkflow'], + ], + 'createdAt' => '2024-03-25T02:55:43.000Z', + 'description' => '', ], [ - 'regionId' => 'us-east-1', - 'endpoint' => 'schedulerx.aliyuncs.com', + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'GetWorkflowInstance'], + ], + 'createdAt' => '2023-07-17T08:32:14.000Z', + 'description' => '', ], [ - 'regionId' => 'us-west-1', - 'endpoint' => 'schedulerx.aliyuncs.com', + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'GetJobInstance'], + ['description' => 'Response parameters changed', 'api' => 'GetWorkflowInstance'], + ], + 'createdAt' => '2023-07-17T03:39:19.000Z', + 'description' => '', ], [ - 'regionId' => 'eu-central-1', - 'endpoint' => 'schedulerx.aliyuncs.com', + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'ExecuteJob'], + ['description' => 'Request parameters changed', 'api' => 'ExecuteWorkflow'], + ['description' => 'Request parameters changed', 'api' => 'UpdateJob'], + ], + 'createdAt' => '2023-06-06T17:05:20.000Z', + 'description' => '', ], [ - 'regionId' => 'cn-shanghai-finance-1', - 'endpoint' => 'schedulerx.aliyuncs.com', + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'BatchDeleteRouteStrategy'], + ['description' => 'Response parameters changed', 'api' => 'CreateAppGroup'], + ['description' => 'Response parameters changed', 'api' => 'CreateJob'], + ['description' => 'Response parameters changed', 'api' => 'CreateRouteStrategy'], + ['description' => 'Response parameters changed', 'api' => 'DeleteAppGroup'], + ['description' => 'Response parameters changed', 'api' => 'DeleteRouteStrategy'], + ], + 'createdAt' => '2023-03-30T09:21:26.000Z', + 'description' => '', ], [ - 'regionId' => 'eu-west-1', - 'endpoint' => 'schedulerx.aliyuncs.com', + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'ListGroups'], + ['description' => 'Request parameters changed, Response parameters changed', 'api' => 'ListNamespaces'], + ], + 'createdAt' => '2023-03-24T08:25:49.000Z', + 'description' => '', ], [ - 'regionId' => 'ap-southeast-3', - 'endpoint' => 'schedulerx.aliyuncs.com', + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'BatchDeleteJobs'], + ['description' => 'Request parameters changed, Error codes changed', 'api' => 'BatchDisableJobs'], + ['description' => 'Request parameters changed, Error codes changed', 'api' => 'BatchEnableJobs'], + ['description' => 'Request parameters changed', 'api' => 'CreateJob'], + ['description' => 'Request parameters changed', 'api' => 'CreateNamespace'], + ['description' => 'Request parameters changed, Error codes changed', 'api' => 'DeleteJob'], + ['description' => 'Request parameters changed, Error codes changed', 'api' => 'DeleteWorkflow'], + ['description' => 'Error codes changed', 'api' => 'DescribeRegions'], + ['description' => 'Request parameters changed', 'api' => 'DesignateWorkers'], + ['description' => 'Request parameters changed, Error codes changed', 'api' => 'DisableJob'], + ], + 'createdAt' => '2022-12-26T02:52:48.000Z', + 'description' => '新增专业版api,包括工作流的增删改查', ], [ - 'regionId' => 'ap-southeast-5', - 'endpoint' => 'schedulerx.aliyuncs.com', + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'GetJobInfo'], + ['description' => 'Response parameters changed', 'api' => 'ListJobs'], + ], + 'createdAt' => '2022-11-02T03:31:37.000Z', + 'description' => 'ListJobs/GetJobInfo返回值增加JobType和XAttrs', ], [ - 'regionId' => 'ap-southeast-6', - 'endpoint' => 'schedulerx.aliyuncs.com', + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'CreateJob'], + ], + 'createdAt' => '2022-09-29T02:51:27.000Z', + 'description' => '修改CreateJob文档', ], [ - 'regionId' => 'cn-wulanchabu', - 'endpoint' => 'schedulerx.aliyuncs.com', + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'UpdateJob'], + ], + 'createdAt' => '2022-09-28T11:24:23.000Z', + 'description' => 'updateJob支持增量更新', ], [ - 'regionId' => 'ap-southeast-7', - 'endpoint' => 'schedulerx.aliyuncs.com', + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'CreateJob'], + ], + 'createdAt' => '2022-09-27T12:19:43.000Z', + 'description' => '创建任务支持k8s任务类型', + ], + [ + 'apis' => [ + ['description' => 'Error codes changed', 'api' => 'GetJobInstanceList'], + ], + 'createdAt' => '2022-07-18T04:26:11.000Z', + 'description' => 'GetJobInstanceList单用户限流1000/分钟', ], [ - 'regionId' => 'cn-qingdao', - 'endpoint' => 'schedulerx.aliyuncs.com', + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'CreateJob'], + ], + 'createdAt' => '2022-06-13T06:58:17.000Z', + 'description' => '创建任务支持设置状态', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'CreateNamespace'], + ], + 'createdAt' => '2022-05-25T12:47:08.000Z', + 'description' => 'namespaceSource设置为不可见', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'CreateNamespace'], + ], + 'createdAt' => '2022-03-29T08:27:48.000Z', + 'description' => '创建命名空间支持source', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed, Response parameters changed, Error codes changed', 'api' => 'CreateAppGroup'], + ['description' => 'OpenAPI offline', 'api' => 'CreateNamespace'], + ['description' => 'Request parameters changed', 'api' => 'GetJobInfo'], + ], + 'createdAt' => '2022-03-17T08:40:39.000Z', + 'description' => '新增api:CreateAppGroup, CreateNamespace', + ], + [ + 'apis' => [ + ['description' => 'Error codes changed', 'api' => 'GetJobInstance'], + ], + 'createdAt' => '2022-02-22T11:35:14.000Z', + 'description' => 'GetJobInstance限流调整为100次/分钟', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'ExecuteJob'], + ['description' => 'OpenAPI offline', 'api' => 'GetWorkerList'], + ], + 'createdAt' => '2021-12-30T07:49:32.000Z', + 'description' => '新增API: GetWorkerList更新API: ExecuteJob支持指定单次运行的机器', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed, Response parameters changed', 'api' => 'DesignateWorkers'], + ['description' => 'Request parameters changed, Response parameters changed', 'api' => 'GetWorkFlow'], + ], + 'createdAt' => '2021-12-21T03:32:58.000Z', + 'description' => '修复指定机器api', + ], + [ + 'apis' => [ + ['description' => 'OpenAPI offline', 'api' => 'DesignateWorkers'], + ['description' => 'Request parameters changed, Error codes changed', 'api' => 'ExecuteJob'], + ['description' => 'OpenAPI offline', 'api' => 'GetWorkFlow'], + ], + 'createdAt' => '2021-12-20T12:19:09.000Z', + 'description' => '新增指定机器、查看工作流的api', + ], + ], + 'ram' => [ + 'productCode' => 'Schedulerx', + 'productName' => 'Enterprise Distributed Application Service', + 'ramCodes' => ['schedulerx', 'edas'], + 'ramLevel' => 'RESOURCE', + 'ramConditions' => [], + 'ramActions' => [ + [ + 'apiName' => 'BatchDeleteRouteStrategy', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'edas:DeleteSchedulerxRouteStrategyBatch', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'UpdateNamespace', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxNamespaceModify', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'CreateSchedulerxNotificationPolicy', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:CreateSchedulerxNotificationPolicy', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'BatchDisableJobs', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxJobDisable', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'DeleteSchedulerxCalendar', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'edas:DeleteSchedulerxCalendar', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'ListNamespaces', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxNamespaceQuery', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'RevokePermission', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'edas:GrantSchedulerxRevokePermission', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'GetWorkflowInstance', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxWorkflowQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'GetJobInstance', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxJobInstanceQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'DeleteAppGroup', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'edas:DeleteSchedulerxAppGroupRemove', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'UpdateWorkflowDag', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxWorkflowDagModify', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'StopInstance', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxJobInstStop', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'GetWorkFlow', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxWorkflowQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'DeleteRouteStrategy', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'edas:DeleteSchedulerxRouteStrategyDelete', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'ManageSchedulerxJobSync', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxJobSync', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'AppGroup', 'arn' => 'acs:edas:{#regionId}:{#accountId}:namespace/{#Namespace}/JobGroup/{#GroupId}'], + ], + ], + ], + [ + 'apiName' => 'ReadSchedulerxDesignateInfo', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxDesignateInfo', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'AppGroup', 'arn' => 'acs:edas:{#regionId}:{#accountId}:namespace/{#Namespace}/JobGroup/{#GroupId}'], + ], + ], + ], + [ + 'apiName' => 'ExecuteWorkflow', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxWorkflowRun', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'GetAppGroup', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxAppGroupQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'CreateSchedulerxCalendar', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:CreateSchedulerxCalendar', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'SetJobInstanceSuccess', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxJobInstMarkSuccess', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'UpdateWorkflow', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxWorkflowModify', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'UpdateAppGroup', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxAppGroupModify', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'CreateNamespace', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:CreateSchedulerxNamespaceCreate', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'CreateWorkflow', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:CreateSchedulerxWorkflowCreate', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'DeleteNamespace', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'edas:DeleteSchedulerxNamespaceDelete', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'ReadSchedulerxDesignateDetail', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxDesignateDetail', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'AppGroup', 'arn' => 'acs:edas:{#regionId}:{#accountId}:namespace/{#Namespace}/JobGroup/{#GroupId}'], + ], + ], + ], + [ + 'apiName' => 'CreateJob', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:CreateSchedulerxJobCreate', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'RetryJobInstance', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxJobInstRun', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'ListJobs', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxJobQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'DisableWorkflow', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxWorkflowDisable', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'GetJobInfo', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxJobQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'GetJobInstanceList', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxJobInstanceQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'BatchDeleteJobs', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'edas:DeleteSchedulerxJobDelete', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'CreateAppGroup', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:CreateSchedulerxAppGroupCreate', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'RerunJob', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxJobRerun', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'CreateRouteStrategy', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:CreateSchedulerxRouteStrategyCreate', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'UpdateJob', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxJobModify', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'ManageSchedulerxCalendar', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxCalendar', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'BatchEnableJobs', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxJobEnable', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'ReadSchedulerxCalendar', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxCalendar', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'UpdateJobScript', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxJobModify', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'ListGroups', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxAppGroupQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'ManageSchedulerxNotificationPolicy', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxNotificationPolicy', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'DeleteSchedulerxNotificationPolicy', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'edas:DeleteSchedulerxNotificationPolicy', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'GetOverview', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxOverviewQuery', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'GrantPermission', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:GrantSchedulerxGrantPermission', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'GetWorkerList', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxAppGroupQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'DeleteJob', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'edas:DeleteSchedulerxJobDelete', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'EnableWorkflow', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxWorkflowEnable', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'DesignateWorkers', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxDesignateWorkers', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'ListWorkflowInstance', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxWorkflowQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'SetWfInstanceSuccess', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxWfInstanceMarkSuccess', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'GetLog', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxLogQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'ListJobScriptHistory', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxJobQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'ExecuteJob', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxJobTrigger', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'DisableJob', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxJobDisable', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'EnableJob', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'edas:ManageSchedulerxJobEnable', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'ReadSchedulerxNotificationPolicy', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxNotificationPolicy', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'DeleteWorkflow', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'edas:DeleteSchedulerxWorkflowDelete', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'ListWorkFlows', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'edas:ReadSchedulerxWorkflowQuery', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'Schedulerx', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + ], + 'resourceTypes' => [ + ['validationType' => 'always', 'resourceType' => 'AppGroup', 'arn' => 'acs:edas:{#regionId}:{#accountId}:namespace/{#Namespace}/JobGroup/{#GroupId}'], + ['validationType' => 'always', 'resourceType' => 'WorkFlow', 'arn' => 'acs:edas:{#regionId}:{#accountId}:*'], + ['validationType' => 'always', 'resourceType' => 'Job', 'arn' => 'acs:edas:{#regionId}:{#accountId}:*'], ], ], ]; |
