Skip to content

三方审批实例同步

Error: 为了更好地提升接口文档的的易理解性,我们对文档进行了升级,请尽快迁移至新版本>>


审批中心不负责审批的流转,审批的流转在三方系统,三方系统在审批流转后生成的审批实例、审批任务、审批抄送数据同步到审批中心。

用户可以在审批中心中浏览三方系统同步过来的实例、任务、抄送信息,并且可以跳转回三方系统进行更详细的查看和操作,其中实例信息在【已发起】列表,任务信息在【待审批】和【已审批】列表,抄送信息在【抄送我】列表
对于审批任务,三方系统也可以配置审批任务的回调接口,这样审批人可以在审批中心中直接进行审批操作,审批中心会回调三方系统,三方系统收到回调后更新任务信息,并将新的任务信息同步回审批中心,形成闭环。

请求

项目
HTTP URLhttps://www.feishu.cn/approval/openapi/v2/external/instance/create
HTTP MethodPOST
支持的应用类型custom,isv
权限要求 调用该 API 所需的权限。开启其中任意一项权限即可调用approval:approval:readonly 访问审批应用

请求头

名称类型必填描述
Authorizationstringtenant_access_token 值格式:"Bearer access_token" 示例值:"Bearer t-7f1bcd13fc57d46bac21793a18e560" 了解更多:如何选择与获取 access token
Content-Typestring固定值:"application/json; charset=utf-8"

请求体

名称类型描述
content 必选stringJSON字符串

三方审批JSON

