创建应用分组,返回appKey。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
授权信息
下表是API对应的授权信息,可以在RAM权限策略语句的Action
元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:
- 操作:是指具体的权限点。
- 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
- 资源类型:是指操作中支持授权的资源类型。具体说明如下:
- 对于必选的资源类型,用背景高亮的方式表示。
- 对于不支持资源级授权的操作,用
全部资源
表示。
- 条件关键字:是指云产品自身定义的条件关键字。
- 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作 | 访问级别 | 资源类型 | 条件关键字 | 关联操作 |
---|---|---|---|---|
edas:CreateSchedulerxAppGroupCreate | create | *全部资源 * |
| 无 |
请求参数
名称 | 类型 | 必填 | 描述 | 示例值 |
---|---|---|---|---|
AppName | string | 是 | 应用名称。 | DocTest |
Namespace | string | 是 | 命名空间 ID,在控制台的命名空间页面中获取。 | adcfc35d-e2fe-4fe9-bbaa-20e90ffc**** |
NamespaceSource | string | 否 | 暂不支持,无须填写。 | schedulerx |
GroupId | string | 是 | 应用 ID,在控制台的应用管理页面中获取。 | TestSchedulerx.defaultGroup |
RegionId | string | 是 | 地域 ID。 | cn-hangzhou |
Description | string | 否 | 应用描述。 | Test |
MaxJobs | integer | 否 | 最大任务数。 | 1000 |
NamespaceName | string | 是 | 命名空间名称。 | Test |
AppKey | string | 否 | 应用 Appkey。 | adcExHZviLcl**** |
MonitorConfigJson | string | 否 | 报警通知的配置,支持以下属性:sendChannel、alarmType 和 webhookIsAtAll。 说明
此字段的详细说明参见下文关于请求参数的补充说明。
| { "sendChannel": "ding,sms,mail,phone", "alarmType": "Contacts", "webhookIsAtAll": false } |
MonitorContactsJson | string | 否 | 报警联系人配置。支持配置报警联系人以及报警联系人组 说明
此字段的详细说明参见下文关于请求参数的补充说明。
| [ {"name": "张三"}, {"name": "李四"} ] |
ScheduleBusyWorkers | boolean | 否 | 是否调度繁忙机器。 | false |
EnableLog | boolean | 否 | 是否开启日志。
| true |
AppType | integer | 否 | 应用类型。
| 1 |
AppVersion | integer | 否 | 应用版本,1:基础版,2:专业版 | 2 |
MonitorConfigJson 补充说明
报警通知的配置,支持以下属性:sendChannel
、alarmType
和 webhookIsAtAll
。
配置格式
该字段的配置应为 JSON 格式,支持以下属性:
属性说明
-
发送渠道(
sendChannel
):- 支持多个渠道,使用逗号分隔,选项包括:
- webhook:
ding
- 短信:
sms
- 邮件:
mail
- 电话:
phone
- webhook:
- 支持多个渠道,使用逗号分隔,选项包括:
-
报警类型(
alarmType
):- Contacts: 表示报警联系人
- ContactGroup: 表示报警联系人组
-
是否 @ 所有成员(
webhookIsAtAll
):- 值为
"true"
或"false"
,指示在发送通知时是否 @ 所有群成员。
- 值为
示例:
{
"sendChannel": "ding,sms,mail,phone",
"alarmType": "Contacts",
"webhookIsAtAll": true
}
MonitorContactsJson 补充说明
报警联系人配置,根据 alarmType
的不同提供两种格式。
配置格式
该字段应为 JSON 格式,支持两种配置:联系人数组和联系人组对象。
属性说明
-
当
alarmType
为Contacts
:- 配置为包含多个联系人对象的数组,每个对象需包含:
- name: 联系人的名称
- 配置为包含多个联系人对象的数组,每个对象需包含:
-
当
alarmType
为ContactGroup
:- 配置为单个对象,包含:
- name: 联系人组的名称
- 配置为单个对象,包含:
注意事项
建议提前创建联系人与联系人组。如果未创建,系统会自动生成相应的联系人和联系人组。用户需在“通知联系人”页面配置联系人手机号、邮箱等信息并激活,以确保报警能够正常发送。
示例:
-
示例 1 (当
alarmType
为Contacts
):[ {"name": "张三"}, {"name": "李四"} ]
-
示例 2 (当
alarmType
为ContactGroup
):{ "name": "报警联系人组-1" }
返回参数
示例
正常返回示例
JSON
格式
{
"Code": 200,
"Message": "Your request is denied as lack of ssl protect.",
"RequestId": "883AFE93-FB03-4FA9-A958-E750C6DE120C",
"Success": true,
"Data": {
"AppGroupId": 6607,
"AppKey": "adcExHZviL******"
}
}
错误码
访问错误中心查看更多错误码。
变更历史
变更时间 | 变更内容概要 | 操作 |
---|---|---|
2024-10-21 | OpenAPI 返回结构发生变更 | 查看变更详情 |
2024-06-05 | OpenAPI 入参发生变更 | 查看变更详情 |
2024-05-29 | OpenAPI 入参发生变更 | 查看变更详情 |
2023-03-30 | API 内部配置变更,不影响调用 | 查看变更详情 |
2022-01-13 | OpenAPI 入参发生变更、OpenAPI 返回结构发生变更 | 查看变更详情 |
示例 Demo
package com.alibaba.schedulerx.pop;
import com.alibaba.schedulerx.common.util.JsonUtil;
import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.profile.DefaultProfile;
import com.aliyuncs.schedulerx2.model.v20190430.CreateAppGroupRequest;
import com.aliyuncs.schedulerx2.model.v20190430.CreateAppGroupResponse;
public class TestCreateAppGroup {
public static void main(String[] args) throws Exception {
// OpenAPI 的接入点,具体查看上表支持地域列表以及购买机器地域填写。
String regionId = "cn-shanghai";
//鉴权使用的 AccessKeyId,由阿里云官网控制台获取。
String accessKeyId = "<yourAccessKeyId>";
//鉴权使用的 AccessKeySecret,由阿里云官网控制台获取。
String accessKeySecret = "<yourAccessKeySecret>";
//产品名称
String productName ="schedulerx2";
//对照支持地域列表选择 Domain 填写。
String domain ="schedulerx.cn-shanghai.aliyuncs.com";
//构建 OpenAPI 客户端。
DefaultProfile.addEndpoint(regionId, productName, domain);
DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);
DefaultAcsClient client = new DefaultAcsClient(defaultProfile);
CreateAppGroupRequest request = new CreateAppGroupRequest();
request.setNamespace("xxxxxx");
request.setNamespaceName("xxxx");
request.setAppName("xxxx");
request.setDescription("xxx");
request.setGroupId("xxx");
//发送请求。
CreateAppGroupResponse response = client.getAcsResponse(request);
if (!response.getSuccess()) {
System.out.println(response.getMessage());
System.out.println("createApp: "+response.getRequestId());
} else {
System.out.println(JsonUtil.toJson(response));
}
}
}