Application Programming Interface
Fondamental : Qu'est-ce qu'une API ?
Selon Wikipédia, en informatique, une interface de programmation d’application ou interface de programmation applicative (souvent désignée par le terme API pour Application Programming Interface) est un ensemble normalisé de classes, de méthodes, de fonctions et de constantes qui sert de façade par laquelle un logiciel offre des services à d’autres logiciels. Elle est offerte par une bibliothèque logicielle ou un service web, le plus souvent accompagnée d’une description qui spécifie comment des programmes « consommateurs »peuvent se servir des fonctionnalités du programme « fournisseur ».
Complément :
Ainsi, quand on crée une interface, pour rappel le tableau précédent :
Méthode / Opérateur | Description |
---|---|
| Initialisation sous forme de date Valeur |
| Comparaison d'objets de la classe |
| Renvoie respectivement la valeur du jour, du mois et de l'année de la date |
| Modifie la valeur du jour, du mois ou de l'année de la date |
on réalise un début d'API, qui sera nécessaire pour qu'un développeur puisse utiliser votre structure de données afin d'améliorer le logiciel.
Exemple : Exemple d'usage d'API : extension d'un navigateur
Si vous souhaitez créer une extension pour un navigateur, vous allez devoir interroger des API qui vont vous permettre, par exemple, d'agir sur des menus du navigateur. L'API Javascript, nommée menus
, vous permet d'ajouter des éléments au système de menus du navigateur.
Elle est définie complètement sur cette page : https://developer.mozilla.org/fr/docs/Mozilla/Add-ons/WebExtensions/API/menus
Exemple : Exemple d'API dans le graphisme 3D
API sur le web
Une API Web est une interface de programmation d'application (API) pour un serveur Web ou un navigateur Web. En tant que concept de développement Web, il peut être lié au côté client d'une application Web (y compris à travers un framework web).
Généralement, une application smartphone d'un service web (ENT, réseaux sociaux...) est basée sur l'API Web.
Remarque : Points d'accès (end point)
Les points d'accès sont des aspects importants de l'interaction avec les API Web côté serveur, car ils spécifient où se trouvent les ressources accessibles par des logiciels tiers. Généralement l'accès se fait via une URL sur laquelle sont postées les requêtes HTTP, et dont la réponse est donc attendue. Les API Web peuvent être publiques ou privées, cette dernière nécessitant un jeton d'accès.
On trouve des API publiques, ne nécessitant pas de jetons d'accès ou systèmes d'authentification, c'est celles-ci que nous allons étudier.
Exemple : Exemples d'API Publiques
Base adresses nationale (adresses postales françaises) : https://adresse.data.gouv.fr/api-doc/adresse
API OpenStreetMap (éléments géographiques contenus dans OSM) : https://wiki.openstreetmap.org/wiki/API_v0.6
API Nasa : https://api.nasa.gov/
OpenWheather Map (bulletin météo) : https://openweathermap.org/api
Open Food Fact (récupérer des informations sur un produit alimentaire) : https://fr.openfoodfacts.org/data
Data Gouv (dictionnaire d'API) : https://www.data.gouv.fr/fr/
TheMovieDB (base de données de films) : https://www.themoviedb.org/documentation/api
Giphy Developpers (base de données de GIF) : https://developers.giphy.com/
Addok, un moteur de recherche pour trouver des adresses, basé sur OpenStreetMap : https://addok.readthedocs.io/en/latest/
...
Un annuaire d'API publiques disponibles : https://github.com/public-api-lists/public-api-lists