# レシピのライフサイクル管理
# クイックリファレンス
タイプ | リソース | 説明 |
---|---|---|
POST | /api/packages/export/:manifest_id | マニフェストに基づいてパッケージをエクスポートします。 |
POST | /api/packages/import/:folder_id | パッケージをフォルダーにインポートします。 |
GET | /api/packages/:id | ID に基づいてパッケージを取得します。 |
GET | /api/packages/:id/download | パッケージをダウンロードします。 |
# マニフェストに基づいたパッケージのエクスポート
マニフェストに基づいてパッケージをエクスポートします。
WARNING
このエンドポイントに対する権限を API クライアントに付与すると、生成される zip ファイルを確認することにより、レシピ、Lookup table、PubSub トピック、メッセージテンプレートなどのその他のアセットを表示することも間接的に可能になることに注意してください。
POST /api/packages/export/:id
これは非同期リクエストです。エクスポートされるパッケージの詳細を取得するには、ID に基づくパッケージの取得エンドポイントを使用します。
# URL パラメータ
名前 | 型 | 説明 |
---|---|---|
id | string 必須 | エクスポートマニフェスト ID。 |
# サンプルリクエスト
curl -X POST 'https://www.workato.com/api/packages/export/<manifest_id>' \
-H 'x-user-email: <email>' \
-H 'x-user-token: <token>'
# レスポンス
{
"id":242,
"operation_type":"export",
"status":"completed",
"export_manifest_id":3,
"download_url":"https://www.workato-staging-assets.com/packages/zip_files/000/000/242/original/exportdemo.zip"
}
# フォルダーへのパッケージのインポート
パッケージ (zip ファイル) をフォルダーにインポートします。
WARNING
このエンドポイントに対する権限を API クライアントに付与すると、パッケージをインポートすることにより、レシピ、Lookup table、PubSub トピック、メッセージテンプレートなどのその他のアセットを作成または更新することも間接的に可能になることに注意してください。
POST /api/packages/import/:id
これは非同期リクエストです。インポートされるパッケージの詳細を取得するには、ID によるパッケージの取得エンドポイントを使用します。
入力 (zip ファイル) は、パッケージのコンテンツを含む application/octet-stream
ペイロードです。インポート時に実行中のレシピを再起動する必要がある場合は、URL パラメータ restart_recipes を true
にする必要があります。
# URL パラメータ
名前 | 型 | 説明 |
---|---|---|
id | string 必須 | フォルダー ID。 |
restart_recipes | boolean 任意 | インポート中の実行中のレシピの再起動を許可するには、値を true にする必要があります。実行中のレシピが存在し、このパラメータが false であるか、指定されていない場合は、パッケージはインポートできません。 |
# サンプルリクエスト
curl -X POST 'https://www.workato.com/api/packages/import/<folder_id>?restart_recipes=true' \
-H 'Authorization: Bearer <api_token>'
-H 'Content-Type: application/octet-stream' \
--data-binary @'path/to/local/file.zip'
# レスポンス
{
"id":251,
"operation_type":"import",
"status":"completed",
"download_url":"https://www.workato-staging-assets,com/packages/zip_files/000/000/242/original/exportdemo.zip"
}
# ID に基づくパッケージの取得
インポートまたはエクスポートされたパッケージの詳細を取得します。
GET /api/packages/:id
# URL パラメータ
名前 | 型 | 説明 |
---|---|---|
id | string 必須 パッケージ ID。 |
# サンプルリクエスト
curl -X GET 'https://www.workato.com/api/packages/<package_id>' \
-H 'x-user-email: <email>' \
-H 'x-user-token: <token>'
# レスポンス
- 以下は、完了したエクスポートマニフェストの取得からのレスポンスを示しています。
{
"id":242,
"operation_type":"export",
"status":"completed",
"export_manifest_id":3,
"download_url":"https://www.workato-staging-assets,com/packages/zip_files/000/000/242/original/exportdemo.zip"
}
- 以下は、失敗したエクスポートマニフェストの取得からのレスポンスを示しています。
{
"id":242,
"operation_type":"export",
"status":"failed",
"error":"error_message",
"export_manifest_id":4,
"download_url":"null"
}
- 以下は、完了したインポートの取得からのレスポンスを示しています。
NOTE
完了したインポートについては、各レシピの import_result も確認することが重要です。返される import_result の値については、こちらを参照してください。
{
"id":242,
"operation_type":"export",
"status":"completed",,
"download_url":"https://www.workato-staging-assets,com/packages/zip_files/000/000/242/original/importdemo.zip",
"recipe_status":[
{
"id": 12345,
"import_result": "no_update_or_update_without_restart"
},
{
"id": 12346,
"import_result": "restarted"
},
{
"id": 12347,
"import_result": "stopped"
}
]
}
- 以下は、失敗したインポートの取得からのレスポンスを示しています。
NOTE
失敗したインポートについては、レシピの中にはインポートが失敗する前に更新されていないものもあるため、すべてのレシピが recipe_status
で返される訳ではありません。返される import_result の値については、こちらを参照してください。
{
"id":242,
"operation_type":"export",
"status":"completed",
"download_url":"https://www.workato-staging-assets,com/packages/zip_files/000/000/242/original/importdemo.zip",
"recipe_status":[
{
"id": 12345,
"import_result": "no_update_or_update_without_restart"
},
{
"id": 12346,
"import_result": "restarted"
},
{
"id": 12347,
"import_result": "stopped"
}
]
}
# レシピの import_result の値
以下の6つの結果が返される可能性があります。
no_update_or_update_without_restart
- これは、レシピに再起動の必要がなかったことを示しています。レシピは再起動なしで更新できたか、更新が行われなかったかのどちらかです。 インポートは成功しました。not_found
- レシピが見つからず、予期しないエラーが発生しました。このエラーはまれにしか発生しません。 インポートは失敗し、レシピの更新は行われませんでした。stop_failed
- 再起動する必要のあるレシピに対して、レシピを停止しようとしました。この状態は、レシピを停止できなかったことを示しています。 インポートは失敗し、レシピの更新は行われませんでした。stopped
- レシピを停止しましたが、レシピ内のエラーのためにレシピは再起動されませんでした。 インポートは失敗し、レシピは更新されましたが再起動されませんでした。restart_failed
- レシピの再起動を試行しましたが、再起動できませんでした。 インポートは失敗し、レシピは更新されましたが再起動されませんでした。restarted
- 更新後に、正常にレシピを再起動しました。 インポートは成功しました。
# パッケージのダウンロード
パッケージをダウンロードします。
GET /api/packages/:id/download
# URL パラメータ
名前 | 型 | 説明 |
---|---|---|
id | string 必須 パッケージ ID。 |
# サンプルリクエスト
curl -L -X GET 'https://www.workato.com/api/packages/<package_id>/download' \
-H 'x-user-email: <email>' \
-H 'x-user-token: <token>'
cURL でリダイレクトに従う
リダイレクトパスに従うには、-L
フラグを使用します。
# レスポンス
成功すると、パッケージのコンテンツにリダイレクトされます。パッケージが見つからないか、コンテンツがない場合には、404
が返されます。
Last updated: 2023/8/31 1:07:14