Ekspor a REST API dari API Gateway - APIGerbang Amazon

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Ekspor a REST API dari API Gateway

Setelah Anda membuat dan mengonfigurasi API Gateway REST API in, menggunakan konsol API Gateway atau sebaliknya, Anda dapat mengekspornya ke API file Terbuka menggunakan Ekspor API GatewayAPI, yang merupakan bagian dari Layanan Kontrol API Gateway Amazon. Untuk menggunakan Ekspor API GatewayAPI, Anda harus menandatangani API permintaan Anda. Untuk informasi selengkapnya tentang permintaan penandatanganan, lihat Menandatangani AWS API permintaan di Panduan IAM Pengguna. Anda memiliki opsi untuk menyertakan ekstensi integrasi API Gateway, serta ekstensi Postman, dalam file API definisi Terbuka yang diekspor.

catatan

Saat mengekspor API menggunakan AWS CLI, pastikan untuk menyertakan parameter ekstensi seperti yang ditunjukkan pada contoh berikut, untuk memastikan bahwa x-amazon-apigateway-request-validator ekstensi disertakan:

aws apigateway get-export --parameters extensions='apigateway' --rest-api-id abcdefg123 --stage-name dev --export-type swagger latestswagger2.json

Anda tidak dapat mengekspor API jika muatannya bukan dari application/json jenisnya. Jika Anda mencoba, Anda akan mendapatkan respons kesalahan yang menyatakan bahwa model JSON tubuh tidak ditemukan.

Permintaan untuk mengekspor a REST API

Dengan EksporAPI, Anda mengekspor yang sudah ada REST API dengan mengirimkan GET permintaan, menentukan to-be-exported API sebagai bagian dari jalur. URL Permintaan URL adalah dari format berikut:

OpenAPI 3.0
https://<host>/restapis/<restapi_id>/stages/<stage_name>/exports/oas30
OpenAPI 2.0
https://<host>/restapis/<restapi_id>/stages/<stage_name>/exports/swagger

Anda dapat menambahkan string extensions kueri untuk menentukan apakah akan menyertakan ekstensi API Gateway (dengan integration nilai) atau ekstensi Postman (dengan postman nilai).

Selain itu, Anda dapat mengatur Accept header ke application/json atau application/yaml untuk menerima output API definisi dalam JSON atau YAML format, masing-masing.

Untuk informasi selengkapnya tentang mengirimkan GET permintaan menggunakan Ekspor API GatewayAPI, lihat. GetExport

catatan

Jika Anda mendefinisikan model di AndaAPI, mereka harus untuk jenis konten “application/json” agar API Gateway dapat mengekspor model. Jika tidak, API Gateway melempar pengecualian dengan pesan kesalahan “Hanya menemukan model JSON non-tubuh untuk...”.

Model harus berisi properti atau didefinisikan sebagai JSONSchema tipe tertentu.

Unduh API definisi REST API Open dalam JSON

Untuk mengekspor dan mengunduh API definisi Open REST API dalam JSON format:

OpenAPI 3.0
GET /restapis/<restapi_id>/stages/<stage_name>/exports/oas30 Host: apigateway.<region>.amazonaws.com Accept: application/json
OpenAPI 2.0
GET /restapis/<restapi_id>/stages/<stage_name>/exports/swagger Host: apigateway.<region>.amazonaws.com Accept: application/json

Di sini, <region> bisa jadi, misalnya,us-east-1. Untuk semua wilayah di mana API Gateway tersedia, lihat Wilayah dan Titik Akhir.

Unduh API definisi REST API Open dalam YAML

Untuk mengekspor dan mengunduh API definisi Open REST API dalam YAML format:

OpenAPI 3.0
GET /restapis/<restapi_id>/stages/<stage_name>/exports/oas30 Host: apigateway.<region>.amazonaws.com Accept: application/yaml
OpenAPI 2.0
GET /restapis/<restapi_id>/stages/<stage_name>/exports/swagger Host: apigateway.<region>.amazonaws.com Accept: application/yaml

Unduh API definisi REST API terbuka dengan ekstensi Postman di JSON

Untuk mengekspor dan mengunduh API definisi REST API dalam Open dengan Postman JSON format:

OpenAPI 3.0
GET /restapis/<restapi_id>/stages/<stage_name>/exports/oas30?extensions=postman Host: apigateway.<region>.amazonaws.com Accept: application/json
OpenAPI 2.0
GET /restapis/<restapi_id>/stages/<stage_name>/exports/swagger?extensions=postman Host: apigateway.<region>.amazonaws.com Accept: application/json

Unduh API definisi REST API Terbuka dengan integrasi API Gateway di YAML

Untuk mengekspor dan mengunduh API definisi REST API dalam Open dengan integrasi API Gateway dalam YAML format:

OpenAPI 3.0
GET /restapis/<restapi_id>/stages/<stage_name>/exports/oas30?extensions=integrations Host: apigateway.<region>.amazonaws.com Accept: application/yaml
OpenAPI 2.0
GET /restapis/<restapi_id>/stages/<stage_name>/exports/swagger?extensions=integrations Host: apigateway.<region>.amazonaws.com Accept: application/yaml

Ekspor REST API menggunakan konsol API Gateway

Setelah menerapkan Anda REST API ke tahap, Anda dapat melanjutkan untuk mengekspor API dalam tahap ke API file Open menggunakan konsol API Gateway.

Di panel Tahapan di konsol API Gateway, pilih Tindakan tahap, Ekspor.

Ekspor REST API menggunakan konsol API Gateway

Tentukan jenis API spesifikasi, Format, dan Ekstensi untuk mengunduh API definisi API Terbuka Anda.