Appearance
异步运行工作流
⚡ 异步执行
此接口立即返回执行 ID,不等待工作流执行完成。适用于长时间运行的工作流。
接口描述
异步执行指定的工作流,立即返回执行 ID,不等待工作流执行完成。
请求方式
POSThttps://newapi.iflyrpa.com/api/rpa-openapi/workflows/execute-async认证要求
需要带 BEARER TOKEN
请在请求头中添加:
Authorization: Bearer {YOUR_API_KEY}请求头
| 字段名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| Content-Type | String | 是 | application/json |
| Authorization | String | 是 | Bearer |
请求体参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| project_id | String | 是 | 工作流项目 ID |
| exec_position | String | 是 | 执行位置,通常为 "EXECUTOR" |
| params | Object | 否 | 工作流参数,key-value 对象 |
| version | Integer | 否 | 工作流版本号,不填默认运行当前启用版本 |
请求示例
示例 1:带参数的异步执行
json
{
"project_id": "1965981379635499008",
"exec_position": "EXECUTOR",
"params": {
"content": "调用"
}
}示例 2:不带参数的异步执行
json
{
"project_id": "1966016474983485440",
"exec_position": "EXECUTOR",
"params": {}
}示例 3:指定版本的异步执行
json
{
"project_id": "1972635107658616832",
"exec_position": "EXECUTOR",
"params": {},
"version": 8
}响应格式
成功响应 (HTTP 200)
json
{
"code": "0000",
"msg": "",
"data": {
"executionId": "c67ff431-6d9e-489e-b013-796d50a4b15b"
}
}响应字段说明
顶层字段
| 字段名 | 类型 | 说明 |
|---|---|---|
| code | String | 响应代码,"0000" 表示成功 |
| msg | String | 响应消息 |
| data | Object | 返回的数据对象 |
data 字段
| 字段名 | 类型 | 说明 |
|---|---|---|
| executionId | String | 工作流执行 ID,用于后续查询执行状态 |
说明
- 此接口为异步调用,返回执行 ID 后立即返回结果,不等待工作流执行完成
- 可使用返回的
executionId来查询工作流的执行状态 - 如果不指定
version参数,系统会运行该工作流当前启用的版本 params参数中的键必须与工作流定义中的参数名称匹配
代码示例
cURL
bash
curl -X POST "https://newapi.iflyrpa.com/api/rpa-openapi/workflows/execute-async" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer {YOUR_API_KEY}" \
-d '{
"project_id": "1965981379635499008",
"exec_position": "EXECUTOR",
"params": {
"content": "调用"
}
}'Python
python
import requests
import json
url = "https://newapi.iflyrpa.com/api/rpa-openapi/workflows/execute-async"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer {YOUR_API_KEY}"
}
data = {
"project_id": "1965981379635499008",
"exec_position": "EXECUTOR",
"params": {
"content": "调用"
}
}
response = requests.post(url, headers=headers, json=data)
result = response.json()
print(result)
# 获取执行 ID
execution_id = result['data']['executionId']
print(f"执行 ID: {execution_id}")JavaScript
javascript
const apiKey = "{YOUR_API_KEY}";
const url = "https://newapi.iflyrpa.com/api/rpa-openapi/workflows/execute-async";
const data = {
"project_id": "1965981379635499008",
"exec_position": "EXECUTOR",
"params": {
"content": "调用"
}
};
fetch(url, {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": `Bearer ${apiKey}`
},
body: JSON.stringify(data)
})
.then(response => response.json())
.then(result => {
console.log(result);
const executionId = result.data.executionId;
console.log(`执行 ID: ${executionId}`);
})
.catch(error => console.error("Error:", error));