バージョン履歴一覧¶
GET /api/v1/pipeline_history/{pl_uuid}/list
概要¶
現在の構成と直近90日間の履歴を返します。idの降順でページネーションされ、pageSizeのデフォルトは30です。初回画面ではcurrentPipelineInfoを返し、historyRecordは軽量なメタデータです。
ルートパラメータ¶
| パラメータ名 | 型 | 必須 | 説明 |
|---|---|---|---|
| pl_uuid | string | Y | Pipeline UUID |
Query リクエストパラメータ¶
| パラメータ名 | 型 | 必須 | 説明 |
|---|---|---|---|
| seqID | integer | ページネーションカーソル。正の整数。前のページのhistoryRecordの最後の項目のidを指定します。uuidまたはconfigVersionではありません。初回画面では省略します。次のページでは、このidより小さい履歴を返します。 空の許可: False |
|
| pageSize | integer | 1ページあたりの履歴件数。デフォルトは30、最小1、最大100。初回画面で個別に返される現在のバージョンには含まれません。 空の許可: False $minValue: 1 $maxValue: 100 |
パラメータ補足説明¶
ワークスペースのカスタムPipelineの現在の構成とアーカイブ済みの履歴バージョンを照会します。バージョン監査、CI比較、復元前のバージョン選択に適しています。
ページネーションの流れ¶
- 初回呼び出しではseqIDを渡さず、pageSizeはデフォルトの30(範囲は1~100)です。
- 初回画面のcontentには、currentPipelineInfo(現在の完全なconfigを含む)とhistoryRecord(履歴メタデータのみで、configを含まない)が含まれます。新規作成または未変更のリソースの場合、historyRecordは空になることがあります。
- 次のページでは、このページのhistoryRecordの最後のレコードの数値idをseqIDとして渡します。履歴のuuidやconfigVersionは渡さないでください。履歴はidの降順で返され、次のページではカーソルより小さいidのレコードのみが返され、currentPipelineInfoは重複して返されません。
- 返された件数がpageSizeより少ない場合は終了できます。ちょうど1ページ分の場合は続けてリクエストし、空配列はそれ以上の履歴がないことを示します。このAPIは総数やページ番号を返しません。
リストは、アーカイブ時刻が直近90日以内の履歴のみを返します。現在の構成は常にメインテーブルから取得されるため、この期間の制限を受けません。ページネーションは固定スナップショットではなく、並行して生成された新しいバージョンは、初回画面を再リクエストして確認する必要があります。監査用の履歴内容を永続的に保存する場合は、保持期間内に自身でエクスポートして保存してください。
使用前提¶
所属するワークスペースのDF-API-KEYを使用してOpenAPIサービスを呼び出します。照会には読み取り権限が必要です。復元とクローンにはPipeline管理権限および書き込み権限が必要です。このAPIでは、リクエストボディを使用して他のワークスペースや操作者を指定することはできません。例の中のEndpoint、リソースUUID、API-Keyはすべてプレースホルダーです。置き換えてから呼び出し、API Keyをログに出力しないでください。
レスポンス例は架空のリソースを使用し、代表的な業務フィールドを示しています。実際のレスポンスには、通常のPipeline APIの他のフィールドが含まれる場合があります。呼び出し側は新しく追加されるフィールドに対応できるようにしてください。
バージョンのフィールド¶
| フィールド | 意味 |
|---|---|
| configVersion | 構成バージョン番号。新規作成されたリソースは1から始まります。有効化・無効化ではこのバージョンは進みません |
| configVersionAt | この構成バージョンが生成された時刻。Unix秒単位のタイムスタンプであり、ミリ秒ではありません |
| configVersionOperator / configVersionOperatorInfo | 操作者の識別子と表示情報。表示情報を解析できない場合は空オブジェクトになることがあります |
| configVersionSource / configVersionAction | バージョンの出所とアクション。例: openapi/modify、history/history_restore |
| configVersionSourceInfo | 出所の補足情報。履歴操作にはpipelineHistoryUUID、pipelineUUID、configVersionが含まれます |
| createAt | 履歴スナップショットのアーカイブ時刻。configVersionAtより遅い場合があります。履歴リストの保持期間はこのフィールドに基づいて計算されます |
履歴のconfig.contentとconfig.testDataはBase64エンコードされた文字列です。呼び出し側はまずBase64デコードし、次にUTF-8で読み取ります。testDataはテストサンプルであり、読み取りや復元APIによって自動的に実行されることはありません。configVersionSourceInfo内の出所バージョン番号を現在のバージョン番号とみなさないでください。
異常処理¶
不正なページネーションパラメータは拒否されます。リソースが存在しない、削除されている、または現在のワークスペースに属していない場合は照会できません。読み取り失敗時はエラータイプに応じて再試行できますが、リソースUUIDを変更してワークスペース権限を回避することはできません。
リクエスト例¶
curl 'https://openapi.guance.com/api/v1/pipeline_history/<pl_uuid>/list?pageSize=30' -H 'DF-API-KEY: <API-Key>'
レスポンス¶
{
"code": 200,
"content": {
"currentPipelineInfo": {
"pipelineUUID": "pl_example",
"configVersion": 3,
"configVersionAt": 1788800100,
"configVersionOperator": "acnt_example",
"configVersionOperatorInfo": {},
"configVersionSource": "openapi",
"configVersionAction": "modify",
"configVersionSourceInfo": {},
"config": {
"name": "demo",
"type": "local",
"category": "logging",
"source": [
"nginx"
],
"content": "YWRkX2tleShjaXR5LCAic2hhbmdoYWkiKQ==",
"testData": "W10=",
"dataType": "line_protocol",
"asDefault": 0,
"enableByLogBackup": 0,
"extend": {}
}
},
"historyRecord": [
{
"id": 101,
"uuid": "plh_example",
"pipelineUUID": "pl_example",
"configVersion": 2,
"configVersionAt": 1788800000,
"configVersionOperator": "acnt_example",
"configVersionOperatorInfo": {},
"configVersionSource": "openapi",
"configVersionAction": "modify",
"configVersionSourceInfo": {},
"createAt": 1788800100
}
]
},
"errorCode": "",
"message": "",
"success": true,
"traceId": "TRACE_EXAMPLE"
}