名称类型描述示例
approval_code 必选string审批定义 code, 创建审批定义返回的值,表示该实例属于哪个流程;该字段会影响到列表中该实例的标题,标题取自对应定义的 name 字段81D31358-93AF-92D6-7425-01A5D67C4E71
instance_id 必选string审批实例唯一标识,用户自定义,需确保证租户、应用下唯一24492654
status 必选string审批实例状态 可选值: - PENDING: 审批中 - APPROVED: 审批流程结束,结果为同意 - REJECTED: 审批流程结束,结果为拒绝 - CANCELED: 审批发起人撤回 - DELETED: 审批被删除 - HIDDEN: 状态隐藏(不显示状态)PENDING
extrastring审批实例扩展 JSON{"xxx":"xxx"}
links 必选map审批实例链接集合 ,用于【已发起】列表的跳转,跳转回三方系统; pc_link 和 mobile_link 必须填一个,填写的是哪一端的链接,即会跳转到该链接,不受平台影响
∟ pc_link ``必选stringpc 端的跳转链接,当用户使用飞书 pc 端时,使用该字段进行跳转https://applink.feishu.cn/client/mini_program/open?mode=appCenter&appId=cli_9c9c9c38e07a9101&path=pc/pages/detail?id=1234
∟ mobile_link``必选string移动端 跳转链接,当用户使用飞书 移动端时,使用该字段进行跳转https://applink.feishu.cn/client/mini_program/open?appId=cli_9c9cfc38e07a9101&path=pages/detail?id=1234
titlestring审批展示名称,如果填写了该字段,则审批列表中的审批名称使用该字段,如果不填该字段,则审批名称使用审批定义的名称@i18n@1
formlist用户提交审批时填写的表单数据,用于所有审批列表中展示。可传多个值,但审批中心pc展示前2个,移动端展示前3个,长度不超过2048字符[ { "name": "@i18n@2", "value": "@i18n@3" } ]
∟ namestring表单字段名称@i18n@2
∟ valuestring表单值@i18n@3
`user_id```string审批发起人 user_id,发起人可在【已发起】列表中看到所有已发起的审批;在【待审批】,【已审批】【抄送我】列表中,该字段展示审批是谁发起的。审批发起人 open id,和 user id 二选一。a987sf9s
user_namestring审批发起人 用户名,如果发起人不是真实的用户(例如是某个部门),没有 user_id,则可以使用该字段传名称@i18n@9
open_idstring审批发起人 open id,和 user id 二选一ou_be73cbc0ee35eb6ca54e9e7cc14998c1
department_idstring发起人部门,用于列表中展示发起人所属部门。 不传则不展示。 如果用户没加入任何部门,传 "",将展示租户名称 传 department_name 展示部门名称od-8ec33278bc2
department_namestring审批发起人 部门,如果发起人不是真实的用户(例如是某个部门),没有 department_id,则可以使用该字段传名称@i18n@10
start_time 必选long审批发起时间,Unix毫秒时间戳1556468012678
end_time 必选long审批实例结束时间:未结束的审批为 0,Unix毫秒时间戳1556468012678
update_time 必选long审批实例最近更新时间;用于推送数据版本控制 如果 update_mode 值为 UPDATE,则只有传过来的 update_time 有变化时(变大),才会更新审批中心中的审批实例信息。 使用该字段主要用来避免并发时老的数据更新了新的数据1556468012678
display_methodstring列表页打开审批实例的方式。 可选值: - BROWSER: 跳转系统默认浏览器打开 - SIDEBAR: 飞书中侧边抽屉打开 - NORMAL: 飞书内嵌页面打开BROWSER
update_modestring更新方式 可选值: - REPLACE: 全量替换,默认值 - UPDATE: 增量更新 当 update_mode=REPLACE时,每次都以当前推送的数据为最终数据,会删掉审批中心中多余的任务、抄送数据(不在这次推送的数据中); 当 update_mode=UPDATE时,则不会删除审批中心的数据,而只是进行新增和更新实例、任务数据UPDATE
task_list 必选list任务列表备注: 任务数限制 最大不超过200
∟ task_id 必选string审批实例内的唯一标识,用于更新审批任务时定位数据112534
∟ user_id 必选string审批人 user_id,该任务会出现在审批人的【待审批】或【已审批】列表中a987sf9s
∟ open_idstring审批人 open id,和 user id 二选一ou_be73cbc0ee35eb6ca54e9e7cc14998c1
∟ titlestring审批任务名称i18n1
∟ links``必选map【待审批】或【已审批】中使用的跳转链接,用于跳转回三方系统 pc_link 和 mobile_link 必须填一个,填写的是哪一端的链接,即会跳转到该链接,不受平台影响
∟ pc_link``必选stringpc 端的跳转链接,当用户使用飞书 pc 端时,使用该字段进行跳转https://applink.feishu.cn/client/mini_program/open?mode=appCenter&appId=cli_9c9cfc38e07a9101&path=pc/pages/detail?id=1234
∟ mobile_link``必选string移动端 跳转链接,当用户使用飞书 移动端时,使用该字段进行跳转https://applink.feishu.cn/client/mini_program/open?appId=cli_9c9cfc38e07a9101&path=pages/detail?id=1234
∟ status 必选string任务状态 可选值: - PENDING: 待审批 - APPROVED: 任务同意 - REJECTED: 任务拒绝 - TRANSFERRED: 任务转交 - DONE: 任务通过但审批人未操作;审批人看不到这个任务, 若想要看到, 可以通过抄送该人.
∟ extrastring扩展 json,任务结束原因需传complete_reason字段。枚举值与对应说明: - approved:同意 - rejected:拒绝 - node_auto_reject:(因逻辑判断产生的)自动拒绝 - specific_rollback:退回(包括退回到发起人、退回到中间任一审批人) - add:并加签(添加新审批人,和我一起审批) - add_pre:前加签(添加新审批人,在我之前审批) - add_post:后加签(添加新审批人,在我之后审批) - delete_assignee:减签 - forward_resign:转交(转给其他人审批) - recall:撤销(撤回单据,单据失效) - delete :删除审批单 - admin_forward:管理员在后台操作转交 - system_forward:系统自动转交 - auto_skip:自动通过 - manual_skip:手动跳过 - submit_again:重新提交任务 - restart:重新启动流程 - others:其他(作为兜底){\"xxx\":\"xxx\",\"complete_reason\":\"approved\"}
∟ create_time 必选long任务创建时间,Unix 毫秒时间戳1556468012678
∟ end_time 必选long任务完成时间:未结束的审批为 0,Unix 毫秒时间戳1556468012678
∟ update_time 必选longtask最近更新时间,用于推送数据版本控制; 更新策略同 instance 中的 update_time1556468012678
∟ action_contextstring操作上下文,当用户操作时,回调请求中带上该参数,用于传递该任务的上下文数据123456
∟ action_configslist任务级别操作配置,快捷审批目前支持移动端操作
∟ action_type 必选string操作类型,每个任务都可以配置2个操作,会展示审批列表中,当用户操作时,回调请求会带上该字段,表示用户进行了同意操作还是拒绝操作 APPROVE - 同意 REJECT - 拒绝 {KEY} - 任意字符串,如果使用任意字符串,则需要提供 action_nameAPPROVE
∟ action_namestring操作名称,i18n key 用于前台展示,如果 action_type 不是 APPROVAL和REJECT,则必须提供该字段,用于展示特定的操作名称@i18n@5
∟ is_need_reason bool是否需要意见, 如果为true,则用户操作时,会跳转到 意见填写页面false
∟ is_reason_required bool审批意见是否必填false
∟ is_need_attachment bool意见是否支持上传附件false
∟ display_methodstring列表页打开审批任务的方式。 可选值: - BROWSER: 跳转系统默认浏览器打开 - SIDEBAR: 飞书中侧边抽屉打开 - NORMAL: 飞书内嵌页面打开BROWSER
∟ exclude_statistics bool三方任务支持不纳入效率统计。false:纳入效率统计。true:不纳入效率统计false
∟ node_id string节点id:必须同时满足 - 一个流程内,每个节点id唯一。如一个流程下「直属上级」、「隔级上级」等每个节点的Node_id均不一样 - 同一个流程定义内,不同审批实例中的相同节点,Node_id要保持不变。例如张三和李四分别发起了请假申请,这2个审批实例中的「直属上级」节点的node_id应该保持一致node
∟ node_name string节点名称,如「财务审批」「法务审批」,支持中英日三种语言。示例:i18n@name。需要在i18n_resources中传该名称对应的国际化文案i18n@name
cc_listlist抄送列表备注: 抄送数限制 最大不超过200
∟ cc_id 必选string审批实例内唯一标识12345
∟ user_id 必选string抄送人 employee id12345
∟ open_idstring抄送人 open id,和user id 二选一ou_be73cbc0ee35eb6ca54e9e7cc14998c1
∟ links 必选map跳转链接,用于【抄送我的】列表中的跳转 pc_link 和 mobile_link 必须填一个,填写的是哪一端的链接,即会跳转到该链接,不受平台影响
∟  pc_linkstringpc 端的跳转链接,当用户使用飞书 pc 端时,使用该字段进行跳转https://applink.feishu.cn/client/mini_program/open?mode=appCenter&appId=cli_9c9cfc38e07a9101&path=pc/pages/detail?id=1234
∟  mobile_linkstring移动端 跳转链接,当用户使用飞书 移动端时,使用该字段进行跳转https://applink.feishu.cn/client/mini_program/open?appId=cli_9c9cfc38e07a9101&path=pages/detail?id=1234
∟ read_status 必选string阅读状态,空值表示不支持已读未读: 可选值: - READ: 已读 - UNREAD: 未读READ
∟ extrastring扩展 json{"xxx":"xxx"}
∟ titlestring抄送任务名称xxx
∟ create_time``必选long抄送发起时间,Unix 毫秒时间戳1556468012678
∟ update_time``必选long抄送最近更新时间,用于推送数据版本控制 更新策略同 instance 的update_time1556468012678
∟ display_methodstring列表页打开审批任务的方式。 可选值: - BROWSER: 跳转系统默认浏览器打开 - SIDEBAR: 飞书中侧边抽屉打开 - NORMAL: 飞书内嵌页面打开BROWSER
i18n_resources``必选list国际化文案
∟ locale``必选string语言 - zh-CN: 中文 - en-US: 英文 - ja-JP: 日文zh-CN
∟ is_default``必选bool是否默认语言true
∟ texts``必选map文案 key, value, i18n key 以 @i18n@ 开头; 该字段主要用于做国际化,语序用户同时传多个语言的文案,审批中心会根据用户当前的语音环境使用对应的文案,如果没有传用户当前的语音环境文案,则会使用默认的语言文案。{ "@i18n@1": "权限申请", "@i18n@2": "OA审批", "@i18n@3": "Permission" }

注意事项:

  • 需确保审批实例内各类唯一 ID 在审批实例内的唯一性,即使不属于同一实体。
json
{
    "content": "{\"approval_code\":\"60D0F7A2-052D-49E9-B570-C29C836CDF8E\",\"instance_id\":\"216263\",\"status\":\"PENDING\",\"extra\":\"\",\"links\":{\"pc_link\":\"http://182.50.118.46:38080/spa/workflow/static4form/index.html?#/main/workflow/req?requestid=\",\"mobile_link\":\"http://182.50.118.46:38080/spa/workflow/static4form/index.html?#/main/workflow/req?requestid=\"},\"title\":\"@i18n@1\",\"form\":[{\"name\":\"@i18n@2\",\"value\":\"@i18n@3\"}],\"user_id\":\"52d6585f\",\"user_name\":\"342a\",\"open_id\":\"123\",\"department_id\":\"od-8ec33ffec336c3a39a278bc25e931676\",\"department_name\":\"XXXX\",\"start_time\":1622444502000,\"update_time\":1622444502000,\"end_time\":0,\"update_mode\":\"REPLACED\",\"task_list\":[{\"task_id\":\"112253\",\"user_id\":\"52d6585f\",\"links\":{\"pc_link\":\"http://\",\"mobile_link\":\"http://\"},\"status\":\"PENDING\",\"extra\":\"\",\"title\":\"同意\",\"create_time\":1566468012678,\"end_time\":0,\"update_time\":1566468012678,\"action_context\":\"123456\",\"action_configs\":[{\"action_type\":\"APPROVE\",\"action_name\":\"@i18n@9\",\"is_need_reason\":true,\"is_reason_required\":true,\"is_need_attachment\":true}]}],\"cc_list\":[{\"cc_id\":\"1231243\",\"user_id\":\"a987sf9s\",\"open_id\":\"\",\"links\":{\"pc_link\":\"http://\",\"mobile_link\":\"http://\"},\"read_status\":\"READ\",\"extra\":\"\",\"title\":\"XXX\",\"create_time\":1556468012678,\"update_time\":1566468012678}],\"i18n_resources\":[{\"locale\":\"zh-CN\",\"is_default\":true,\"texts\":{\"@i18n@1\":\"离开\",\"@i18n@2\":\"\",\"@i18n@3\":\"2020-08-01\"}},{\"locale\":\"en-US\",\"is_default\":false,\"texts\":{\"@i18n@1\":\"Leave\",\"@i18n@2\":\"Day\",\"@i18n@3\":\"2020-08-01\"}},{\"locale\":\"ja-JP\",\"is_default\":false,\"texts\":{\"@i18n@1\":\"Leave\",\"@i18n@2\":\"Day\",\"@i18n@3\":\"2020-08-01\"}}]}"
}

响应

响应体

参数类型必须说明
codeint返回码,非0表示失败
msgString返回码的描述
datamap返回业务信息

响应体示例

json
{
    "code": 0,
    "msg": "success",
    "data": {
    }
}

内容来源:飞书开放平台 · 自动爬取整理