跳转至

工作空间资源任务状态查询



GET /api/v1/workspace/resource/query_action_status

概述

查询工作空间资源导入导出任务状态

Query 请求参数

参数名 类型 必选 说明
taskId string Y 任务ID
例子: task_xxx
允许为空: False

参数补充说明

1. 接口用途

查询工作空间资源导入或导出任务的执行状态。

日志索引导入失败时返回 HTTP 400 和原业务错误码/原因,content.import_info.failedItems 包含 resourceType、fileName、name、errorCode、message。同一份 import_info 保留 successCount、failCount,并按需返回成功转换的新建索引 convertedItems(文件、索引名、字段及 from/to)。不支持的索引模式整项跳过,skippedItems 返回资源类型、文件、资源名 name、具体索引名 indexName、reason=unsupportedIndexMode、错误码和原因;skippedCount 为同名及模式不支持的跳过总数。跳过不计入成功或失败,仅有跳过时正常返回 status=ok。旧任务缓存保持原行为;部分失败不代表已成功资源回滚。

返回结构与前台接口保持一致,适用于: - 导出任务结果查询 - 导入任务结果查询 - 错误码和失败信息查询


2. 常见状态值

状态值 说明
start 任务已创建,尚未开始执行
running 任务执行中
ok 任务执行成功
error 任务执行失败
cancel 任务已取消

3. 常见返回字段说明

字段名 说明
status 当前任务状态
action 任务类型,常见为 import 或 export
message 附加说明
error_code 失败时的错误码
import_info 导入/导出统计和失败信息
name_list 某些任务附带的资源名称列表
url 导出成功后返回的短期静态 ZIP 下载地址

4. 导出任务查询说明

导出任务成功后,状态为 ok,并在 url 中返回完整的短期静态 ZIP 下载地址。调用方可以直接使用该地址流式下载 resource.zip,无需再转换为其他 Studio API 地址。

状态查询会校验 taskId 对应的任务创建者和工作空间;静态文件下载请求本身不再执行 DF-API-KEY 鉴权。请勿记录、转发或长期保存完整下载地址,并在任务有效期内尽快完成下载。

SLO 资源包或工作空间资源导出完成后,可查看 import_info.exportInfo。若导出过程中有部分对象失败,优先使用资源级明细:

{
  "result": "partial",
  "permissionDeniedResourceCount": 1,
  "otherSkippedResourceCount": 1,
  "resourceFailureInfo": {
    "schemaVersion": 1,
    "totalCount": 2,
    "permissionDeniedCount": 1,
    "otherCount": 1,
    "byReason": {
      "permission_denied": 1,
      "serialize_failed": 1
    },
    "items": [
      {
        "resourceType": "checker",
        "resourceUUID": "rul_xxx",
        "resourceName": "支付可用性检查器",
        "reasonCategory": "permission",
        "reasonCode": "permission_denied",
        "affectedSloList": [
          {
            "sloUUID": "monitor_xxx",
            "sloName": "支付可用性 SLO"
          }
        ]
      }
    ]
  }
}

失败原因码包括 permission_denied、dependency_not_found、resource_not_found、serialize_failed、unsupported_resource 和 unknown。

旧客户端仍可查看:

import_info.exportFailedInfo

5. 导入任务查询说明

导入任务成功后,通常可在 import_info 中看到:

  • successCount
  • failCount

某些资源的详细失败原因会体现在 error_code 或导入任务内部错误统计中。


6. 轮询建议

建议每 2 到 5 秒轮询一次,直到状态变成: - ok - error - cancel

请求例子

curl 'https://openapi.guance.com/api/v1/workspace/resource/query_action_status?taskId=task_xxx' \
-H 'DF-API-KEY: <DF-API-KEY>' \
--compressed

响应

{
    "code": 200,
    "content": {
        "status": "ok",
        "action": "export",
        "error_code": "",
        "import_info": {},
        "url": "https://static.example.com/temporary/random_task/resource.zip"
    },
    "errorCode": "",
    "message": "",
    "success": true,
    "traceId": "TRACE-XXXX"
}

文档评价

文档内容是否对您有帮助?