Auto-découvrable

Définition, exemples et bonnes pratiques

À retenir

  • Le serveur guide le client en lui envoyant des liens cliquables.
  • Améliore la flexibilité : le serveur peut changer ses adresses sans casser l'application cliente.
  • C'est le stade ultime de maturité d'une API web (modèle de Richardson).

Se dit d'un service informatique, généralement une API, qui fournit lui-même les instructions et les liens nécessaires pour naviguer dans ses fonctionnalités. C'est un peu comme un menu de restaurant interactif : au lieu de devoir deviner ce que vous pouvez commander, la carte vous présente directement les boutons pour choisir vos plats et passer à l'étape suivante.

Étymologie

Formé du préfixe grec auto- (soi-même) et de découvrable. Ce terme est la traduction française du concept anglo-saxon discoverability, intimement lié au principe architectural HATEOAS (Hypermedia As The Engine Of Application State).

Exemples d'usage

  • Une API de commerce en ligne qui, lorsqu'elle affiche un produit, inclut immédiatement le lien pour l'ajouter au panier.
  • Le format de données HAL (Hypertext Application Language) qui structure les réponses avec une section dédiée aux liens de navigation.

Cas d'usage

Ce concept intervient principalement dans le développement d'API REST de haut niveau. Il permet à une application mobile ou web d'interagir avec un serveur sans avoir besoin de connaître à l'avance toutes les adresses (URL) du système.

Bonnes pratiques

Pour rendre une interface auto-découvrable, il est recommandé d'utiliser des formats standards (comme JSON:API ou Hydra) et de nommer les relations entre les données de façon explicite, afin que n'importe quel développeur comprenne immédiatement à quoi sert un lien fourni.

Synonymes

explorable hypermédia

Antonymes

statique couplage fort

Conseil

Pour bien comprendre, imaginez la différence entre une ligne de commande où vous devez connaître chaque instruction par cœur, et un site web où vous vous laissez guider par les liens bleus : l'auto-découvrabilité, c'est l'arrivée du 'lien bleu' dans le monde des échanges entre machines.

Questions fréquentes

Est-ce que toutes les API sont auto-découvrables ?

Non, la majorité des API actuelles demandent encore au développeur de lire une documentation externe pour connaître les URL.

Quel est le rapport avec HATEOAS ?

HATEOAS est le principe technique qui impose qu'une API soit auto-découvrable via l'usage de l'hypermédia (liens).