Skip to content

新建日程/待办

用于通过开发者接口创建日程/待办。

请求说明

请求地址配置域名+/o/rili/g-api/v1/intranet/event
请求方法POST
签名方式wps-4
支持应用类型企业自建应用、第三方企业应用
权限要求更新日程信息(kso.calendar.event.write)

请求头

名称是否必填说明
Content-Type固定为: application/json
Wps-Docs-Date取当前时间, 示例: Wed, 23 Jan 2013 06:43:08 GMT
Wps-Docs-Authorization计算方法参考签名说明
Authorizationaccess_token(企业授权获取的token)

请求地址示例

http
[POST] 配置域名+/o/rili/g-api/v1/intranet/event

请求体(Body)

参数路径类型必选(Y/N)说明
creatorWpsUserIdrequest bodylongY日程/待办的创建者。该账号需要使用过日历的功能,登录访问下 https://rili.wps.cn
summaryrequest bodystringY标题,最长200个字符
descriptionrequest bodystringN详情,最长2000个字符
startTimerequest bodylongN开始时间,单位毫秒。日程类型开始和结束时间都传;待办类型开始和结束时间可都传或都不传
endTimerequest bodylongN结束时间,单位毫秒。日程类型开始和结束时间都传;待办类型开始和结束时间可都传或都不传
eventTyperequest bodyintY类型,默认0;0:日程,1:待办(武汉项目待办),2:flexPaper待办,3:日历代办,4:文档日程(未上线),5:会议日程,6:文档待办(未上线),7:flexPaper日程,8:WOA待办。当存在appCustData参数或autoBookingMeeting为true时,接口内部会自动根据需求重新调整的eventType值。注意:因为flexPager待办/日程在flexPaper和金山待办/日程的编辑权限有所区分,所以来自flexPaper的请求,header需要带上rili-app-name=otl;否则会当做来自非flexPaper的请求;同理其他接口遵守这个约定)。
actionTyperequest bodyintY1:非全天 2:全天;代办固定传1
remindersrequest bodyjsonY提醒规则,规则如下
recurrencerequest bodyjsonN重复规则,规则如下,仅支持日程
teamIdrequest bodylongN指定群组,不传则新建到主分组
autoSharerequest bodybooleanN是否自动分享
autoBookingMeetingrequest bodybooleanN是否自动预定会议。当autoBookingMeeting==true时,autoShare必须为true。因为预定会议需要日程的sid。当autoBookingMeeting==true时,attachments中不能有会议类型的附件。
attachmentsrequest body[]jsonN最多添加10个附件,会议/文档日程代办只支持单个附件。当autoBookingMeeting==true时,attachments中不能有会议类型的附件。event_type==2文档待办,要求附件参数带link(小程序跳转地址),linkPc(web端跳转地址,约定为lc链接),wpsFileId(待办来自的文档的fileId)。
richTextrequest bodystringN富文本,最长50000个字符,仅支持代办
tagSortrequest bodyintN排序标签,默认0,仅支持代办
wpsUserIdsrequest body[]longN导入成员的wpsUserId,单次最多导入50个成员
rightsrequest bodyintN成员权限,默认1;1:编辑,2:只读,5:协作者编辑,6:协作者只读.待办主分组下添加成员的,使用5协作者编辑权限;其余场景使用1编辑权限。
appCustDatarequest bodyobjectN第三方应用自定义数据,由type和content组成,type表示应用类型,content为自定义数据的json字符串(不是对象),不同来源应用允许格式不一样,跟日历服务端沟通确认。日程/待办详情接口有appCustData时返回appCustData对象。具体约定见下方
idleStatusrequest bodylongN忙闲状态,1:忙,2:闲
publicStatusrequest bodylongN公开状态,1:默认,2:公开,3:不公开
locationrequest bodyobjectN见下方location对象定义

location定义

"location":{
	"name":"珠海金山软件园", // 地址名称,必填
	"address":"珠海唐家湾镇前岛环路n号", // 地址详细位置,非必填
	"longitude":  120.0, // 经度,非必填
	"latitude": 23.0 //  纬度,非必填
}

appCustData约定

  • woa待办
