ヤマムギ

growing hard days.

*

API Gateway 作成済REST APIの定義をSwaggerの形式でエクスポート

      2020/05/18

SAMで似たようなAPIを作りたくて、エクスポートしました。

Swaggerは、RESTful APIを構築するためのオープンソースフレームワークで、Swaggerを使うことで、API Gatewayでも定義をエクスポート、インポートできます。
非常に便利です。

マネジメントコンソールのAPI Gatewayで作成済のAPIで対象のステージを選択しました。

[エクスポート]タブで[次の形式でエクスポート]でSwaggerを選択して、[Swagger + API Gateway 拡張の形式でエクスポート]でYAMLを選択しました。

これで完了です。
簡単ですね。

「+ API Gateway 拡張の形式」を選択することで、x-amazon-apigateway-integrationなど API Gatewayの情報も出力されます。

インポート用に以下を調整しました。

  • versionを1.0.0にしました。
  • host行を削除しました。
  • 既存のAPIが更新されると困るので。titleを変更しました。

インポートテストをしてみます。

インポートを選択しました。

エクスポートしたSwaggerファイルを選択して、インポートしました。
Lambdaだけ再選択して実行権限を付与しました。
あとは、そのままテストして正常動作を確認しました。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS ,

ad

ad

  関連記事

よくあるサーバーレスアーキテクチャで質問フォーム

この記事はServerless2 Advent Calendar 2018に参加 …

AWS Certificate Manager証明書とAmazon Route 53でAmazon API GatewayのAPIのカスタムドメイン名前解決する

AWS Certificate ManagerとAmazon Route 53と …

S3オブジェクトへのリクエストをCloudTrail, Athenaで識別する(パーティショニング)

Amazon S3オブエジェクトへのリクエストをCloudTrail, Athe …

ちょっとしたCLI作業にEC2起動テンプレート

CLIでちょっとした作業したいだけのときに、Cloud9を使うまでもないなあと思 …

AWS CLIを使用せずにCodeCommitへhttpsで接続する

AWS CLIやアクセスキーID、シークレットアクセスキーなどを開発環境にセット …

ads.txtをS3に配置してCloudFrontで設定する

ads.txtのダウンロード ads.txt設置してねってメールが来てました。 …

AWS Transit GatewayのAcceleratedサイト間VPN接続確認

Transit GatewayでVPN接続を作成するときに、Global Acc …

AWS Storage Gatewayボリュームゲートウェイを作成してWindowsから使用

ボリュームゲートウェイの作成 Storage Gateway作成メニューからボリ …

AWS CodeStarで静的webサイトのテンプレートプロジェクトを作成する

執筆環境の検討中です。 CodeCommitは使うつもりで、コミットしたときにE …

AWS Data Pipelineを使ってDynamoDBのアイテムを全件S3バケットに書き出した

ちょっと試してみたくてやってみました。 手順はこちらのチュートリアルを参考にすす …