summaryrefslogtreecommitdiff
path: root/data/zh_cn/schedulerx2/2019-04-30
diff options
context:
space:
mode:
Diffstat (limited to 'data/zh_cn/schedulerx2/2019-04-30')
-rw-r--r--data/zh_cn/schedulerx2/2019-04-30/api-docs.php12714
1 files changed, 12714 insertions, 0 deletions
diff --git a/data/zh_cn/schedulerx2/2019-04-30/api-docs.php b/data/zh_cn/schedulerx2/2019-04-30/api-docs.php
new file mode 100644
index 0000000..75cb308
--- /dev/null
+++ b/data/zh_cn/schedulerx2/2019-04-30/api-docs.php
@@ -0,0 +1,12714 @@
+<?php return [
+ 'version' => '1.0',
+ 'info' => [
+ 'style' => 'RPC',
+ 'product' => 'schedulerx2',
+ 'version' => '2019-04-30',
+ ],
+ 'directories' => [
+ [
+ 'id' => 130044,
+ 'title' => '服务地域',
+ 'type' => 'directory',
+ 'children' => [
+ 'DescribeRegions',
+ ],
+ ],
+ [
+ 'id' => 167610,
+ 'title' => '命名空间',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateNamespace',
+ 'ListNamespaces',
+ 'DeleteNamespace',
+ 'UpdateNamespace',
+ ],
+ ],
+ [
+ 'id' => 130046,
+ 'title' => '应用分组',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateAppGroup',
+ 'GetAppGroup',
+ 'DeleteAppGroup',
+ 'UpdateAppGroup',
+ 'ListGroups',
+ 'GetWorkerList',
+ ],
+ ],
+ [
+ 'id' => 130049,
+ 'title' => '工作流',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateWorkflow',
+ 'UpdateWorkflow',
+ 'UpdateWorkflowDag',
+ 'ListWorkFlows',
+ 'ExecuteWorkflow',
+ 'DeleteWorkflow',
+ 'DisableWorkflow',
+ 'EnableWorkflow',
+ 'GetWorkFlow',
+ 'GetWorkflowInstance',
+ 'ListWorkflowInstance',
+ 'SetWfInstanceSuccess',
+ ],
+ ],
+ [
+ 'id' => 130055,
+ 'title' => '任务',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateJob',
+ 'DeleteJob',
+ 'BatchDeleteJobs',
+ 'UpdateJob',
+ 'DisableJob',
+ 'BatchEnableJobs',
+ 'BatchDisableJobs',
+ 'EnableJob',
+ 'GetJobInfo',
+ 'ListJobs',
+ 'ExecuteJob',
+ 'DesignateWorkers',
+ 'RerunJob',
+ 'UpdateJobScript',
+ 'ListJobScriptHistory',
+ 'ReadSchedulerxDesignateInfo',
+ 'ReadSchedulerxDesignateDetail',
+ 'ManageSchedulerxJobSync',
+ ],
+ ],
+ [
+ 'id' => 130066,
+ 'title' => '任务实例',
+ 'type' => 'directory',
+ 'children' => [
+ 'StopInstance',
+ 'GetJobInstance',
+ 'GetJobInstanceList',
+ 'RetryJobInstance',
+ 'SetJobInstanceSuccess',
+ ],
+ ],
+ [
+ 'id' => 167612,
+ 'title' => '权限设置',
+ 'type' => 'directory',
+ 'children' => [
+ 'GrantPermission',
+ 'RevokePermission',
+ ],
+ ],
+ [
+ 'id' => 179264,
+ 'title' => '日志',
+ 'type' => 'directory',
+ 'children' => [
+ 'GetLog',
+ ],
+ ],
+ [
+ 'id' => 181204,
+ 'title' => '路由策略',
+ 'type' => 'directory',
+ 'children' => [
+ 'DeleteRouteStrategy',
+ 'BatchDeleteRouteStrategy',
+ 'CreateRouteStrategy',
+ ],
+ ],
+ [
+ 'id' => 313005,
+ 'title' => '通知策略',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateSchedulerxNotificationPolicy',
+ 'DeleteSchedulerxNotificationPolicy',
+ 'ManageSchedulerxNotificationPolicy',
+ 'ReadSchedulerxNotificationPolicy',
+ ],
+ ],
+ [
+ 'id' => 313010,
+ 'title' => '日历',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateSchedulerxCalendar',
+ 'DeleteSchedulerxCalendar',
+ 'ManageSchedulerxCalendar',
+ 'ReadSchedulerxCalendar',
+ ],
+ ],
+ [
+ 'id' => 190137,
+ 'title' => '其他',
+ 'type' => 'directory',
+ 'children' => [
+ 'GetOverview',
+ ],
+ ],
+ ],
+ 'components' => [
+ 'schemas' => [],
+ ],
+ 'apis' => [
+ 'DescribeRegions' => [
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '错误信息,仅出错时返回错误信息。',
+ 'type' => 'string',
+ 'example' => 'disable failed jobs=[99341]',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108',
+ ],
+ 'Success' => [
+ 'description' => '调用接口是否成功。取值如下:'."\n"
+ ."\n"
+ .'- **true**:成功'."\n"
+ .'- **false**:失败',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Regions' => [
+ 'description' => '可用地域的集合',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RegionEndpoint' => [
+ 'description' => '地域对应的接入地址(Endpoint)',
+ 'type' => 'string',
+ 'example' => 'schedulerx.cn-hangzhou.aliyuncs.com',
+ ],
+ 'LocalName' => [
+ 'description' => '地域的展示名,根据当前语言环境转换',
+ 'type' => 'string',
+ 'example' => '杭州',
+ ],
+ 'RegionId' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '查看可选的地域',
+ 'summary' => '返回可用region列表。',
+ ],
+ 'CreateNamespace' => [
+ 'summary' => '创建命名空间。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Uid',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间UID,全局唯一,推荐用UUID生成。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间名称。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'test-env',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间描述。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Test',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request。',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108',
+ ],
+ 'Code' => [
+ 'description' => '返回码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '错误信息,仅错误时返回错误信息。',
+ 'type' => 'string',
+ 'example' => 'namespace=test3 is existed, noting update',
+ ],
+ 'Success' => [
+ 'description' => '创建应用是否成功。取值如下:'."\n"
+ ."\n"
+ .'- **true**:创建应用成功。'."\n"
+ .'- **false**:创建应用失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'description' => '命名空间信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'NamespaceUid' => [
+ 'description' => '命名空间唯一标识。',
+ 'type' => 'string',
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '创建命名空间',
+ ],
+ 'ListNamespaces' => [
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx-dev',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间UID',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '接口状态码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '附加信息。',
+ 'type' => 'string',
+ 'example' => 'message',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID。',
+ 'type' => 'string',
+ 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB58C',
+ ],
+ 'Success' => [
+ 'description' => '调用接口是否成功。取值如下:'."\n"
+ ."\n"
+ .'- **true**:成功。'."\n"
+ ."\n"
+ .'- **false**:失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'description' => '命名空间列表信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Namespaces' => [
+ 'description' => '命名空间列表与详情。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'description' => '命名空间名称。',
+ 'type' => 'string',
+ 'example' => 'doc',
+ ],
+ 'Description' => [
+ 'description' => '命名空间描述。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'UId' => [
+ 'description' => '命名空间ID。',
+ 'type' => 'string',
+ 'example' => '1a72ecb1-b4cc-400a-a71b-20cdec9b****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '获取命名空间列表',
+ 'summary' => '获取命名空间列表。',
+ 'description' => '在调用该接口前,需要在POM文件添加以下依赖:'."\n"
+ ."\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"
+ .'```'."\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"
+ .' //OpenAPI的接入点,具体查看支持地域列表以及购买机器地域填写。'."\n"
+ .' String regionId = "cn-test";'."\n"
+ .' //鉴权使用的AccessKey ID,由阿里云官网控制台获取。'."\n"
+ .' String accessKeyId = "XXXXXXXX";'."\n"
+ .' //鉴权使用的AccessKey Secret,由阿里云官网控制台获取。'."\n"
+ .' String accessKeySecret = "XXXXXXXX";'."\n"
+ .' //产品名称。'."\n"
+ .' String productName ="schedulerx2";'."\n"
+ .' //对照支持地域列表选择Domain填写。'."\n"
+ .' String domain ="schedulerx.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"
+ .' 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"
+ ."\n"
+ .'``` ',
+ ],
+ 'DeleteNamespace' => [
+ 'summary' => '删除命名空间。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****'."\n",
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401107',
+ ],
+ 'Code' => [
+ 'description' => '返回码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '附加信息,仅出错时返回错误信息。',
+ 'type' => 'string',
+ 'example' => 'The system namespace cannot be deleted',
+ ],
+ 'Success' => [
+ 'description' => '是否成功',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '删除命名空间',
+ ],
+ 'UpdateNamespace' => [
+ 'summary' => '更新命名空间。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****'."\n",
+ ],
+ ],
+ [
+ 'name' => 'NamespaceName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间名称',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '测试专用空间',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间描述',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '测试专用空间',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID',
+ 'type' => 'string',
+ 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0',
+ ],
+ 'Code' => [
+ 'description' => '返回码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '附加信息,仅出错时返回错误信息。',
+ 'type' => 'string',
+ 'example' => 'The system namespace cannot be modified',
+ ],
+ 'Success' => [
+ 'description' => '调用接口是否成功。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '更新命名空间',
+ ],
+ 'CreateAppGroup' => [
+ 'summary' => '创建应用分组,返回appKey。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'AppName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用名称。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'DocTest',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '暂不支持,无须填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的应用管理页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'TestSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用描述。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Test',
+ ],
+ ],
+ [
+ 'name' => 'MaxJobs',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '最大任务数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1000',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => true,
+ 'example' => 'Test',
+ ],
+ ],
+ [
+ 'name' => 'AppKey',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用Appkey。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'adcExHZviLcl****',
+ ],
+ ],
+ [
+ 'name' => 'MonitorConfigJson',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '报警通知的配置,支持以下属性:sendChannel、alarmType 和 webhookIsAtAll。'."\n"
+ .'> 此字段的详细说明参见下文**关于请求参数的补充说明**。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{'."\n"
+ .' "sendChannel": "ding,sms,mail,phone",'."\n"
+ .' "alarmType": "Contacts",'."\n"
+ .' "webhookIsAtAll": false'."\n"
+ .'}',
+ ],
+ ],
+ [
+ 'name' => 'MonitorContactsJson',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '报警联系人配置。支持配置报警联系人以及报警联系人组'."\n"
+ .'> 此字段的详细说明参见下文**关于请求参数的补充说明**。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '['."\n"
+ .' {"name": "张三"},'."\n"
+ .' {"name": "李四"}'."\n"
+ .']',
+ ],
+ ],
+ [
+ 'name' => 'ScheduleBusyWorkers',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否调度繁忙机器。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'EnableLog',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否开启日志。'."\n"
+ ."\n"
+ .'- true:开启'."\n"
+ ."\n"
+ .'- false:关闭',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'AppType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用类型。'."\n"
+ ."\n"
+ .'- 1、普通应用。'."\n"
+ .'- 2、k8s应用。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'AppVersion',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '应用版本,1:基础版,2:专业版',
+ 'description' => '应用版本,1:基础版,2:专业版',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ 'default' => '2',
+ 'enum' => [
+ '1',
+ '2',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'NotificationPolicyName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '通知策略名称',
+ 'description' => '通知策略名称',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test-workday-notification',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '错误信息,仅错误时返回错误信息。',
+ 'type' => 'string',
+ 'example' => 'Your request is denied as lack of ssl protect.',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID。',
+ 'type' => 'string',
+ 'example' => '883AFE93-FB03-4FA9-A958-E750C6DE120C',
+ ],
+ 'Success' => [
+ 'description' => '创建应用是否成功。取值如下:'."\n"
+ ."\n"
+ .'- **true**:创建应用成功。'."\n"
+ .'- **false**:创建应用失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'description' => '任务分组信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'AppGroupId' => [
+ 'description' => '任务分组ID。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '6607',
+ ],
+ 'AppKey' => [
+ 'description' => '应用AppKey。',
+ 'type' => 'string',
+ 'example' => 'adcExHZviL******',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '创建应用分组',
+ 'requestParamsDescription' => '## MonitorConfigJson 补充说明'."\n"
+ .'报警通知的配置,支持以下属性:`sendChannel`、`alarmType` 和 `webhookIsAtAll`。'."\n"
+ ."\n"
+ .'### **配置格式**'."\n"
+ .'该字段的配置应为 JSON 格式,支持以下属性:'."\n"
+ ."\n"
+ .'### **属性说明**'."\n"
+ .'- **发送渠道**(`sendChannel`):'."\n"
+ .' - 支持多个渠道,使用逗号分隔,选项包括:'."\n"
+ .' - **webhook**: `ding`'."\n"
+ .' - **短信**: `sms`'."\n"
+ .' - **邮件**: `mail`'."\n"
+ .' - **电话**: `phone`'."\n"
+ ."\n"
+ .'- **报警类型**(`alarmType`):'."\n"
+ .' - **Contacts**: 表示报警联系人'."\n"
+ .' - **ContactGroup**: 表示报警联系人组'."\n"
+ ."\n"
+ .'- **是否 @ 所有成员**(`webhookIsAtAll`):'."\n"
+ .' - 值为 `"true"` 或 `"false"`,指示在发送通知时是否 @ 所有群成员。'."\n"
+ ."\n"
+ .'### **示例**:'."\n"
+ .'```json'."\n"
+ .'{'."\n"
+ .' "sendChannel": "ding,sms,mail,phone",'."\n"
+ .' "alarmType": "Contacts",'."\n"
+ .' "webhookIsAtAll": true'."\n"
+ .'}'."\n"
+ .'```'."\n"
+ ."\n"
+ .'---'."\n"
+ ."\n"
+ .'## MonitorContactsJson 补充说明'."\n"
+ .'报警联系人配置,根据 `alarmType` 的不同提供两种格式。'."\n"
+ ."\n"
+ .'### **配置格式**'."\n"
+ .'该字段应为 JSON 格式,支持两种配置:联系人数组和联系人组对象。'."\n"
+ ."\n"
+ .'### **属性说明**'."\n"
+ .'- **当 `alarmType` 为 `Contacts`**:'."\n"
+ .' - 配置为包含多个联系人对象的数组,每个对象需包含:'."\n"
+ .' - **name**: 联系人的名称'."\n"
+ ."\n"
+ .'- **当 `alarmType` 为 `ContactGroup`**:'."\n"
+ .' - 配置为单个对象,包含:'."\n"
+ .' - **name**: 联系人组的名称'."\n"
+ ."\n"
+ .'### **注意事项**'."\n"
+ .'建议提前创建联系人与联系人组。如果未创建,系统会自动生成相应的联系人和联系人组。用户需在“通知联系人”页面配置联系人手机号、邮箱等信息并激活,以确保报警能够正常发送。'."\n"
+ ."\n"
+ .'### **示例**:'."\n"
+ .'- **示例 1** (当 `alarmType` 为 `Contacts`):'."\n"
+ .' ```json'."\n"
+ .' ['."\n"
+ .' {"name": "张三"},'."\n"
+ .' {"name": "李四"}'."\n"
+ .' ]'."\n"
+ .' ```'."\n"
+ ."\n"
+ .'- **示例 2** (当 `alarmType` 为 `ContactGroup`):'."\n"
+ .' ```json'."\n"
+ .' {'."\n"
+ .' "name": "报警联系人组-1"'."\n"
+ .' }'."\n"
+ .' ```',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '## 示例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"
+ .' // OpenAPI的接入点,具体查看上表支持地域列表以及购买机器地域填写。'."\n"
+ .' String regionId = "cn-shanghai";'."\n"
+ .' //鉴权使用的AccessKeyId,由阿里云官网控制台获取。'."\n"
+ .' String accessKeyId = "<yourAccessKeyId>";'."\n"
+ .' //鉴权使用的AccessKeySecret,由阿里云官网控制台获取。'."\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"
+ .' 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"
+ .' //发送请求。'."\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' => '获取应用分组。',
+ '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' => '应用ID,在控制台的**应用管理**页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的**命名空间**页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求唯一 ID。',
+ 'type' => 'string',
+ 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0',
+ ],
+ 'Code' => [
+ 'description' => '接口状态码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '附加信息。',
+ 'type' => 'string',
+ 'example' => 'app is not existed, groupId=xxxx, namesapce=xxxx',
+ ],
+ 'Success' => [
+ 'description' => '调用接口是否成功。取值如下:'."\n"
+ ."\n"
+ .'- **true**:成功。'."\n"
+ ."\n"
+ .'- **false**:失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'description' => '应用分组信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'AppName' => [
+ 'description' => '应用名称。',
+ 'type' => 'string',
+ 'example' => 'DocTest',
+ ],
+ 'Description' => [
+ 'description' => '应用描述。',
+ 'type' => 'string',
+ 'example' => 'Test',
+ ],
+ 'MaxJobs' => [
+ 'description' => '应用分组可配置最大任务数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1000',
+ ],
+ 'GroupId' => [
+ 'description' => '应用ID。',
+ 'type' => 'string',
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ 'MonitorConfigJson' => [
+ 'description' => '报警通知的配置。'."\n"
+ .'> 此字段的详细说明参见下文**关于请求参数的补充说明**',
+ 'type' => 'string',
+ 'example' => '{'."\n"
+ .' "sendChannel": "ding,sms,mail,phone",'."\n"
+ .' "alarmType": "Contacts",'."\n"
+ .' "webhookIsAtAll": false'."\n"
+ .'}',
+ ],
+ 'CurJobs' => [
+ 'description' => '应用分组当前配置任务数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'AppKey' => [
+ 'description' => '应用AppKey。',
+ 'type' => 'string',
+ 'example' => 'QI4lWMZ+xk1rNB67jFUhaw==',
+ ],
+ 'AppVersion' => [
+ 'title' => '应用版本,1:基础版,2:专业版',
+ 'description' => '应用版本,1:基础版,2:专业版。',
+ 'type' => 'string',
+ 'example' => '2',
+ ],
+ 'Namespace' => [
+ 'description' => '命名空间ID。',
+ 'type' => 'string',
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ 'MonitorContactsJson' => [
+ 'description' => '报警联系人配置。'."\n"
+ .'> 此字段的详细说明参见下文**关于请求参数的补充说明**。',
+ 'type' => 'string',
+ 'example' => '['."\n"
+ .' {"name": "张三"},'."\n"
+ .' {"name": "李四"}'."\n"
+ .']',
+ ],
+ 'NotificationPolicyName' => [
+ 'title' => '通知策略名称',
+ 'description' => '通知策略名称',
+ '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' => '获取应用分组详情',
+ 'responseParamsDescription' => '## MonitorConfigJson 补充说明'."\n"
+ .'报警通知的配置,支持以下属性:`sendChannel`、`alarmType` 和 `webhookIsAtAll`。'."\n"
+ ."\n"
+ .'## **配置格式**'."\n"
+ .'该字段的配置应为 JSON 格式,支持以下属性:'."\n"
+ ."\n"
+ .'## **属性说明**'."\n"
+ .'- **发送渠道**(`sendChannel`):'."\n"
+ .' - 支持多个渠道,使用逗号分隔,选项包括:'."\n"
+ .' - **webhook**: `ding`。'."\n"
+ .' - **短信**: `sms`。'."\n"
+ .' - **邮件**: `mail`。'."\n"
+ .' - **电话**: `phone`。'."\n"
+ ."\n"
+ .'- **报警类型**(`alarmType`):'."\n"
+ .' - **Contacts**: 表示报警联系人。'."\n"
+ .' - **ContactGroup**: 表示报警联系人组。'."\n"
+ ."\n"
+ .'- **是否 @ 所有成员**(`webhookIsAtAll`):'."\n"
+ .' - 值为 `"true"` 或 `"false"`,指示在发送通知时是否 @ 所有群成员。'."\n"
+ ."\n"
+ .'## **示例**:'."\n"
+ .'```json'."\n"
+ .'{'."\n"
+ .' "sendChannel": "ding,sms,mail,phone",'."\n"
+ .' "alarmType": "Contacts",'."\n"
+ .' "webhookIsAtAll": true'."\n"
+ .'}'."\n"
+ .'```'."\n"
+ ."\n"
+ .'---'."\n"
+ ."\n"
+ .'## MonitorContactsJson 补充说明'."\n"
+ .'报警联系人配置,根据 `alarmType` 的不同提供两种格式。'."\n"
+ ."\n"
+ .'## **配置格式**'."\n"
+ .'该字段应为 JSON 格式,支持两种配置:联系人数组和联系人组对象。'."\n"
+ ."\n"
+ .'## **属性说明**'."\n"
+ .'- **当 `alarmType` 为 `Contacts`**:'."\n"
+ .' - 配置为包含多个联系人对象的数组,每个对象需包含:'."\n"
+ .' - **name**: 联系人的名称。'."\n"
+ ."\n"
+ .'- **当 `alarmType` 为 `ContactGroup`**:'."\n"
+ .' - 配置为单个对象,包含:'."\n"
+ .' - **name**: 联系人组的名称。'."\n"
+ ."\n"
+ .'## **示例**:'."\n"
+ .'- **示例 1** (当 `alarmType` 为 `Contacts`):'."\n"
+ .' ```json'."\n"
+ .' ['."\n"
+ .' {"name": "张三"},'."\n"
+ .' {"name": "李四"}'."\n"
+ .' ]'."\n"
+ .' ```'."\n"
+ ."\n"
+ .'- **示例 2** (当 `alarmType` 为 `ContactGroup`):'."\n"
+ .' ```json'."\n"
+ .' {'."\n"
+ .' "name": "报警联系人组-1"'."\n"
+ .' }'."\n"
+ .' ```',
+ ],
+ 'DeleteAppGroup' => [
+ 'summary' => '删除应用分组。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的**命名空间**页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的**应用管理**页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'DeleteJobs',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否删除应用分组中的任务。取值如下:'."\n"
+ ."\n"
+ .'- **true**:删除。'."\n"
+ .'- **false**:不删除。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108',
+ ],
+ 'Code' => [
+ 'description' => '接口状态码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '附加信息',
+ 'type' => 'string',
+ 'example' => 'app is not existed, groupId=xxxx, namesapce=xxxx',
+ ],
+ 'Success' => [
+ 'description' => 'API调用是否成功。取值如下:'."\n"
+ ."\n"
+ .'- true:成功。'."\n"
+ .'- false:失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => [
+ 'summary' => '更新应用分组。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用描述。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Test',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的**应用管理**页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'MaxConcurrency',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '最大同时运行实例数量,默认值为1,即上次触发没有运行结束,即使到了运行时刻也不会进行下次触发。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的**命名空间**页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'AppVersion',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '应用版本,1:基础版,2:专业版',
+ 'description' => '应用版本,1:基础版,2:专业版。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ 'default' => '2',
+ 'enum' => [
+ '1',
+ '2',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'MonitorConfigJson',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '报警通知的配置,支持以下属性:sendChannel、alarmType 和 webhookIsAtAll。'."\n"
+ .'> 此字段的详细说明参见下文**关于请求参数的补充说明**。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{'."\n"
+ .' "sendChannel": "ding,sms,mail,phone",'."\n"
+ .' "alarmType": "Contacts",'."\n"
+ .' "webhookIsAtAll": false'."\n"
+ .'}',
+ ],
+ ],
+ [
+ 'name' => 'MonitorContactsJson',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '报警联系人配置。支持配置报警联系人以及报警联系人组'."\n"
+ .'> 此字段的详细说明参见下文**关于请求参数的补充说明**。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '['."\n"
+ .' {"name": "张三"},'."\n"
+ .' {"name": "李四"}'."\n"
+ .']',
+ ],
+ ],
+ [
+ 'name' => 'NotificationPolicyName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '通知策略名称',
+ 'description' => '通知策略名称',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test-workday-notification',
+ ],
+ ],
+ [
+ 'name' => 'EnableLog',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '开启日志',
+ 'description' => '开启日志',
+ 'type' => 'boolean',
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108',
+ ],
+ 'Code' => [
+ 'description' => '接口状态码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '附加信息。',
+ 'type' => 'string',
+ 'example' => 'app is not existed, groupId=xxxx, namesapce=xxxx',
+ ],
+ 'Success' => [
+ 'description' => 'API执行是否成功。取值如下:'."\n"
+ ."\n"
+ .'- true:成功。'."\n"
+ .'- false:失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '更新应用分组',
+ 'responseParamsDescription' => '## **MonitorConfigJson 补充说明**'."\n"
+ .'报警通知的配置,支持以下属性:`sendChannel`、`alarmType` 和 `webhookIsAtAll`。'."\n"
+ ."\n"
+ .'## **配置格式**'."\n"
+ .'该字段的配置应为 JSON 格式,支持以下属性:'."\n"
+ ."\n"
+ .'## **属性说明**'."\n"
+ .'- **发送渠道**(`sendChannel`):'."\n"
+ .' - 支持多个渠道,使用逗号分隔,选项包括:'."\n"
+ .' - **webhook**: `ding`'."\n"
+ .' - **短信**: `sms`'."\n"
+ .' - **邮件**: `mail`'."\n"
+ .' - **电话**: `phone`'."\n"
+ ."\n"
+ .'- **报警类型**(`alarmType`):'."\n"
+ .' - **Contacts**: 表示报警联系人'."\n"
+ .' - **ContactGroup**: 表示报警联系人组'."\n"
+ ."\n"
+ .'- **是否 @ 所有成员**(`webhookIsAtAll`):'."\n"
+ .' - 值为 `"true"` 或 `"false"`,指示在发送通知时是否 @ 所有群成员。'."\n"
+ ."\n"
+ .'## **示例**:'."\n"
+ .'```json'."\n"
+ .'{'."\n"
+ .' "sendChannel": "ding,sms,mail,phone",'."\n"
+ .' "alarmType": "Contacts",'."\n"
+ .' "webhookIsAtAll": true'."\n"
+ .'}'."\n"
+ .'```'."\n"
+ ."\n"
+ .'---'."\n"
+ ."\n"
+ .'## **MonitorContactsJson 补充说明**'."\n"
+ .'报警联系人配置,根据 `alarmType` 的不同提供两种格式。'."\n"
+ ."\n"
+ .'## **配置格式**'."\n"
+ .'该字段应为 JSON 格式,支持两种配置:联系人数组和联系人组对象。'."\n"
+ ."\n"
+ .'## **属性说明**'."\n"
+ .'- **当 `alarmType` 为 `Contacts`**:'."\n"
+ .' - 配置为包含多个联系人对象的数组,每个对象需包含:'."\n"
+ .' - **name**: 联系人的名称'."\n"
+ ."\n"
+ .'- **当 `alarmType` 为 `ContactGroup`**:'."\n"
+ .' - 配置为单个对象,包含:'."\n"
+ .' - **name**: 联系人组的名称'."\n"
+ ."\n"
+ .'## **注意事项**'."\n"
+ .'建议提前创建联系人与联系人组。如果未创建,系统会自动生成相应的联系人和联系人组。用户需在“通知联系人”页面配置联系人手机号、邮箱等信息并激活,以确保报警能够正常发送。'."\n"
+ ."\n"
+ .'## **示例**:'."\n"
+ .'- **示例 1** (当 `alarmType` 为 `Contacts`):'."\n"
+ .' ```json'."\n"
+ .' ['."\n"
+ .' {"name": "张三"},'."\n"
+ .' {"name": "李四"}'."\n"
+ .' ]'."\n"
+ .' ```'."\n"
+ ."\n"
+ .'- **示例 2** (当 `alarmType` 为 `ContactGroup`):'."\n"
+ .' ```json'."\n"
+ .' {'."\n"
+ .' "name": "报警联系人组-1"'."\n"
+ .' }'."\n"
+ .' ```',
+ ],
+ 'ListGroups' => [
+ 'summary' => '获取应用列表。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间,在控制台的**命名空间**页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '1a72ecb1-b4cc-400a-a71b-20cdec9b****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'AppGroupName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用分组名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'k8s-test',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '接口状态码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '附加信息。',
+ 'type' => 'string',
+ 'example' => 'message',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID。',
+ 'type' => 'string',
+ 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB58A',
+ ],
+ 'Success' => [
+ 'description' => '调用接口是否成功。取值如下:'."\n"
+ ."\n"
+ .'- **true**:成功'."\n"
+ ."\n"
+ .'- **false**:失败',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'description' => '应用列表信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'AppGroups' => [
+ 'description' => '应用列表和应用详情。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '-',
+ 'type' => 'object',
+ 'properties' => [
+ 'AppGroupId' => [
+ 'description' => '应用分组ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1',
+ ],
+ 'AppName' => [
+ 'description' => '应用名称。',
+ 'type' => 'string',
+ 'example' => 'DocTest',
+ ],
+ 'AppKey' => [
+ 'description' => '应用Key。',
+ 'type' => 'string',
+ 'example' => 'a3G77O6NZxq/lyo1NC****==',
+ ],
+ 'Description' => [
+ 'description' => '应用描述。',
+ 'type' => 'string',
+ 'example' => 'Test',
+ ],
+ 'GroupId' => [
+ 'description' => '应用ID。',
+ 'type' => 'string',
+ 'example' => 'DocTest.Group',
+ ],
+ 'AppVersion' => [
+ 'title' => '应用版本,1:基础版,2:专业版',
+ 'description' => '应用版本,1:基础版,2:专业版',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'Namespace' => [
+ 'description' => '命名空间ID',
+ 'type' => 'string',
+ 'example' => '1a72ecb1-b4cc-400a-a71b-20cdec9b****',
+ ],
+ 'EnableLog' => [
+ 'type' => 'boolean',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '获取应用分组列表',
+ 'description' => '在调用该接口前,需要在POM文件添加以下依赖:'."\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' => '## Demo'."\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.ListGroupsRequest;'."\n"
+ .'import com.aliyuncs.schedulerx2.model.v20190430.ListGroupsResponse;'."\n"
+ .'import com.aliyuncs.schedulerx2.model.v20190430.ListGroupsResponse.Data.AppGroup;'."\n"
+ ."\n"
+ .'public class TestListGroups {'."\n"
+ ."\n"
+ .' public static void main(String[] args) {'."\n"
+ .' //OpenAPI的接入点,具体查看支持地域列表以及购买机器地域填写。'."\n"
+ .' String regionId = "cn-hangzhou";'."\n"
+ .' //鉴权使用的AccessKey ID,由阿里云官网控制台获取。'."\n"
+ .' String accessKeyId = "XXXXXXXX";'."\n"
+ .' //鉴权使用的AccessKey Secret,由阿里云官网控制台获取。'."\n"
+ .' String accessKeySecret = "XXXXXXXX";'."\n"
+ .' //产品名称。'."\n"
+ .' String productName ="schedulerx2";'."\n"
+ .' //对照支持地域列表选择Domain填写 '."\n"
+ .' String domain ="schedulerx.cn-hangzhou.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"
+ .' ListGroupsRequest request = new ListGroupsRequest();'."\n"
+ .' //命名空间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"
+ ."\n"
+ .'``` ',
+ ],
+ 'GetWorkerList' => [
+ 'summary' => '获取接入某个应用的worker列表。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '权限组ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'usercenter',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108****',
+ ],
+ 'Code' => [
+ 'description' => '接口状态码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '附加信息。',
+ 'type' => 'string',
+ 'example' => 'Cannot find product according to your domain.',
+ ],
+ 'Success' => [
+ 'description' => '调用接口是否成功。取值如下:'."\n"
+ ."\n"
+ .'- **true**:成功'."\n"
+ ."\n"
+ .'- **false**:失败',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'description' => '指定任务信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'WorkerInfos' => [
+ 'description' => 'worker信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Ip' => [
+ 'description' => 'worker的ip',
+ 'type' => 'string',
+ 'example' => '30.225.16.49',
+ ],
+ 'Port' => [
+ 'description' => 'worker的端口',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '60831',
+ ],
+ 'WorkerAddress' => [
+ 'description' => 'worker的地址信息,格式为${worker_id}@${worker_ip}:${worker_port}',
+ 'type' => 'string',
+ 'example' => '[email protected]:60831',
+ ],
+ 'Label' => [
+ 'description' => 'worker的标签',
+ 'type' => 'string',
+ 'example' => 'gray',
+ ],
+ 'Version' => [
+ 'description' => 'worker的版本',
+ 'type' => 'string',
+ 'example' => '1.3.4',
+ ],
+ 'Starter' => [
+ 'description' => 'worker的启动方式',
+ 'type' => 'string',
+ 'example' => 'springboot',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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\\": \\"[email protected]:60831\\",\\n \\"Label\\": \\"gray\\",\\n \\"Version\\": \\"1.3.4\\",\\n \\"Starter\\": \\"springboot\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'title' => '获取接入某个应用的worker列表',
+ ],
+ 'CreateWorkflow' => [
+ 'summary' => '创建工作流,默认禁用状态,更新完DAG后,需要手动或者通过API启动用工作流,只有专业版才支持。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '应用分组ID,在控制台的应用管理页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'Name',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '工作流名称',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'helloworld',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '工作流描述',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Test',
+ ],
+ ],
+ [
+ 'name' => 'TimeType',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '时间类型,目前支持以下几种时间类型:'."\n"
+ .'- cron:1'."\n"
+ .'- api:100',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'TimeExpression',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '时间表达式,根据选择的时间类型设置时间表达式。'."\n"
+ ."\n"
+ .'- cron:填写标准的cron表达式,支持在线验证。'."\n"
+ .'- api:无时间表达式。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '0 0/10 * * * ?',
+ ],
+ ],
+ [
+ 'name' => 'Timezone',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '时区',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GMT+8',
+ ],
+ ],
+ [
+ 'name' => 'MaxConcurrency',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '最大同时运行工作流实例数量,默认值为1,即上次触发没有运行结束,即使到了运行时刻也不会进行下次触发。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求唯一ID。',
+ 'type' => 'string',
+ 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0',
+ ],
+ 'Code' => [
+ 'description' => '返回码',
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Success' => [
+ 'description' => '创建工作流是否成功。取值如下:'."\n"
+ ."\n"
+ .'- true:创建工作流成功。'."\n"
+ .'- false:创建工作流失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Message' => [
+ 'description' => '错误信息',
+ 'type' => 'string',
+ 'example' => 'timetype is invalid',
+ ],
+ 'Data' => [
+ 'description' => '创建工作流的返回值',
+ 'type' => 'object',
+ 'properties' => [
+ 'WorkflowId' => [
+ 'description' => '工作流ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '92583',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '创建工作流',
+ ],
+ 'UpdateWorkflow' => [
+ 'summary' => '更新工作流的基本信息,只有专业版才支持。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '应用分组ID,在控制台的应用管理页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'WorkflowId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '工作流ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '123',
+ ],
+ ],
+ [
+ 'name' => 'Name',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '工作流名称',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'helloworld',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '工作流描述',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Test',
+ ],
+ ],
+ [
+ 'name' => 'TimeType',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '时间类型,目前支持以下几种时间类型:'."\n"
+ ."\n"
+ .'- cron:1'."\n"
+ .'- api:100',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'TimeExpression',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '时间表达式,根据选择的时间类型设置时间表达式。'."\n"
+ ."\n"
+ .'- cron:填写标准的cron表达式,支持在线验证。'."\n"
+ .'- api:无时间表达式。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '0 0/10 * * * ?',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0',
+ ],
+ 'Code' => [
+ 'description' => '返回码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Success' => [
+ 'description' => 'api执行是否成功。取值如下:'."\n"
+ ."\n"
+ .'- true:成功。'."\n"
+ .'- false:失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Message' => [
+ 'description' => '错误信息',
+ 'type' => 'string',
+ 'example' => 'timetype is invalid',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '更新工作流的基本信息',
+ ],
+ 'UpdateWorkflowDag' => [
+ 'summary' => '更新工作流的节点及依赖关系,专业版应用才支持。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '应用分组ID,在控制台的应用管理页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'WorkflowId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '工作流ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '123',
+ ],
+ ],
+ [
+ 'name' => 'DagJson',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '工作流DAG信息,包括了Node和Edge的信息,json格式',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '{"nodes":[{"id":2300691},{"id":10518089},{"id":1758851}],"edges":[{"source":10518089,"target":1758851},{"source":10518089,"target":2300691}]}',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0',
+ ],
+ 'Code' => [
+ 'description' => '返回码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Success' => [
+ 'description' => 'API执行是否成功。取值如下:'."\n"
+ ."\n"
+ .'- true:成功。'."\n"
+ .'- false:失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Message' => [
+ 'description' => '错误信息',
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"39090022-1F3B-4797-8518-6B61095F1AF0\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"\\"\\n}","type":"json"}]',
+ 'title' => '更新工作流的DAG',
+ ],
+ 'ListWorkFlows' => [
+ 'summary' => '获取工作流信息列表。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '命名空间uid',
+ 'description' => '命名空间uid',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '4a06d5ea-f576-4326-842c-fb14ea043d8d',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '命名空间来源',
+ 'description' => '命名空间来源,特殊来源才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '应用分组ID',
+ 'description' => '应用分组ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'hxm.test',
+ ],
+ ],
+ [
+ 'name' => 'WorkflowName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '工作流名称',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '测试工作流3',
+ ],
+ ],
+ [
+ 'name' => 'PageNum',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '页码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分查询时设置的每页大小。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'Status',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务状态。'."\n"
+ ."\n"
+ .'- **0**:表示禁用'."\n"
+ ."\n"
+ .'- **1**:表示启用',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '883AFE93-FB03-4FA9-A958-E750C6DE120C',
+ ],
+ 'Code' => [
+ 'title' => '错误码',
+ 'description' => '错误码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'title' => '错误信息',
+ 'description' => '错误信息',
+ 'type' => 'string',
+ 'example' => 'workflow is not existed',
+ ],
+ 'Success' => [
+ 'title' => '会否成功',
+ 'description' => '会否成功',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'title' => '工作流的数据',
+ 'description' => '工作流的数据',
+ 'type' => 'object',
+ 'properties' => [
+ 'Records' => [
+ 'description' => '单行数据。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '-',
+ 'type' => 'object',
+ 'properties' => [
+ 'Namespace' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取。',
+ 'type' => 'string',
+ 'example' => '4a06d5ea-f576-4326-842c-fb14ea043d8d'."\n",
+ ],
+ 'GroupId' => [
+ 'description' => '应用ID。',
+ 'type' => 'string',
+ 'example' => 'hxm.test',
+ ],
+ 'Name' => [
+ 'description' => '工作流名称',
+ 'type' => 'string',
+ 'example' => '测试工作流3',
+ ],
+ 'WorkflowId' => [
+ 'description' => '工作流ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1339',
+ ],
+ 'Description' => [
+ 'description' => '任务描述',
+ 'type' => 'string',
+ 'example' => 'No description',
+ ],
+ 'TimeType' => [
+ 'description' => '工作流时间类型',
+ 'type' => 'string',
+ 'example' => 'cron',
+ ],
+ 'TimeExpression' => [
+ 'description' => '时间表达式',
+ 'type' => 'string',
+ 'example' => '0 0 5 */1 * ?',
+ ],
+ 'MaxConcurrency' => [
+ 'description' => '最大并发数',
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'Calendar' => [
+ 'description' => '日历',
+ 'type' => 'string',
+ 'example' => 'workday',
+ ],
+ 'Creator' => [
+ 'description' => '创建人',
+ 'type' => 'string',
+ 'example' => '1144881807903942',
+ ],
+ 'Updater' => [
+ 'description' => '更新人',
+ 'type' => 'string',
+ 'example' => '1144881807903942',
+ ],
+ ],
+ ],
+ ],
+ 'PageNumber' => [
+ 'description' => '页码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '页大小',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'Total' => [
+ 'description' => '总记录数',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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\\": \\"测试工作流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' => '获取工作流信息列表',
+ ],
+ 'ExecuteWorkflow' => [
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的应用管理页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'WorkflowId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '工作流ID。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '111',
+ ],
+ ],
+ [
+ 'name' => 'InstanceParameters',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '工作流实例动态参数,不超过1000字节。',
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => 'test',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '错误消息,仅错误时返回错误信息。',
+ 'type' => 'string',
+ 'example' => 'Cannot find product according to your domain.',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID。',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108',
+ ],
+ 'Success' => [
+ 'description' => '是否成功。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'description' => '如果调用成功,会返回流程实例ID。',
+ 'type' => 'object',
+ 'properties' => [
+ 'WfInstanceId' => [
+ 'description' => '工作流实例ID。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '111111',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '触发一次工作流',
+ 'summary' => '触发一次工作流立即运行。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DeleteWorkflow' => [
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'WorkflowId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '工作流ID。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '111',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的**应用管理**页面中获取。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '错误消息,仅错误时返回错误信息。',
+ 'type' => 'string',
+ 'example' => 'Your request is denied as lack of ssl protect.',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID。',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108',
+ ],
+ 'Success' => [
+ 'description' => '删除工作流是否成功。取值如下:'."\n"
+ ."\n"
+ .'- **true**:删除工作流成功。'."\n"
+ .'- **false**:删除工作流失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '删除指定工作流',
+ 'summary' => '删除指定工作流。',
+ ],
+ 'DisableWorkflow' => [
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'WorkflowId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '工作流ID。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '111',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的应用管理页面中获取。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '错误消息,仅错误时返回错误信息。',
+ 'type' => 'string',
+ 'example' => 'Your request is denied as lack of ssl protect.',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108',
+ ],
+ 'Success' => [
+ 'description' => '禁用工作流是否成功。取值如下:'."\n"
+ ."\n"
+ .'- **true**:禁用工作流成功。'."\n"
+ .'- **false**:禁用工作流失败。',
+ '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":"<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' => '禁用指定工作流',
+ 'summary' => '禁用指定工作流。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'EnableWorkflow' => [
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'WorkflowId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '工作流ID。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '111',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的应用管理页面中获取。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '错误信息,仅错误时返回错误信息。',
+ 'type' => 'string',
+ 'example' => 'Your request is denied as lack of ssl protect.',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108',
+ ],
+ 'Success' => [
+ 'description' => '启用工作流是否成功。取值如下:'."\n"
+ ."\n"
+ .'- **true**:启用工作流成功。'."\n"
+ .'- **false**:启用工作流失败。',
+ '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":"<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' => '启用指定工作流',
+ 'summary' => '启用指定工作流。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'GetWorkFlow' => [
+ 'summary' => '获取工作流信息。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'public',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '命名空间uid',
+ 'description' => '命名空间ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '4a06d5ea-f576-4326-842c-fb14ea043d8d',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '命名空间来源',
+ 'description' => '命名空间来源',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'source',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '应用分组ID',
+ 'description' => '应用分组ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'hxm.test',
+ ],
+ ],
+ [
+ 'name' => 'WorkflowId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '工作流ID',
+ 'description' => '工作流ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '1234',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID',
+ 'type' => 'string',
+ 'example' => '45678xxx',
+ ],
+ 'Code' => [
+ 'title' => '错误码',
+ 'description' => '错误码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'title' => '错误信息',
+ 'description' => '错误信息',
+ 'type' => 'string',
+ 'example' => 'workflow is not existed',
+ ],
+ 'Success' => [
+ 'title' => '会否成功',
+ 'description' => '结果',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'title' => '工作流的数据',
+ 'description' => '工作流的数据',
+ 'type' => 'object',
+ 'properties' => [
+ 'WorkFlowInfo' => [
+ 'title' => '工作流基本信息',
+ 'description' => '工作流基本信息',
+ 'type' => 'object',
+ 'properties' => [
+ 'WorkflowId' => [
+ 'title' => '工作流ID',
+ 'description' => '工作流ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1234xxx',
+ ],
+ 'Name' => [
+ 'title' => '工作流名称',
+ 'description' => '工作流名称',
+ 'type' => 'string',
+ 'example' => 'workflow_111',
+ ],
+ 'Description' => [
+ 'title' => '工作流描述',
+ 'description' => '工作流描述',
+ 'type' => 'string',
+ 'example' => 'my first workflow',
+ ],
+ 'Status' => [
+ 'title' => '工作流状态',
+ 'description' => '工作流状态',
+ 'type' => 'string',
+ 'example' => '成功',
+ ],
+ 'TimeType' => [
+ 'title' => '工作流时间类型',
+ 'description' => '工作流时间类型',
+ 'type' => 'string',
+ 'example' => 'cron',
+ ],
+ 'TimeExpression' => [
+ 'title' => '工作流时间表达式',
+ 'description' => '工作流时间表达式',
+ 'type' => 'string',
+ 'example' => '0 0 2 * * ?',
+ ],
+ 'GroupId' => [
+ 'type' => 'string',
+ ],
+ 'Namespace' => [
+ 'type' => 'string',
+ ],
+ 'MaxConcurrency' => [
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ 'WorkFlowNodeInfo' => [
+ 'title' => '工作流节点信息',
+ 'description' => '工作流节点信息',
+ 'type' => 'object',
+ 'properties' => [
+ 'Nodes' => [
+ 'title' => '工作流节点列表',
+ 'description' => '工作流节点列表',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Id' => [
+ 'title' => '任务ID',
+ 'description' => '任务ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '123456xxx',
+ ],
+ 'Label' => [
+ 'title' => '任务名称',
+ 'description' => '任务名称',
+ 'type' => 'string',
+ 'example' => 'job_111',
+ ],
+ 'Status' => [
+ 'title' => '任务状态',
+ 'description' => '任务状态',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ ],
+ 'Edges' => [
+ 'title' => '工作流边列表',
+ 'description' => '工作流边列表',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Source' => [
+ 'title' => '起始任务ID',
+ 'description' => '起始任务ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '100',
+ ],
+ 'Target' => [
+ 'title' => '目的任务ID',
+ 'description' => '目的任务ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '200',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '获取工作流详情和依赖关系',
+ 'extraInfo' => '## 示例Demo'."\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.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 class TestGetWorkFlow {'."\n"
+ ."\n"
+ .' public static void main(String[] args) {'."\n"
+ .' // OpenAPI的接入点,具体请查看支持地域列表或根据购买地域填写'."\n"
+ .' String regionId = "public";'."\n"
+ .' //鉴权使用的AccessKey ID,由阿里云官网控制台获取'."\n"
+ .' String accessKeyId = "xxxxxxx";'."\n"
+ .' //鉴权使用的AccessKey Secret,由阿里云官网控制台获取'."\n"
+ .' String accessKeySecret = "xxxxxxxxx";'."\n"
+ .' //产品名称'."\n"
+ .' String productName ="schedulerx2";'."\n"
+ .' //对照支持地域列表选择Domain填写'."\n"
+ .' String domain ="schedulerx.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"
+ .' 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(JsonUtil.toJson(response));'."\n"
+ .' } else {'."\n"
+ .' System.out.println("工作流基本信息:" + response.getData().getWorkFlowInfo());'."\n"
+ .' System.out.println("工作流节点信息:" + 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"
+ .'}'."\n"
+ .' '."\n"
+ .' ```',
+ ],
+ 'GetWorkflowInstance' => [
+ 'summary' => '获取指定工作流实例的详情,包含实例状态,依赖关系,每个任务实例的状态等。专业版应用才支持。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用分组ID,在控制台的应用管理页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'WorkflowId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '工作流ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '123',
+ ],
+ ],
+ [
+ 'name' => 'WfInstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '工作流实例ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '123456',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0',
+ ],
+ 'Code' => [
+ 'description' => '返回码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Success' => [
+ 'description' => 'API执行是否成功。取值如下:'."\n"
+ ."\n"
+ .'- true:成功。'."\n"
+ .'- false:失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Message' => [
+ 'description' => '错误信息',
+ 'type' => 'string',
+ 'example' => 'workflowId=xxx is not existed',
+ ],
+ 'Data' => [
+ 'description' => '工作流实例详情封装在data中',
+ 'type' => 'object',
+ 'properties' => [
+ 'WfInstanceInfo' => [
+ 'description' => '工作流实例详情,包含了工作流的状态,开始结束时间,各个任务实例的状态及依赖关系',
+ 'type' => 'object',
+ 'properties' => [
+ 'Status' => [
+ 'description' => '工作流实例状态,取值如下:'."\n"
+ ."\n"
+ .'- 1: 等待中'."\n"
+ .'- 2: 准备中'."\n"
+ .'- 3:运行中'."\n"
+ .'- 4:成功'."\n"
+ .'- 5:失败',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'StartTime' => [
+ 'description' => '开始时间',
+ 'type' => 'string',
+ 'example' => '2023-01-03 18:00:01',
+ ],
+ 'EndTime' => [
+ 'description' => '结束时间',
+ 'type' => 'string',
+ 'example' => '2023-01-03 18:00:21',
+ ],
+ 'ScheduleTime' => [
+ 'description' => '计划调度时间',
+ 'type' => 'string',
+ 'example' => '2023-01-03 18:00:00',
+ ],
+ 'DataTime' => [
+ 'description' => '数据时间',
+ 'type' => 'string',
+ 'example' => '2023-01-03 18:00:00',
+ ],
+ ],
+ ],
+ 'WfInstanceDag' => [
+ 'description' => '工作流实例的DAG信息,包含了节点和边',
+ 'type' => 'object',
+ 'properties' => [
+ 'Nodes' => [
+ 'description' => '任务实例节点的数组',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'JobInstanceId' => [
+ 'description' => '任务实例ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '24058796',
+ ],
+ 'JobId' => [
+ 'description' => '任务ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1472',
+ ],
+ 'StartTime' => [
+ 'description' => '任务开始时间',
+ 'type' => 'string',
+ 'example' => '2023-01-03 18:00:03',
+ ],
+ 'EndTime' => [
+ 'description' => '任务结束时间',
+ 'type' => 'string',
+ 'example' => '2023-01-03 18:00:21',
+ ],
+ 'ScheduleTime' => [
+ 'description' => '任务调度时间',
+ 'type' => 'string',
+ 'example' => '2023-01-03 18:00:03',
+ ],
+ 'DataTime' => [
+ 'description' => '任务数据时间',
+ 'type' => 'string',
+ 'example' => '2023-01-03 18:00:00',
+ ],
+ 'WorkAddr' => [
+ 'description' => '任务实例的运行机器',
+ 'type' => 'string',
+ 'example' => '10.163.0.101:34027',
+ ],
+ 'Result' => [
+ 'description' => '任务运行结果',
+ 'type' => 'string',
+ 'example' => 'code=200',
+ ],
+ 'Attempt' => [
+ 'description' => '任务失败重试次数',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'Status' => [
+ 'description' => '实例状态。包含以下几种状态:'."\n"
+ .'1:等待'."\n"
+ .'3:运行中'."\n"
+ .'4:成功'."\n"
+ .'5:失败'."\n"
+ .'9:拒绝'."\n"
+ .'对应枚举类: com.alibaba.schedulerx.common.domain.InstanceStatus',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '4',
+ ],
+ 'JobName' => [
+ 'description' => '任务名称',
+ 'type' => 'string',
+ 'example' => 'TestJob',
+ ],
+ ],
+ ],
+ ],
+ 'Edges' => [
+ 'description' => '任务实例依赖关系的数组',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '通过source->target描述依赖关系,source=0表示根节点',
+ 'type' => 'object',
+ 'properties' => [
+ 'Source' => [
+ 'description' => '依赖关系的上游,0表示根节点',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '24058798',
+ ],
+ 'Target' => [
+ 'description' => '依赖关系的下游',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '24058796',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '获取工作流实例详情及DAG',
+ ],
+ 'ListWorkflowInstance' => [
+ 'summary' => '获取工作流的历史执行记录,只有专业版才支持。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用分组ID,在控制台的应用管理页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'WorkflowId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '工作流ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '123',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0',
+ ],
+ 'Code' => [
+ 'description' => '返回码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Success' => [
+ 'description' => 'API执行是否成功。取值如下:'."\n"
+ ."\n"
+ .'- true:成功。'."\n"
+ .'- false:失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Message' => [
+ 'description' => '错误信息',
+ 'type' => 'string',
+ 'example' => 'workflowId=xxx is not existed',
+ ],
+ 'Data' => [
+ 'description' => '工作流实例列表封装在data里',
+ 'type' => 'object',
+ 'properties' => [
+ 'WfInstanceInfos' => [
+ 'description' => '工作流实例的列表',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '工作流实例数据结构',
+ 'type' => 'object',
+ 'properties' => [
+ 'WfInstanceId' => [
+ 'description' => '工作流实例ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '123456',
+ ],
+ 'WorkflowId' => [
+ 'description' => '工作流ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '123',
+ ],
+ 'Status' => [
+ 'description' => '工作流实例状态,取值如下:'."\n"
+ ."\n"
+ .'- 1: 等待中'."\n"
+ .'- 2: 准备中'."\n"
+ .'- 3:运行中'."\n"
+ .'- 4:成功'."\n"
+ .'- 5:失败',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'StartTime' => [
+ 'description' => '开始时间',
+ 'type' => 'string',
+ 'example' => '2023-01-03 18:00:01',
+ ],
+ 'EndTime' => [
+ 'description' => '结束时间',
+ 'type' => 'string',
+ 'example' => '2023-01-03 18:00:21',
+ ],
+ 'ScheduleTime' => [
+ 'description' => '计划调度时间',
+ 'type' => 'string',
+ 'example' => '2023-01-03 18:00:00',
+ ],
+ 'DataTime' => [
+ 'description' => '数据时间',
+ 'type' => 'string',
+ 'example' => '2023-01-03 18:00:00',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '获取工作流实例列表',
+ ],
+ 'SetWfInstanceSuccess' => [
+ 'summary' => '强制设置工作流实例状态为成功状态,只有专业版才支持。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用分组ID,在控制台的应用管理页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'WorkflowId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '工作流ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '123',
+ ],
+ ],
+ [
+ 'name' => 'WfInstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '工作流实例ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '123456789',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108',
+ ],
+ 'Code' => [
+ 'description' => '返回码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Success' => [
+ 'description' => '请求是否成功,取值如下:'."\n"
+ ."\n"
+ .'- true:成功。'."\n"
+ .'- false:失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Message' => [
+ 'description' => '错误消息,仅错误时返回错误信息。',
+ 'type' => 'string',
+ 'example' => 'wofkflowId is not existed',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '标记工作流实例成功',
+ ],
+ 'CreateJob' => [
+ 'summary' => '创建任务并返回任务ID。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ 'default' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的应用管理页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'JobType',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '任务类型,目前支持以下几种任务类型:'."\n"
+ ."\n"
+ .'- java'."\n"
+ .'- python'."\n"
+ .'- shell'."\n"
+ .'- go'."\n"
+ .'- http'."\n"
+ .'- xxljob'."\n"
+ .'- dataworks'."\n"
+ .'- k8s'."\n"
+ .'- springschedule',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'enumValueTitles' => [
+ 'python' => 'python',
+ 'xxljob' => 'xxljob',
+ 'java' => 'java',
+ 'shell' => 'shell',
+ 'golang' => 'golang',
+ 'go' => 'go',
+ 'http' => 'http',
+ 'dataworks' => 'dataworks',
+ ],
+ 'example' => 'java',
+ ],
+ ],
+ [
+ 'name' => 'Name',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '任务名。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'helloworld',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '任务描述。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Test',
+ ],
+ ],
+ [
+ 'name' => 'ExecuteMode',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '任务执行模式,目前支持以下几种任务执行模式:'."\n"
+ ."\n"
+ .'- **单机运行**:standalone'."\n"
+ .'- **广播运行**:broadcast'."\n"
+ .'- **可视化MapReduce**:parallel'."\n"
+ .'- **MapReduce**:batch'."\n"
+ .'- **分片运行**:sharding',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'enumValueTitles' => [
+ 'broadcast' => '广播运行',
+ 'parallel' => '并行计算',
+ 'grid' => '内存网格',
+ 'batch' => '网格计算',
+ 'standalone' => '单机运行',
+ 'sharding' => '分片运行',
+ ],
+ 'example' => 'standalone',
+ ],
+ ],
+ [
+ 'name' => 'ClassName',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '任务接口类完整路径。'."\n"
+ ."\n"
+ .'当您选择Java任务类型时,才有该字段且必须填写完整路径。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'com.alibaba.schedulerx.test.helloworld',
+ ],
+ ],
+ [
+ 'name' => 'Content',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '- 任务类型选择为python/shell/k8s时,填写对应的脚本内容。'."\n"
+ .'- 任务类型为golang时,content格式示例为 {"jobName":"HelloWorld"}',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'echo \'hello\'',
+ ],
+ ],
+ [
+ 'name' => 'Parameters',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '用户自定义参数,运行时可以获取。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ ],
+ ],
+ [
+ 'name' => 'MaxConcurrency',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '最大同时运行实例数量,默认值为1,即上次触发没有运行结束,即使到了运行时刻也不会进行下次触发。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '200',
+ 'minimum' => '1',
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'MaxAttempt',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '错误最大重试次数,根据业务需求填写,默认值为0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '0',
+ 'default' => '0',
+ ],
+ ],
+ [
+ 'name' => 'AttemptInterval',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '错误重试间隔,单位s,默认值为30。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '30',
+ 'default' => '30',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '并行网格任务高级配置,单次拉取子任务数,默认值为100。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '100',
+ 'default' => '100',
+ ],
+ ],
+ [
+ 'name' => 'ConsumerSize',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '并行网格任务高级配置,单机单次触发执行线程数,默认值为5。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '5',
+ 'default' => '5',
+ ],
+ ],
+ [
+ 'name' => 'QueueSize',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '并行网格任务高级配置,子任务队列缓存上限,默认值为10000。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10000',
+ 'default' => '10000',
+ ],
+ ],
+ [
+ 'name' => 'DispatcherSize',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '并行网格任务高级配置,子任务分发线程数,默认值为5。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '5',
+ 'default' => '5',
+ ],
+ ],
+ [
+ 'name' => 'TimeType',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '时间类型,目前支持以下几种时间类型:'."\n"
+ ."\n"
+ .'- **cron**:1'."\n"
+ .'- **fixed_rate**:3'."\n"
+ .'- **second_delay**:4'."\n"
+ .'- **one_time** :5 '."\n"
+ .'- **api**:100'."\n"
+ .'- **none**:-1',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'docRequired' => true,
+ 'enumValueTitles' => [
+ 1 => '1',
+ 3 => '3',
+ '4',
+ '5',
+ 100 => '100',
+ ],
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'TimeExpression',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '时间表达式,根据选择的时间类型设置时间表达式。'."\n"
+ ."\n"
+ .'- **cron**:填写标准的cron表达式,支持在线验证。'."\n"
+ .'- **api**:无时间表达式。'."\n"
+ .'- **fixed_rate**:填写具体固定频率值,单位s。如30表示每隔30s触发一次。'."\n"
+ .'- **second_delay**:填写固定延迟多少秒执行一次(1s~60s可选)。'."\n"
+ .'- **one_time**: 填写指定时间(yyyy-MM-dd HH:mm:ss)或者时间戳(毫秒),比如"2022-10-10 10:10:00"',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '0 0/10 * * * ?',
+ ],
+ ],
+ [
+ 'name' => 'Calendar',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => 'cron类型可以选择填写自定义日历。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '暂不支持,不用填写',
+ ],
+ ],
+ [
+ 'name' => 'DataOffset',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => 'cron类型可以选择时间偏移,单位s。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2400',
+ ],
+ ],
+ [
+ 'name' => 'Timezone',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '时区',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GMT+8',
+ ],
+ ],
+ [
+ 'name' => 'TimeoutEnable',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '超时报警开关。取值如下:'."\n"
+ ."\n"
+ .'- **true**:开启超时报警开关。'."\n"
+ .'- **false**:关闭超时报警开关。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'enumValueTitles' => [
+ 'false' => 'false',
+ 'true' => 'true',
+ ],
+ 'example' => 'false',
+ 'default' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'Timeout',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '超时阈值,单位s,默认值7200。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '7200',
+ 'default' => '7200',
+ ],
+ ],
+ [
+ 'name' => 'TimeoutKillEnable',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '超时终止开关。取值如下:'."\n"
+ ."\n"
+ .'- **true**:开启超时终止开关。'."\n"
+ .'- **false**:关闭超时终止开关。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'enumValueTitles' => [
+ 'false' => 'false',
+ 'true' => 'true',
+ ],
+ 'example' => 'false',
+ 'default' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'FailEnable',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '失败报警开关。取值如下:'."\n"
+ ."\n"
+ .'- **true**:开启失败报警开关。'."\n"
+ .'- **false**:关闭失败报警开关。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'enumValueTitles' => [
+ 'false' => 'false',
+ 'true' => 'true',
+ ],
+ 'example' => 'false',
+ 'default' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'FailTimes',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '连续失败报警次数',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'MissWorkerEnable',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '是否开启无可用机器报警。'."\n"
+ .'- **true**:开启无可用机器报警开关。'."\n"
+ .'- **false**:关闭无可用机器报警开关。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'SuccessNoticeEnable',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '成功通知开关',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'SendChannel',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '告警通知渠道。'."\n"
+ ."\n"
+ .'- 按应用分组默认渠道:default。'."\n"
+ .'- 指定任务发送渠道:sms,mail,phone,webhook。',
+ 'type' => 'string',
+ 'required' => false,
+ 'enumValueTitles' => [
+ 'default' => 'default',
+ 'webhook' => 'webhook',
+ 'mail' => 'mail',
+ 'phone' => 'phone',
+ 'sms' => 'sms',
+ ],
+ 'example' => 'sms',
+ 'default' => 'default',
+ ],
+ ],
+ [
+ 'name' => 'TaskMaxAttempt',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '并行网格任务高级配置,子任务失败重试次数 ,默认值为0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '10',
+ 'minimum' => '0',
+ 'example' => '0',
+ 'default' => '0',
+ ],
+ ],
+ [
+ 'name' => 'TaskAttemptInterval',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '并行网格任务高级配置,子任务失败重试间隔,默认值为0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'minimum' => '0',
+ 'example' => '0',
+ 'default' => '0',
+ ],
+ ],
+ [
+ 'name' => 'ContactInfo',
+ 'in' => 'formData',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '任务联系人信息。'."\n"
+ ."\n"
+ .'><notice>该字段已废弃></notice>',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '任务联系人信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'UserPhone' => [
+ 'description' => '报警接收手机号。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1381111****',
+ ],
+ 'UserName' => [
+ 'description' => '报警联系人姓名。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '张三',
+ ],
+ 'UserMail' => [
+ 'description' => '报警联系人邮箱。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test***@***.com',
+ ],
+ 'Ding' => [
+ 'description' => '报警联系人钉钉群机器人webhook地址,参考文档:[钉钉开发文档](https://open.dingtalk.com/document/org/application-types)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=**********',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'example' => '1',
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'Status',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '0:禁用,1:启用,默认启用。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ 'default' => '1',
+ 'enum' => [
+ '0',
+ '1',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'XAttrs',
+ 'in' => 'formData',
+ 'schema' => [
+ 'title' => '如果是k8s任务类型,需要配置该参数'."\n"
+ .'Job任务:{"resource":"job"}'."\n"
+ .'Shell任务:{"image":"busybox","resource":"shell"}'."\n",
+ 'description' => '如果是k8s任务类型,需要配置该参数'."\n"
+ .'Job任务:{"resource":"job"}'."\n"
+ .'Shell任务:{"image":"busybox","resource":"shell"}'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"resource":"job"}',
+ 'enum' => [],
+ ],
+ ],
+ [
+ 'name' => 'Priority',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务优先级。取值如下:'."\n"
+ .'- **1**:低'."\n"
+ .'- **5**:中'."\n"
+ .'- **10**:高'."\n"
+ .'- **15**:非常高',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '5',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '附加信息。',
+ 'type' => 'string',
+ 'example' => 'message',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID。',
+ 'type' => 'string',
+ 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0',
+ ],
+ 'Success' => [
+ 'description' => '创建任务是否成功。取值如下:'."\n"
+ ."\n"
+ .'- **true**:创建任务成功。'."\n"
+ .'- **false**:创建任务失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'description' => '任务详细信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'JobId' => [
+ 'description' => '任务ID。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '92583',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '创建任务并返回任务ID',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '## 创建Java任务'."\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 = "<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"
+ .' 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"
+ .'```',
+ ],
+ 'DeleteJob' => [
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'JobId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务ID,在控制台的**任务管理**页面中获取。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '92583',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的**命名空间**页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的**应用管理**页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '接口状态码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '附加信息。',
+ 'type' => 'string',
+ 'example' => 'message',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID。',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108',
+ ],
+ 'Success' => [
+ 'description' => '是否成功。'."\n"
+ ."\n"
+ .'- **true**:删除任务成功。'."\n"
+ ."\n"
+ .'- **false**:删除任务失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '删除指定任务',
+ 'summary' => '删除指定任务。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '## 示例Demo'."\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"
+ .' // 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"
+ .' 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"
+ .'```',
+ ],
+ 'BatchDeleteJobs' => [
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务所属命名空间ID,在控制台**命名空间**页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的**应用管理**页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务所属地域。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'JobIdList',
+ 'in' => 'formData',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '任务ID列表,多个任务ID以半角逗号(,)分隔。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '任务ID。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '99341',
+ ],
+ 'required' => true,
+ 'example' => '99341',
+ 'maxItems' => 3000,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '状态码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '附加信息。',
+ 'type' => 'string',
+ 'example' => 'message',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7',
+ ],
+ 'Success' => [
+ 'description' => '批量删除任务是否成功。取值如下:'."\n"
+ ."\n"
+ .'- **true**:成功'."\n"
+ ."\n"
+ .'- **false**:失败',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '批量删除任务',
+ 'summary' => '批量删除任务。',
+ 'description' => '调用该接口前,需要在POM文件添加以下依赖:'."\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"
+ .' // OpenAPI的接入点,具体查看上表支持地域列表以及购买机器地域填写.'."\n"
+ .' String regionId = "cn-hangzhou";'."\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-hangzhou.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"
+ .' 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"
+ .'```',
+ ],
+ 'UpdateJob' => [
+ 'summary' => '更新任务配置信息。默认先调用获取任务找到对应字段进行修改。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ 'default' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的应用管理页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'JobId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '任务ID,在控制台的任务管理页面中获取。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '92583',
+ ],
+ ],
+ [
+ 'name' => 'Name',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '任务名。',
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => 'helloword',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '任务描述。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ ],
+ ],
+ [
+ 'name' => 'ExecuteMode',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '任务执行模式,目前支持以下几种任务执行模式:'."\n"
+ ."\n"
+ .'- **单机运行**:standalone'."\n"
+ .'- **广播运行**:broadcatst'."\n"
+ .'- **可视化MapReduce**:parallel'."\n"
+ .'- **MapReduce**:batch'."\n"
+ .'- **分片运行**:shard',
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => 'standalone',
+ ],
+ ],
+ [
+ 'name' => 'ClassName',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '任务接口类完整路径。'."\n"
+ ."\n"
+ .'是Java任务类型时,才有该字段且必须填写完整路径。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'com.alibaba.test.helloworld',
+ ],
+ ],
+ [
+ 'name' => 'Content',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '- 任务类型选择为python/shell/k8s时,填写对应的脚本内容。'."\n"
+ .'- 任务类型为golang时,content格式示例为 {"jobName":"HelloWorld"}',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'echo \'hello\'',
+ ],
+ ],
+ [
+ 'name' => 'Parameters',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '用户自定义参数,运行时可以获取。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ ],
+ ],
+ [
+ 'name' => 'MaxConcurrency',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '最大同时运行实例数量,默认值为1,即上次触发没有运行结束,不会进行下次触发即使到了运行时刻。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '200',
+ 'minimum' => '1',
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'MaxAttempt',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '错误最大重试次数,根据业务需求填写。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '0',
+ 'default' => '0',
+ ],
+ ],
+ [
+ 'name' => 'AttemptInterval',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '错误重试间隔时间,单位s,默认值为30。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '30',
+ 'default' => '30',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '并行网格任务高级配置,单次拉取子任务数,默认值为100。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '100',
+ 'default' => '100',
+ ],
+ ],
+ [
+ 'name' => 'TaskDispatchMode',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '并行网格任务高级配置,推模型或者拉模型',
+ 'type' => 'string',
+ 'required' => false,
+ 'enumValueTitles' => [
+ 'pull' => 'pull',
+ 'push' => 'push',
+ ],
+ 'example' => 'push',
+ ],
+ ],
+ [
+ 'name' => 'ConsumerSize',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '并行网格任务高级配置,单机单次触发执行线程数,默认值为5。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '5',
+ 'default' => '5',
+ ],
+ ],
+ [
+ 'name' => 'QueueSize',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '并行网格任务高级配置,子任务队列缓存上限,默认值为10000。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10000',
+ 'default' => '10000',
+ ],
+ ],
+ [
+ 'name' => 'DispatcherSize',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '并行网格任务高级配置,子任务分发线程数,默认值为5。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '5',
+ 'default' => '5',
+ ],
+ ],
+ [
+ 'name' => 'TaskMaxAttempt',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '并行网格任务高级配置,子任务失败重试次数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '10',
+ 'minimum' => '0',
+ 'example' => '0',
+ 'default' => '0',
+ ],
+ ],
+ [
+ 'name' => 'TaskAttemptInterval',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '并行网格任务高级配置,子任务失败重试间隔。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'minimum' => '0',
+ 'example' => '0',
+ 'default' => '0',
+ ],
+ ],
+ [
+ 'name' => 'TimeType',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '时间配置类型,目前支持以下几种配置类型:'."\n"
+ ."\n"
+ .'- **cron**:1'."\n"
+ .'- **fix_rate**:3'."\n"
+ .'- **second_delay**:4'."\n"
+ .'- **one_time** :5'."\n"
+ .'- **api**:100',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'TimeExpression',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '时间表达式,根据选择的时间类型设置时间表达式。'."\n"
+ ."\n"
+ .'- **cron**:填写标准的cron表达式,支持在线验证。'."\n"
+ .'- **api**:无时间表达式。'."\n"
+ .'- **fixed_rate**:填写具体固定频率值,单位s。如30表示每隔30s触发一次。'."\n"
+ .'- **second_delay**:填写固定延迟多少秒执行一次(1s~60s可选)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '30',
+ ],
+ ],
+ [
+ 'name' => 'Calendar',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => 'cron类型可以选择填写自定义日历。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '工作日',
+ ],
+ ],
+ [
+ 'name' => 'DataOffset',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => 'cron类型可以选择时间偏移,单位s。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2400',
+ ],
+ ],
+ [
+ 'name' => 'Timezone',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '时区',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GMT+8',
+ ],
+ ],
+ [
+ 'name' => 'TimeoutEnable',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '超时报警开关。取值如下:'."\n"
+ ."\n"
+ .'- **true**:开启超时报警开关。'."\n"
+ .'- **false**:关闭超时报警开关。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ 'default' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'Timeout',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '超时阈值,单位s。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '7200',
+ 'default' => '7200',
+ ],
+ ],
+ [
+ 'name' => 'TimeoutKillEnable',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '超时终止本次触发开关。取值如下:'."\n"
+ ."\n"
+ .'- **true**:开启超时终止开关。'."\n"
+ .'- **false**:关闭超时终止开关。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ 'default' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'FailEnable',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '失败报警开关。取值如下:'."\n"
+ ."\n"
+ .'- **true**:开启失败报警开关。'."\n"
+ .'- **false**:关闭失败报警开关。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ 'default' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'FailTimes',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '连续失败报警次数',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'MissWorkerEnable',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '是否开启无可用机器告警。'."\n"
+ .'- **true**:开启无可用机器告警开关。'."\n"
+ .'- **false**:关闭无可用机器告警开关。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ 'default' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'SuccessNoticeEnable',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '成功通知开关',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'SendChannel',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '报警发送形式,目前只支持sms。',
+ 'type' => 'string',
+ 'required' => false,
+ 'enumValueTitles' => [],
+ 'example' => 'sms',
+ ],
+ ],
+ [
+ 'name' => 'ContactInfo',
+ 'in' => 'formData',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '任务联系人信息。'."\n"
+ .'><notice>该字段已废弃></notice>',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '-',
+ 'type' => 'object',
+ 'properties' => [
+ 'UserPhone' => [
+ 'description' => '用户手机号。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1381111****',
+ ],
+ 'UserName' => [
+ 'description' => '用户名。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'userA',
+ ],
+ 'UserMail' => [
+ 'description' => '用户邮箱。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test***@***.com',
+ ],
+ 'Ding' => [
+ 'description' => '报警联系人钉钉群机器人webhook地址,参考文档:[钉钉开发文档](https://open.dingtalk.com/document/org/application-types)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=**********',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'example' => ' {"resource":"shell","fileFormat":"unix","templateType":"customTemplate"}',
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'XAttrs',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '如果是k8s任务类型,需要配置该参数'."\n"
+ .'Job任务:{"resource":"job"}'."\n"
+ .'Shell任务:{"image":"busybox","resource":"shell"}'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => ' {"resource":"shell","fileFormat":"unix","templateType":"customTemplate"}',
+ ],
+ ],
+ [
+ 'name' => 'Template',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => 'k8s任务类型自定义任务模版',
+ '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',
+ ],
+ ],
+ [
+ 'name' => 'Priority',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务优先级。取值如下:'."\n"
+ .'- **1**:低'."\n"
+ .'- **5**:中'."\n"
+ .'- **10**:高'."\n"
+ .'- **15**:非常高',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '5',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '附加信息,仅出错时返回错误信息。',
+ 'type' => 'string',
+ 'example' => 'job type is java className can not be blank',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID。',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108',
+ ],
+ 'Success' => [
+ 'description' => '是否成功。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '更新任务配置信息',
+ 'requestParamsDescription' => '> 在调用UpdateJob更新调度任务时,会删除之前对应参数的配置,而非保留。所以,请先调用[GetJobInfo](~~176507~~),获取目标任务此前的配置,再根据实际情况进行配置。',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DisableJob' => [
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'JobId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务ID,在控制台的任务管理页面中获取。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '92583',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的应用管理页面中获取。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '错误消息,仅出错时返回错误信息。',
+ 'type' => 'string',
+ 'example' => 'jobid: 92583 not match groupId: testSchedulerx.defaultGroup',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => 'C8E5FB4A-6D8D-424D-9AAA-4FE06BB74FF9',
+ ],
+ 'Success' => [
+ 'description' => '禁用任务是否成功。取值如下:'."\n"
+ ."\n"
+ .'- **true**:禁用任务成功。'."\n"
+ .'- **false**:禁用任务失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '停用指定任务',
+ 'summary' => '停用指定任务。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '## Demo'."\n"
+ ."\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"
+ .' // OpenAPI的接入点,具体查看上表支持地域列表以及购买机器地域填写。'."\n"
+ .' String regionId = "cn-shanghai";'."\n"
+ .' //鉴权使用的AccessKeyId,由阿里云官网控制台获取。'."\n"
+ .' String accessKeyId = "<yourAccessKeyId>";'."\n"
+ .' //鉴权使用的AccessKeySecret,由阿里云官网控制台获取。'."\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"
+ .' 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"
+ .'```',
+ ],
+ 'BatchEnableJobs' => [
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务所属命名空间ID,在控制台**命名空间**页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的**应用管理**页面中获取。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务所属地域。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'JobIdList',
+ 'in' => 'formData',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '任务ID列表,多个任务ID以半角逗号(,)分隔。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '任务ID。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '99341',
+ ],
+ 'required' => true,
+ 'example' => '99341',
+ 'maxItems' => 3000,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '状态码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '附加信息。',
+ 'type' => 'string',
+ 'example' => 'message',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7',
+ ],
+ 'Success' => [
+ 'description' => '批量启用任务是否成功。取值如下:'."\n"
+ ."\n"
+ .'- **true**:成功'."\n"
+ ."\n"
+ .'- **false**:失败',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '批量启用任务',
+ 'summary' => '批量启用任务。',
+ 'description' => '在调用该接口前,需要在POM文件添加以下依赖:'."\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"
+ .'```'."\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"
+ .' // OpenAPI的接入点,具体查看上表支持地域列表以及购买机器地域填写。'."\n"
+ .' String regionId = "cn-hangzhou";'."\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-hangzhou.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"
+ .' 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',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务所属命名空间ID,在控制台**命名空间**页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的**应用管理**页面中获取。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务所属地域。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'JobIdList',
+ 'in' => 'formData',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '任务ID列表,多个任务ID以半角逗号(,)分隔。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '任务ID。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '99341',
+ ],
+ 'required' => true,
+ 'example' => '99341',
+ 'maxItems' => 3000,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '状态码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '附加信息。',
+ 'type' => 'string',
+ 'example' => 'disable failed jobs=[99341]',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7',
+ ],
+ 'Success' => [
+ 'description' => '批量禁用任务是否成功。取值如下:'."\n"
+ ."\n"
+ .'- **true**:成功'."\n"
+ ."\n"
+ .'- **false**:失败',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '批量禁用任务',
+ 'summary' => '批量禁用任务。',
+ 'description' => '在调用该接口前,需要在POM文件添加以下依赖:'."\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"
+ .'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"
+ .' // OpenAPI 的接入点,具体查看上表支持地域列表以及购买机器地域填写。'."\n"
+ .' String regionId = "cn-hangzhou";'."\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-hangzhou.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"
+ .' 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',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'JobId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务ID,在控制台的任务管理页面中获取。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '92555',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的应用管理页面中获取。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '附加信息。',
+ 'type' => 'string',
+ 'example' => 'jobid: 92583 not match groupId: testSchedulerx.defaultGroup',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID。',
+ 'type' => 'string',
+ 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBC***',
+ ],
+ 'Success' => [
+ 'description' => '调用任务是否成功。取值如下:'."\n"
+ ."\n"
+ .'- **true**:调用任务成功。'."\n"
+ .'- **false**:调用任务失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '启用指定任务',
+ 'summary' => '启用指定任务。',
+ 'description' => '任务创建完成以后默认启用,所以该功能是在停用任务后使用。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '## Demo'."\n"
+ ."\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"
+ .' // OpenAPI的接入点,具体查看上表支持地域列表以及购买机器地域填写。'."\n"
+ .' String regionId = "cn-shanghai";'."\n"
+ .' //鉴权使用的 AccessKeyId,由阿里云官网控制台获取。'."\n"
+ .' String accessKeyId = "<yourAccessKeyId>";'."\n"
+ .' //鉴权使用的 AccessKeySecret,由阿里云官网控制台获取。'."\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"
+ .' 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"
+ .'```',
+ ],
+ 'GetJobInfo' => [
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'JobId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务ID,在控制台的任务管理页面中获取。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '92583',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的应用管理页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'JobName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'simpleJob',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '错误信息,仅错误时返回错误信息。',
+ 'type' => 'string',
+ 'example' => 'jobid: 92583 not match groupId: testSchedulerx.defaultGroup',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID。',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108',
+ ],
+ 'Success' => [
+ 'description' => '获取任务详情是否成功。取值如下:'."\n"
+ ."\n"
+ .'- **true**:获取任务详情成功。'."\n"
+ .'- **false**:获取任务详情失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'description' => '指定任务信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'JobConfigInfo' => [
+ 'description' => '任务配置信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'JobId' => [
+ 'description' => '任务ID。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '538039',
+ ],
+ 'Status' => [
+ 'description' => '任务状态。取值如下:'."\n"
+ ."\n"
+ .'- **1**:启用,可以被正常触发。'."\n"
+ .'- **0**:禁用,不会被触发。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'Parameters' => [
+ 'description' => '用户自定义参数,运行时可以获取。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'Description' => [
+ 'description' => '任务描述。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'ExecuteMode' => [
+ 'description' => '任务执行模式,目前包含以下几种任务执行模式:'."\n"
+ ."\n"
+ .'- **单机运行**:standalone'."\n"
+ .'- **广播运行**:broadcatst'."\n"
+ .'- **并行计算**:parallel'."\n"
+ .'- **内存网格**:grid'."\n"
+ .'- **网格计算**:batch'."\n"
+ .'- **分片运行**:shard',
+ 'type' => 'string',
+ 'example' => 'standalone',
+ ],
+ 'MaxConcurrency' => [
+ 'description' => '最大同时运行实例数量,默认值为1, 即上次触发没有运行结束,即使到了运行时刻也不会进行下次触发。',
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'Name' => [
+ 'description' => '任务名称。',
+ 'type' => 'string',
+ 'example' => 'helloworld',
+ ],
+ 'MaxAttempt' => [
+ 'description' => '错误最大重试次数,根据业务需求填写,默认值为0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'Content' => [
+ 'description' => '脚本类型任务的脚本。',
+ 'type' => 'string',
+ 'example' => 'echo "clear" > /home/admin/edas-container/logs/catalina.out ',
+ ],
+ 'JarUrl' => [
+ 'description' => '上传到OSS的完整路径。'."\n"
+ ."\n"
+ .'如果选择JAR包运行,可以将相应JAR包上传到OSS的该路径下。',
+ 'type' => 'string',
+ 'example' => 'https://test.oss-cn-hangzhou.aliyuncs.com/schedulerX/test.jar',
+ ],
+ 'ClassName' => [
+ 'description' => '任务接口类完整路径,仅是Java类型任务时有该字段。',
+ 'type' => 'string',
+ 'example' => 'com.alibaba.test.helloword',
+ ],
+ 'JobType' => [
+ 'description' => '任务类型',
+ 'type' => 'string',
+ 'example' => 'java',
+ ],
+ 'AttemptInterval' => [
+ 'description' => '错误重试间隔时间,单位s,默认值为30。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '30',
+ ],
+ 'MapTaskXAttrs' => [
+ 'description' => '高级配置,仅限于并行计算、内存网格和网格计算使用。',
+ 'type' => 'object',
+ 'properties' => [
+ 'TaskMaxAttempt' => [
+ 'description' => '子任务失败重试次数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'TaskAttemptInterval' => [
+ 'description' => '子任务失败重试间隔。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'ConsumerSize' => [
+ 'description' => '单机单次触发执行线程数,默认值为5。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'QueueSize' => [
+ 'description' => '子任务队列缓存上限,默认值为10000。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10000',
+ ],
+ 'DispatcherSize' => [
+ 'description' => '子任务分发线程数,默认值为5。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'PageSize' => [
+ 'description' => '并行任务单次拉取子任务数,默认值为100。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '100',
+ ],
+ ],
+ ],
+ 'TimeConfig' => [
+ 'description' => '时间配置信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Calendar' => [
+ 'description' => '**cron**类型可以选择填写自定义日历。',
+ 'type' => 'string',
+ 'example' => '工作日',
+ ],
+ 'TimeType' => [
+ 'description' => '时间配置类型,目前支持以下几种时间类型:'."\n"
+ ."\n"
+ .'- **cron**:1'."\n"
+ .'- **fix_rate**:3'."\n"
+ .'- **second_delay**:4'."\n"
+ .'- **one_time** :5'."\n"
+ .'- **api**:100',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'DataOffset' => [
+ 'description' => '**cron**类型可以选择时间偏移,单位为秒(s)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'TimeExpression' => [
+ 'description' => '时间表达式,目前支持以下几种时间表达类型:'."\n"
+ ."\n"
+ .'- **api**:无时间表达式。'."\n"
+ .'- **fix_rate**:具体固定频率值,如30表示每隔30s触发一次。'."\n"
+ .'- **cron**:标准的cron表达式。'."\n"
+ .'- **second_delay**:固定延迟多少秒执行一次(1s~60s可选)。',
+ 'type' => 'string',
+ 'example' => '0 0/10 * * * ?',
+ ],
+ ],
+ ],
+ 'JobMonitorInfo' => [
+ 'description' => '任务监控信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ContactInfo' => [
+ 'description' => '联系人信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'UserPhone' => [
+ 'description' => '用户手机号。',
+ 'type' => 'string',
+ 'example' => '1381111****',
+ ],
+ 'UserName' => [
+ 'description' => '用户名。',
+ 'type' => 'string',
+ 'example' => 'userA',
+ ],
+ 'UserMail' => [
+ 'description' => '用户邮件地址。',
+ 'type' => 'string',
+ 'example' => '[email protected]',
+ ],
+ 'Ding' => [
+ 'description' => '钉钉Webhook地址。',
+ 'type' => 'string',
+ 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=XXXXXX',
+ ],
+ ],
+ ],
+ ],
+ 'MonitorConfig' => [
+ 'description' => '报警开关以及阈值配置。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Timeout' => [
+ 'description' => '超时阈值,单位为秒(s),默认值为7200。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '12300',
+ ],
+ 'SendChannel' => [
+ 'description' => '报警发送形式,目前只支持sms。',
+ 'type' => 'string',
+ 'example' => 'sms',
+ ],
+ 'TimeoutKillEnable' => [
+ 'description' => '超时终止本次触发开关,默认关闭。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'TimeoutEnable' => [
+ 'description' => '超时报警开关。取值如下:'."\n"
+ ."\n"
+ .'- **true**:开启超时报警开关。'."\n"
+ .'- **false**:关闭超时报警开关。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'FailEnable' => [
+ 'description' => '失败报警开关。取值如下:'."\n"
+ ."\n"
+ .'- **true**:开启失败报警开关。'."\n"
+ .'- **false**:关闭失败报警开关。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'MissWorkerEnable' => [
+ 'description' => '是否开启无可用机器报警。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'XAttrs' => [
+ 'description' => '任务扩展字段',
+ 'type' => 'string',
+ 'example' => '{"pageSize":5,"queueSize":10,"consumerSize":5,"dispatcherSize":5,"taskMaxAttempt":0,"taskAttemptInterval":0,"globalConsumerSize":1000,"taskDispatchMode":"push"}',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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\\": \\"[email protected]\\",\\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\\" &amp;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' => '获取指定Jobid任务详情',
+ 'summary' => '获取指定Jobid任务详情,通常用来更新任务。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'ListJobs' => [
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的**应用管理**页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'DocTest.Group',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间,在控制台的**命名空间**页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '1a72ecb1-b4cc-400a-a71b-20cdec9b****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'JobName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'helloword',
+ ],
+ ],
+ [
+ 'name' => 'Status',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务状态。'."\n"
+ ."\n"
+ .'- **0**:表示禁用'."\n"
+ ."\n"
+ .'- **1**:表示启用',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '请求状态码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '错误信息,仅出错时返回错误信息。',
+ 'type' => 'string',
+ 'example' => 'namespace can not find namespace: 1a72ecb1-b4cc-400a-a71b-20cdec9b****, namespaceSource:null',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID。',
+ 'type' => 'string',
+ 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB58B',
+ ],
+ 'Success' => [
+ 'description' => '调用接口是否成功。取值如下:'."\n"
+ ."\n"
+ .'- **true**:成功'."\n"
+ ."\n"
+ .'- **false**:失败',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'description' => '任务列表信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Jobs' => [
+ 'description' => '任务列表及任务详情。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Status' => [
+ 'description' => '任务状态。取值如下:'."\n"
+ ."\n"
+ .'- **1**:启用,可以被正常触发。'."\n"
+ ."\n"
+ .'- **0**:禁用,不会被触发。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'JarUrl' => [
+ 'description' => 'JAR包的OSS完整路径。',
+ 'type' => 'string',
+ 'example' => 'https:doc***.oss-cn-hangzhou.aliyuncs.com/sc-****-D-0.0.2-SNAPSHOT.jar',
+ ],
+ 'MaxAttempt' => [
+ 'description' => '错误最大重试次数,根据业务需求填写,默认值为0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'Parameters' => [
+ 'description' => '用户自定义参数,运行时可以获取。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'Description' => [
+ 'description' => '任务描述。',
+ 'type' => 'string',
+ 'example' => 'Test',
+ ],
+ 'JobId' => [
+ 'description' => '任务ID。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '99341',
+ ],
+ 'ExecuteMode' => [
+ 'description' => '任务执行模式,可能出现的结果如下:'."\n"
+ ."\n"
+ .'- **standalone**:单机运行'."\n"
+ ."\n"
+ .'- **broadcast**:广播运行'."\n"
+ ."\n"
+ .'- **parallel**:并行计算'."\n"
+ ."\n"
+ .'- **grid**:内存网格'."\n"
+ ."\n"
+ .'- **batch**:网格计算'."\n"
+ ."\n"
+ .'- **shard**:分片运行',
+ 'type' => 'string',
+ 'example' => 'standalone',
+ ],
+ 'MaxConcurrency' => [
+ 'description' => '最大同时运行实例数量,默认值为1, 即上次触发没有运行结束,即使到了运行时刻也不会进行下次触发。',
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'Name' => [
+ 'description' => '任务名。',
+ 'type' => 'string',
+ 'example' => 'helloworld',
+ ],
+ 'ClassName' => [
+ 'description' => '任务接口类完整路径。'."\n"
+ .'当您的任务是Java任务类型时,才有该字段信息。',
+ 'type' => 'string',
+ 'example' => 'com.alibaba.schedulerx.test.helloworld',
+ ],
+ 'Content' => [
+ 'description' => 'python、shell、go任务类型的脚本代码内容。',
+ 'type' => 'string',
+ 'example' => 'echo \'hello\'',
+ ],
+ 'JobType' => [
+ 'description' => '任务类型',
+ 'type' => 'string',
+ 'example' => 'java',
+ ],
+ 'AttemptInterval' => [
+ 'description' => '错误重试间隔,单位s,默认值为30。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '30',
+ ],
+ 'MapTaskXAttrs' => [
+ 'description' => '高级配置,仅限于并行计算、内存网格和网格计算使用。',
+ 'type' => 'object',
+ 'properties' => [
+ 'TaskMaxAttempt' => [
+ 'description' => '子任务失败重试次数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'TaskAttemptInterval' => [
+ 'description' => '子任务失败重试间隔。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'ConsumerSize' => [
+ 'description' => '单机单次触发执行线程数,默认值为5。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'QueueSize' => [
+ 'description' => '子任务队列缓存上限,默认值为10000。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10000',
+ ],
+ 'DispatcherSize' => [
+ 'description' => '子任务分发线程数,默认值为5。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'PageSize' => [
+ 'description' => '并行任务单次拉取子任务数,默认值为100。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '100',
+ ],
+ ],
+ ],
+ 'TimeConfig' => [
+ 'description' => '时间配置信息',
+ 'type' => 'object',
+ 'properties' => [
+ 'Calendar' => [
+ 'description' => 'cron类型可以选择填写自定义日历。',
+ 'type' => 'string',
+ 'example' => '工作日',
+ ],
+ 'TimeType' => [
+ 'description' => '时间配置类型,目前支持以下几种时间类型:'."\n"
+ ."\n"
+ .'- **1**:cron'."\n"
+ ."\n"
+ .'- **3**:fix_rate'."\n"
+ ."\n"
+ .'- **4**:second_delay'."\n"
+ ."\n"
+ .'- **100**:api',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'DataOffset' => [
+ 'description' => 'cron类型可以选择时间偏移,单位s。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'TimeExpression' => [
+ 'description' => '时间表达式,目前支持以下几种时间表达类型:'."\n"
+ ."\n"
+ .'- **api**:无时间表达式。'."\n"
+ ."\n"
+ .'- **fix_rate**:具体固定频率值,如30表示每隔30s触发一次。'."\n"
+ ."\n"
+ .'- **cron**:标准的cron表达式。'."\n"
+ ."\n"
+ .'- **second_delay**:固定延迟多少秒执行一次(1s~60s可选)。',
+ 'type' => 'string',
+ 'example' => '0 0/10 * * * ?',
+ ],
+ ],
+ ],
+ 'JobMonitorInfo' => [
+ 'description' => '任务监控信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ContactInfo' => [
+ 'description' => '联系人信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'UserPhone' => [
+ 'description' => '用户手机号。',
+ 'type' => 'string',
+ 'example' => '1381111****',
+ ],
+ 'UserName' => [
+ 'description' => '用户名称。',
+ 'type' => 'string',
+ 'example' => 'userA',
+ ],
+ 'Ding' => [
+ 'description' => '钉钉群机器人webhook地址',
+ 'type' => 'string',
+ 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=**********',
+ ],
+ 'UserMail' => [
+ 'description' => '用户邮件地址',
+ 'type' => 'string',
+ 'example' => '[email protected]',
+ ],
+ ],
+ ],
+ ],
+ 'MonitorConfig' => [
+ 'description' => '报警开关以及阈值配置。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Timeout' => [
+ 'description' => '超时阈值,单位s,默认7200。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '12300',
+ ],
+ 'SendChannel' => [
+ 'description' => '报警发送形式,目前只支持sms。',
+ 'type' => 'string',
+ 'example' => 'sms',
+ ],
+ 'TimeoutKillEnable' => [
+ 'description' => '超时终止本次触发开关,默认关闭。'."\n"
+ ."\n"
+ .'- **true**:开启'."\n"
+ ."\n"
+ .'- **false**:关闭',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'TimeoutEnable' => [
+ 'description' => '超时报警开关。取值如下:'."\n"
+ ."\n"
+ .'- **true**:开启'."\n"
+ ."\n"
+ .'- **false**:关闭',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'FailEnable' => [
+ 'description' => '失败报警开关。取值如下:'."\n"
+ ."\n"
+ .'- **true**:开启'."\n"
+ ."\n"
+ .'- **false**:关闭',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'MissWorkerEnable' => [
+ 'description' => '是否开启无可用机器报警',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'XAttrs' => [
+ 'description' => '任务扩展字段',
+ 'type' => 'string',
+ 'example' => '{"pageSize":5,"queueSize":10,"consumerSize":5,"dispatcherSize":5,"taskMaxAttempt":0,"taskAttemptInterval":0,"globalConsumerSize":1000,"taskDispatchMode":"push"}',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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\\": \\"[email protected]\\"\\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":""}]',
+ 'title' => '获取任务列表',
+ 'summary' => '获取任务列表。',
+ 'description' => '在调用该接口前,需要在POM文件添加以下依赖:'."\n"
+ ."\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"
+ .'```'."\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.ListJobsRequest;'."\n"
+ .'import com.aliyuncs.schedulerx2.model.v20190430.ListJobsResponse;'."\n"
+ .'import com.aliyuncs.schedulerx2.model.v20190430.ListJobsResponse.Data.Job;'."\n"
+ ."\n"
+ .'public class TestListJobs {'."\n"
+ ."\n"
+ .' public static void main(String[] args) {'."\n"
+ .' //OpenAPI的接入点,具体查看支持地域列表以及购买机器地域填写。'."\n"
+ .' String regionId = "cn-hangzhou";'."\n"
+ .' //鉴权使用的AccessKey ID,由阿里云官网控制台获取。'."\n"
+ .' String accessKeyId = "XXXXXXXX";'."\n"
+ .' //鉴权使用的AccessKey Secret,由阿里云官网控制台获取。'."\n"
+ .' String accessKeySecret = "XXXXXXXX";'."\n"
+ .' //产品名称'."\n"
+ .' String productName ="schedulerx2";'."\n"
+ .' //对照支持地域列表选择Domain填写'."\n"
+ .' String domain ="schedulerx.cn.hangzhou.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"
+ .' ListJobsRequest request = new ListJobsRequest();'."\n"
+ .' //命名空间。'."\n"
+ .' request.setNamespace("433d8b23-06e9-408c-aaaa-90d4d1b****");'."\n"
+ .' //应用ID。'."\n"
+ .' request.setGroupId("DocTest.Group");'."\n"
+ .' ListJobsResponse response;'."\n"
+ .' try {'."\n"
+ .' response = client.getAcsResponse(request);'."\n"
+ .' if (!response.getSuccess()) {'."\n"
+ .' System.out.println(JsonUtil.toJson(response));'."\n"
+ .' System.out.println(response.getCode());'."\n"
+ .' } else {'."\n"
+ .' System.out.println(JsonUtil.toJson(response));'."\n"
+ .' List<Job> jobs = response.getData().getJobs();'."\n"
+ .' for (Job job : jobs) {'."\n"
+ .' System.out.println("jobId:" + job.getJobId() + ", name:" + job.getName() + ", status=" + job.getStatus());'."\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"
+ ."\n"
+ .'```',
+ ],
+ 'ExecuteJob' => [
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'JobId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务ID,在控制台的任务管理页面中获取。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '92583',
+ ],
+ ],
+ [
+ 'name' => 'InstanceParameters',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '本次触发携带参数,可以是任意字符串,`processor`代码通过`context.getInstanceParameters()`获取,区别于创建任务自定义参数。',
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => 'test',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的应用管理页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'CheckJobStatus',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否检查任务状态,取值如下:**true**:任务启用才能执行任务。**false**:任务不启用也可以执行任务。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'DesignateType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '指定机器类型:1.workerAddr; 2. label',
+ 'description' => '指定机器的类型,取值如下:**1**:指定worker。**2**:指定label',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'Worker',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '指定机器的workerAddr',
+ 'description' => '应用的worker地址,需要先通过GetWokerList接口返回workerAddress',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[email protected]:222',
+ ],
+ ],
+ [
+ 'name' => 'Label',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '指定机器的标签',
+ 'description' => 'worker的标签',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'gray',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '错误消息,仅出错时返回错误信息。',
+ 'type' => 'string',
+ 'example' => 'groupid not exist groupId: testSchedulerx.defaultGroup namespace: adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID。',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108****',
+ ],
+ 'Success' => [
+ 'description' => '触发任务是否成功。取值如下:'."\n"
+ ."\n"
+ .'- `true`:触发任务成功。'."\n"
+ .'- `false`:触发任务失败。'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'description' => '如果成功,会返回任务实例ID。',
+ 'type' => 'object',
+ 'properties' => [
+ 'JobInstanceId' => [
+ 'description' => '任务实例ID。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '11111111',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '触发一次任务',
+ 'summary' => '触发一次任务立即运行。',
+ 'description' => '> 因为`JobID`联合`ScheduleTime`是唯一索引,所以同一个任务连续调用ExecuteJob接口的时,每次要sleep一秒,否则任务有可能会失败。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DesignateWorkers' => [
+ 'summary' => '指定机器。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '命名空间UID',
+ 'description' => '命名空间UID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '4a06d5ea-f576-4326-842c-fb14ea043d8d',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '命名空间来源',
+ 'description' => '命名空间来源',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '应用分组ID',
+ 'description' => '应用分组ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'hxm.test',
+ ],
+ ],
+ [
+ 'name' => 'JobId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '任务ID',
+ 'description' => '任务ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '144153',
+ ],
+ ],
+ [
+ 'name' => 'Transferable',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '是否故障转移',
+ 'description' => '是否故障转移',
+ 'type' => 'boolean',
+ 'required' => true,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'DesignateType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '指定机器的类型',
+ 'description' => '指定机器的类型:1.worker, 2.label',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'enumValueTitles' => [
+ 1 => 'worker',
+ 'label',
+ ],
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'Workers',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '指定机器列表json格式',
+ 'description' => '指定机器列表JSON格式列表',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["127.0.0.1","127.0.0.2"]',
+ ],
+ ],
+ [
+ 'name' => 'Labels',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '指定label列表json格式',
+ 'description' => '指定`label`列表`json`格式列表',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["gray"]',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'public',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID',
+ 'type' => 'string',
+ 'example' => '765xxx',
+ ],
+ 'Message' => [
+ 'title' => '错误信息',
+ 'description' => '错误信息',
+ 'type' => 'string',
+ 'example' => 'job is not existed',
+ ],
+ 'Code' => [
+ 'title' => '错误码',
+ 'description' => '错误码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Success' => [
+ 'title' => '是否成功',
+ 'description' => '是否成功',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '指定机器',
+ 'extraInfo' => '## 示例Demo'."\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"
+ .' // OpenAPI的接入点,具体查看支持地域列表或根据购买地域填写'."\n"
+ .' String regionId = "public";'."\n"
+ .' //鉴权使用的AccessKey ID,由阿里云官网控制台获取'."\n"
+ .' String accessKeyId = "xxxxxxxx";'."\n"
+ .' //鉴权使用的AccessKey Secret,由阿里云官网控制台获取'."\n"
+ .' String accessKeySecret = "xxxxxxxxx";'."\n"
+ .' //产品名称'."\n"
+ .' String productName ="schedulerx2";'."\n"
+ .' //对照支持地域列表选择Domain填写'."\n"
+ .' String domain ="schedulerx.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"
+ .' DesignateWorkersRequest request = new DesignateWorkersRequest();'."\n"
+ .' request.setNamespace("433d8b23-06e9-408c-aaaa-90d4d1b9a4af");'."\n"
+ .' request.setGroupId("xuren_test");'."\n"
+ .' request.setJobId(3048L);'."\n"
+ .' //是否故障转移'."\n"
+ .' request.setTransferable(true);'."\n"
+ .' //1表示指定worker,2表示指定label'."\n"
+ .' request.setDesignateType(1);'."\n"
+ .' List<String> workers = Lists.newArrayList();'."\n"
+ .' workers.add("30.225.16.104");'."\n"
+ .' //workers需要json格式'."\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"
+ .' ```',
+ ],
+ 'RerunJob' => [
+ 'summary' => '重跑任务的历史数据,只有专业版才支持。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '应用分组ID,在控制台的应用管理页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'JobId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '任务ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '123',
+ ],
+ ],
+ [
+ 'name' => 'StartDate',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '开始日期时间戳,精确到毫秒',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '1645459200000',
+ ],
+ ],
+ [
+ 'name' => 'EndDate',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '结束日期时间戳,精确到毫秒',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '1645718400000',
+ ],
+ ],
+ [
+ 'name' => 'DataTime',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '数据时间字符串,格式为HH:mm:ss',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '10:00:00',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0',
+ ],
+ 'Code' => [
+ 'description' => '返回码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Success' => [
+ 'description' => 'API执行是否成功。取值如下:'."\n"
+ ."\n"
+ .'- true:成功。'."\n"
+ .'- false:失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Message' => [
+ 'description' => '错误信息',
+ 'type' => 'string',
+ 'example' => 'jobId=xxx is not existed',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '重刷任务的历史数据',
+ ],
+ 'UpdateJobScript' => [
+ 'summary' => '更新任务执行脚本。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'JobId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '任务ID,在控制台的任务管理页面中获取',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '301',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => ' '."\n"
+ .'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****'."\n",
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的应用管理页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'testSchedulerx.defaultGroup'."\n",
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou'."\n",
+ ],
+ ],
+ [
+ 'name' => 'VersionDescription',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '脚本版本描述',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '打印任务运行信息',
+ ],
+ ],
+ [
+ 'name' => 'ScriptContent',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '脚本内容',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '#!/bin/bash'."\n"
+ ."\n"
+ .'# 以下是系统提供的预制变量,可以获取任务运行的信息'."\n"
+ .'echo "任务参数: #{schedulerx.jobParameters}"'."\n"
+ .'echo "分片序号: #{schedulerx.shardingId}"'."\n"
+ .'echo "分片参数: #{schedulerx.shardingParameters}"'."\n"
+ .'echo "分片总数: #{schedulerx.shardingNum}"'."\n"
+ .'echo "当前重试次数:#{schedulerx.attempt}"'."\n"
+ .'echo "触发类型:#{schedulerx.triggerType}"'."\n"
+ .'echo "调度时间戳:#{schedulerx.scheduleTime}"'."\n"
+ .'echo "数据时间戳:#{schedulerx.dataTime}"'."\n"
+ ."\n"
+ .'# 最后一行输出会作为结果返回'."\n"
+ .'echo "hello world"'."\n"
+ ."\n"
+ .'# exit 1 表示失败'."\n"
+ .'exit 0',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '附加信息,仅出错时返回错误信息。',
+ 'type' => 'string',
+ 'example' => 'job is not existed, jobId=302',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108'."\n",
+ ],
+ 'Success' => [
+ 'description' => '是否成功',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '更新任务执行脚本',
+ ],
+ 'ListJobScriptHistory' => [
+ 'summary' => '获取任务脚本历史列表。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'JobId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务ID,在控制台的任务管理页面中获取',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '92583'."\n",
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的应用管理页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'testSchedulerx.defaultGroup'."\n",
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108'."\n",
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou'."\n",
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '附加信息,仅出错时返回错误信息',
+ 'type' => 'string',
+ 'example' => 'job is not existed, jobId=302',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108',
+ ],
+ 'Success' => [
+ 'description' => '调用接口是否成功。取值如下:'."\n"
+ ."\n"
+ .'true:成功'."\n"
+ ."\n"
+ .'false:失败',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'description' => '-',
+ 'type' => 'object',
+ 'properties' => [
+ 'JobScriptHistoryInfos' => [
+ 'description' => '-',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'VersionesDescription' => [
+ 'description' => '脚本版本描述',
+ 'type' => 'string',
+ 'example' => 'init version',
+ ],
+ 'Creator' => [
+ 'description' => '创建人',
+ 'type' => 'string',
+ 'example' => '1272118248844842',
+ ],
+ 'CreateTime' => [
+ 'description' => '创建时间',
+ 'type' => 'string',
+ 'example' => '2025-03-12 14:52:42'."\n",
+ ],
+ 'ScriptContent' => [
+ 'description' => '脚本内容',
+ 'type' => 'string',
+ 'example' => '#!/bin/bash'."\n"
+ ."\n"
+ .'# 以下是系统提供的预制变量,可以获取任务运行的信息'."\n"
+ .'echo "任务参数: #{schedulerx.jobParameters}"'."\n"
+ .'echo "分片序号: #{schedulerx.shardingId}"'."\n"
+ .'echo "分片参数: #{schedulerx.shardingParameters}"'."\n"
+ .'echo "分片总数: #{schedulerx.shardingNum}"'."\n"
+ .'echo "当前重试次数:#{schedulerx.attempt}"'."\n"
+ .'echo "触发类型:#{schedulerx.triggerType}"'."\n"
+ .'echo "调度时间戳:#{schedulerx.scheduleTime}"'."\n"
+ .'echo "数据时间戳:#{schedulerx.dataTime}"'."\n"
+ ."\n"
+ .'# 最后一行输出会作为结果返回'."\n"
+ .'echo "hello world"'."\n"
+ ."\n"
+ .'# exit 1 表示失败'."\n"
+ .'exit 0'."\n",
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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# 以下是系统提供的预制变量,可以获取任务运行的信息\\\\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' => '获取任务脚本历史列表',
+ ],
+ 'ReadSchedulerxDesignateInfo' => [
+ 'summary' => '获取指定的机器基本信息。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'JobId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务ID,在控制台的任务管理页面中获取',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '368',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间UID,在控制台的命名空间页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****'."\n",
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的**应用管理**页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'test.defalutGroup'."\n",
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '错误信息,仅错误时返回错误信息',
+ 'type' => 'string',
+ 'example' => 'jobId=xxx is not existed',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108',
+ ],
+ 'Success' => [
+ 'description' => '是否成功',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'description' => '-',
+ 'type' => 'object',
+ 'properties' => [
+ 'DesignateDetailVos' => [
+ 'description' => '-',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '-',
+ 'type' => 'object',
+ 'properties' => [
+ 'Checked' => [
+ 'description' => '机器是否指定:'."\n"
+ .'- true:已指定'."\n"
+ .'- false:未指定',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Metrics' => [
+ 'description' => '指标值',
+ 'type' => 'object',
+ 'properties' => [
+ 'SharePoolAvailableSize' => [
+ 'description' => '共享池中可用资源的数量',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '72',
+ ],
+ 'Heap1Usage' => [
+ 'description' => '最近1次堆内存使用率',
+ 'type' => 'number',
+ 'format' => 'double',
+ 'example' => '0.06072874493927125',
+ ],
+ 'DiskUsage' => [
+ 'description' => '磁盘使用率',
+ 'type' => 'number',
+ 'format' => 'double',
+ 'example' => '0.19142496008515167',
+ ],
+ 'CpuProcessors' => [
+ 'description' => 'CPU可用处理器数量',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'Heap1Used' => [
+ 'description' => '最近1次测量的堆内存使用量,单位是MB',
+ 'type' => 'number',
+ 'format' => 'double',
+ 'example' => '14',
+ ],
+ 'CpuLoad1' => [
+ 'description' => '最近1次测量的CPU负载',
+ 'type' => 'number',
+ 'format' => 'double',
+ 'example' => '0',
+ ],
+ 'CpuLoad5' => [
+ 'description' => '最近5次测量的平均CPU负载',
+ 'type' => 'number',
+ 'format' => 'double',
+ 'example' => '0',
+ ],
+ 'ExecCount' => [
+ 'description' => '任务执行次数',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '56',
+ ],
+ 'SharePoolQueueSize' => [
+ 'description' => '共享池中队列的大小',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'HeapMax' => [
+ 'description' => '堆内存的最大容量,单位是MB',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '500',
+ ],
+ 'DiskUsed' => [
+ 'description' => '已经使用的磁盘空间,单位是MB',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '148',
+ ],
+ 'DiskMax' => [
+ 'description' => '磁盘的总容量,单位是MB',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1024',
+ ],
+ 'Heap5Usage' => [
+ 'description' => '最近5次堆内存使用率',
+ 'type' => 'number',
+ 'format' => 'double',
+ 'example' => '0.06477732793522267',
+ ],
+ ],
+ ],
+ 'Version' => [
+ 'description' => 'worker的版本号',
+ 'type' => 'string',
+ 'example' => '1.12.5',
+ ],
+ 'Size' => [
+ 'description' => '机器数量',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'Busy' => [
+ 'description' => '机器状态:'."\n"
+ ."\n"
+ .'- FREE:空闲'."\n"
+ .'- LOAD5_BUSY:load5过高'."\n"
+ .'- HEAP5_BUSY:heap5过高'."\n"
+ .'- DISK_BUSY:磁盘使用率过高',
+ 'type' => 'string',
+ 'example' => 'FREE',
+ ],
+ 'Offline' => [
+ 'description' => '是否离线',
+ 'type' => 'boolean',
+ 'example' => 'fasle',
+ ],
+ 'Starter' => [
+ 'description' => 'worker的启动方式',
+ 'type' => 'string',
+ 'example' => 'pod',
+ ],
+ 'Key' => [
+ 'description' => '根据指定机器类型返回不同值:'."\n"
+ .'- 当 DesignateType=2 时:返回机器的标签'."\n"
+ .'- 当 DesignateType=1 时:返回机器地址',
+ 'type' => 'string',
+ 'example' => '10.52.169.25',
+ ],
+ ],
+ ],
+ ],
+ 'DesignateType' => [
+ 'description' => '指定机器的类型:'."\n"
+ .'- 1:代表当前任务指定机器类型为实例'."\n"
+ .'- 2:代表当前任务指定机器类型为标签'."\n"
+ ."\n"
+ .'> 指定机器的类型默认为实例类型',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'Transferable' => [
+ 'description' => '是否开启机器转移。当指定机器全部下线时任务可以调度到非指定机器'."\n"
+ .'- true:开启'."\n"
+ .'- false:关闭'."\n"
+ ."\n\n"
+ ."\n"
+ .'> 机器转移默认是关闭状态',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ 'AccessDeniedDetail' => [
+ 'description' => '访问被拒绝详细信息',
+ 'type' => 'object',
+ 'properties' => [
+ 'AuthAction' => [
+ 'description' => '鉴权操作',
+ 'type' => 'string',
+ 'example' => 'edas:ReadSchedulerxDesignateInfo',
+ ],
+ 'AuthPrincipalDisplayName' => [
+ 'description' => '身份验证主体名称',
+ 'type' => 'string',
+ 'example' => '209312833131416xxx',
+ ],
+ 'AuthPrincipalOwnerId' => [
+ 'description' => '身份验证主体所属账号',
+ 'type' => 'string',
+ 'example' => '1827811800526xxx',
+ ],
+ 'AuthPrincipalType' => [
+ 'description' => '身份类型',
+ 'type' => 'string',
+ 'example' => 'SubUser',
+ ],
+ 'EncodedDiagnosticMessage' => [
+ 'description' => '编码诊断信息',
+ 'type' => 'string',
+ 'example' => 'AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==',
+ ],
+ 'NoPermissionType' => [
+ 'description' => '无权限类型',
+ 'type' => 'string',
+ 'example' => 'ImplicitDeny',
+ ],
+ 'PolicyType' => [
+ 'description' => '策略类型',
+ 'type' => 'string',
+ 'example' => 'AccountLevelIdentityBasedPolicy',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '获取任务指定的机器基本信息',
+ ],
+ 'ReadSchedulerxDesignateDetail' => [
+ 'summary' => '获取任务指定的机器详细信息。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'JobId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务ID,在控制台的任务管理页面中获取',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '368',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间UID,在控制台的命名空间页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的**应用管理**页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'test.defalutGroup',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'DesignateType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '指定机器的类型:'."\n"
+ .'- 1:查询机器地址'."\n"
+ .'- 2:查询机器标签',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ 'enum' => [
+ '1',
+ '2',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '附加信息,仅出错时返回错误信息',
+ 'type' => 'string',
+ 'example' => 'Invalid parameter: jobId=368 invalid ',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '883AFE93-FB03-4FA9-A958-E750C6DE120C',
+ ],
+ 'Success' => [
+ 'description' => '是否成功',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'description' => '-',
+ 'type' => 'object',
+ 'properties' => [
+ 'DesignateDetailVos' => [
+ 'description' => '-',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '-',
+ 'type' => 'object',
+ 'properties' => [
+ 'Offline' => [
+ 'description' => '是否离线',
+ 'type' => 'boolean',
+ 'example' => 'fasle',
+ ],
+ 'Size' => [
+ 'description' => '机器数量',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'Starter' => [
+ 'description' => 'worker的启动方式',
+ 'type' => 'string',
+ 'example' => 'pod',
+ ],
+ 'Busy' => [
+ 'description' => '机器状态:'."\n"
+ ."\n"
+ .'- FREE:空闲'."\n"
+ .'- LOAD5_BUSY:load5过高'."\n"
+ .'- HEAP5_BUSY:heap5过高'."\n"
+ .'- DISK_BUSY:磁盘使用率过高',
+ 'type' => 'string',
+ 'example' => 'FREE',
+ ],
+ 'Checked' => [
+ 'description' => '机器是否指定:'."\n"
+ .'- true:已指定'."\n"
+ .'- false:未指定',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Version' => [
+ 'description' => 'worker的版本号',
+ 'type' => 'string',
+ 'example' => '1.12.5',
+ ],
+ 'Key' => [
+ 'description' => '根据指定机器类型返回不同值:'."\n"
+ .'- 当 DesignateType=2 时:返回机器的标签'."\n"
+ .'- 当 DesignateType=1 时:返回机器地址',
+ 'type' => 'string',
+ 'example' => '10.52.169.25',
+ ],
+ 'Metrics' => [
+ 'description' => '指标值',
+ 'type' => 'object',
+ 'properties' => [
+ 'CpuLoad1' => [
+ 'description' => '最近1次测量的CPU负载',
+ 'type' => 'number',
+ 'format' => 'double',
+ 'example' => '0',
+ ],
+ 'CpuLoad5' => [
+ 'description' => '最近5次测量的平均CPU负载',
+ 'type' => 'number',
+ 'format' => 'double',
+ 'example' => '0',
+ ],
+ 'CpuProcessors' => [
+ 'description' => 'CPU可用处理器数量',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'Heap1Usage' => [
+ 'description' => '最近1次堆内存使用率',
+ 'type' => 'number',
+ 'format' => 'double',
+ 'example' => '0.06072874493927125',
+ ],
+ 'Heap5Usage' => [
+ 'description' => '最近5次堆内存使用率',
+ 'type' => 'number',
+ 'format' => 'double',
+ 'example' => '0.06477732793522267',
+ ],
+ 'Heap1Used' => [
+ 'description' => '最近1次测量的堆内存使用量,单位是MB',
+ 'type' => 'number',
+ 'format' => 'double',
+ 'example' => '14',
+ ],
+ 'HeapMax' => [
+ 'description' => '堆内存的最大容量,单位是MB',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '500',
+ ],
+ 'DiskUsage' => [
+ 'description' => '磁盘使用率',
+ 'type' => 'number',
+ 'format' => 'double',
+ 'example' => '0.19142496008515167',
+ ],
+ 'DiskUsed' => [
+ 'description' => '已经使用的磁盘空间,单位是MB',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '148',
+ ],
+ 'DiskMax' => [
+ 'description' => '磁盘的总容量,单位是MB',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1024',
+ ],
+ 'SharePoolQueueSize' => [
+ 'description' => '共享池中队列的大小',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'SharePoolAvailableSize' => [
+ 'description' => '共享池中可用资源的数量',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '72',
+ ],
+ 'ExecCount' => [
+ 'description' => '任务执行次数',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '56',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'AccessDeniedDetail' => [
+ 'description' => '访问被拒绝详细信息',
+ 'type' => 'object',
+ 'properties' => [
+ 'AuthAction' => [
+ 'description' => '鉴权操作',
+ 'type' => 'string',
+ 'example' => 'edas:ReadSchedulerxDesignateDetail',
+ ],
+ 'AuthPrincipalDisplayName' => [
+ 'description' => '身份验证主体名称',
+ 'type' => 'string',
+ 'example' => '209312833131416xxx',
+ ],
+ 'AuthPrincipalOwnerId' => [
+ 'description' => '身份验证主体所属账号',
+ 'type' => 'string',
+ 'example' => '1827811800526xxx',
+ ],
+ 'AuthPrincipalType' => [
+ 'description' => '身份类型',
+ 'type' => 'string',
+ 'example' => 'SubUser',
+ ],
+ 'EncodedDiagnosticMessage' => [
+ 'description' => '编码诊断信息',
+ 'type' => 'string',
+ 'example' => 'AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==',
+ ],
+ 'NoPermissionType' => [
+ 'description' => '无权限类型',
+ 'type' => 'string',
+ 'example' => 'ImplicitDeny',
+ ],
+ 'PolicyType' => [
+ 'description' => '策略类型',
+ 'type' => 'string',
+ 'example' => 'AccountLevelIdentityBasedPolicy',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '获取任务指定的机器详细信息',
+ ],
+ 'ManageSchedulerxJobSync' => [
+ 'summary' => '跨命名空间同步任务。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'OriginalNamespace',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '原始命名空间,任务原本所在的命名空间。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****'."\n",
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '命名空间来源,特殊第三方才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'OriginalGroupId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '原始应用ID,任务原本所在的应用分组。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'testSchedulerx.defaultGroup'."\n",
+ ],
+ ],
+ [
+ 'name' => 'JobIdList',
+ 'in' => 'formData',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '任务ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '任务ID。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '207828442',
+ ],
+ 'required' => true,
+ 'docRequired' => true,
+ 'maxItems' => 1000,
+ ],
+ ],
+ [
+ 'name' => 'TargetNamespace',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '目标命名空间,任务需要同步到的命名空间。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '5f56ef65-b836-493d-b40b-c4db6425****',
+ ],
+ ],
+ [
+ 'name' => 'TargetGroupId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '目标应用ID,任务需要同步到的应用分组。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'testSyncJobGroup',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '错误信息,仅错误时返回错误信息。',
+ 'type' => 'string',
+ 'example' => 'jobId=xxx is not existed',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID。',
+ 'type' => 'string',
+ 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB58C',
+ ],
+ 'Success' => [
+ 'description' => '请求是否成功。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '跨命名空间同步任务',
+ ],
+ 'StopInstance' => [
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'JobId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务ID,在控制台的任务管理页面中获取。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '92583',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '运行实例ID。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '11111111',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的应用管理页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '错误信息,仅错误时返回错误信息。',
+ 'type' => 'string',
+ 'example' => 'Your request is denied as lack of ssl protect.',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108',
+ ],
+ 'Success' => [
+ 'description' => '终止任务运行是否成功。取值如下:'."\n"
+ ."\n"
+ .'- **true**:终止任务运行成功。'."\n"
+ .'- **false**:终止任务运行失败。',
+ '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' => '终止正在运行的实例',
+ 'summary' => '终止某次正在运行的实例。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'GetJobInstance' => [
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '区域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间id,在控制台的命名空间页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用id,在控制台的应用管理页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'JobId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务ID,在控制台的任务管理页面中获取。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '92583',
+ ],
+ ],
+ [
+ 'name' => 'JobInstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务实例ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '1685883418',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '错误信息',
+ 'type' => 'string',
+ 'example' => 'jobId=xxx is not existed',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一id',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108',
+ ],
+ 'Success' => [
+ 'description' => '获取任务实例详情是否成功。取值如下:'."\n"
+ ."\n"
+ .'- **true**:获取任务实例详情成功。'."\n"
+ .'- **false**:获取任务实例详情失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'description' => 'instance信息',
+ 'type' => 'object',
+ 'properties' => [
+ 'JobInstanceDetail' => [
+ 'description' => '任务实例详细信息',
+ 'type' => 'object',
+ 'properties' => [
+ 'Status' => [
+ 'description' => '实例状态。包含以下几种状态:'."\n"
+ ."\n"
+ .'- **1**:等待 '."\n"
+ .'- **3**:运行中 '."\n"
+ .'- **4**:成功'."\n"
+ .'- **5**:失败 '."\n"
+ .'- **9**:拒绝'."\n"
+ ."\n"
+ .'对应枚举类:'."\n"
+ .'com.alibaba.schedulerx.common.domain.InstanceStatus',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '4',
+ ],
+ 'Progress' => [
+ 'description' => '实例进度详情',
+ '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}]}',
+ ],
+ 'Result' => [
+ 'description' => '实例执行结果',
+ 'type' => 'string',
+ 'example' => '{\'TotalSize\': 31, \'CurrentPage\': 5, \'PageSize\': 10}',
+ ],
+ 'InstanceId' => [
+ 'description' => '实例id',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1189853849',
+ ],
+ 'TimeType' => [
+ 'description' => '实例调度时间类型,包含以下几种时间类型:'."\n"
+ ."\n"
+ .'- **cron**:1'."\n"
+ .'- **fix_rate**:3'."\n"
+ .'- **second_delay**:4'."\n"
+ .'- **api**:100'."\n"
+ ."\n"
+ .'对应枚举类:com.alibaba.schedulerx.common.domain.TimeType',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'TriggerType' => [
+ 'description' => '触发类型,包含以下几种触发类型:'."\n"
+ ."\n"
+ .'- **1**:定时调度正常触发'."\n"
+ .'- **2**:数据重刷'."\n"
+ .'- **3**:API触发'."\n"
+ .'- **4**:用户手动点击重跑'."\n"
+ .'- **5**:系统重试(系统异常,如DB异常)'."\n"
+ ."\n"
+ .'对应枚举类:com.alibaba.schedulerx.common.domain.TriggerType',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'EndTime' => [
+ 'description' => '任务执行结束时间',
+ 'type' => 'string',
+ 'example' => '2020-07-27 11:52:10',
+ ],
+ 'StartTime' => [
+ 'description' => '任务执行开始时间',
+ 'type' => 'string',
+ 'example' => '2020-07-27 11:52:10',
+ ],
+ 'Executor' => [
+ 'description' => '执行人',
+ 'type' => 'string',
+ 'example' => '张三'."\n",
+ ],
+ 'JobId' => [
+ 'description' => '任务id',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '92583',
+ ],
+ 'ScheduleTime' => [
+ 'description' => '计划调度时间',
+ 'type' => 'string',
+ 'example' => '2020-07-27 11:52:10',
+ ],
+ 'DataTime' => [
+ 'description' => '任务数据时间',
+ 'type' => 'string',
+ 'example' => '2020-07-27 11:52:10',
+ ],
+ 'WorkAddr' => [
+ 'description' => '被触发客户端ip:port',
+ 'type' => 'string',
+ 'example' => '192.168.0.0:16',
+ ],
+ 'Parameters' => [
+ 'description' => '任务运行实例参数信息。',
+ 'type' => 'string',
+ 'example' => '{\\"alertId\\":11111}',
+ ],
+ 'JobName' => [
+ 'description' => '任务名称',
+ 'type' => 'string',
+ 'example' => 'ManualJob',
+ ],
+ 'TraceId' => [
+ 'description' => '调用链ID,可用于精确查询调用信息。',
+ 'type' => 'string',
+ 'example' => '210e845016596663430048015d0a2c',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '获取指定任务实例详情',
+ 'summary' => '返回任务实例的信息,可以查看任务实例的状态和进度。',
+ ],
+ 'GetJobInstanceList' => [
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的**命名空间**页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用分组ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'JobId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'docRequired' => true,
+ 'example' => '92583',
+ ],
+ ],
+ [
+ 'name' => 'Status',
+ 'in' => 'query',
+ 'allowEmptyValue' => true,
+ 'schema' => [
+ 'title' => '查询指定状态的任务实例列表',
+ 'description' => '实例状态。包含以下几种状态:'."\n"
+ ."\n"
+ .'1:等待'."\n"
+ .'3:运行中'."\n"
+ .'4:成功'."\n"
+ .'5:失败'."\n"
+ .'9:拒绝'."\n"
+ .'对应枚举类: com.alibaba.schedulerx.common.domain.InstanceStatus',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '5',
+ 'enum' => [],
+ ],
+ ],
+ [
+ 'name' => 'StartTimestamp',
+ 'in' => 'query',
+ 'allowEmptyValue' => true,
+ 'schema' => [
+ 'title' => '开始时间戳(毫秒)',
+ 'description' => '开始时间(时间戳)。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '1684116000000',
+ ],
+ ],
+ [
+ 'name' => 'EndTimestamp',
+ 'in' => 'query',
+ 'allowEmptyValue' => true,
+ 'schema' => [
+ 'title' => '结束时间戳(毫秒)',
+ 'description' => '结束时间(时间戳)。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '1684202400000',
+ ],
+ ],
+ [
+ 'name' => 'PageNum',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '分页获取数据,分页号,默认是1',
+ 'description' => '分页获取数据,分页号,默认是1',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '分页获取数据,分页大小,默认是10',
+ 'description' => '分页获取数据,分页大小,默认是10',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '错误消息,仅错误时返回错误信息。',
+ 'type' => 'string',
+ 'example' => 'jobid: 92583 not match groupId: testSchedulerx.defaultGroup',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '704A2A61-3681-5568-92F7-2DFCC53F33D1',
+ ],
+ 'Success' => [
+ 'description' => '获取任务的执行实例列表是否成功。取值如下:'."\n"
+ ."\n"
+ .'- **true**:获取任务的执行实例列表成功。'."\n"
+ .'- **false**:获取任务的执行实例列表失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'description' => 'instance列表',
+ 'type' => 'object',
+ 'properties' => [
+ 'JobInstanceDetails' => [
+ 'description' => '任务实例详细信息',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Status' => [
+ 'description' => '实例状态。包含以下几种状态:'."\n"
+ ."\n"
+ .'- **1**:等待 '."\n"
+ .'- **3**:运行中 '."\n"
+ .'- **4**:成功'."\n"
+ .'- **5**:失败 '."\n"
+ .'- **9**:拒绝'."\n"
+ ."\n"
+ .'对应枚举类:'."\n"
+ .'com.alibaba.schedulerx.common.domain.InstanceStatus',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '4',
+ ],
+ 'Progress' => [
+ 'description' => '实例进度详情',
+ 'type' => 'string',
+ ],
+ 'Result' => [
+ 'description' => '实例执行结果',
+ 'type' => 'string',
+ ],
+ 'InstanceId' => [
+ 'description' => '实例ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1042499986',
+ ],
+ 'TimeType' => [
+ 'description' => '实例调度时间类型,包含以下几种类型:'."\n"
+ ."\n"
+ .'- **cron**:1'."\n"
+ .'- **fix_rate**:3'."\n"
+ .'- **second_delay**: 4'."\n"
+ .'- **api**:100'."\n"
+ ."\n"
+ .'对应枚举类:com.alibaba.schedulerx.common.domain.TimeType',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'TriggerType' => [
+ 'description' => '触发类型,包含以下几种触发类型:'."\n"
+ ."\n"
+ .'- **1**: 定时调度正常触发'."\n"
+ .'- **2**:数据重刷'."\n"
+ .'- **3**:API触发'."\n"
+ .'- **4**:用户手动点击重跑'."\n"
+ .'- **5**:系统重试(系统异常,如DB异常)'."\n"
+ ."\n"
+ .'对应枚举类:com.alibaba.schedulerx.common.domain.TriggerType',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'EndTime' => [
+ 'description' => '任务执行结束时间',
+ 'type' => 'string',
+ 'example' => '2020-07-27 11:52:10',
+ ],
+ 'StartTime' => [
+ 'description' => '任务执行开始时间',
+ 'type' => 'string',
+ 'example' => '2020-07-27 11:52:10',
+ ],
+ 'Executor' => [
+ 'description' => '执行人',
+ 'type' => 'string',
+ 'example' => 'A',
+ ],
+ 'JobId' => [
+ 'description' => '任务ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '92583',
+ ],
+ 'ScheduleTime' => [
+ 'description' => '任务调度时间',
+ 'type' => 'string',
+ 'example' => '2020-07-27 11:52:10',
+ ],
+ 'DataTime' => [
+ 'description' => '数据时间',
+ 'type' => 'string',
+ 'example' => '2020-07-27 11:52:10',
+ ],
+ 'WorkAddr' => [
+ 'description' => '被触发客户端ip:port',
+ 'type' => 'string',
+ 'example' => '192.168.0.0:16',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '获取指定任务ID的执行实例列表',
+ 'summary' => '根据关键字过滤,返回任务执行的历史记录。',
+ ],
+ 'RetryJobInstance' => [
+ 'summary' => '重跑失败或者成功状态的任务实例,只有专业版才支持。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用分组ID,在控制台的应用管理页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'JobId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '123',
+ ],
+ ],
+ [
+ 'name' => 'JobInstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务实例ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '123456',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0',
+ ],
+ 'Code' => [
+ 'description' => '返回码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Success' => [
+ 'description' => 'API执行是否成功。取值如下:'."\n"
+ ."\n"
+ .'- true:成功。'."\n"
+ .'- false:失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Message' => [
+ 'description' => '错误信息',
+ 'type' => 'string',
+ 'example' => 'jobId=xxx is not existed',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => [
+ 'summary' => '强制设置任务实例状态为成功状态,只有专业版才支持。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用分组ID,在控制台的应用管理页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'JobId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '123',
+ ],
+ ],
+ [
+ 'name' => 'JobInstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务实例ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '123456',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0',
+ ],
+ 'Code' => [
+ 'description' => '返回码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Success' => [
+ 'description' => 'API执行是否成功。取值如下:'."\n"
+ ."\n"
+ .'- true:成功。'."\n"
+ .'- false:失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Message' => [
+ 'description' => '错误信息',
+ 'type' => 'string',
+ 'example' => 'jobId=xxx is not existed',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '标记任务实例成功',
+ ],
+ 'GrantPermission' => [
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间UID',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffcdf01',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用分组ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'test.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'UserId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '用户ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '277641081920123456',
+ ],
+ ],
+ [
+ 'name' => 'UserName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '用户名',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'lilei',
+ ],
+ ],
+ [
+ 'name' => 'GrantOption',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否允许grantoption。取值如下:-**true**:允许。-**false**:不允许。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '400',
+ ],
+ 'Message' => [
+ 'description' => '错误信息,仅出错时返回错误信息。',
+ 'type' => 'string',
+ 'example' => 'Your request is denied as lack of ssl protect.',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108',
+ ],
+ 'Success' => [
+ 'description' => '调用接口是否成功。取值如下:'."\n"
+ ."\n"
+ .'- **true**:成功'."\n"
+ ."\n"
+ .'- **false**:失败',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '给指定分组授权',
+ 'summary' => '给指定分组授权。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'RevokePermission' => [
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-shenzhen',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间UID,在控制台的命名空间页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffcdf01',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的应用管理页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'test.defalutGroup',
+ ],
+ ],
+ [
+ 'name' => 'UserId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '阿里云账号UID',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '277641081920123456',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '400',
+ ],
+ 'Message' => [
+ 'description' => '错误消息,仅出错时返回错误信息。',
+ 'type' => 'string',
+ 'example' => 'Your request is denied as lack of ssl protect.',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108',
+ ],
+ 'Success' => [
+ 'description' => '调用接口是否成功。取值如下:'."\n"
+ ."\n"
+ .'- **true**:成功'."\n"
+ ."\n"
+ .'- **false**:失败',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '取消指定阿里云子账号的权限',
+ 'summary' => '取消指定阿里云子账号的权限。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'GetLog' => [
+ 'summary' => '通过该API可以查询任务的运行日志,需要开通专业版才支持。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的命名空间页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '特殊第三方才需要填写',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用分组ID,在控制台的应用管理页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'JobId',
+ 'in' => 'query',
+ 'allowEmptyValue' => true,
+ 'schema' => [
+ 'description' => '任务ID',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123',
+ ],
+ ],
+ [
+ 'name' => 'JobInstanceId',
+ 'in' => 'query',
+ 'allowEmptyValue' => true,
+ 'schema' => [
+ 'description' => '任务实例ID',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123456',
+ ],
+ ],
+ [
+ 'name' => 'StartTimestamp',
+ 'in' => 'query',
+ 'allowEmptyValue' => true,
+ 'schema' => [
+ 'description' => '开始时间戳,精确到毫秒'."\n"
+ ."\n"
+ .'><notice>开始时间戳不设置,默认取当前时间的30分钟之前></notice>',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '1675739364000',
+ ],
+ ],
+ [
+ 'name' => 'EndTimestamp',
+ 'in' => 'query',
+ 'allowEmptyValue' => true,
+ 'schema' => [
+ 'description' => '结束时间戳,精确到毫秒><notice>结束时间戳不设置,默认取当前时间></notice>',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '1675739484000',
+ ],
+ ],
+ [
+ 'name' => 'Keyword',
+ 'in' => 'query',
+ 'allowEmptyValue' => true,
+ 'schema' => [
+ 'description' => '关键字',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ERROR',
+ ],
+ ],
+ [
+ 'name' => 'Line',
+ 'in' => 'query',
+ 'allowEmptyValue' => true,
+ 'schema' => [
+ 'description' => '行数,最大不超过200行',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '200',
+ 'minimum' => '0',
+ 'example' => '50',
+ 'default' => '50',
+ ],
+ ],
+ [
+ 'name' => 'Offset',
+ 'in' => 'query',
+ 'allowEmptyValue' => true,
+ 'schema' => [
+ 'description' => '偏移多少行,可以作为分页查询',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '0',
+ 'default' => '0',
+ ],
+ ],
+ [
+ 'name' => 'Reverse',
+ 'in' => 'query',
+ 'allowEmptyValue' => true,
+ 'schema' => [
+ 'description' => '是否逆序,默认逆序',
+ 'type' => 'boolean',
+ 'deprecated' => false,
+ 'required' => false,
+ 'example' => 'true',
+ 'default' => 'true',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求唯一ID。',
+ 'type' => 'string',
+ 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0',
+ ],
+ 'Code' => [
+ 'description' => '返回码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Success' => [
+ 'description' => 'API执行是否成功。取值如下:'."\n"
+ ."\n"
+ .'- true:成功。'."\n"
+ .'- false:失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Message' => [
+ 'description' => '错误信息。',
+ 'type' => 'string',
+ 'example' => 'jobid=xxx is not existed',
+ ],
+ 'Data' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Logs' => [
+ 'description' => 'logs是一个string的数组。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '包含了每一行的日志。',
+ 'type' => 'string',
+ 'example' => 'hello world',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '查询日志',
+ ],
+ 'DeleteRouteStrategy' => [
+ 'summary' => '删除路由策略。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的**命名空间**页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的**应用管理**页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'JobId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务ID,在控制台的**任务管理**页面中获取。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '92583',
+ 'default' => '-1',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '接口状态码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '附加信息。',
+ 'type' => 'string',
+ 'example' => 'strategy is already deleted.',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID',
+ 'type' => 'string',
+ 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7',
+ ],
+ 'Success' => [
+ 'description' => '调用接口是否成功。取值如下:'."\n"
+ ."\n"
+ .'- true:成功。'."\n"
+ .'- false:失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '删除路由策略',
+ ],
+ 'BatchDeleteRouteStrategy' => [
+ 'summary' => '批量删除路由策略。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的**命名空间**页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID,在控制台的**应用管理**页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'JobIdList',
+ 'in' => 'formData',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '任务ID列表',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '任务ID,在控制台的**任务管理**页面中获取',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '99341',
+ ],
+ 'required' => false,
+ 'maxItems' => 3000,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => '704A2A61-3681-5568-92F7-2DFCC53F33D1',
+ ],
+ 'Code' => [
+ 'description' => '接口状态码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '附加信息。',
+ 'type' => 'string',
+ 'example' => 'job is not existed, jobId=162837',
+ ],
+ 'Success' => [
+ 'description' => '调用接口是否成功。取值如下:'."\n"
+ ."\n"
+ .'- **true**:成功'."\n"
+ ."\n"
+ .'- **false**:失败',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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' => '批量删除路由策略',
+ ],
+ 'CreateRouteStrategy' => [
+ 'summary' => '创建路由策略。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '路由策略名称',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'test-strategy',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用分组ID,在控制台的**应用管理**页面中获取',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'JobId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务ID,在控制台的**任务管理**页面中获取。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '54978',
+ 'default' => '-1',
+ ],
+ ],
+ [
+ 'name' => 'Type',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '路由策略类型。取值如下:'."\n"
+ .'- **3**:按照比例进行路由。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'Status',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '路由策略状态,取值如下'."\n"
+ ."\n"
+ .'- **0**:表示禁用'."\n"
+ ."\n"
+ .'- **1**:表示启用',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'StrategyContent',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '路由策略详情JSON字段。关于此字段的详细说明参见下文**关于请求参数的补充说明**。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[{"percentage":20,"target":"[\\"version1\\"]","targetType":"label"}]',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间ID,在控制台的**命名空间**页面中获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108',
+ ],
+ 'Code' => [
+ 'description' => '接口状态码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '附加信息,包含报错与提示',
+ 'type' => 'string',
+ 'example' => 'strategy name is null or empty.',
+ ],
+ 'Success' => [
+ 'description' => '接口调用是否成功。取值如下:'."\n"
+ ."\n"
+ .'- **true**:调用成功。'."\n"
+ ."\n"
+ .'- **false**:调用失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'description' => '返回数据',
+ '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' => '创建路由策略',
+ 'requestParamsDescription' => '当路由策略类型为**3**时,路由策略详情字段配置如下:'."\n"
+ ."\n"
+ .'- **percentage**:调度路由百分比,取值范围为**0-100**,单位为%'."\n"
+ ."\n"
+ .'- **target**:调度的目标,此处是一个列表,可以配置多个目标,若**targetType**为"**label**",则列表中配置**label**名称,若**targetType**为"**worker**",则列表中配置**worker**的IP地址'."\n"
+ ."\n"
+ .'- **targetType**:调度目标类型,可配置为"**label**"或"**worker**",表示调度到指定label的机器上或者调度到指定IP的机器上',
+ ],
+ 'CreateSchedulerxNotificationPolicy' => [
+ 'summary' => '创建通知策略。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'PolicyName',
+ 'in' => 'formData',
+ 'schema' => [
+ 'title' => '通知策略名称',
+ 'description' => '通知策略名称',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'test-weekdays',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'formData',
+ 'schema' => [
+ 'title' => '策略描述',
+ 'description' => '通知策略描述',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Monday-Friday only',
+ ],
+ ],
+ [
+ 'name' => 'ChannelTimeRange',
+ 'in' => 'formData',
+ 'schema' => [
+ 'title' => '通知渠道生效时间段配置'."\n",
+ 'description' => '通知渠道生效时间段配置'."\n"
+ ."\n"
+ .'> 请参考请求参数中 ChannelTimeRange 的补充说明',
+ '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' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '状态码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '附加信息,仅出错时返回错误信息',
+ 'type' => 'string',
+ 'example' => 'Invalid parameter: Notification policy already exists: test-weekdays'."\n",
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0',
+ ],
+ 'Success' => [
+ 'description' => '是否成功',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'AccessDeniedDetail' => [
+ 'description' => '访问被拒绝详细信息',
+ 'type' => 'object',
+ 'properties' => [
+ 'AuthAction' => [
+ 'description' => '鉴权操作',
+ 'type' => 'string',
+ 'example' => 'edas:CreateSchedulerxNotificationPolicy',
+ ],
+ 'AuthPrincipalDisplayName' => [
+ 'description' => '身份验证主体名称',
+ 'type' => 'string',
+ 'example' => '209312833131416xxx',
+ ],
+ 'AuthPrincipalOwnerId' => [
+ 'description' => '身份验证主体所属账号',
+ 'type' => 'string',
+ 'example' => '1827811800526xxx',
+ ],
+ 'AuthPrincipalType' => [
+ 'description' => '身份类型',
+ 'type' => 'string',
+ 'example' => 'SubUser',
+ ],
+ 'EncodedDiagnosticMessage' => [
+ 'description' => '编码诊断信息',
+ 'type' => 'string',
+ 'example' => 'AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==',
+ ],
+ 'NoPermissionType' => [
+ 'description' => '无权限类型',
+ 'type' => 'string',
+ 'example' => 'ImplicitDeny',
+ ],
+ 'PolicyType' => [
+ 'description' => '策略类型',
+ 'type' => 'string',
+ 'example' => 'AccountLevelIdentityBasedPolicy',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '创建通知策略',
+ 'requestParamsDescription' => '# ChannelTimeRange 配置说明'."\n"
+ .'通知渠道的生效时间配置,支持统一配置和独立配置两种模式。'."\n"
+ ."\n"
+ .'## 配置格式'."\n"
+ .'该字段应为 JSON 格式,支持以下核心属性:'."\n"
+ ."\n"
+ .'### 属性说明'."\n"
+ ."\n"
+ .'**sendChannel:通知渠道配置(必填)**'."\n"
+ .'- 必填字段,指定需要配置的通知渠道'."\n"
+ .'- 格式:多个渠道用逗号分隔,如 "sms,webhook,mail,phone"'."\n"
+ .'- 支持的渠道:sms(短信)、webhook(如钉钉、企业微信)、mail(邮件)、phone(电话)'."\n"
+ ."\n"
+ .'**timezone:时区设置**'."\n"
+ .'- 支持 GMT 或 UTC 格式'."\n"
+ .'- 示例:GMT+8 或 UTC+08:00'."\n"
+ .'- 说明:时区决定了报警生效时间的参考标准,与实际所在地区无关。例如在北京地区配置"美国纽约时区(UTC-4),周一 00:00-03:00",系统将以纽约当地时间为准。'."\n"
+ ."\n"
+ .'**webhookIsAtAll:Webhook 通知配置**'."\n"
+ .'- 值为 "true" 或 "false"'."\n"
+ .'- 指示 webhook 通知时是否@所有成员'."\n"
+ ."\n"
+ .'**timeRanges:时间范围配置(必填)**'."\n"
+ .'- 支持两种配置模式:'."\n"
+ .' 1. 统一配置:使用 "all" 作为 key,为所有选择的渠道统一设置时间段'."\n"
+ .' 2. 独立配置:为每个渠道单独配置时间段,key 为具体的渠道标识'."\n"
+ ."\n"
+ .'### 时间段配置项'."\n"
+ .'每个时间段包含以下属性:'."\n"
+ .'- startTime:开始时间,格式为 HH:mm (必填)'."\n"
+ .'- endTime:结束时间,格式为 HH:mm (必填)'."\n"
+ .'- daysOfWeek:生效的工作日,数组格式,1-7 代表周一到周日(非必填,为空时代表该时间段不生效)'."\n"
+ ."\n"
+ .'### 示例配置'."\n"
+ ."\n"
+ .'**示例 1:统一配置模式**'."\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"
+ .'**示例 2:独立配置模式**'."\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"
+ .'### 注意事项'."\n"
+ .'1. sendChannel 字段必填,且只能包含支持的通知渠道'."\n"
+ .'2. 当 timeRanges 中包含 "all" 时,表示统一配置模式,此时不能包含其他渠道的配置'."\n"
+ .'3. 当 timeRanges 不包含 "all" 时,需要为 sendChannel 中指定的每个渠道进行独立配置'."\n"
+ .'4. 时间必须使用 24 小时制,格式为 HH:mm'."\n"
+ .'5. 工作日使用 1-7 的数字表示,分别对应周一到周日'."\n"
+ .'6. 时区支持 GMT 和 UTC 两种格式的配置',
+ ],
+ 'DeleteSchedulerxNotificationPolicy' => [
+ 'summary' => '删除通知策略。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'PolicyName',
+ 'in' => 'formData',
+ 'schema' => [
+ 'title' => '通知策略名称',
+ 'description' => '通知策略名称',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'test-weekdays',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '状态码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '错误消息,仅错误时返回错误信息',
+ 'type' => 'string',
+ 'example' => 'Invalid parameter: policyName cannot be null',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => 'C8E5FB4A-6D8D-424D-9AAA-4FE06BB74FF9',
+ ],
+ 'Success' => [
+ 'description' => '是否成功',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'AccessDeniedDetail' => [
+ 'description' => '访问被拒绝详细信息',
+ 'type' => 'object',
+ 'properties' => [
+ 'AuthAction' => [
+ 'description' => '鉴权操作',
+ 'type' => 'string',
+ 'example' => 'edas:DeleteSchedulerxNotificationPolicy',
+ ],
+ 'AuthPrincipalDisplayName' => [
+ 'description' => '身份验证主体名称',
+ 'type' => 'string',
+ 'example' => '209312833131416xxx',
+ ],
+ 'AuthPrincipalOwnerId' => [
+ 'description' => '身份验证主体所属账号',
+ 'type' => 'string',
+ 'example' => '1827811800526xxx',
+ ],
+ 'AuthPrincipalType' => [
+ 'description' => '身份类型',
+ 'type' => 'string',
+ 'example' => 'SubUser',
+ ],
+ 'EncodedDiagnosticMessage' => [
+ 'description' => '编码诊断信息',
+ 'type' => 'string',
+ 'example' => 'AQFoiYKaaImCmkI3QjgzNzM1LTIzQTUtNURENy1COUQ3LTBFOTIxRkRFOEM3NQ==',
+ ],
+ 'NoPermissionType' => [
+ 'description' => '无权限类型',
+ 'type' => 'string',
+ 'example' => 'ImplicitDeny',
+ ],
+ 'PolicyType' => [
+ 'description' => '策略类型',
+ 'type' => 'string',
+ 'example' => 'AccountLevelIdentityBasedPolicy',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '删除通知策略',
+ ],
+ 'ManageSchedulerxNotificationPolicy' => [
+ 'summary' => '更新通知策略。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'PolicyName',
+ 'in' => 'formData',
+ 'schema' => [
+ 'title' => '通知策略名称',
+ 'description' => '通知策略名称',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'test-weekdays',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'formData',
+ 'schema' => [
+ 'title' => '策略描述',
+ 'description' => '通知策略描述',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Monday-Friday only',
+ ],
+ ],
+ [
+ 'name' => 'ChannelTimeRange',
+ 'in' => 'formData',
+ 'schema' => [
+ 'title' => '通知渠道生效时间段配置'."\n",
+ 'description' => '通知渠道生效时间段配置'."\n"
+ ."\n"
+ .'> 请参考请求参数中 ChannelTimeRange 的补充说明',
+ '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' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '状态码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '错误消息,仅错误时返回错误信息',
+ 'type' => 'string',
+ 'example' => 'Invalid parameter: policyName cannot be null'."\n",
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108',
+ ],
+ 'Success' => [
+ 'description' => '是否成功',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'AccessDeniedDetail' => [
+ 'description' => '访问被拒绝详细信息',
+ 'type' => 'object',
+ 'properties' => [
+ 'AuthAction' => [
+ 'description' => '鉴权操作',
+ 'type' => 'string',
+ 'example' => 'edas:ManageSchedulerxNotificationPolicy',
+ ],
+ 'AuthPrincipalDisplayName' => [
+ 'description' => '身份验证主体名称',
+ 'type' => 'string',
+ 'example' => '209312833131416xxx',
+ ],
+ 'AuthPrincipalOwnerId' => [
+ 'description' => '身份验证主体所属账号',
+ 'type' => 'string',
+ 'example' => '1827811800526xxx',
+ ],
+ 'AuthPrincipalType' => [
+ 'description' => '身份类型',
+ 'type' => 'string',
+ 'example' => 'SubUser',
+ ],
+ 'EncodedDiagnosticMessage' => [
+ 'description' => '编码诊断信息',
+ 'type' => 'string',
+ 'example' => 'AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==',
+ ],
+ 'NoPermissionType' => [
+ 'description' => '无权限类型',
+ 'type' => 'string',
+ 'example' => 'ImplicitDeny',
+ ],
+ 'PolicyType' => [
+ 'description' => '策略类型',
+ 'type' => 'string',
+ 'example' => 'AccountLevelIdentityBasedPolicy',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '更新通知策略',
+ 'requestParamsDescription' => '# ChannelTimeRange 配置说明'."\n"
+ .'通知渠道的生效时间配置,支持统一配置和独立配置两种模式。'."\n"
+ ."\n"
+ .'## 配置格式'."\n"
+ .'该字段应为 JSON 格式,支持以下核心属性:'."\n"
+ ."\n"
+ .'### 属性说明'."\n"
+ ."\n"
+ .'**sendChannel:通知渠道配置(必填)**'."\n"
+ .'- 必填字段,指定需要配置的通知渠道'."\n"
+ .'- 格式:多个渠道用逗号分隔,如 "sms,webhook,mail,phone"'."\n"
+ .'- 支持的渠道:sms(短信)、webhook(如钉钉、企业微信)、mail(邮件)、phone(电话)'."\n"
+ ."\n"
+ .'**timezone:时区设置**'."\n"
+ .'- 支持 GMT 或 UTC 格式'."\n"
+ .'- 示例:GMT+8 或 UTC+08:00'."\n"
+ .'- 说明:时区决定了报警生效时间的参考标准,与实际所在地区无关。例如在北京地区配置"美国纽约时区(UTC-4),周一 00:00-03:00",系统将以纽约当地时间为准。'."\n"
+ ."\n"
+ .'**webhookIsAtAll:Webhook 通知配置**'."\n"
+ .'- 值为 "true" 或 "false"'."\n"
+ .'- 指示 webhook 通知时是否@所有成员'."\n"
+ ."\n"
+ .'**timeRanges:时间范围配置(必填)**'."\n"
+ .'- 支持两种配置模式:'."\n"
+ .' 1. 统一配置:使用 "all" 作为 key,为所有选择的渠道统一设置时间段'."\n"
+ .' 2. 独立配置:为每个渠道单独配置时间段,key 为具体的渠道标识'."\n"
+ ."\n"
+ .'### 时间段配置项'."\n"
+ .'每个时间段包含以下属性:'."\n"
+ .'- startTime:开始时间,格式为 HH:mm (必填)'."\n"
+ .'- endTime:结束时间,格式为 HH:mm (必填)'."\n"
+ .'- daysOfWeek:生效的工作日,数组格式,1-7 代表周一到周日(非必填,为空时代表该时间段不生效)'."\n"
+ ."\n"
+ .'### 示例配置'."\n"
+ ."\n"
+ .'**示例 1:统一配置模式**'."\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"
+ .'**示例 2:独立配置模式**'."\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"
+ .'### 注意事项'."\n"
+ .'1. sendChannel 字段必填,且只能包含支持的通知渠道'."\n"
+ .'2. 当 timeRanges 中包含 "all" 时,表示统一配置模式,此时不能包含其他渠道的配置'."\n"
+ .'3. 当 timeRanges 不包含 "all" 时,需要为 sendChannel 中指定的每个渠道进行独立配置'."\n"
+ .'4. 时间必须使用 24 小时制,格式为 HH:mm'."\n"
+ .'5. 工作日使用 1-7 的数字表示,分别对应周一到周日'."\n"
+ .'6. 时区支持 GMT 和 UTC 两种格式的配置',
+ ],
+ 'ReadSchedulerxNotificationPolicy' => [
+ 'summary' => '查询通知策略。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'PolicyName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '通知策略名称',
+ 'description' => '通知策略名称(支持模糊匹配)',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test-weekdays',
+ ],
+ ],
+ [
+ 'name' => 'MaxResults',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '本次读取的最大数据量,默认值为20',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ 'default' => '20',
+ ],
+ ],
+ [
+ 'name' => 'NextToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '用来表示当前调用返回读取到的位置,空代表数据已经读取完毕, 第一次查询不需要提供这个参数',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'O39nXKu5XafATl3/cJjSJw==',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '状态码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '错误信息',
+ 'type' => 'string',
+ 'example' => 'unknown exception occurred',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '71BCC0E3-64B2-4B63-A870-AFB64EBCB5A7',
+ ],
+ 'Success' => [
+ 'description' => '是否成功',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'AccessDeniedDetail' => [
+ 'description' => '访问被拒绝详细信息',
+ 'type' => 'object',
+ 'properties' => [
+ 'AuthAction' => [
+ 'description' => '鉴权操作',
+ 'type' => 'string',
+ 'example' => 'edas:ReadSchedulerxNotificationPolicy',
+ ],
+ 'AuthPrincipalDisplayName' => [
+ 'description' => '身份验证主体名称',
+ 'type' => 'string',
+ 'example' => '209312833131416xxx',
+ ],
+ 'AuthPrincipalOwnerId' => [
+ 'description' => '身份验证主体所属账号',
+ 'type' => 'string',
+ 'example' => '1827811800526xxx',
+ ],
+ 'AuthPrincipalType' => [
+ 'description' => '身份类型',
+ 'type' => 'string',
+ 'example' => 'SubUser',
+ ],
+ 'EncodedDiagnosticMessage' => [
+ 'description' => '编码诊断信息',
+ 'type' => 'string',
+ 'example' => 'AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==',
+ ],
+ 'NoPermissionType' => [
+ 'description' => '无权限类型',
+ 'type' => 'string',
+ 'example' => 'ImplicitDeny',
+ ],
+ 'PolicyType' => [
+ 'description' => '策略类型',
+ 'type' => 'string',
+ 'example' => 'AccountLevelIdentityBasedPolicy',
+ ],
+ ],
+ ],
+ 'Data' => [
+ 'description' => '-',
+ 'type' => 'object',
+ 'properties' => [
+ 'Records' => [
+ 'description' => '数据列表',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '单行数据',
+ 'type' => 'object',
+ 'properties' => [
+ 'PolicyName' => [
+ 'description' => '通知策略名称',
+ 'type' => 'string',
+ 'example' => 'test-weekdays',
+ ],
+ 'Description' => [
+ 'description' => '通知策略描述',
+ 'type' => 'string',
+ 'example' => 'Monday-Friday only'."\n",
+ ],
+ 'Creator' => [
+ 'description' => '创建人',
+ 'type' => 'string',
+ 'example' => '201576653956616970',
+ ],
+ 'Updater' => [
+ 'description' => '更新人',
+ 'type' => 'string',
+ 'example' => '1144881807903942',
+ ],
+ 'CreateTime' => [
+ 'description' => '创建时间',
+ 'type' => 'string',
+ 'example' => '2025-09-17 11:21:01',
+ ],
+ 'UpdateTime' => [
+ 'description' => '更新时间',
+ 'type' => 'string',
+ 'example' => '2025-09-17 11:21:01',
+ ],
+ 'ChannelTimeRange' => [
+ 'description' => '通知策略配置',
+ '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' => '通知策略关联的应用列表',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '关联的单个应用信息',
+ 'type' => 'object',
+ 'properties' => [
+ 'AppGroupId' => [
+ 'description' => '任务分组ID',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '123',
+ ],
+ 'GroupId' => [
+ 'description' => '应用ID',
+ 'type' => 'string',
+ 'example' => 'test-app',
+ ],
+ 'NamespaceUid' => [
+ 'description' => '命名空间唯一标识',
+ 'type' => 'string',
+ 'example' => '18271388-aa16-4eab-9a6f-55f65d7e4391',
+ ],
+ 'NamespaceName' => [
+ 'description' => '命名空间名称',
+ 'type' => 'string',
+ 'example' => 'Notification strategy testing namespace',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'NextToken' => [
+ 'description' => '当符合查询条件的数据未读取完时,服务端会返回nextToken,此时可以使用nextToken继续读取后面的数据。',
+ 'type' => 'string',
+ 'example' => 'O39nXKu5XafATl3/cJjSJw=='."\n",
+ ],
+ 'Total' => [
+ 'description' => '总记录数',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '42',
+ ],
+ 'MaxResults' => [
+ 'description' => '本次读取的最大数据量',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '查询通知策略',
+ ],
+ 'CreateSchedulerxCalendar' => [
+ 'summary' => '创建日历。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'CalendarName',
+ 'in' => 'formData',
+ 'schema' => [
+ 'title' => '',
+ 'description' => '日历名称',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2025workday',
+ ],
+ ],
+ [
+ 'name' => 'Year',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '年份',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'example' => '2025',
+ ],
+ ],
+ [
+ 'name' => 'MonthDaysContent',
+ 'in' => 'formData',
+ 'schema' => [
+ 'title' => '',
+ 'description' => '月份和天',
+ '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' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '附加信息,仅出错时返回错误信息',
+ 'type' => 'string',
+ 'example' => 'calendar \'2025workday\' already exists in year 2025',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108',
+ ],
+ 'Success' => [
+ 'description' => '调用是否成功',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'AccessDeniedDetail' => [
+ 'description' => '访问被拒绝详细信息',
+ 'type' => 'object',
+ 'properties' => [
+ 'AuthAction' => [
+ 'description' => '鉴权操作',
+ 'type' => 'string',
+ 'example' => 'edas: CreateSchedulerxCalendar',
+ ],
+ 'AuthPrincipalDisplayName' => [
+ 'description' => '身份验证主体名称',
+ 'type' => 'string',
+ 'example' => '209312833131416xxx',
+ ],
+ 'AuthPrincipalOwnerId' => [
+ 'description' => '身份验证主体所属账号',
+ 'type' => 'string',
+ 'example' => '1827811800526xxx',
+ ],
+ 'AuthPrincipalType' => [
+ 'description' => '身份类型',
+ 'type' => 'string',
+ 'example' => 'SubUser',
+ ],
+ 'EncodedDiagnosticMessage' => [
+ 'description' => '编码诊断信息',
+ 'type' => 'string',
+ 'example' => 'AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==',
+ ],
+ 'NoPermissionType' => [
+ 'description' => '无权限类型',
+ 'type' => 'string',
+ 'example' => 'ImplicitDeny',
+ ],
+ 'PolicyType' => [
+ 'description' => '策略类型',
+ 'type' => 'string',
+ 'example' => 'AccountLevelIdentityBasedPolicy',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '创建日历',
+ ],
+ 'DeleteSchedulerxCalendar' => [
+ 'summary' => '删除日历。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'CalendarName',
+ 'in' => 'formData',
+ 'schema' => [
+ 'title' => '',
+ 'description' => '日历名称',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2025workday',
+ ],
+ ],
+ [
+ 'name' => 'Year',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '年份',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'example' => '2025',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '状态码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '附加信息,仅出错时返回错误信息。',
+ 'type' => 'string',
+ 'example' => 'calendar \'2025workday\' does not exist in year 2025',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0',
+ ],
+ 'Success' => [
+ 'description' => '调用是否成功',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'AccessDeniedDetail' => [
+ 'description' => '访问被拒绝详细信息',
+ 'type' => 'object',
+ 'properties' => [
+ 'AuthAction' => [
+ 'description' => '鉴权操作',
+ 'type' => 'string',
+ 'example' => 'edas:DeleteSchedulerxCalendar',
+ ],
+ 'AuthPrincipalDisplayName' => [
+ 'description' => '身份验证主体名称',
+ 'type' => 'string',
+ 'example' => '209312833131416xxx',
+ ],
+ 'AuthPrincipalOwnerId' => [
+ 'description' => '身份验证主体所属账号',
+ 'type' => 'string',
+ 'example' => '1827811800526xxx',
+ ],
+ 'AuthPrincipalType' => [
+ 'description' => '身份类型',
+ 'type' => 'string',
+ 'example' => 'SubUser',
+ ],
+ 'EncodedDiagnosticMessage' => [
+ 'description' => '编码诊断信息',
+ 'type' => 'string',
+ 'example' => 'AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==',
+ ],
+ 'NoPermissionType' => [
+ 'description' => '无权限类型',
+ 'type' => 'string',
+ 'example' => 'ImplicitDeny',
+ ],
+ 'PolicyType' => [
+ 'description' => '策略类型',
+ 'type' => 'string',
+ 'example' => 'AccountLevelIdentityBasedPolicy',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '删除日历',
+ ],
+ 'ManageSchedulerxCalendar' => [
+ 'summary' => '更新日历。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'CalendarName',
+ 'in' => 'formData',
+ 'schema' => [
+ 'title' => '',
+ 'description' => '日历名称',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2025workday',
+ ],
+ ],
+ [
+ 'name' => 'Year',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '年份',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'example' => '2025',
+ ],
+ ],
+ [
+ 'name' => 'MonthDaysContent',
+ 'in' => 'formData',
+ 'schema' => [
+ 'title' => '',
+ 'description' => '月份和天',
+ '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' => 'Incremental',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '是否是增量更新(默认:false)。'."\n"
+ .'- false 更新指定月份数据的同时会删除其他月份的配置'."\n"
+ .'- true 仅更新指定月份的数据,保留其他月份的现有配置',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '状态码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '附加信息,仅出错时返回错误信息',
+ 'type' => 'string',
+ 'example' => 'calendar \'2025workday\' does not exist in year 2025',
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => '4F68ABED-AC31-4412-9297-D9A8F0401108',
+ ],
+ 'Success' => [
+ 'description' => '是否成功',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'AccessDeniedDetail' => [
+ 'description' => '无权限信息',
+ 'type' => 'object',
+ 'properties' => [
+ 'AuthAction' => [
+ 'description' => '鉴权操作',
+ 'type' => 'string',
+ 'example' => 'edas:ManageSchedulerxCalendar',
+ ],
+ 'AuthPrincipalDisplayName' => [
+ 'description' => '身份验证主体名称',
+ 'type' => 'string',
+ 'example' => '209312833131416xxx',
+ ],
+ 'AuthPrincipalOwnerId' => [
+ 'description' => '身份验证主体所属账号',
+ 'type' => 'string',
+ 'example' => '1827811800526xxx',
+ ],
+ 'AuthPrincipalType' => [
+ 'description' => '身份类型',
+ 'type' => 'string',
+ 'example' => 'SubUser',
+ ],
+ 'EncodedDiagnosticMessage' => [
+ 'description' => '编码诊断信息',
+ 'type' => 'string',
+ 'example' => 'AQFn/cLPZ/3Cz0YxQkZBMjVGLTY0REUtNTlGNS05NzUwLTgyMUE4M0MwMTFDRQ==',
+ ],
+ 'NoPermissionType' => [
+ 'description' => '无权限类型',
+ 'type' => 'string',
+ 'example' => 'ImplicitDeny',
+ ],
+ 'PolicyType' => [
+ 'description' => '策略类型',
+ 'type' => 'string',
+ 'example' => 'AccountLevelIdentityBasedPolicy',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '更新日历',
+ ],
+ 'ReadSchedulerxCalendar' => [
+ 'summary' => '查询日历。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'CalendarName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '通知策略名称',
+ 'description' => '日历名称',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2025workday',
+ ],
+ ],
+ [
+ 'name' => 'Year',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '年份',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2025',
+ ],
+ ],
+ [
+ 'name' => 'FetchSystemCalendar',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否拉取系统日历(默认:false)'."\n"
+ ."\n"
+ .'- false:仅返回用户自定义日历。'."\n"
+ .'- true:即返回系统日历也返回用户自定义日历。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'FetchCalendarDetail',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否拉取日历明细(默认:false)'."\n"
+ .'- false:不返回每月的详细天列表,只返回基础信息。'."\n"
+ .'- true:返回每月日历详细天列表。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'MaxResults',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '本次读取的最大数据量,默认值为20',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '15',
+ 'default' => '20',
+ ],
+ ],
+ [
+ 'name' => 'NextToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '用来表示当前调用返回读取到的位置,空代表数据已经读取完毕, 第一次查询不需要提供这个参数',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'AAAAAdYzT97YjSXWT8TQmxIAI5g=',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '状态码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => '错误信息',
+ 'type' => 'string',
+ 'example' => 'unknown exception occurred'."\n",
+ ],
+ 'RequestId' => [
+ 'description' => '请求唯一ID',
+ 'type' => 'string',
+ 'example' => 'C8E5FB4A-6D8D-424D-9AAA-4FE06BB74FF9',
+ ],
+ 'Success' => [
+ 'description' => '是否成功',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'AccessDeniedDetail' => [
+ 'description' => '访问被拒绝详细信息',
+ 'type' => 'object',
+ 'properties' => [
+ 'AuthAction' => [
+ 'description' => '鉴权操作',
+ 'type' => 'string',
+ 'example' => 'edas:ReadSchedulerxCalendar',
+ ],
+ 'AuthPrincipalDisplayName' => [
+ 'description' => '身份验证主体名称',
+ 'type' => 'string',
+ 'example' => '209312833131416xxx',
+ ],
+ 'AuthPrincipalOwnerId' => [
+ 'description' => '身份验证主体所属账号',
+ 'type' => 'string',
+ 'example' => '1827811800526xxx',
+ ],
+ 'AuthPrincipalType' => [
+ 'description' => '身份类型',
+ 'type' => 'string',
+ 'example' => 'SubUser',
+ ],
+ 'EncodedDiagnosticMessage' => [
+ 'description' => '编码诊断信息',
+ 'type' => 'string',
+ 'example' => 'AQEAAAAAaDEssEE4MDg4NTQyLTVGMTYtNTFEQy1CODJCLUFFMDY4NUVDQ0ZBQQ==',
+ ],
+ 'NoPermissionType' => [
+ 'description' => '无权限类型',
+ 'type' => 'string',
+ 'example' => 'ImplicitDeny',
+ ],
+ 'PolicyType' => [
+ 'description' => '策略类型',
+ 'type' => 'string',
+ 'example' => 'AccountLevelIdentityBasedPolicy',
+ ],
+ ],
+ ],
+ 'Data' => [
+ 'description' => '-',
+ 'type' => 'object',
+ 'properties' => [
+ 'Records' => [
+ 'description' => '-',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '-',
+ 'type' => 'object',
+ 'properties' => [
+ 'CalendarName' => [
+ 'description' => '日历名称',
+ 'type' => 'string',
+ 'example' => '2025workday',
+ ],
+ 'Year' => [
+ 'description' => '年份',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2025',
+ ],
+ 'MonthDaysContent' => [
+ 'description' => '月份和天',
+ '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' => '创建人',
+ 'type' => 'string',
+ 'example' => '1827811800526xxx',
+ ],
+ 'SystemCalendar' => [
+ 'description' => '是否是系统日历',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ ],
+ 'NextToken' => [
+ 'description' => '当符合查询条件的数据未读取完时,服务端会返回nextToken,此时可以使用nextToken继续读取后面的数据。',
+ 'type' => 'string',
+ 'example' => 'O39nXKu5XafATl3/cJjSJw=='."\n",
+ ],
+ 'Total' => [
+ 'description' => '总记录数',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '20',
+ ],
+ 'MaxResults' => [
+ 'description' => '本次读取的最大数据量',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '15',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '查询日历',
+ ],
+ 'GetOverview' => [
+ 'summary' => '获取专业版应用任务调度概览数据信息。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '区域Region ID',
+ 'description' => '区域Region ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '命名空间UID',
+ 'description' => '命名空间UID',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'adcfc35d-e2fe-4fe9-bbaa-20e90ffc****',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceSource',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '',
+ 'description' => '命名空间来源,特殊第三方才需要填写',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'schedulerx',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '应用分组ID',
+ 'description' => '应用分组ID',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testSchedulerx.defaultGroup',
+ ],
+ ],
+ [
+ 'name' => 'Operate',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '可选项'."\n"
+ .'query:查询区间数据'."\n"
+ .'query_range:查询区间时许数据',
+ 'description' => '可选项'."\n"
+ ."\n"
+ .'- query:查询区间数据'."\n"
+ .'- query_range:查询区间时许数据',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'query',
+ 'enum' => [
+ 'query',
+ 'query_range',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'MetricType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '可选项'."\n"
+ .'0:任务类基础信息'."\n"
+ .'1:任务运行信息',
+ 'description' => '可选项'."\n"
+ ."\n"
+ .'- 0:任务类基础信息'."\n"
+ .'- 1:任务运行信息',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'example' => '0',
+ 'enum' => [
+ '0',
+ '1',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'allowEmptyValue' => false,
+ 'schema' => [
+ 'title' => '数据起始时间戳(单位:秒),如:1684166400',
+ 'description' => '数据起始时间戳(单位:秒),如:1684166400',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '1684166400',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '数据结束时间戳(单位:秒),如:1684166400 '."\n"
+ .'不填默认为当前时间',
+ 'description' => '数据结束时间戳(单位:秒),如:1684166400 '."\n"
+ .'不填默认为当前时间',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '1684166400',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求唯一ID。',
+ 'type' => 'string',
+ 'example' => '39090022-1F3B-4797-8518-6B61095F1AF0',
+ ],
+ 'Code' => [
+ 'description' => '状态码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Success' => [
+ 'description' => 'API调用是否成功。取值如下:'."\n"
+ ."\n"
+ .'- true:成功。'."\n"
+ .'- false:失败。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Message' => [
+ 'description' => '错误信息,仅出错时返回错误信息。',
+ 'type' => 'string',
+ 'example' => 'No access permission for the namespace [***]',
+ ],
+ 'Data' => [
+ 'description' => 'JSON的概览数据信息,对应控制台概览数据内容,如下三种格式类型结果:'."\n"
+ .'- 基础信息。'."\n"
+ .'- 时间区间任务运行信息。'."\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"}',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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\\": \\"基础信息:{\\\\\\"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' => '获取概览数据信息',
+ 'requestParamsDescription' => '当前接口查询数据信息对应控制台概览的三块信息内容,相应请求参数配置要求如下'."\n"
+ ."\n"
+ .'- 任务基础信息:请求参数配置说明如下,Operate设置“query”,MetricType设置为“0”,StartTime设置为当前时间戳'."\n"
+ ."\n"
+ .'- 时间区间任务运行信息:请求参数配置说明如下,Operate设置“query”,MetricType设置为“1”,StartTime设置为业务需要的查询起始时间(不得早于15天,当前时序数据存储有效期为15天)'."\n"
+ ."\n"
+ .'- 时间区间任务运行时序信息:请求参数配置说明如下,Operate设置“query_range”,MetricType设置为“1”,StartTime设置为业务需要的查询起始时间(默认推荐当前1小时前,因返回每个时点信息量大不建议设置过早)',
+ 'responseParamsDescription' => 'Data信息会根据三种数据读取,返回不同格式的JSON内容,参考如下:'."\n"
+ .'- 基础信息:'."\n"
+ .'```'."\n"
+ .'{'."\n"
+ .' "schedulerx_job_counter_disable": "4", // 禁用任务数'."\n"
+ .' "schedulerx_job_counter_enable": "70", // 启用任务数'."\n"
+ .' "schedulerx_job_counter_all": "74", // 总任务数'."\n"
+ .' "schedulerx_worker_counter": "2", // 在线机器数'."\n"
+ .' "schedulerx_job_trigger_counter_running": "0" // 任务运行中实例数'."\n"
+ .'}'."\n"
+ .'```'."\n"
+ ."\n"
+ .'- 时间区间任务运行信息:'."\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"
+ .'- 时间区间任务运行时序信息:返回对应区间 任务触发、运行成功、运行失败三个数据项对应时点的统计信息'."\n"
+ ."\n"
+ .'```'."\n"
+ .'['."\n"
+ .' {'."\n"
+ .' "data": ['."\n"
+ .' ['."\n"
+ .' 1686110400000, '."\n"
+ .' 4'."\n"
+ .' ],'."\n"
+ .' ['."\n"
+ .' 1686110460000,'."\n"
+ .' 5'."\n"
+ .' ]'."\n"
+ .' ],'."\n"
+ .' "name": "触发次数"'."\n"
+ .' },'."\n"
+ .' {'."\n"
+ .' "data": ['."\n"
+ .' ['."\n"
+ .' 1686110400000,'."\n"
+ .' 0'."\n"
+ .' ],'."\n"
+ .' ['."\n"
+ .' 1686110460000,'."\n"
+ .' 0'."\n"
+ .' ]'."\n"
+ .' ],'."\n"
+ .' "name": "执行失败"'."\n"
+ .' },'."\n"
+ .' {'."\n"
+ .' "data": ['."\n"
+ .' ['."\n"
+ .' 1686110400000,'."\n"
+ .' 4'."\n"
+ .' ],'."\n"
+ .' ['."\n"
+ .' 1686110460000,'."\n"
+ .' 5'."\n"
+ .' ]'."\n"
+ .' ],'."\n"
+ .' "name": "执行成功"'."\n"
+ .' }'."\n"
+ .' ]'."\n"
+ .'```',
+ ],
+ ],
+ 'endpoints' => [
+ [
+ 'regionId' => 'public',
+ 'endpoint' => 'schedulerx.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-beijing',
+ 'endpoint' => 'schedulerx.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-zhangjiakou',
+ 'endpoint' => 'schedulerx.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-huhehaote',
+ 'endpoint' => 'schedulerx.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-hangzhou',
+ 'endpoint' => 'schedulerx.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-shanghai',
+ 'endpoint' => 'schedulerx.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-shenzhen',
+ 'endpoint' => 'schedulerx.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-guangzhou',
+ 'endpoint' => 'schedulerx.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-chengdu',
+ 'endpoint' => 'schedulerx.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-hongkong',
+ 'endpoint' => 'schedulerx.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-northeast-1',
+ 'endpoint' => 'schedulerx.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-southeast-1',
+ 'endpoint' => 'schedulerx.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'us-east-1',
+ 'endpoint' => 'schedulerx.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'us-west-1',
+ 'endpoint' => 'schedulerx.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'eu-central-1',
+ 'endpoint' => 'schedulerx.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-shanghai-finance-1',
+ 'endpoint' => 'schedulerx.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'eu-west-1',
+ 'endpoint' => 'schedulerx.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-southeast-3',
+ 'endpoint' => 'schedulerx.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-southeast-5',
+ 'endpoint' => 'schedulerx.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-southeast-6',
+ 'endpoint' => 'schedulerx.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-wulanchabu',
+ 'endpoint' => 'schedulerx.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-southeast-7',
+ 'endpoint' => 'schedulerx.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-qingdao',
+ 'endpoint' => 'schedulerx.aliyuncs.com',
+ ],
+ ],
+];