"appCustData":{
    "type": "woa", // woa待办归属到武汉待办类型,接口内部会自动选择eventType==1
    "content": "{\"chatId\":1223,\"msgId\":1223}" // charId,会话id;msgId,消息id
}
  • woa入职小助手
"appCustData":{
    "type": "woa_person_manager", // woa人力管理应用,可能有多种不同场景
    "isNotSaveIndex": false, // 是否保存到索引数据库,如果传入的标签有统计要求,则传 false 或者不传;true : 不保存索引数据库, false : 保存索引数据库,默认值为 false
    "content": "{\"scene\":\"woa_entry\"}" // scene:场景,woa_entry表示新人入职。后续有新场景,再添加
}

提醒规则示例

{
    "useDefault": false,           // true不提醒
    "useCreate": true||false||null,// 使用创建者规定,可以为null
    "overrides": [{minutes: 15}]}  // 提醒列表,取值如下
}
overrides取值
{
    on_time: 1                // 正点提醒
    minutes: 5||15            // 提前多少分钟提醒
    hours: 1                  // 提前多少小时提醒
    days: 1||3                // 提前多少天提醒
    weeks: 1                  // 提前多少周提醒
    time: 1533052800000       // 按自定义时间提醒,单位毫秒
}

重复规则示例

{
    "freq": DAILY,                 // 必填,取值如下
    "interval": 1,                 // 必填,表示重复规则的间隔,最大100
    "untilDate": 1533052800000,    // 非必填,重复规则截止日期,单位毫秒
    "count": 0,                    // 非必填,重复事件的发生次数,最大10000
    "byDay": MO,                   // 非必填,MO(周一), TU, WE, TH, FR, SA, SU(周日)
    "byMonthDay": "1"              // 非必填,表示一个月的第几天,最小1,最大31
    "byMonth": "1"                 // 非必填,表示一年的第几个月,最小1,最大12
}
freq取值
{
    YEARLY  // 表示以年为间隔单位进行重复
    MONTHLY // 表示以月为间隔单位进行重复
    WEEKLY  // 表示以周为间隔单位进行重复
    DAILY   // 表示以天为间隔单位进行重复
}

附件传参示例

{
    attachmentType:0    //0:普通附件;1:会议附件;2:文档日程附件;3:flexPaper待办附件;4:文档待办附件;5:flexPaper日程附件
    wpsGroupId:null,   //可不传
    wpsParentId: null,   //可不传
    wpsFileId: null,     //可不传
    fileName: null,      //可不传
    fileSize: null,      //可不传
    fileType: null,      //可不传
    shareSid: "abcef",   //分享sid,可不传
    shareCode: "123123", //分享码,会议附件必传
    link: "链接",        //可不传
    linkPc: "pc链接"     //会议附件必传
}

// 备注:
// attachmentType 除开会议接口这边调用之外,其它场景都不要传入 1 ,其中字段有特殊处理
// eventType 为 0 至少传入一个 wpsFileId
// evenType 为1, 3 时,都不需要传入文件,武汉待办以前是独立一个项目,其虽然支持文件上传,但不是通过日历接口,而 日历待办 界面上还没支持文件上传

返回值

