Workflow 測試 API(更新 / 發布)
Workflow 測試 API(更新 / 發布)
支援開發者在 CodeX、Claude 等 AI 工具(已安裝 GPTBots Agent Skill)把 Skills 生成的 .flow 檔案配置匯入到一個 GPTBots 平台目標 Workflow 並發布上線。
⚠️ 僅「測試模式」的 Workflow 可被呼叫。 正式模式呼叫回傳
403200。測試模式在建立 Workflow 時選擇,建立後不可修改。
Workflow 更新 API(匯入 .flow 替換目前版本)
把 .flow 檔案匯入到目標 Workflow(測試模式),將替換後的目前配置儲存為一個新的草稿版本(同時成為「目前版本」)。具體規則如下:
- 節點中的知識庫(資料組)/ 資料庫表 / 知識文件:按 WorkflowID 維度,仍屬於目標 Workflow 的保留、否則丟棄;
- 關聯 workflow / 工具(外掛):按 組織 維度,仍有效的保留、否則丟棄;
- 第三方憑證:匯入到現有 Workflow 時按「相同節點/外掛 ID」回填目標已配置的憑證,不清空已鑑權節點,保證可用性;
請求方式
POST
呼叫位址
https://api-${endpoint}.gptbots.ai/v1/workflow/version/import
請求
請求範例
curl -X POST 'https://api-${endpoint}.gptbots.ai/v1/workflow/version/import' \
-H 'Authorization: Bearer {WORKFLOW_API_KEY}' \
-H 'Content-Type: multipart/form-data' \
-F 'file=@my-workflow.flow' \
-F 'versionDesc=Imported by AI tool'
curl -X POST 'https://api-${endpoint}.gptbots.ai/v1/workflow/version/import' \
-H 'Authorization: Bearer {WORKFLOW_API_KEY}' \
-H 'Content-Type: multipart/form-data' \
-F 'file=@my-workflow.flow' \
-F 'versionDesc=Imported by AI tool'
此代碼塊在浮窗中顯示
請求標頭
| 欄位 | 類型 | 描述 |
|---|---|---|
| Authorization | Bearer {API Key} | 使用 Authorization: Bearer {API Key} 進行呼叫驗證,請在目標 Workflow 的「整合 / API」渠道取得金鑰作為 API Key。 |
| Content-Type | multipart/form-data | 資料類型,取值為 multipart/form-data。 |
請求參數
| 欄位 | 類型 | 必填 | 描述 |
|---|---|---|---|
| file | file | 是 | 二進位 .flow 檔案。 |
| versionDesc | text | 否 | 版本說明。 |
版本號由伺服端自動生成(取最新版本末段 +1,無歷史版本則為
1.0.0)。
回應
回應範例
{
"code": 0,
"msg": "OK",
"data": {
"botId": "xxx",
"botType": "Workflow",
"version": "1.0.3"
}
}
{
"code": 0,
"msg": "OK",
"data": {
"botId": "xxx",
"botType": "Workflow",
"version": "1.0.3"
}
}
此代碼塊在浮窗中顯示
成功回應
| 欄位 | 類型 | 描述 |
|---|---|---|
| botId | string | 目標 Workflow ID。 |
| botType | string | 固定為 Workflow。 |
| version | string | 本次儲存的版本號(即目前版本)。 |
失敗回應
| 欄位 | 類型 | 描述 |
|---|---|---|
| code | int | 錯誤碼。 |
| msg | string | 錯誤詳情。 |
Workflow 發布 API(按版本號發布為線上版本)
將目標(測試模式)Workflow 的指定版本號發布為線上生產版本(該版本變為「線上」,其餘版本回到草稿狀態)。
請求方式
POST
呼叫位址
https://api-${endpoint}.gptbots.ai/v1/workflow/version/release
請求
請求範例
curl -X POST 'https://api-${endpoint}.gptbots.ai/v1/workflow/version/release' \
-H 'Authorization: Bearer {WORKFLOW_API_KEY}' \
-H 'Content-Type: application/json' \
-d '{
"version": "1.0.3"
}'
curl -X POST 'https://api-${endpoint}.gptbots.ai/v1/workflow/version/release' \
-H 'Authorization: Bearer {WORKFLOW_API_KEY}' \
-H 'Content-Type: application/json' \
-d '{
"version": "1.0.3"
}'
此代碼塊在浮窗中顯示
請求標頭
| 欄位 | 類型 | 描述 |
|---|---|---|
| Authorization | Bearer {API Key} | 使用 Authorization: Bearer {API Key} 進行呼叫驗證,請在目標 Workflow 的「整合 / API」渠道取得金鑰作為 API Key。 |
| Content-Type | application/json | 資料類型,取值為 application/json。 |
請求參數
| 欄位 | 類型 | 必填 | 描述 |
|---|---|---|---|
| version | string | 是 | 要發布為線上的版本號(如 1.0.3),通常取「更新」介面回傳的 version。 |
回應
回應範例
{
"code": 0,
"msg": "OK"
}
{
"code": 0,
"msg": "OK"
}
此代碼塊在浮窗中顯示
成功回應
無資料體,code 為 0 即發布成功。
失敗回應
| 欄位 | 類型 | 描述 |
|---|---|---|
| code | int | 錯誤碼。 |
| msg | string | 錯誤詳情。 |
錯誤碼
更新與發布介面共用同一套錯誤碼:
| Code | Message |
|---|---|
| 0 | 成功 |
| 40348 | Workflow 不存在 |
| 403200 | 非測試模式:僅測試模式的 Workflow 可被該 API 更新或發布 |
| 403201 | 匯入檔案類型與目標 Workflow 類型不符 |
| 403202 | 匯入的 .flow 檔案解析失敗 |
| 403203 | 指定的版本號不存在 |
| 403204 | API Key 類型與介面不符:本介面只接受 Workflow Key |
| 40353 | 已發布數量超出方案上限 |
