Général

Q : Qu'est-ce qu'Amazon API Gateway ?

Amazon API Gateway est un service entièrement géré, qui permet aux développeurs de publier, entretenir, surveiller et sécuriser facilement des API à n'importe quelle échelle. En quelques clics dans AWS Management Console, vous pouvez créer une API qui agit comme une « porte d'entrée » pour que les applications puissent accéder aux données, à la logique métier ou aux fonctionnalités de vos services backend, comme les applications s'exécutant sur Amazon Elastic Compute Cloud (Amazon EC2), Amazon Elastic Container Service (Amazon ECS) ou AWS Elastic Beanstalk, le code s'exécutant sur AWS Lambda ou encore toute application Web. Amazon API Gateway gère toutes les tâches liées à l'acceptation et au traitement de centaines de milliers d'appels d'API simultanés, notamment la gestion du trafic, le contrôle des autorisations et des accès, la surveillance et la gestion de la version de l'API. Aucuns frais minimum ou coûts initiaux ne s'appliquent à Amazon API Gateway. Vous payez uniquement les appels d'API que vous recevez et la quantité de données en transfert sortant.

Q : Pourquoi utiliser Amazon API Gateway ?

Amazon API Gateway offre aux développeurs un service simple, flexible, entièrement géré et facturé à l'utilisation, qui gère tous les aspects de la création et de l'exploitation d'API robustes pour les applications backend. Avec Amazon API Gateway, vous pouvez lancer de nouveaux services plus rapidement et pour un investissement moindre, ce qui vous permet de vous concentrer sur vos services métier principaux. Amazon API Gateway a été conçu pour vous aider dans plusieurs aspects de la création et de la gestion des API :

1) Mesure. API Gateway vous permet d'établir des plans pour mesurer les accès des développeurs tiers à vos API en vue de les restreindre. Vous pouvez définir un ensemble de plans, mais aussi configurer des limitations et des quotas pour chaque clé d'API. API Gateway mesure automatiquement le trafic en direction de vos API et vous permet de connaître les données d'utilisation de chaque clé d'API.

2) Sécurité. API Gateway met à votre disposition plusieurs outils permettant d'autoriser l'accès à vos API et de contrôler l'accès aux opérations de service. Amazon API Gateway vous permet de tirer parti des outils de sécurité et d'administration d'AWS, tels que AWS Identity and Access Management (IAM) et Amazon Cognito, afin d'autoriser l'accès à vos API. Amazon API Gateway peut vérifier à votre place les appels d'API signés, à l'aide de la même méthodologie que celle utilisée par AWS pour ses propres API. Avec des autorisateurs personnalisés écrits en tant que fonctions AWS Lambda, API Gateway peut aussi vous aider à vérifier les bearer tokens, afin d'éliminer les soucis d'autorisation de votre code back-end.

3) Résilience. Amazon API Gateway vous permet de gérer le trafic grâce à des limitations, de sorte que les opérations de backend puissent supporter les pics de trafic. Amazon API Gateway vous aide également à améliorer les performances de vos API et la latence rencontrée par vos utilisateurs finaux en mettant en cache la sortie des appels d'API, afin d'éviter d'appeler votre service backend à chaque fois.

4) Surveillance des opérations. Une fois qu'une API est publiée et en service, API Gateway met à votre disposition un tableau de bord des mesures permettant de surveiller les appels à vos services. Intégré à Amazon CloudWatch, le tableau de bord Amazon API Gateway vous fournit des mesures de performance des services dorsaux couvrant les appels d'API, les données de latence et les taux d'erreurs. Vous pouvez configurer des mesures détaillées pour chaque méthode dans vos API, et également recevoir des journaux d'erreur, d'accès ou de débogage dans CloudWatch Logs.

5) Gestion du cycle de vie. Une fois qu'une API a été publiée, il arrive souvent que vous deviez développer et tester de nouvelles versions qui améliorent les fonctionnalités ou en ajoutent de nouvelles. Amazon API Gateway vous permet d'exécuter simultanément plusieurs versions d'une API et plusieurs étapes pour chaque version, afin que les applications existantes puissent continuer à appeler les versions précédentes une fois que de nouvelles versions de l'API sont publiées.