{
    "code": 0,
    "result": "OK",
    "data": {
        "taskId": 323970,
        "summary": "新建日程",
        "description": "日程详情",
        "startTime": 1599548400000,
        "endTime": 1599552000000,
        "startDay": 20200908,
        "endDay": 99999999,
        "eventType": 0,
        "groupType": 0,
        "actionType": 1,
        "noticeTime": null,
        "reminders": {
            "useDefault": false,
            "useCreate": null,
            "overrides": [
                {
                    "minutes": 15
                }
            ]
        },
        "recurrence": {
            "freq": "DAILY",
            "interval": 1,
            "untilDate": null,
            "count": 0,
            "byDay": null,
            "byMonthDay": null,
            "byMonth": null,
            "version": "1.0"
        },
        "creator": {
            "userId": 15545,
            "wpsUserId": 241711306,
            "nickName": "外向",
            "headUrl": "https://imagebucket.test.wpscdn.cn/241711306_c5ef5c1f7372a2ddf683ec8bb5c5c392?imageMogr2/thumbnail/180x180!"
        },
		"eventLocation": { // 日程的地点
            "name": "地址信息", // 地点的名称
            "address": "", // 地点的地址
            "longitude": null,  // 经度,数值类型,可能为null
            "latitude": null, // 纬度,数值类型,可能为null
            "createTime": 1600139415076,
            "updateTime": 1600139415076
        },
        "team": {
            "teamId": 10011,
            "teamGroupId": 1900034484,
            "teamName": "我的新分组",
            "creator": {
                "userId": 15545,
                "wpsUserId": 241711306,
                "nickName": "外向",
                "headUrl": "https://imagebucket.test.wpscdn.cn/241711306_c5ef5c1f7372a2ddf683ec8bb5c5c392?imageMogr2/thumbnail/180x180!",
                "userRole": "creator"
            },
            "group": null,
            "calendar": {
                "groupId": 2837514,
                "primary": false,
                "summary": "我的新分组",
                "remark": "",
                "label": 0,
                "joinHome": false,
                "noticeType": 0,
                "specialAttention": false,
                "unfishedTaskCount": 0,
                "groupType": 0,
                "createTime": 1599907602497,
                "updateTime": 1599907602497
            },
            "rights": 1,
            "userRole": "creator",
            "memberCount": 2,
            "members": null,
            "shareInfo": null,
            "createTime": 1599907602497,
            "updateTime": 1599917191413
        },
        "sharedTeam": null,
        "memberCount": 2,
        "memberAcceptedCount":0, // 已接受日程邀请的成员个数
        "members": [
            {
                "userId": 2795499,
                "wpsUserId": 238948200,
                "nickName": "/.",
                "headUrl": "https://avatar.qwps.cn/avatar/Ly4=",
                "rights": 1,
                "acceptStatus": 1,
                "createTime": 1605365883957,
                "updateTime": 1605365883957
            },
            {
                "userId": 2795500,
                "wpsUserId": 238948236,
                "nickName": "哦",
                "headUrl": "https://avatar.qwps.cn/avatar/5ZOm",
                "rights": 1,
                "acceptStatus": 1,
                "createTime": 1605365883957,
                "updateTime": 1605365883957
            }
        ],
        "shareInfo": {
            "sid": "e_0moS13jhs",
            "rights": 1,
            "closed": false,
            "expiredTime": 0,
            "createTime": 1600141313455,
            "updateTime": 1600141313455,
            "creator": null
        },
        "attachments": [
            {
                "attachmentId": 15590,
                "wpsGroupId": null,
                "wpsParentId": null,
                "wpsFileId": null,
                "shareSid": null,
                "shareCode": "123456",
                "fileName": null,
                "fileSize": null,
                "fileType": null,
                "link": null,
                "linkPc": "abcdef",
                "attachmentType": 1,
                "createTime": 1600141350353,
                "updateTime": 1600141350353,
                "creator": {
                    "userId": 2795496,
                    "wpsUserId": 241711306,
                    "nickName": "HelloWorld=go",
                    "headUrl": "https://imagebucket.test.wpscdn.cn/241711306_c5ef5c1f7372a2ddf683ec8bb5c5c392?imageMogr2/thumbnail/180x180!"
                }
            }
        ],
        "richText": "我是富文本",
        "tagSort": 0,
        "tagFinish": false,
        "finishTime": 0,
        "createTime": 1600141313455,
        "updateTime": 1600141313455,
        "appCustData":{ // 第三方应用扩展数据,无数据时不返回该字段
            "type": "woa",
            "content": "{\"chatId\":1223,\"msgId\":1223}" // charId,会话id;msgId,消息id
        },
        "idleStatus": 1,
        "publicStatus": 1
    }
}

错误码

错误码描述
1参数不合法
348跨天日程时长不能超过1年
551添加成员超过单次限制
705超过附件数量限制
704该类型不支持多个附件
702该类型不支持重复日程
703附件参数错误
347重复规则错误
311提醒规则输入错误
23内容违规
32数据库操作失败
501没有主分组
502分组不存在
10无操作权限
322地址不存在
552主分组下禁止开通日历