Les API (Application Programming Interface) permettent une communication « machine à machine ». Même si certaines API de recherche peuvent avoir une utilisation humaine directe, une API est généralement destinée à être intégrée à une interface Homme Machine (IHM) de type site web, widget ou workflow. En savoir plus
Fonctionnalités de l'API ORCID
Important : Dans la philosophie d’ORCID, le chercheur reste au cœur du système. Ce principe s’applique à l’API ORCID. Ainsi par exemple, un établissement ne pourra pas créer des comptes à la place des chercheurs. En revanche, via l’API, le chercheur pourra déléguer l’alimentation de son compte à un tiers. Pour cela, le recueil du consentement du chercheur doit être explicite et reste révocable à tout moment.
L’API ORCID permet d’effectuer 3 types d’actions :
- Authentification
- Lecture
- Ecriture
- utiliser l’identifiant ORCID dans le cadre d’une authentification unique (single sign on) : il s’agit de faciliter la vie des chercheurs en leur permettant d’accéder à vos services en utilisant leur login/mot de passe ORCID au lieu de devoir se créer un compte ad hoc.
- obtenir des IDs authentifiés : le registre ORCID ayant dépassé le cap des 10 millions de comptes fin 2020, il contient fatalement des homonymes. Obtenir des iDs authentifiés permet de se prémunir de cette difficulté. Par exemple, en demandant au « Jacques Martin » affilié à votre institution de vous transmettre son identifiant ORCID, vous êtes certain de récupérer le bon identifiant ORCID et non celui d’un homonyme.
- recueillir le consentement des chercheurs détenteurs des comptes avec lesquels vous voulez interagir : le chercheur doit impérativement donner son accord pour que vous puissiez agir à sa place et lui rendre service.
- Service de requêtage des données du registre ORCID
Service d’écriture : afin de « pousser des données » de votre système pour alimenter le registre ORCID, vous pouvez :
- ajouter des données
- modifier des données préalablement ajoutées
- supprimer des données préalablement ajoutées
API publique et API membre
Toutes les fonctionnalités de l’API ORCID ne sont pas librement accessibles. Le modèle économique d’ORCID repose en effet sur la distinction entre :
- API publique : librement accessible, elle permet d’entreprendre gratuitement certaines actions relatives à l’authentification et à la lecture du registre ORCID
- API membre : accessible uniquement aux établissements ayant adhéré au consortium ORCID France, elle permet, en plus des actions disponibles par l’API publique, de gérer les actions d’authentification en recueillant finement le consentement des chercheurs pour la lecture et l’écriture sur leur compte.
API publique : fonctionnalités
Description du besoin fonctionnel | Auth. | Lec. | Ecr. | Protocole |
---|---|---|---|---|
Autoriser les chercheurs à se connecter à une application tierce de votre institution avec leur nom d'utilisateur et leur mot de passe ORCID | Protocoles OAuth & OpenID Connect | |||
Obtenir l’identifiant ORCID validé d’un chercheur et l’enregistrer dans une application tierce de votre établissement | Protocole OAuth | |||
Récupérer des données issues des profils ORCID des chercheurs de votre institution et définies comme publiques par ces derniers, dans un format lisible par des machines (JSON, XML, etc.) |
Architecture REST Méthode GET | |||
Effectuer des requêtes informatisées sur l’ensemble des données publiques du registre ORCID | Architecture REST Méthode GET |
API membre : fonctionnalités
Description du besoin fonctionnel | Auth. | Lec. | Ecr. | Protocole |
---|---|---|---|---|
Accéder à des données privées issues des profils des chercheurs dès lors qu'ils ont accordé, via leur profil ORCID, les autorisations de lecture et d’écriture aux applications tiers de confiance de votre établissement |
Protocole OAuthArchitecture REST Méthode GET | |||
Permettre des transferts d’autorisation et des échanges de données entre le profil ORCID d’un chercheur et une application tierce de votre établissement |
Protocole OAuth Architecture REST Méthode POST, PUT, DELETE | |||
Modifier les fiches ORCID des chercheurs ayant désigné votre application comme tiers de confiance |
Protocole OAuth Architecture REST Méthode POST, PUT, DELETE | |||
Synchroniser le registre ORCID avec votre système |
Protocole OAuth Architecture REST Méthode POST, PUT, DELETE |
Caractéristiques techniques de l’API ORCID
L’API ORCID est de type RESTful ce qui signifie qu’elle est « orientée ressources » et utilise le protocole HTTPS pour transférer des informations. Elle s’appuie sur :
- le protocole OAuth 2.0 : ce protocole standard, connu et libre est utilisé pour autoriser un site web, un logiciel ou une application à utiliser l’API sécurisée d’un autre site web pour le compte d’un utilisateur. Il ne s’agit pas d’un protocole d’authentification, mais de délégation d’autorisation. Grâce à ce protocole, l’utilisateur (le chercheur) peut donner accès à un tiers (l’établissement membre d’ORCID) aux informations personnelles stockées dans le registre ORCID
- OpenId Connect : il s’agit d’une surcouche d’OAuth qui permet de proposer une fédération d’authentification SSO (single sign on)
L’API ORCID donne à voir les données en XML ou en JSON. Les requêtes se construisent à partir de la syntaxe du moteur de recherche SolR. La dernière version de l’API ORCID est la v3.0. Il est encore possible d’utiliser la v2.1. Deux environnements techniques existent : l’environnement de production et un environnement de test (« sandbox »).
en savoir plus : consulter la documentation technique sur le ORCID Github
Le protocole OAuth dans l’API ORCID
Pour chaque projet ou action nécessitant une autorisation, le protocole OAuth définit un «scope» particulier. Certaines autorisations «scope» ne sont compatibles qu’avec l’API membre.
Détail du projet ou de l'action | « OAUTH » scope | API publique | API membre |
---|---|---|---|
Collecter l’identifiant ORCID authentifié | /authenticate | ||
Lire le contenu du compte (uniquement les informations publiques) | /read-public | ||
Lire le contenu du compte (y compris les informations limitées) | /read-limited | ||
Ecrire du contenu dans la partie « activities » d’un compte ORCID : ajouter, mettre à jour, supprimer des informations concernant : « employment » « education and qualifications » « invited positions and distinctions » « membership and service » « works » « fundings »« peer-review » | /activities/update |