6) Conçu pour les développeurs. Amazon API Gateway vous permet de créer rapidement des API et d'attribuer du contenu statique à leurs réponses en vue de réduire les efforts de développement entre les équipes et le délai de commercialisation pour vos applications. Les équipes qui dépendent de vos API peuvent commencer leur travail de développement pendant que vous concevez vos processus dorsaux.

Q : Comment commencer à utiliser Amazon API Gateway ?

Amazon API Gateway vous permet de créer rapidement et facilement une API personnalisée. Pour obtenir un exemple simple d'application « Hello World », suivez les étapes indiquées ci-après :

1. Accédez à la console Amazon API Gateway.

2. Sélectionnez une API REST existante ou créez-en une nouvelle en saisissant un nom pour cette API.

3. Dans l'arborescence de l'API REST, cliquez sur « Create Resource ».

4. Choisissez un nom pour votre ressource, par exemple « voitures ».

5. Une fois la nouvelle ressource sélectionnée, cliquez sur le bouton pour créer une nouvelle méthode et sélectionnez le verbe HTTP associé à la méthode (par exemple GET).

6. Sélectionnez le type d'intégration (par exemple HTTP Proxy), puis saisissez l'URL qu'Amazon API Gateway doit appeler.

7. Définissez la manière dont les requêtes et les réponses sont transformées à l'aide d'un modèle de mappage, ou acceptez les paramètres par défaut pour transmettre toutes les données de requête et de réponse sans leur appliquer aucune transformation.

8. Configurez les paramètres de sécurité de la méthode.

9. Déployez votre nouvelle API dans une phase

10. Sur la page Stage Management, configurez la mise en cache et la limitation.

11. Dans l'onglet Client Platforms de la console Amazon API Gateway, cliquez sur le bouton permettant de télécharger la bibliothèque de kit SDK pour Android ou iOS, ou la bibliothèque JavaScript qui contient les méthodes d'aide pour appeler votre opération sayHello. La bibliothèque de kit SDK vous permet d'appeler vos API de manière similaire à celle utilisée pour appeler une méthode locale. Le kit SDK client gère automatiquement les nouvelles tentatives et informe le développeur en cas de pannes du réseau ou autres. La bibliothèque de kit SDK inclut la logique nécessaire pour authentifier l'application cliente sur vos API.

12. Intégrez le kit SDK téléchargé à votre application mobile. Saisissez le code permettant d'appeler votre API personnalisée. Par exemple, pour appeler l'API getCar(int carId) dans une application iOS :

–(void)getSampleCar

{

NSString *response = [MyServiceClient getCar:1323];

NSLog( @”Response was [%@]”, response );

}

13, Lancez votre application.

Q : Puis-je créer des endpoints HTTPS ?

Oui, toutes les API créées avec Amazon API Gateway présentent uniquement des points de terminaison HTTPS. Amazon API Gateway ne prend pas en charge les points de terminaison non chiffrés (HTTP). Par défaut, Amazon API Gateway attribue un domaine interne à l'API, qui utilise automatiquement le certificat Amazon API Gateway. Lorsque vous configurez vos API afin qu'elles s'exécutent sous un nom de domaine personnalisé, vous pouvez fournir votre propre certificat pour le domaine.

Q : Quels types de données puis-je utiliser avec Amazon API Gateway ?

Les API reposant sur Amazon API Gateway peuvent accepter n'importe quelle capacité de données envoyée via HTTP. Les formats de données types incluent les formats JSON, XML, les paramètres des chaînes d'interrogation et les en-têtes de requête. Vous pouvez déclarer tout type de contenu pour vos réponses d'API, puis utiliser les modèles de transformation pour modifier la réponse du service dorsal et la générer dans le format que vous souhaitez.

Q : Avec quels services dorsaux Amazon API Gateway peut-il communiquer ?

Amazon API Gateway peut exécuter des fonctions AWS Lambda dans votre compte, démarrer des machines d'état AWS Step Functions, ou appeler des points de terminaison HTTP hébergés sur AWS Elastic Beanstalk, Amazon EC2, et aussi des opérations basées sur HTTP non hébergées sur AWS qui sont accessibles via l'Internet public. API Gateway vous permet également de spécifier un modèle de mappage pour générer du contenu statique à renvoyer, ce qui permet de créer des API factices avant que le backend soit prêt. Vous pouvez aussi intégrer directement API Gateway à d'autres services AWS. Par exemple, il est possible d'exécuter une méthode API dans API Gateway pour envoyer directement des données à Amazon Kinesis.

