orcid api perks & pitfalls
TRANSCRIPT
DEVELOPERS DIVULGE…
ORCID API Perks + Pitfalls
Was it built by
robots?
THE ORCID API...
...or dropped by
aliens?
No, it’s made by people!
...people who know its darkest secrets
JEFF
Angel
Liz
Tom
Ca
t
Fran
Will
Ro
b
What is this about?Opportunity to gain
insights into how the ORCID team thinks.
Nothing in this is official.
Should be fun! Good humor debates are welcome, but don’t be a bully.
PITFALLCitation metadata in metadata! Perhaps we should get rid of citation metadata inside metadata?P.S. this is real ----------------->(and it can be anything!?!?!?!)
SPEAKING OF CITATIONS…….BibTeX!No UTF8, hello it’s the 21st
century Too many different bibtex
implementationsLaTex parsers are an island of
their own.Hence, poor javascript support
PITFALLUseless coauthors! Perhaps we should get rid of contributor metadata in works?It goes on, and on, and on. 718 coauthor names in this example -->
PITFALLHyper-authorsCurrent top 47,921 works….14 Authors with more than
2000 works
PERKV2.0+ SummariesHas Last modified
timestamps for Items
Hierarchical timestamps
Contains the identifiers
PITFALLBatch-create orcid recordsUnclaimed recordsHard to correct errorsUser confusion
PERKCreate-on-demandEasier than batch create - mailmerge email w/custom url for each user pre-fills the registration form !
PITFALLGetting authenticated iDs into systems that Don’t interact w/authors (repositories, authority files…)
PERKSorry. Researcher control is a core ORCID principle...but there are Multiple ways to get authenticated iDs! (free!) Public api (can
you send an email? )(new) Institutional
sign-in: Request iD when users sign into ORCID via your system
PERKEasy to understand
error messages + suggested errors to
show users<developer-message>... Invalid content was found starting with element 'common:external-id-relationship'. One of '{"http://www.orcid.org/ns/common":external-id-value}' is expected.]</developer-message>
<user-message>ORCID could not process the data, because they were invalid.</user-message>
<error-code>9001</error-code>
PITFALLUnexpected errors have unhelpful messages <!DOCTYPE html><html><head><title>Apache Tomcat/8.0.21 - Error report</title><style type="text/css">H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}.line {height: 1px; background-color: #525D76; border: none;}</style> </head><body><h1>HTTP Status 403 - Access Denied</h1><div class="line"></div><p><b>type</b> Status report</p><p><b>message</b> <u>Access Denied</u></p><p><b>description</b> <u>Access to the specified resource has been forbidden.</u></p><hr class="line"><h3>Apache Tomcat/8.0.21</h3></body></html>
PITFALLGetting useful errors to users (and letting them know who to contact for Help) ↑ Misconfigured code exchange
Trying to send bad metadata ↓
PITFALLPolling the public APIMakes our servers
tiredToo fast/too much
data = we think you’re a dos attack
perkWe have other ways to get record updates!WebhooksSearch API (search by
last modified date)on-demand public
data dump (coming soon!)
publ
ic_ p
rofi
les.
t ar
PITFALLPublic Data dumpUses a lot of resourcesUpset our public api serversWrong architecture wrong formatI want XML only! Not my
problem, take the full file
/xml -> +2.5 M files
/json -> +2.5 M files
perk*On-demand data dumpReal timeAbility to syncSharding structureSync JSON, XML or bothSupport 1.2 and 2.0
(Latest RC)*coming soon
perkBulk create for works!Allow members to
create up to 100 works per request
valid/non-dup works are added
Invalid/dup works becomes error elements
PITFALLIt’s really hard to add new work
id typesThey’re hard coded!
People work with others, but nobody models itProject & Grant IDs are
crappy too!
What if mine isn’t in this list?!
PERK We’ve fixed external
ID types in v2.0 APIand will enable
community contributions to the vocab
Project THOR is working on ID collectionsincluding project
IDs and grant IDs!
PERKStable and Release Candidate versionsEnterprise systems
only have to update ~1 year
Fast moving clients can keep up with the latest and greatest
PITFALLAll of this can be hard to understandMany parts to the
ORCID Record and API
Organizations from different sectors with different goals have to use the same API
PERKIt’s all out thereWe’re open source- you
can contributeLots of Documentation
Technical details on GitHub
Workflows, tutorial, and more at members.orcid.org
PERKThere is helpAPI User GroupPersonal responses at
[email protected] bugs in days,
critical bugs within hours
User Feedback leads to new features
Robert Peters [email protected] Will Simpson [email protected] Liz Krznarich [email protected] Angel Montenegro [email protected]
Catalina Wilmers [email protected] Tom Demeranville [email protected]
Jeers or cheers?