Anaïs Sparesotto
API · RESTIntermédiaire≈ 2h15 · 8 chapitres

Concevoir une API REST

Ressources et URL, méthodes HTTP, codes de statut, format JSON, filtrage et pagination, sécurité et documentation. Concevoir des API claires, cohérentes et faciles à consommer.

À la fin du cours, tu sais

  • Comprendre ce qu'est une API REST et ses principes fondateurs
  • Nommer et structurer des ressources dans des URL cohérentes
  • Choisir la bonne méthode HTTP selon l'intention
  • Renvoyer le code de statut adapté à chaque situation
  • Structurer les échanges de données au format JSON
  • Gérer le filtrage, le tri et la pagination des collections
  • Sécuriser une API et la documenter proprement

Prérequis

  • Avoir des bases sur les requêtes HTTP (voir le cours « Node.js et Express »)
  • Savoir manipuler du JSON et lire un exemple de requête
Chapitre 11 / 11

Étape 1 sur 11 : Qu'est-ce qu'une API REST

Chapitre 1

Qu'est-ce qu'une API REST

Une API est un contrat entre deux programmes. REST est le style d'architecture le plus répandu pour bâtir des API web claires et prévisibles.

Une API (Application Programming Interface) est une interface qui permet à deux programmes de dialoguer. Sur le web, une API expose des fonctionnalités et des données qu'un client (une application mobile, un site React, un autre serveur) peut consommer à distance. Quand ton application React va chercher la liste des articles auprès d'un serveur, elle appelle une API. C'est le pont entre le frontend et le backend, et entre les services entre eux.

REST (Representational State Transfer) n'est pas une technologie mais un style d'architecture : un ensemble de conventions pour concevoir des API web cohérentes et prévisibles. Une API qui respecte ces conventions est dite « RESTful ». L'immense majorité des API web que tu croiseras sont REST : c'est le standard de fait. En maîtriser les principes, c'est savoir concevoir et consommer la plupart des API du marché.

Les principes clés de REST

  • Tout est ressource : on manipule des « choses » (des articles, des utilisateurs), chacune identifiée par une URL.
  • Client-serveur : le client et le serveur sont indépendants et communiquent via des requêtes.
  • Sans état (stateless) : chaque requête est autonome, le serveur ne « se souvient » pas de la précédente.
  • S'appuie sur HTTP : les méthodes (GET, POST...) et les codes de statut du web portent le sens.

Le principe sans état mérite une explication : chaque requête envoyée au serveur doit contenir toutes les informations nécessaires pour être traitée (par exemple, le jeton d'authentification). Le serveur ne conserve pas le contexte entre deux requêtes. Cette contrainte, un peu abstraite, rend les API plus simples à mettre à l'échelle : n'importe quel serveur peut traiter n'importe quelle requête, sans mémoire partagée.

Concevoir vs implémenter

Ce cours porte sur la conception : quelles URL, quelles méthodes, quels codes de statut, quel format. L'implémentation (écrire le serveur qui répond) est vue dans le cours Node.js et Express. Les deux sont complémentaires : une bonne conception rend l'implémentation évidente, et une API bien conçue est un plaisir à consommer pour ceux qui l'utilisent.

Vrai ou faux ?

REST est une bibliothèque logicielle qu'on installe pour créer des API.

Tu veux ce cours pour ton équipe ?

Je peux adapter et animer ce cours pour tes formateur·ices ou tes apprenant·es, en présentiel ou en distanciel. Parlons-en pendant l'audit gratuit.

Réserver un audit gratuit →