困っていた内容
Amazon API Gateway に関する問い合わせでサポートに確認したところ「Swagger + API Gateway Extensions の YAML 形式でエクスポートしたファイルをご提供ください」と言われましたが、取得方法がわかりません。取得方法を教えてください。
どう対応すればいいの?
API Gateway コンソールの場合は「ステージ」の「エクスポート」タブから取得できます。
AWS CLI の場合はget-exportコマンドから取得できます。
参考:API Gateway から REST API をエクスポートする - Amazon API Gateway
API Gateway コンソールの場合
API Gateway コンソールを開き、取得対象の API をクリック
ステージ -> 取得対象のステージ -> エクスポートタブの順にクリック
「Export as...」はSwagger
を選択し、「Swagger +API Gateway 拡張の形式でエクスポート」のYAML
をクリック
指定した形式でファイルがエクスポートされます。
【APIの名前】-【ステージ名】-swagger-apigateway.yaml
---
swagger: "2.0"
info:
description: "Technical Support Notes"
version: "2022-01-01T01:01:01Z"
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_2022-01-01T01:01:01Z.yaml\""
}