Lors des entretiens de conception de systèmes, les API ne relèvent pas tant de la syntaxe que de la capacité à faire des choix justifiables sous contraintes. Ce cours développe le discernement nécessaire pour transformer un énoncé produit en une API claire, puis pour défendre cette conception en tenant compte du passage à l'échelle, de la latence, de la justesse, des coûts et des évolutions futures. Il s'adresse aux débutants souhaitant acquérir une méthode pratique pour expliquer leurs décisions et répondre avec assurance aux questions complémentaires des recruteurs.
Ce cours aborde les fondamentaux des API en vue d'entretiens, la définition du périmètre des points de terminaison à partir des besoins produit, ainsi que la modélisation des ressources avec des chemins, des méthodes et des noms clairs. Il traite également du versioning, de la pagination, du filtrage, du tri, des écritures idempotentes, de la gestion sécurisée des tentatives, des contrats d'erreur, des délais d'attente et des limitations de débit, pour finalement intégrer l'ensemble dans une conception d'API complète et robuste.