API Gateway を Swagger 形式(API Gateway 拡張機能あり)でエクスポートする方法を教えてください
困っていた内容
Amazon API Gateway(REST API)に関する問い合わせでサポートに確認したところ「Swagger + API Gateway 拡張機能ありの YAML 形式でエクスポートしたファイルをご提供ください」と言われましたが、取得方法がわかりません。取得方法を教えてください。
どう対応すればいいの?
API Gateway コンソールの場合は「ステージ」の「ステージアクション」から「エクスポート」で取得できます。
AWS CLI の場合はget-exportコマンドから取得できます。
参考:API Gateway から REST API をエクスポートする - Amazon API Gateway
API Gateway コンソールの場合
API Gateway コンソールを開き、取得対象の API を選択
「ステージ」から取得対象のステージ名を選択
「ステージアクション」の「エクスポート」を選択
次の値を指定して「API をエクスポート」の選択
- API 仕様タイプ:
Swagger
- 形式:
YAML
- 拡張機能:
API Gateway 拡張機能ありでエクスポート
指定した形式でファイルがエクスポートされます。
---
swagger: "2.0"
info:
description: "Technical Support Notes"
version: "2024-11-29T01:02:03Z"
title: "hato-apigw"
...
AWS CLIの場合
get-exportを実行すると、指定したファイル名でエクスポートされます。
$ aws apigateway get-export \
--parameters extensions='apigateway' \
--rest-api-id 【API ID】 \
--stage-name 【ステージ名】 \
--export-type swagger \
--accepts "application/yaml" \
【出力ファイル名】
{
"contentType": "application/octet-stream",
"contentDisposition": "attachment; filename=\"swagger_2024-11-29T01:02:03Z.yaml\""
}