Q : Pour quelles plateformes clients Amazon API Gateway peut-il générer des kits SDK ?

API Gateway génère des kits SDK personnalisés pour le développement d'applications mobiles avec Android et iOS (Swift et Objective-C), ainsi que d'applications Web avec JavaScript. API Gateway prend également en charge la création de kits SDK pour Ruby et Java. Une fois qu'une API et ses modèles sont définis dans API Gateway, vous pouvez utiliser la console AWS ou les API d'API Gateway pour générer et télécharger un kit SDK client.

Q : Dans quelles régions AWS le service Amazon API Gateway est-il disponible ?

Pour plus d'informations sur la disponibilité du service Amazon API Gateway par région, reportez-vous à la section relative aux produits et services régionaux.

Q : Quels éléments puis-je gérer via la console Amazon API Gateway ?

La console Amazon API Gateway vous permet de définir l'API REST ainsi que ses ressources et méthodes associées, de gérer le cycle de vie de l'API, de générer des kits SDK client et de consulter les mesures relatives à l'API. Vous pouvez aussi utiliser cette console pour définir les plans d'utilisation de vos API, gérer les clés d'API des développeurs et configurer des limitations et des quotas. Toutes ces actions sont également disponibles via les API d'API Gateway.

Q : Qu'est-ce qu'une API REST ?

Dans Amazon API Gateway, une API REST désigne un groupe de ressources et de méthodes, ou des points de terminaison. Les API REST peuvent être déployées à différentes étapes et clonées vers de nouvelles versions.

Q : Qu'est-ce qu'une ressource ?

Une ressource désigne un objet saisi, qui fait partie du domaine de votre API. Chaque ressource peut avoir associé un modèle de données, des relations à d'autres ressources et répondre à différentes méthodes. Vous pouvez également définir des ressources en tant que variables pour intercepter des requêtes sur plusieurs ressources enfants.

Q : Qu'est-ce qu'une méthode ?

Chaque ressource au sein d'une API REST peut prendre en charge une ou plusieurs des méthodes HTTP standard. Vous définissez les verbes qui doivent être pris en charge pour chaque ressource (GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS), ainsi que leur mise en œuvre. Par exemple, une ressource GET vers « voitures » doit renvoyer une liste de voitures. Pour connecter toutes les méthodes d'une ressource à un point de terminaison backend unique, API Gateway prend également en charge une méthode « ANY » spéciale.

Q : Qu'est-ce qu'un plan d'utilisation ?

Dans le cadre d'un plan d'utilisation, vous établissez un plan visant à restreindre l'accès des développeurs tiers à certaines API uniquement. Pour ce faire, vous définissez des limitations et des quotas, puis vous associez ce plan à des clés d'API. Vous pouvez ainsi déterminer les données d'utilisation de chaque clé d'API, ce qui vous permet d'analyser l'utilisation de vos API et d'émettre des factures. Vous pouvez, par exemple, créer des plans de niveau Basique, Professionnel ou Entreprise, et configurer le plan d'utilisation basique pour n'autoriser que 1 000 demandes par jour, avec un maximum de 5 demandes par seconde (RPS).

Q : Quel est le cycle de vie d'une API dans Amazon API Gateway ?

Avec Amazon API Gateway, chaque API REST peut être constituée de plusieurs étapes. Les étapes aident à élaborer le cycle de vie de développement d'une API. Par exemple, lorsque vous avez conçu vos API et que vous les déployez dans une étape de développement, ou lorsque vous êtes prêt à lancer la production et que vous déployez vos API dans une étape de production.

Q : Qu'est-ce qu'une étape ?

Dans Amazon API Gateway, les étapes sont similaires à des balises. Elles définissent le chemin via lequel le déploiement est accessible. Par exemple, vous pouvez définir une étape de développement et déployer vos API concernant les voitures dans cette étape. La ressource sera accessible à l'adresse https://www.myapi.com/dev/voitures. Vous pouvez également configurer des noms de domaine personnalisés qui pointent directement vers une étape, afin de ne pas avoir à utiliser le paramètre de chemin supplémentaire. Par exemple, si vous avez pointé myapi.com directement vers l'étape de développement, vous pouvez accéder à votre ressource voitures à l'adresse https://www.myapi.com/voitures. Les étapes peuvent être configurées à l'aide de variables accessibles depuis votre configuration d'API ou vos modèles de mapage.

