orcid api
TRANSCRIPT
ORCID APIINTEGRATING WITH THE ORCID API
17 APRIL 2017
ALAINNA THERESE WRIGLEYSenior ORCID Community Team Specialist (APAC)
[email protected] | orcid.org/0000-0002-6036-0903
ORCID ENABLES
Organizations use the ORCID API to authenticate, collect, display, and connect persistent identifiers for people, places, and things in research workflows
THE ORCID API
API Features
Public API
Freely available to anyone with
ORCID iD
• Authenticate: Get a user’s authenticated ORCID iD
• Read (Public): Search/retrieve public data
Member API
ORCID member organizations
(Sandbox test environment
freely available to anyone)
• Read (Limited): Search/retrieve limited-access data
• Add: Post new data to a record
• Update: Edit or delete data you previously added
Premium Member API
Premium ORCID member
organizations
• Webhooks: Receive notifications of updates
• Customised monthly reports (including email stats)
• Access to monthly public data file
ORCID REGISTRY CONNECTIONS
Two models:
1. Connect via a vendor system
• eJournal Press
• Editorial Manager
• Open Journal Systems
• ScholarOne
2. Develop a custom connection
CUSTOM INTEGRATIONS
Via the ORCID API
• Fine-tuned control & permissions
• Customised buttons, user flows, feedback
• Test & troubleshoot with ORCID team
Code examples: https://members.orcid.org/api/resources/code-examples
COLLECT & CONNECT
C&C: PEER REVIEWNew feature – reviews only added by ORCID APIStandard citation elements:
• PERSON: person who performed review & being recognized for review activity.
• REVIEW: review itself. Can be blank for blind or unshared reviews.• SUBJECT: review subject - paper, grant, etc. Can be blank for blind or
unshared reviews.
• ORGANIZATION: organization recognizing the person for review activity, such as a publisher, association or funder.
COLLECTCOLLECT and store users’ validated iDs
Look for natural fits
• Registration/sign in
• Account settings/user profile
• Submission
• Post-submission thank you email
TO: [email protected]: Grateful Journal
Thank you for reviewing this article. Would you like to be recognized on your ORCID record?
What is ORCID?
Clicking this button will open a permission screen.
Post-submission email
ORCID as a sign in option
Learn more: • Peer review workflow: https://members.orcid.org/api/workflow/peer-review• Publishing systems workflow: https://members.orcid.org/api/workflow/publishing-systems
INVOLVING THE USER
Key benefits:• You know the user controls the iD• User consent • Privacy/ data control trends• Positions your system as a service
How?• Just a customized URL• No need to know whether the user has
an iD – you’ll get it directly from the ORCID API!
STEP 1: AUTHORIZATION URL
https://sandbox.orcid.org/oauth/authorize? \
client_id=APP-E422WM33OPZWKKMQ& \
response_type=code& \
scope=/read-limited%20/activities/update& \
redirect_uri=https://my.URL.org& \
family_names=Reviewer&given_names=Peer&email=peerrevi
the base URL, displays ORCID sign in screen
who’s asking?
what permissions?
where the user goes next
personalize theexperience
The OAuth call: part I
WHAT THE USER SEES
already signed in
sign in form (already registered)
registration form
STEP 2: AUTH CODE & USER FEEDBACK
ORCID sends the user to your redirect, with a code
appended to endhttps://my.URL.org?htA3yE
• Save the code – you need it for the next step
• Display something useful to the user
• Authorize: thanks, here’s your iD!
• Deny: are you sure you don’t want to give
permission?
the auth code
deny message
authorize message
STEP 3A: TRANSFORM THE CODE INTO A TOKEN
Use the code to gain access using the ORCID API
https://sandbox.orcid.org/oauth/token
HEADER: accept:application/json
DATA:
client_id=APP-XT8FBKJRO3MR8WDRclient_secret=e285575c-4794-464b-a807-6f1c06b63grant_type=authorization_codecode=htA3yEredirect_uri=https%3A%2F%2Fmy.URL.org
our API calls always look like URLs (RESTful)
what format?
the auth codeso we know you arethe right system to get this information
STEP 3B: STORE THE RESULT
The result of the call"access_token" :"6710dfee-6aab-445b-a266-205dd9085273",
"token_type" :"bearer",
“refresh_token“ :"2d76d8d0-6fd6-426b-a017-61e0ceda0ad2",
"expires_in" :631138518,
"scope" :"/read-limited /activities/update",
"orcid" :"0000-0002-0491-7882",
"name" :"Bob Researcher"
store the access token, refresh token and iD with user’s info in your system
when permission expires (in seconds)
your permission – executed contract
iD & name for the person who gave permission
what you can do
✔ iD Collected!
DISPLAY
Learn more: • iD Display guidelines https://orcid.org/trademark-and-id-display-guidelines
CONNECT
CONNECT reviews to ORCID records• Use existing permissions (token) or get
permission to update ORCID record
• Use as much or little detail as is relevant
• Each review has own unique reference ID
• Add new group if doesn’t exist
CONNECT VIA API TO SEND DATA
Verb: POST
BASE URL: https://api.sandbox.orcid.org/v2.0/0000-0002-0491-7882/peer-review
HEADERS: Content-type:application/vnd.orcid+xml
Authorization: Bearer 6710dfee-6aab-445b-a266-205dd9085273
DATA (if adding or updating):
the file [email protected]
endpoint: /employment
/education/work
/fundingetc.
data format
access token from before
type of action, also: GET; PUT; DELETE
1. Your client sends data 2. Researcher’s record updated
researcher’s iD
• orcid.org
unique ref id
group
SYNCHRONIZE your systems and ORCID
• Continuously update reviewers’ records for new or corrected review activity
• Register webhooks to learn of new activities on reviewers’ records
• Update other data: Affiliations, works
SYNCHRONIZE
Learn more: • Webhooks: https://members.orcid.org/api/tutorial/webhooks
API DEMO: JOURNAL ID CONNECT
https://orcid-journalconnect.herokuapp.com
RESOURCESORCID and Publishers
https://members.orcid.org/publishers
Workflow: ORCID in publishing systems
https://members.orcid.org/api/workflow/publishing-systems
Workflow: ORCID in peer review
https://members.orcid.org/api/workflow/peer-review
ORCID peer review examples and case studies
https://vimeo.com/album/4159316
ORCID-enabled publishing tools
https://members.orcid.org/api/vendors/publisher-tools
ORCID API documentation
https://members.orcid.org/api
Questions? [email protected]