ヤマムギ

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認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。

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

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

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

 - AWS ,

  関連記事

ECR(Amazon Elastic Container Registry)にコンテナイメージをアップロードする

「Pandocサーバーのコンテナイメージを作成する」で作成したイメージをAWS …

EC2とRDSのMySQLを他のAWSアカウントへ移設する

他のAWSアカウントへシステムごと移設した場合の手順です。 構成はEC2とRDS …

Cloud9初回アクセス時にCodeCommitのリポジトリを自動でクローンする

CloudFormationからCloud9環境を作成する際に、Reposito …

AWS Toolkit for Eclipseをセットアップ(2021年版)

AWS Toolkit for Eclipseをセットアップするで6年前に書いて …

Lambda関数からAWS Systems Managerパラメータストアの値を取得して更新する

Lambda関数で自分自身の環境変数を更新する だと、Lambdaのエイリアスと …

IAMセッションポリシーの利用(GetFederationToken)

GetFederationTokenでのセッションポリシーは、呼び出し元のIAM …

AWS CodPipelineの実行モードの動作確認しました

AWS CodePipelineの3つの実行モード(SUPERSEDED(優先済 …

AWS LambdaのSQSへの自前ポーリングをやめてSQSイベントソーストリガーに変更した

以前は、LambdaがSQSからメッセージを受信するには、キューをポーリングして …

boto3(Python SDK) s3 get_object でバイト範囲を指定する

S3のGetObjectアクションでバイト範囲を指定することができます。 それに …

AWS Cloud9でJavaサンプルを実行する

リモートで共有開発ができるCloud9便利ですね。 Cloud9でJavaのサン …