Q : Que sont les variables d'étape ?

Les variables d'étape vous permettent de définir des paires clé/valeur pour la configuration associée à une étape. Tout comme les variables d'environnement, ces valeurs peuvent être utilisées dans votre configuration d'API. Par exemple, vous pouvez définir l'endpoint HTTP pour votre intégration de méthode sous forme de variable d'étape, et utiliser cette variable dans votre configuration d'API plutôt que de coder en dur l'endpoint. Ainsi, vous pouvez utiliser un endpoint différent pour chaque étape (développement, bêta, production, etc.), tout en conservant la même configuration d'API. Les variables d'étape sont également accessibles dans les modèles de mapping et peuvent être utilisées pour transmettre les paramètres de la configuration à votre back-end Lambda ou HTTP.

Q : Qu'est-ce qu'une Resource Policy ?

Une Resource Policy est un document de politique au format JSON que vous joignez à une API pour déterminer si un principe spécifié (généralement un utilisateur ou un rôle IAM) peut appeler ou non l'API. Vous pouvez utiliser une Resource Policy pour permettre aux utilisateurs d'un compte AWS différent d'accéder en toute sécurité à votre API ou pour autoriser l'API à être appelée uniquement à partir d'intervalles d'adresses IP source ou de blocs CIDR spécifiés.

Q : Que faire si j'ai déployé par erreur une API dans une étape ?

Amazon API Gateway enregistre l'historique de vos déploiements. Vous pouvez à tout moment revenir à un déploiement antérieur de l'étape à l'aide des API d'Amazon API Gateway ou de la console.

Q : Puis-je exécuter plusieurs versions de la même API REST ?

Oui. Amazon API Gateway vous permet de cloner une API existante. Lorsque vous serez prêt à travailler sur la prochaine version majeure de votre API, vous serez en mesure de continuer à travailler simultanément sur les API de la version 1 et de la version 2.

Q : Puis-je utiliser mes définitions d'API de Swagger ?

Oui. Vous pouvez utilise notre outil d'importation Swagger à code source libre pour importer vos définitions d'API Swagger dans Amazon API Gateway. Grâce à l'outil d'importation Swagger, vous pouvez créer et déployer de nouvelles API et mettre à jour des API existantes.

Q : Comment monétiser mes API sur API Gateway ?

Vous pouvez monétiser vos API sur API Gateway en les publiant en tant que produits sur AWS Marketplace. Vous devez tout d'abord vous inscrire en tant que vendeur sur AWS Marketplace et envoyer vos plans d'utilisation sur API Gateway en tant que produits. Consultez cette page pour en savoir plus sur la monétisation des API.

Q : Comment documenter mes API sur Amazon API Gateway ?

API Gateway permet de créer, mettre à jour et supprimer la documentation associée à chaque partie de votre API, par exemple, les méthodes et les ressources. Vous pouvez accéder aux API liées à la documentation via les kits SDK AWS, l'interface de ligne de commande, via des appels RESTful, ou en modifiant les chaînes de documentation directement dans la console API Gateway. La documentation peut également être importée sous la forme d'un fichier Swagger, dans le cadre de l'API ou séparément, ce qui vous permet d'ajouter ou de mettre à jour la documentation sans perturber la définition de l'API. API Gateway respecte la spécification d'API ouverte pour la documentation importée depuis ou exportée vers les fichiers Swagger.

Q : Comment éviter de créer des copies redondantes de messages d'erreur et d'autres documents qui se répètent fréquemment dans mon API ?

En plus de prendre en charge la documentation d'API conforme aux normes, API Gateway prend également en charge l'héritage de documentation, ce qui permet de définir facilement une chaîne de documentation une seule fois et de l'utiliser à plusieurs emplacements. L'héritage simplifie le processus de définition de la documentation d'API et peut être converti en représentation standard lors de l'exportation de l'API sous la forme d'un fichier Swagger.

Q : Puis-je restreindre l'accès aux API privées à un Amazon VPC ou un point de terminaison d'un VPC spécifique ?

Oui, vous pouvez appliquer une Resource Policy à une API pour restreindre l'accès à un Amazon VPC ou un point de terminaison VPC spécifique. Vous pouvez également donner à un Amazon VPC ou un point de terminaison VPC d'un compte différent l'accès à l'API privée à l'aide d'une Resource Policy.

