ANNEXES
ANNEXE I
DÉFINITIONS
Interface de programmation applicative, ou application programming interface (API) : tout ensemble abstrait de fonctions, de procédures, de définitions et de protocoles qui permet la communication de machine à machine et la transmission de données dans un format structuré.
Détenteur de données : tout organisme ou personne public ou privé qui détient des données, ici à caractère personnel, c'est-à-dire qui en contrôle le cycle de vie et les modalités d'accès, ces données ayant vocation à être partagées à des tiers via l'utilisation d'une API, sous leur forme originale ou après l'application d'une transformation telle qu'un procédé d'anonymisation.
Gestionnaire d'API : tout organisme ou personne public ou privé en charge de l'opération et/ou du développement des composants techniques permettant le partage des données via l'API. Le rôle de gestionnaire d'API peut être tenu par plusieurs organismes lorsque la gestion et le développement des outils techniques implique plusieurs acteurs. En particulier, lorsque l'API est mise en œuvre au moyen d'un outil développé par un tiers, l'organisme qui détient la licence sur cet outil est gestionnaire d'API, tout comme celui qui est en charge du déploiement de cet outil dans le système d'information permettant le partage des données.
Réutilisateur des données : tout organisme ou personne public ou privé ayant accès aux données partagées par l'API.
Fournisseur d'API : tout organisme ou personne qui expose une API ouvrant la possibilité pour un consommateur d'utiliser un service que le fournisseur met à disposition, tel qu'un accès à des données.
Consommateur d'API : tout organisme utilisant l'API exposée par un fournisseur afin d'utiliser le service qu'il met à disposition, comme pour accéder à des données ou pour les transmettre.
Plateforme de partage de données : service reposant sur serveur partagé auquel le détenteur de données et le réutilisateur ont accès afin de partager des données. Les données sont généralement contenues dans des fichiers.
Service de télécommunication : service permettant l'échange d'informations par des procédés numériques, tel qu'un service de messagerie électronique.
Requête à l'API : toute demande reposant sur une interrogation de l'API et contenant des instructions décrivant l'action à réaliser. Les requêtes les plus fréquentes, dans le protocole HTTP, sont GET, POST (qui sont respectivement des exemples de requêtes en lecture et en écriture) ou encore PATCH, qui permet de mettre à jour partiellement des données, et DELETE, qui permet d'en supprimer.
Requête en lecture : interrogation de l'API permettant d'obtenir des données. Ce type de requête s'accompagne généralement de l'identifiant des données recherchées ou de règles permettant de les retrouver, et le cas échéant de paramètres destinés à sélectionner l'information retournée et nécessite un droit de lecture sur la base de données sous-jacente.
Requête en écriture : message envoyé via l'API contenant des instructions telles que l'inscription de données contenues dans le message. Ce type de requête nécessite un droit d'écriture sur la base de données.
Métadonnée : information permettant de décrire une donnée ou un ensemble de données (telle que sa date de création, son type, des informations relatives à sa provenance ou à sa validité, etc.).
Différenciation des accès et permissions par niveau : limitation des accès aux données à caractère personnel à celles strictement nécessaires pour chacun des agents ayant à en connaître et limitation des permissions (lecture, écriture, suppression, etc.) aux seules actions nécessaires pour chacun des agents. Il s'agit d'une mise en pratique du principe de moindre privilège.
Balisage : information annexe (ou « métadonnée ») liée à une donnée et indiquant un statut particulier, tel que sa validité, son origine, ou encore les conditions limitant sa réutilisation. Pour être pertinente, l'indication apportée doit être sans ambigüité et transparente.
Outil de gestion de versions : moyens techniques permettant de conserver les modifications successives d'un logiciel ou d'un document et leur historique, ainsi que d'en restituer toute version antérieure.
Outil de validation des données : outil permettant de vérifier la conformité des données échangées par API au format attendu (tel que la correspondance à la description de l'API, la correspondance au type de donnée attendu, l'appartenance à un ensemble de valeurs admises, etc.).
Générateur automatique de documentation : outil permettant de générer la documentation d'une API de manière automatique, à partir du code source de l'API. Ces outils permettent de mettre à jour automatiquement la documentation lors d'une modification apportée à l'API, et peuvent intégrer une gestion des versions. L'utilisation de ces outils permet d'éviter que les réutilisateurs ne se réfèrent à une documentation inexacte.
Outil de recherche des secrets dans le code source : outil permettant de détecter la présence de secrets (jetons d'accès, clés de chiffrement, mots de passe, etc.) par analyse du code source d'un logiciel. Les outils fonctionnant localement (ou on premise) et générant une alerte lors de la présence d'un secret dans le code, avant que celui-ci ne soit publié sur un serveur au moyen d'un outil de gestion des versions par exemple, devraient être privilégiés.
Requests for comments : série de documents de standardisation décrivant les spécifications techniques des protocoles mis en œuvre au sein de l'internet et des matériels informatiques sous-jacents, comme la RFC 2068 sur le protocole HTTP.