ORCID vise à prendre en charge 2 versions majeures d'API à la fois. Lorsqu'une nouvelle version majeure de l'API est publiée, ORCID garantit un support pendant au moins trois ans à compter de la date de sortie. De plus, nous donnons un préavis de 12 mois avant de retirer la version majeure la plus ancienne et envoyons des e-mails de rappel périodiques aux membres qui l'utilisent encore pendant la période de préavis. De nouvelles versions majeures sont requises chaque fois que nous apportons des modifications importantes à notre schéma de métadonnées et sont signalées par un incrément du numéro de version majeure. ORCID publie une nouvelle version majeure de l'API tous les 2 à 4 ans.
Dans des circonstances exceptionnelles, ORCID peut envisager de prolonger la période de retraite de 12 mois lorsqu'une nouvelle version majeure de l'API est publiée, mais cela nécessite ORCID d'investir des ressources supplémentaires dans les travaux de maintenance, avec un impact conséquent sur d'autres activités telles que le nouveau développement et le support. ORCID se réserve le droit de facturer des frais supplémentaires pour l'utilisation continue d'une version d'API retirée au-delà de la date de retrait afin d'aider à compenser les coûts supplémentaires encourus.
ORCID a une politique de dépréciation d'API incrémentielle qui nous permet de faire évoluer nos offres d'API et de répondre aux besoins de la communauté entre les versions majeures. Cela signifie que ORCID peut apporter des modifications permanentes aux vocabulaires contrôlés et aux champs de métadonnées de la version actuelle de l'API.
- Les utilisateurs de la version la plus récente de l'API sont libres d'ignorer ces changements, mais doivent être conscients qu'ils peuvent être effectués
- Les utilisateurs de la version précédente de l'API ne recevront pas de données qui ne peuvent pas être modélisées dans leur version
Un exemple au moment de la rédaction est l'introduction de la taxonomie des rôles de contributeur CREDIT dans l'API v3.0. Une fois en ligne, les intégrations v2.x perdront lentement la visibilité des rôles de contributeur à mesure que de plus en plus de chercheurs et d'intégrations adopteront CREDIT. Les utilisateurs de la V2.x ne se briseront pas, mais ils recevront des métadonnées moins riches au fil du temps.
Lors du développement d'une nouvelle version majeure de l'API, il est normal que ORCID pour produire des versions 'release candidate'. Celles-ci s'adressent aux intégrateurs capables de mettre à niveau en temps voulu une fois la version complète de l'API publiée. La durée de vie attendue d'une version candidate est d'au plus 12 mois à compter de la sortie de la version majeure pour laquelle elle a été développée.
Nous conseillons aux intégrateurs de suivre les Principe de robustesse (alias la loi de Postel) lors de l'utilisation du ORCID API.
Biographie
ORCID a lentement évolué son API depuis ses humbles débuts.
L'API v1.x (Lancement ~ 2012 avec le registre) a tenté de renvoyer toutes les métadonnées sur les chercheurs et leurs activités dans une seule réponse API. Les intégrateurs devaient modifier ces métadonnées et les renvoyer dans leur intégralité afin d'ajouter de nouveaux éléments ou de mettre à jour des éléments existants. Il s'agissait d'une première tentative raisonnable, mais elle n'a pas évolué et les ajouts et mises à jour ont été une tâche pénible. (Retraité en mars 2018)
L'API 2.x (sortie en février 2017) a divisé notre API en sections ; travaux, affiliations, financement, biographie, etc. C'était un grand pas en avant et nous a permis, à nous-mêmes et à nos clients, de gérer beaucoup plus facilement de gros dossiers. Cependant, une grande partie de notre validation et de nos vocabulaires contrôlés étaient codés en dur dans le schéma, ce qui rendait difficile la réponse au changement.
L'API 3.x (sortie en mai 2019) a ajouté de nouvelles sections à l'enregistrement telles que les ressources de recherche, simplifié la structure du schéma et fourni ORCID avec une flexibilité supplémentaire. Il a déplacé une grande partie de la validation du schéma vers nos serveurs, ce qui nous a permis de résoudre les problèmes et d'ajouter de nouveaux types d'identifiants sans publier d'autres versions de l'API.
Publier une nouvelle API majeure est une entreprise énorme - des années d'efforts de développement sont nécessaires pour la créer, et des années supplémentaires sont nécessaires à nos membres pour mettre à niveau leurs intégrations. Pour cette raison, nous essayons de limiter les changements que nous apportons. Cependant, nous aimerions apporter certains changements afin de mieux servir la communauté.
Notre travail consiste à déterminer quand nous avons une masse critique pour publier une nouvelle version de l'API, ou à trouver des moyens de mettre à jour nos API existantes sans casser les intégrations existantes.