Sécurité et autorisation

Q : Comment puis-je autoriser l'accès à mes API ?

Avec Amazon API Gateway, vous pouvez également configurer vos méthodes API pour qu'elles nécessitent une autorisation. Pour configurer une méthode de manière à ce qu'elle demande une autorisation, il est possible d'exploiter AWS Signature Version 4 ou des autorisateurs Lambda, afin de soutenir votre propre stratégie d'authentification par bearer token.

Q : Comment fonctionne l'AWS Signature Version 4 ?

Vous pouvez utiliser des informations d'identification (credentials) AWS, comme des clés d'accès et des clés secrètes, pour signer les requêtes adressées à votre service et autoriser l'accès comme le feraient d'autres services AWS. La signature d'une requête d'API sur Amazon API Gateway est gérée par le kit SDK Amazon API Gateway personnalisé, généré pour votre service. Vous pouvez récupérer des informations d'identification temporaires associées à un rôle dans votre compte AWS à l'aide d'Amazon Cognito.

Q : Qu'est-ce qu'un autorisateur Lambda ?

Les autorisateurs Lambda sont des fonctions AWS Lambda. Ils vous permettent d'autoriser l'accès à des API à l'aide d'une stratégie d'authentification à bearer token, comme OAuth. Quand une API est appelée, API Gateway vérifie si un autorisateur personnalisé a été configuré. La fonction Lambda est ensuite appelée avec le jeton d'autorisation entrant. Vous pouvez utiliser Lambda pour implémenter différentes stratégies d'autorisation (par exemple, vérification JWT ou appel de fournisseur OAuth) renvoyant les politiques IAM servant à autoriser la requête. Si la politique renvoyée par l'autorisateur est valide, API Gateway met en cache la politique associée avec le jeton entrant pendant 1 heure maximum.

Q : Amazon API Gateway peut-il générer des clés d'API à distribuer aux développeurs tiers ?

Oui. API Gateway permet de générer des clés d'API et de les associer à un plan d'utilisation. Les appels reçus depuis chaque clé d'API sont surveillés et consignés dans les journaux Amazon CloudWatch Logs, que vous pouvez activer pour chaque étape. Cependant, nous vous déconseillons d'utiliser les clés d'API à des fins d'autorisation. Vous devez utiliser les clés d'API pour surveiller l'utilisation par des développeurs tiers et tirer parti d'un mécanisme plus robuste pour gérer l'autorisation, comme des appels d'API signés ou OAuth.

Q : Comment puis-je prévenir ou répondre aux menaces et abus concernant les API ?

Amazon API Gateway permet de paramétrer des limitations pour chaque méthode de vos API. Vous pouvez définir une limite concernant le taux standard et le taux de pics par seconde pour chaque méthode de vos API REST. De plus, Amazon API Gateway protège automatiquement vos systèmes dorsaux contre les attaques par déni de service distribué (DDoS), qu'il s'agisse d'attaques via de fausses requêtes (Layer 7) ou par saturation SYN (Layer 3).

Q : Puis-je vérifier que c'est bien API Gateway qui appelle mon service Backend?

Oui. Amazon API Gateway peut générer un certificat SSL client et mettre à votre disposition la clé publique du certificat en question. Les appels à votre service dorsal peuvent être réalisés avec le certificat généré et vous pouvez vérifier les appels provenant d'Amazon API Gateway à l'aide de la clé publique du certificat concerné.

Q : Puis-je utiliser AWS CloudTrail avec Amazon API Gateway ?

Oui. Amazon API Gateway est intégré à AWS CloudTrail afin de vous offrir un historique entièrement contrôlable des changements effectués sur vos API REST. Tous les appels d'API effectués sur les API d'Amazon API Gateway pour créer, modifier, supprimer ou déployer des API REST sont consignés dans CloudTrail, dans votre compte AWS.

Q : Comment fonctionne Amazon API Gateway avec un Amazon Virtual Private Cloud (Amazon VPC) ? 

Dans Amazon API Gateway, vous pouvez rapprocher des requêtes des ressources HTTP/HTTPS backend s'exécutant dans votre Amazon VPC en configurant Intégrations privées avec VPC Links. Les certificats SSL du côté du client dans Amazon API Gateway peut être utilisés pour vérifier que les requêtes à vos systèmes backend ont été envoyées par API Gateway à l'aide de la clé publique du certificat. Vous pouvez également créer des API privées dans Amazon API Gateway auxquelles seules des ressources de votre Amazon VPC peuvent accéder via des points de terminaison Amazon VPC.

