Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Vendez vos API API Gateway via AWS Marketplace
Après avoir créé, testé et déployé vos API, vous pouvez les intégrer dans un plan d'utilisation d'API Gateway et vendre le plan en tant que produit SaaS (Software as a Service) par le biais de ce plan AWS Marketplace. Les acheteurs d'API qui s'abonnent à votre offre de produits sont facturés en AWS Marketplace fonction du nombre de demandes effectuées dans le cadre du plan d'utilisation.
Pour vendre vos API AWS Marketplace, vous devez configurer le canal de vente afin de l'intégrer AWS Marketplace à API Gateway. D'une manière générale, cela implique de répertorier votre produit AWS Marketplace, de configurer un rôle IAM avec des politiques appropriées pour permettre à API Gateway d'envoyer des métriques d'utilisation AWS Marketplace, d'associer un AWS Marketplace produit à un plan d'utilisation d'API Gateway et d'associer un AWS Marketplace acheteur à une clé d'API API Gateway. Les détails sont présentés dans les sections suivantes.
Pour plus d'informations sur la vente de votre API en tant que produit SaaS sur AWS Marketplace, consultez le guide de AWS Marketplace l'utilisateur.
Rubriques
Initialisation de l'intégration de AWS Marketplace avec API Gateway
Les tâches suivantes concernent l'initialisation unique de AWS Marketplace l'intégration avec API Gateway, qui vous permet de vendre vos API en tant que produit SaaS.
Répertorier un produit sur AWS Marketplace
Pour publier votre plan d'utilisation en tant que produit SaaS, soumettez un formulaire de chargement de produit via AWS Marketplaceapigateway
du type requests
. Cette dimension définit price-per-request et est utilisée par API Gateway pour mesurer les demandes adressées à vos API.
Création du rôle de mesure
Créez un rôle IAM nommé ApiGatewayMarketplaceMeteringRole
avec la stratégie d'exécution et la stratégie d'approbation suivantes. Ce rôle permet à API Gateway d'envoyer des métriques d'utilisation AWS Marketplace en votre nom.
Stratégie d'exécution du rôle de mesure
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "aws-marketplace:BatchMeterUsage", "aws-marketplace:ResolveCustomer" ], "Resource": "*", "Effect": "Allow" } ] }
Stratégie de la relation d'approbation du rôle de mesure
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "apigateway.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
Associer le plan d'utilisation au AWS Marketplace produit
Lorsque vous mettez en vente un produit sur AWS Marketplace, vous recevez un code AWS Marketplace produit. Pour intégrer API Gateway AWS Marketplace, associez votre plan d'utilisation au code AWS Marketplace du produit. Vous activez l'association en définissant le productCode
champ UsagePlan
de l'API Gateway sur votre code AWS Marketplace produit, à l'aide de la console API Gateway, de l'API REST API Gateway, de l'API AWS CLI for API Gateway ou du AWS SDK pour API Gateway. L'exemple de code suivant utilise l'API REST API Gateway :
PATCH /usageplans/
USAGE_PLAN_ID
Host: apigateway.region
.amazonaws.com Authorization: ... { "patchOperations" : [{ "path" : "/productCode", "value" : "MARKETPLACE_PRODUCT_CODE
", "op" : "replace" }] }
Gestion de l'abonnement des clients aux plans d'utilisation
Les tâches suivantes sont gérées par l'application portail développeur.
Lorsqu'un client s'abonne à votre produit via AWS Marketplace, AWS Marketplace transmet une POST
demande à l'URL d'abonnement SaaS que vous avez enregistrée lors de la mise en vente de votre produit. AWS Marketplace La demande POST
est associée à un paramètre x-amzn-marketplace-token
contenant les informations de l'acheteur. Suivez les instructions fournies dans SaaS customer onboarding pour gérer cette redirection dans votre application de portail pour développeurs.
En réponse à la demande d'abonnement d'un client, AWS Marketplace envoie une subscribe-success
notification à une rubrique Amazon SNS à laquelle vous pouvez vous abonner. (Veuillez consulter SaaS customer onboarding). Pour accepter la demande d'abonnement du client, vous gérez la subscribe-success
notification en créant ou en récupérant une clé d'API API Gateway pour le client, en associant la clé fournie par le client AWS MarketplacecustomerId
aux clés d'API, puis en ajoutant la clé d'API à votre plan d'utilisation.
Lorsque la demande d'abonnement du client se termine, l'application portail développeur doit présenter au client la clé d'API associée et informer celui-ci que la clé d'API doit être incluse dans l'en-tête x-api-key
des demandes auprès des API.
Lorsqu'un client annule un abonnement à un plan d'utilisation, il AWS Marketplace envoie une unsubscribe-success
notification à la rubrique SNS. Pour désinscrire le client, vous gérez la notification unsubscribe-success
en supprimant les clés d'API du client du plan d'utilisation.
Autorisation d'accès à un plan d'utilisation
Pour autoriser un client spécifique à accéder à votre plan d'utilisation, utilisez l'API API Gateway afin d'extraire ou de créer une clé d'API pour le client et ajoutez celle-ci au plan d'utilisation.
L'exemple suivant montre comment appeler l'API REST API Gateway pour créer une nouvelle clé d'API avec une AWS Marketplace customerId
valeur spécifique (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'exemple suivant montre comment obtenir une clé d'API avec une AWS Marketplace
customerId
valeur spécifique (MARKETPLACE_CUSTOMER_ID
).
GET apikeys?customerId=
MARKETPLACE_CUSTOMER_ID
HTTP/1.1 Host: apigateway.region
.amazonaws.com Authorization: ...
Pour ajouter une clé d'API à un plan d'utilisation, créez une UsagePlanKey
avec la clé d'API correspondant au plan d'utilisation approprié. L'exemple suivant montre comment effectuer cette opération à l'aide de l'API REST API Gateway, où n371pt
correspond à l'ID du plan d'utilisation et q5ugs7qjjh
un exemple de keyId
d'API retourné des exemples précédents.
POST /usageplans/n371pt/keys HTTP/1.1 Host: apigateway.
region
.amazonaws.com Authorization: ... { "keyId": "q5ugs7qjjh", "keyType": "API_KEY" }
Association d'un client à une clé d'API
Vous devez mettre à jour ApiKey
le customerId
champ « s » avec le numéro AWS Marketplace client du client. Cette opération associe la clé d'API au client AWS Marketplace , ce qui permet d'effectuer les mesures et la facturation pour l'acheteur. L'exemple de code suivant appelle l'API REST API Gateway à cet effet.
PATCH /apikeys/q5ugs7qjjh Host: apigateway.
region
.amazonaws.com Authorization: ... { "patchOperations" : [{ "path" : "/customerId", "value" : "MARKETPLACE_CUSTOMER_ID
", "op" : "replace" }] }