L'API (crisalid-apollo)
En bref : L'API est le guichet par lequel les applications, SoVisu+ en tête, interrogent le graphe sans y accéder directement. Elle tourne sur l'instance de développement. Elle ne convient pas telle quelle à une vitrine : une clé unique y ouvre la lecture et l'écriture, et elle ne produit aucun export.
Ce que c'est et à qui ça sert
L'API (crisalid-apollo) expose le graphe dans un langage de requête courant pour les applications web, GraphQL. Une application y demande, par exemple, « les publications de telle personne avec leurs coauteurs » et reçoit une réponse structurée.
Elle sert d'abord à SoVisu+, qui s'en sert pour afficher et tenir à jour sa copie de travail. Elle n'a ni base propre ni règle métier : elle est générée automatiquement à partir d'une description du modèle de données écrite à la main dans le dépôt, qui doit suivre les évolutions du graphe. Elle ne moissonne rien et ne rapproche rien.
Ce qui se passe dedans
Le schéma décrit personnes, structures, identifiants, documents, notices sources, contributions, revues et concepts. Qu'un champ y soit déclaré ne prouve ni qu'il est rempli dans le graphe, ni qu'il est publiable.
Ce qu'on a observé
| Constat | Statut | Source |
|---|---|---|
| Une clé d'API unique qui ouvre aussi les écritures : le schéma généré compte 60 opérations de lecture et 60 d'écriture, sans clé limitée à la lecture. Détail réservé à l'équipe CRISalid | Confirmé | sécurité, droits, données personnelles |
| Aucune règle métier ni fichier d'export : l'API répond requête par requête | Confirmé | contrats API et événements |
| Le schéma est écrit à la main, à côté du graphe : il doit suivre ses évolutions | Confirmé | schéma du dépôt |
| Licence CeCILL 2.1 dans le fichier de licence ; les métadonnées du paquet indiquent encore une autre licence, à faire corriger | Confirmé | exploitation et gouvernance |
| Pas de documentation officielle dédiée | Confirmé | dépôt |
| Le service tourne ; son schéma n'a pas été récupéré | Observé sur instance (dev) | ce que montre l'instance |
Pour la vitrine
- Apporte : un accès structuré et documenté par son schéma à tout le graphe, déjà utilisé par SoVisu+ ; un service d'export pourrait s'en servir pour lire.
- Prouvé : l'API tourne sur l'instance ; son contrat a été régénéré et contrôlé à partir du code.
- Bloque ou reste à prouver : donner la clé à une vitrine reviendrait à lui donner le droit d'écrire dans le graphe. Il faut donc un service d'export dédié, en lecture seule, qui produit l'extrait et n'expose que les champs publiables ; les règles de filtrage (suppressions, coauteurs externes, données personnelles) y sont appliquées. Ce service n'existe pas.
Liens
- Dépôt officiel : github.com/CRISalid-esr/crisalid-apollo
- Documentation officielle : aucune page dédiée ; le dépôt contient un guide d'installation
- Pages qui font foi : sécurité, droits, données personnelles ; contrats API et événements
Révision lue : d377579a