View a markdown version of this page

Vendi il tuo API Gateway APIs tramite AWS Marketplace - Gateway Amazon API

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Vendi il tuo API Gateway APIs tramite AWS Marketplace

Dopo aver creato, testato e distribuito il tuo APIs, puoi inserirlo in un piano di utilizzo API Gateway e venderlo come prodotto Software as a Service (SaaS). AWS Marketplace Gli acquirenti di API che si abbonano alla tua offerta di prodotti vengono fatturati AWS Marketplace in base al numero di richieste effettuate al piano di utilizzo.

Per vendere APIs il tuo prodotto AWS Marketplace, devi configurare il canale di vendita per l'integrazione AWS Marketplace con API Gateway. In generale, ciò comporta l'offerta del prodotto AWS Marketplace, l'impostazione di un ruolo IAM con politiche appropriate per consentire ad API Gateway di inviare metriche di utilizzo a AWS Marketplace, l'associazione di un AWS Marketplace prodotto a un piano di utilizzo API Gateway e l'associazione di un AWS Marketplace acquirente a una chiave API Gateway. I dettagli vengono approfonditi nelle sezioni seguenti.

Per ulteriori informazioni sulla vendita della tua API come prodotto SaaS AWS Marketplace, consulta la Guida per l'AWS Marketplace utente.

Inizializza l' AWS Marketplace integrazione con API Gateway

Le seguenti attività riguardano l'inizializzazione unica dell' AWS Marketplace integrazione con API Gateway, che consente di vendere il prodotto APIs come SaaS.

Pubblica un prodotto su AWS Marketplace

Per inserire il tuo piano di utilizzo come prodotto SaaS, invia un modulo di caricamento prodotto tramite AWS Marketplace. Il prodotto deve contenere una dimensione denominata apigateway del tipo requests. Questa dimensione definisce price-per-request e viene utilizzata da API Gateway per misurare le richieste al tuo APIs.

Creazione del ruolo di misurazione

Crea un ruolo IAM denominato ApiGatewayMarketplaceMeteringRole con le seguenti policy di esecuzione e policy di attendibilità. Questo ruolo consente ad API Gateway di inviare metriche di utilizzo AWS Marketplace a tuo nome.

Policy di esecuzione del ruolo di misurazione

JSON
{ "Version":"2012-10-17", "Statement": [ { "Action": [ "aws-marketplace:BatchMeterUsage", "aws-marketplace:ResolveCustomer" ], "Resource": "*", "Effect": "Allow" } ] }

Policy di relazione di fiducia del ruolo di misurazione

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "apigateway.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

Associa il piano di utilizzo al prodotto AWS Marketplace

Quando offri un prodotto su AWS Marketplace, ricevi un codice AWS Marketplace prodotto. Per integrare API Gateway con AWS Marketplace, associa il tuo piano di utilizzo al codice AWS Marketplace del prodotto. Puoi abilitare l'associazione impostando il productCodecampo UsagePlan dell'API Gateway sul codice del AWS Marketplace prodotto, utilizzando la console API Gateway, l'API REST API Gateway, l'API AWS CLI for API Gateway o l' AWS SDK per API Gateway. Nell'esempio di codice seguente viene utilizzata l'API REST dell'API Gateway:

PATCH /usageplans/USAGE_PLAN_ID Host: apigateway.region.amazonaws.com Authorization: ... { "patchOperations" : [{ "path" : "/productCode", "value" : "MARKETPLACE_PRODUCT_CODE", "op" : "replace" }] }

Gestione della sottoscrizione del cliente ai piani di utilizzo

Le seguenti attività sono gestite dall'applicazione del portale sviluppatore.

Quando un cliente si abbona al tuo prodotto tramite AWS Marketplace, AWS Marketplace inoltra una POST richiesta all'URL degli abbonamenti SaaS che hai registrato al momento dell'offerta del prodotto. AWS Marketplace La richiesta POST presenta un parametro x-amzn-marketplace-token contenente le informazioni sull'acquirente. Segui le istruzioni riportate in Onboarding dei clienti SaaS per gestire questo reindirizzamento nell'applicazione del portale per gli sviluppatori.

In risposta alla richiesta di iscrizione di un cliente, AWS Marketplace invia una subscribe-success notifica a un argomento di Amazon SNS a cui puoi abbonarti. (Consulta Onboarding dei clienti SaaS). Per accettare la richiesta di abbonamento del cliente, gestisci la subscribe-success notifica creando o recuperando una chiave API Gateway per il cliente, associando la chiave API AWS Marketplace-provisioned customerId del cliente alle chiavi API e quindi aggiungendo la chiave API al tuo piano di utilizzo.

Una volta completata la richiesta di abbonamento del cliente, l'applicazione del portale per sviluppatori deve presentare al cliente la chiave API associata e informare il cliente che la chiave API deve essere inclusa nell'intestazione delle richieste inviate a. x-api-key APIs

Quando un cliente annulla un abbonamento a un piano di utilizzo, AWS Marketplace invia una unsubscribe-success notifica all'argomento SNS. Per portare a termine il processo di cancellazione di un cliente, devi gestire la notifica unsubscribe-success eliminando le chiavi API del cliente dal piano di utilizzo.

Per autorizzare un cliente ad accedere a un piano di utilizzo

Per autorizzare un cliente ad accedere al tuo piano di utilizzo, usa l'API di API Gateway per recuperare o creare una chiave API per il cliente e aggiungerla al piano di utilizzo.

L'esempio seguente mostra come chiamare l'API REST di API Gateway per creare una nuova chiave API con un AWS Marketplace customerId valore specifico (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" }

L'esempio seguente mostra come ottenere una chiave API con un AWS Marketplace customerId valore specifico (MARKETPLACE_CUSTOMER_ID).

GET apikeys?customerId=MARKETPLACE_CUSTOMER_ID HTTP/1.1 Host: apigateway.region.amazonaws.com Authorization: ...

Per aggiungere una chiave API a un piano di utilizzo, crea un UsagePlanKey con la chiave API per il relativo piano di utilizzo. Il seguente esempio mostra come ottenere tale risultato utilizzando l'API REST di API Gateway, dove n371pt è l'ID del piano di utilizzo e q5ugs7qjjh è un esempio di keyId API restituito dagli esempi precedenti.

POST /usageplans/n371pt/keys HTTP/1.1 Host: apigateway.region.amazonaws.com Authorization: ... { "keyId": "q5ugs7qjjh", "keyType": "API_KEY" }

Per associare un cliente a una chiave API

È necessario aggiornare il customerId campo ApiKey's con l'ID AWS Marketplace cliente del cliente. In questo modo, la chiave API viene associata al cliente AWS Marketplace , attivando così misurazione e fatturazione per l'acquirente. Il seguente esempio di codice invoca l'API REST API Gateway per ottenere tale risultato.

PATCH /apikeys/q5ugs7qjjh Host: apigateway.region.amazonaws.com Authorization: ... { "patchOperations" : [{ "path" : "/customerId", "value" : "MARKETPLACE_CUSTOMER_ID", "op" : "replace" }] }