コンテンツにスキップ

ワークスペースリソースタスクの状態照会



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 ダウンロード URL

4. エクスポートタスクの照会について

エクスポートタスクが成功すると、状態は ok になり、url に完全な短期有効な静的 ZIP ダウンロード URL が返されます。呼び出し元はこの URL を直接使用して resource.zip をストリーミングダウンロードでき、他の Studio API の URL に変換する必要はありません。

状態の照会では、taskId に対応するタスク作成者とワークスペースが検証されます。静的ファイルのダウンロードリクエスト自体では、DF-API-KEY 認証は実行されません。完全なダウンロード URL を記録、転送、長期保存しないでください。タスクの有効期間内にできるだけ早くダウンロードを完了してください。

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"
}

フィードバック

このページは役に立ちましたか?