API
API (Interface de Programmation d'Applications)
Une interface qui permet à différentes applications logicielles de communiquer entre elles, en définissant les méthodes, formats de données et protocoles pour demander et échanger des informations.
Détail technique
Les API web communiquent via HTTP(S) en utilisant des architectures REST (sans état, basées sur les ressources, méthodes HTTP) ou GraphQL (requêtes flexibles, endpoint unique). Les API REST utilisent les méthodes HTTP (GET lire, POST créer, PUT/PATCH mettre à jour, DELETE supprimer), les codes de statut (200 OK, 201 Créé, 400 Requête Invalide, 401 Non Autorisé, 404 Non Trouvé, 429 Trop de Requêtes, 500 Erreur Serveur), et les formats de réponse (JSON, XML). Authentification : clés API (header ou query), OAuth 2.0 (flux code d'autorisation, client credentials), JWT (jetons autonomes). OpenAPI 3.1.0 est le format standard de spécification (anciennement Swagger). La limitation de débit, la pagination (offset/cursor) et le versionnage (URL ou header) sont des patterns de conception essentiels.
Exemple
```javascript
// API: file processing example
const file = document.getElementById('fileInput').files[0];
const reader = new FileReader();
reader.onload = (e) => {
const data = e.target.result;
console.log(`Loaded: ${file.name} (${file.size} bytes)`);
};
reader.readAsArrayBuffer(file);
```