Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Jual API Gateway API Anda melalui AWS Marketplace
Setelah membuat, menguji, dan menerapkan API, Anda dapat mengemasnya dalam paket penggunaan API Gateway dan menjual paket tersebut sebagai produk Perangkat Lunak sebagai Layanan (SaaS). AWS Marketplace Pembeli API yang berlangganan penawaran produk Anda ditagih AWS Marketplace berdasarkan jumlah permintaan yang dibuat untuk paket penggunaan.
Untuk menjual API AWS Marketplace, Anda harus menyiapkan saluran penjualan untuk diintegrasikan AWS Marketplace dengan API Gateway. Secara umum, ini melibatkan daftar produk Anda AWS Marketplace, menyiapkan peran IAM dengan kebijakan yang sesuai untuk memungkinkan API Gateway mengirim metrik penggunaan AWS Marketplace, mengaitkan AWS Marketplace produk dengan paket penggunaan API Gateway, dan mengaitkan AWS Marketplace pembeli dengan kunci API Gateway API. Rincian dibahas di bagian berikut.
Untuk informasi selengkapnya tentang menjual API Anda sebagai produk SaaS AWS Marketplace, lihat AWS Marketplace Panduan Pengguna.
Topik
Inisialisasi AWS Marketplace integrasi dengan API Gateway
Tugas berikut adalah untuk inisialisasi AWS Marketplace integrasi satu kali dengan API Gateway, yang memungkinkan Anda menjual API Anda sebagai produk SaaS.
Daftar produk di AWS Marketplace
Untuk mencantumkan paket penggunaan Anda sebagai produk SaaS, kirimkan formulir pemuatan produk melalui. AWS Marketplaceapigateway
requests
jenis. Dimensi ini mendefinisikan price-per-request dan digunakan oleh API Gateway untuk mengukur permintaan ke API Anda.
Buat peran pengukuran
Buat peran IAM bernama ApiGatewayMarketplaceMeteringRole
dengan kebijakan eksekusi dan kebijakan kepercayaan berikut. Peran ini memungkinkan API Gateway mengirim metrik penggunaan atas nama Anda. AWS Marketplace
Kebijakan eksekusi peran pengukuran
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "aws-marketplace:BatchMeterUsage", "aws-marketplace:ResolveCustomer" ], "Resource": "*", "Effect": "Allow" } ] }
Kebijakan hubungan tepercaya dari peran pengukuran
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "apigateway.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
Mengaitkan rencana penggunaan dengan AWS Marketplace produk
Saat Anda mencantumkan produk AWS Marketplace, Anda menerima kode AWS Marketplace produk. Untuk mengintegrasikan API Gateway dengan AWS Marketplace, kaitkan paket penggunaan Anda dengan kode AWS Marketplace produk. Anda mengaktifkan asosiasi dengan menyetel productCode
bidang API UsagePlan
Gateway ke kode AWS Marketplace produk Anda, menggunakan konsol API Gateway, API Gateway REST API, API Gateway AWS CLI for, atau AWS SDK for API Gateway. Contoh kode berikut menggunakan API Gateway REST API:
PATCH /usageplans/
USAGE_PLAN_ID
Host: apigateway.region
.amazonaws.com Authorization: ... { "patchOperations" : [{ "path" : "/productCode", "value" : "MARKETPLACE_PRODUCT_CODE
", "op" : "replace" }] }
Menangani langganan pelanggan ke paket penggunaan
Tugas-tugas berikut ditangani oleh aplikasi portal pengembang Anda.
Saat pelanggan berlangganan produk Anda AWS Marketplace, AWS Marketplace teruskan POST
permintaan ke URL langganan SaaS yang Anda daftarkan saat mencantumkan produk Anda. AWS MarketplacePOST
Permintaan dilengkapi dengan x-amzn-marketplace-token
parameter yang berisi informasi pembeli. Ikuti petunjuk dalam orientasi pelanggan SaaS untuk menangani pengalihan ini di aplikasi portal pengembang Anda.
Menanggapi permintaan berlangganan pelanggan, AWS Marketplace mengirimkan subscribe-success
pemberitahuan ke topik Amazon SNS yang dapat Anda berlangganan. (Lihat orientasi pelanggan SaaS). Untuk menerima permintaan langganan pelanggan, Anda menangani subscribe-success
notifikasi dengan membuat atau mengambil kunci API Gateway API untuk pelanggan, mengaitkan AWS Marketplace-provisioned pelanggan customerId
dengan kunci API, dan kemudian menambahkan kunci API ke paket penggunaan Anda.
Ketika permintaan langganan pelanggan selesai, aplikasi portal pengembang harus menyajikan kunci API terkait kepada pelanggan dan memberi tahu pelanggan bahwa kunci API harus disertakan dalam x-api-key
header dalam permintaan ke API.
Saat pelanggan membatalkan langganan paket penggunaan, AWS Marketplace kirimkan unsubscribe-success
pemberitahuan ke topik SNS. Untuk menyelesaikan proses berhenti berlangganan pelanggan, Anda menangani unsubscribe-success
notifikasi dengan menghapus kunci API pelanggan dari paket penggunaan.
Otorisasi pelanggan untuk mengakses paket penggunaan
Untuk mengotorisasi akses ke paket penggunaan Anda bagi pelanggan tertentu, gunakan API Gateway API untuk mengambil atau membuat kunci API bagi pelanggan dan menambahkan kunci API ke paket penggunaan.
Contoh berikut menunjukkan cara memanggil API Gateway REST API untuk membuat kunci API baru dengan AWS Marketplace customerId
nilai tertentu (MARKETPLACE_CUSTOMER_ID
).
POST apikeys HTTP/1.1 Host: apigateway.
region
.amazonaws.com Authorization: ... { "name" : "my_api_key", "description" : "My API key", "enabled" : "false", "stageKeys" : [ { "restApiId" : "uycll6xg9a", "stageName" : "prod" } ], "customerId" : "MARKETPLACE_CUSTOMER_ID
" }
Contoh berikut menunjukkan cara mendapatkan kunci API dengan AWS Marketplace
customerId
nilai tertentu (MARKETPLACE_CUSTOMER_ID
).
GET apikeys?customerId=
MARKETPLACE_CUSTOMER_ID
HTTP/1.1 Host: apigateway.region
.amazonaws.com Authorization: ...
Untuk menambahkan kunci API ke paket penggunaan, buat kunci UsagePlanKey
dengan API untuk paket penggunaan yang relevan. Contoh berikut menunjukkan cara melakukannya menggunakan API Gateway REST API, di mana n371pt
ID paket penggunaan dan q5ugs7qjjh
merupakan contoh API yang keyId
dikembalikan dari contoh sebelumnya.
POST /usageplans/n371pt/keys HTTP/1.1 Host: apigateway.
region
.amazonaws.com Authorization: ... { "keyId": "q5ugs7qjjh", "keyType": "API_KEY" }
Kaitkan pelanggan dengan kunci API
Anda harus memperbarui customerId
kolom ke ID AWS Marketplace pelanggan pelanggan. ApiKey
Ini mengaitkan kunci API dengan AWS Marketplace pelanggan, yang memungkinkan pengukuran dan penagihan untuk pembeli. Contoh kode berikut memanggil API Gateway REST API untuk melakukannya.
PATCH /apikeys/q5ugs7qjjh Host: apigateway.
region
.amazonaws.com Authorization: ... { "patchOperations" : [{ "path" : "/customerId", "value" : "MARKETPLACE_CUSTOMER_ID
", "op" : "replace" }] }