Q : Puis-je restreindre l'accès aux API privées à un Amazon VPC ou un point de terminaison d'un VPC spécifique ?

Oui, vous pouvez appliquer une Resource Policy à une API pour restreindre l'accès à un Amazon VPC ou un point de terminaison VPC spécifique. Vous pouvez également donner à un Amazon VPC ou un point de terminaison VPC d'un compte différent l'accès à l'API privée à l'aide d'une Resource Policy.

Q : Puis-je configurer mes API dans Amazon API Gateway pour utiliser TLS 1.1 ou supérieur ?

Oui, vous pouvez configurer une distribution CloudFront avec un certificat SSL personnalisé dans votre compte et l'utiliser avec les API régionales dans API Gateway. Vous pouvez ensuite configurer la Politique de sécurité pour la distribution CloudFront avec TLS 1.1 ou supérieur, en fonction de vos exigences de sécurité et de conformité.

Gestion, mesures et journalisation

Q : Comment puis-je surveiller mes API Amazon API Gateway ?

Amazon API Gateway consigne les appels d'API, la latence et les taux d'erreurs dans Amazon CloudWatch, sur votre compte AWS. Ces mesures sont également disponibles via la console Amazon API Gateway, dans un tableau de bord relatif aux API REST. API Gateway mesure aussi l'utilisation des développeurs tiers : il est possible de consulter ces mesures dans la console API Gateway et via les API.

Q : Puis-je configurer des alarmes sur les metriques d'Amazon API Gateway ?

Oui, Amazon API Gateway envoie des informations de journalisation et des mesures à Amazon CloudWatch. Vous pouvez utiliser la console Amazon CloudWatch pour définir des alarmes personnalisées.

Q : Comment puis-je configurer des mesures concernant Amazon API Gateway ?

Par défaut, Amazon API Gateway surveille le trafic au niveau d'une API REST. Cependant, vous pouvez éventuellement activer des mesures détaillées pour chaque méthode de votre API REST à partir des API de configuration du déploiement ou de l'écran de la console. Les mesures détaillées sont également consignées dans Amazon CloudWatch et seront facturées selon les tarifs applicables à CloudWatch.

Q : Puis-je déterminer la version de l'API que mes clients utilisent ?

Oui. Les détails sur les mesures sont spécifiés par l'API REST et par l'étape. De plus, vous pouvez activer des mesures pour chaque méthode dans votre API REST.

Q : Amazon API Gateway prend-il en charge la journalisation ?

Oui. Amazon API Gateway est intégré à Amazon CloudWatch Logs. Vous pouvez éventuellement activer la journalisation pour chaque étape de votre API. Pour chaque méthode de vos API REST, vous pouvez définir la verbosité de la journalisation et indiquer si les données complètes concernant les requêtes et les réponses doivent être consignées.

Q : Sous quel délai les journaux sont-ils disponibles ?

Les journaux, alarmes, taux d'erreurs et autres mesures sont stockés dans Amazon CloudWatch et sont disponibles quasiment en temps réel.

Limitations et mise en cache

Q : Comment puis-je protéger mes applications et systèmes dorsaux contre les pics de trafic ?

Amazon API Gateway permet de définir des limitations à plusieurs niveaux, notamment au niveau global et en fonction de l'appel de service. Les limitations peuvent être définies pour les taux standard et les pics. Par exemple, les propriétaires d'API peuvent définir une limite de taux de 1 000 requêtes par seconde pour une méthode spécifique de leurs API REST, et configurer Amazon API Gateway afin qu'il gère un pic de 2 000 requêtes par seconde pendant quelques secondes. Amazon API Gateway suit le nombre de requêtes par seconde. Toute requête dépassant la limite recevra une réponse HTTP 429. Les kits SDK client générés par Amazon API Gateway retentent automatiquement les appels lorsqu'ils rencontrent cette réponse.

Q : Puis-je appliquer des limitations à certains développeurs en particulier qui appellent mes API ?

Oui. Grâce aux plans d'utilisation, vous pouvez fixer des limitations pour chaque clé d'API.

Q : Comment les limitations peuvent-elles m'aider ?

Les limitations garantissent le contrôle du trafic de l'API afin d'aider vos services dorsaux à maintenir leurs performances et leur disponibilité.

Q : A quels niveaux Amazon API Gateway peut-il limiter le trafic entrant sur les API ?

Les taux de limitation peuvent être définis au niveau de la méthode. Vous pouvez modifier ces limites dans vos paramètres de méthode, via les API d'Amazon API Gateway ou dans la console Amazon API Gateway.

Q : Comment sont appliquées les règles de limitation ?

Tout d'abord, API Gateway effectue une vérification par rapport aux limites de votre compte AWS. Si le trafic est inférieur à la limite fixée pour votre compte, API Gateway vérifie quelle limite vous avez définie pour une étape ou une méthode. Si le trafic est inférieur à la limite fixée pour l'étape, API Gateway applique les limites fixées dans vos plans d'utilisation pour chaque clé d'API.

Q : Amazon API Gateway offre-t-il une fonctionnalité de mise en cache des résultats de l'API ?

Oui. Vous pouvez ajouter une mise en cache aux appels d'API en dimensionnant un cache Amazon API Gateway et en précisant sa taille en gigaoctets. Le cache est mis en service pour une étape spécifique de vos API. Cela améliore les performances et réduit le trafic envoyé vers votre service dorsal. Les paramètres de cache vous permettent de contrôler la manière dont la clé du cache est conçue, ainsi que la durée de vie (TTL) des données stockées pour chaque méthode. Amazon API Gateway fournit également des API de gestion qui vous aident à invalider le cache pour chaque étape.

Q : Que se passe-t-il si un grand nombre d'utilisateurs finaux essaie d'appeler mon API en même temps ?

Si la mise en cache est désactivée et qu'aucune limitation n'a été mise en place, toutes les requêtes passeront par votre service backend, jusqu'à ce que les limitations du compte soient atteintes. Si des limitations ont été mises en place, Amazon API Gateway éliminera alors la quantité de requêtes nécessaire et enverra uniquement la limite définie à votre service backend. Si un cache est configuré, Amazon API Gateway renvoie une réponse en cache pour les doublons de requêtes pendant une durée personnalisable, mais uniquement sous les limites de throttling configurées. Cet équilibre entre le service dorsal et le client garantit des performances optimales de l'API pour les applications qu'elle prend en charge. Les requêtes soumises aux limitations feront automatiquement l'objet d'une nouvelle tentative de la part des kits SDK client générés par Amazon API Gateway. Par défaut, Amazon API Gateway ne définit aucun cache concernant les méthodes de l'API.

Q : Comment les API se mettent-elles à l'échelle ?

Amazon API Gateway agit comme un proxy sur les opérations dorsales que vous avez configurées. Amazon API Gateway se mettra automatiquement à l'échelle pour traiter le volume de trafic reçu par votre API. Amazon API Gateway ne limite pas de façon arbitraire les appels envoyés à vos opérations dorsales. Par conséquent, toutes les requêtes qui ne sont pas interceptées par les paramètres de limitation et de mise en cache dans la console Amazon API Gateway sont envoyées à vos opérations dorsales.

Facturation

Q : Comment l'utilisation d'Amazon API Gateway me sera-t-elle facturée ?

Amazon API Gateway facture par million d'appels d'API, auxquels s'ajoutent les frais de transfert de données sortantes, en gigaoctets. Si vous choisissez de mettre en service de mémoire cache pour votre API, des tarifs horaires s'appliquent. Pour en savoir plus sur les frais applicables aux appels d’API, au transfert de données et à la mise en cache par région, consultez la page de tarification de l'API Gateway.

Q : Qui paie pour les appels d'API Amazon API Gateway générés par des développeurs tiers ?

Le propriétaire de l'API est facturé pour les appels envoyés à ses API sur API Gateway.

Q : Si une réponse d'API est envoyée par des données en cache, cela est-il considéré comme un appel d'API dans le cadre de la facturation ?

Oui. Les appels d'API sont calculés de la même manière dans le cadre de la facturation, que la réponse soit traitée par vos opérations dorsales ou par l'opération de mise en cache d'Amazon API Gateway.

En savoir plus sur Amazon API Gateway

Visiter la page de tarification
Prêt à vous lancer ?
S'inscrire
D'autres questions ?
Contactez-nous