OAI-PMH API - oai.crossref.org/oai

Q

How to use OAI-PMH API, oai.crossref.org/oai, for DOI metadata downloading?

✍: FYIcenter.com

A

OAI-PMH API oai.crossref.org/oai allows you to download DOI metadata in XML. OAI-PMH stands for Open Archives Initiative - Protocol for Metadata Harvesting.

Query parameters supported by oai.crossref.org/oai are:

verb - Required. The verb of the query action: ListIdentifiers, ListSets, ...
from - Optional. The start date of the DOI registration date range.
until - Optional. The end date of the DOI registration date range.
set - Optional. The type of DOI content: J: journals, B: books, and S: series.

oai.crossref.org supports only two OAI verbs, ListSets and ListIdentifiers, for public users.

1. With the ListIdentifiers request, the set, from, and until parameters are optional. The from and until parameters are used to specify dates when the DOIs were registered with us and not the publication date.

2. With the ListSets request, the set parameter is optional. Leaving off the set parameter will return only journal data which includes a list of publishers, their journal titles, and each year of publication for which we have metadata records.

Here is an example of download journal DOIs registered on 2022-10-01:

fyicenter$ curl 'https://oai.crossref.org/oai?verb=ListIdentifiers&from=2022-10-01&until=2022-10-01'

<?xml version="1.0" encoding="UTF-8"?>
<OAI-PMH xmlns="http://www.openarchives.org/OAI/2.0/" 
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/ http://www.openarchives.org/OAI/2.0/OAI-PMH.xsd">
  <responseDate>2022-10-08T10:14:12</responseDate>
  <request verb="ListIdentifiers" from="2022-10-01" until="2022-10-01" set="J" 
    metadataPrefix="CR_UNIXSD" 
    resumptionToken="78da63645cfc72bd4b0303030313230314249bef7..." >
    http://oai.crossref.org/oai
  </request>
  <!-- recipient -2147483648 PUBLIC -->
  <ListIdentifiers>
    <header>
      <identifier>info:doi/10.1145%2F1115880.1115882</identifier>
      <datestamp>2022-10-01</datestamp>
      <setSpec>J</setSpec>
      <setSpec>J:10.1145</setSpec>
      <setSpec>J:10.1145:52281</setSpec>
    </header>
    <header>
      <identifier>info:doi/10.1145%2F1115880.1115883</identifier>
      <datestamp>2022-10-01</datestamp>
      <setSpec>J</setSpec>
      <setSpec>J:10.1145</setSpec>
      <setSpec>J:10.1145:52281</setSpec>
    </header>
    <header>
      <identifier>info:doi/10.1145%2F1115880.1115884</identifier>
      <datestamp>2022-10-01</datestamp>
      <setSpec>J</setSpec>
      <setSpec>J:10.1145</setSpec>
      <setSpec>J:10.1145:52281</setSpec>
    </header>
    <header>
      <identifier>info:doi/10.1145%2F1115880.1115886</identifier>
      <datestamp>2022-10-01</datestamp>
      <setSpec>J</setSpec>
      <setSpec>J:10.1145</setSpec>
      <setSpec>J:10.1145:52281</setSpec>
    </header>
...

Here is an example of download an end set, which is a journal:

fyicenter$ curl 'https://oai.crossref.org/oai?verb=ListSets&set=J:10.1145:52281'

<?xml version="1.0" encoding="UTF-8"?>
<OAI-PMH xmlns="http://www.openarchives.org/OAI/2.0/" 
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/ http://www.openarchives.org/OAI/2.0/OAI-PMH.xsd">
  <responseDate>2022-10-08T10:24:49</responseDate>
  <request verb="ListSets" set="J:10.1145:52281" 
    metadataPrefix="CR_UNIXSD" >http://oai.crossref.org/oai</request>
  <!-- recipient -2147483648 PUBLIC -->
  <ListSets>
    <set>
      <setSpec>J:10.1145:52281</setSpec>
      <setName>ACM SIGPLAN Notices</setName>
    </set>
    <resumptionToken/>
  </ListSets>
</OAI-PMH>

Here is an example of download a container set, which is a publisher, who publishes many journals:

fyicenter$ curl 'https://oai.crossref.org/oai?verb=ListSets&set=J:10.1145'

<?xml version="1.0" encoding="UTF-8"?>
<OAI-PMH xmlns="http://www.openarchives.org/OAI/2.0/" 
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/ http://www.openarchives.org/OAI/2.0/OAI-PMH.xsd">
  <responseDate>2022-10-08T10:29:42</responseDate>
  <request verb="ListSets" set="J:10.1145" metadataPrefix="CR_UNIXSD" >http://oai.crossref.org/oai</request>
  <!-- recipient -2147483648 PUBLIC -->
  <ListSets>
    <set>
      <setSpec>J:10.1145:32140</setSpec>
      <setName>ACM SIGCOMM Computer Communication Review</setName>
    </set>
    <set>
      <setSpec>J:10.1145:32141</setSpec>
      <setName>ACM SIGMIS Database the DATABASE for Advances in Information Systems</setName>
    </set>
    <set>
      <setSpec>J:10.1145:38982</setSpec>
      <setName>Queue</setName>
    </set>
    <set>
      <setSpec>J:10.1145:38981</setSpec>
      <setName>ACM SIGPLAN Lisp Pointers</setName>
    </set>
    <set>
      <setSpec>J:10.1145:32144</setSpec>
      <setName>ACM SIGACT News</setName>
    </set>
    <set>
      <setSpec>J:10.1145:32143</setSpec>
      <setName>ACM SIGOPS Operating Systems Review</setName>
    </set>
    <set>
      <setSpec>J:10.1145:32142</setSpec>
      <setName>ACM SIGAda Ada Letters</setName>
    </set>
...

 

DataCite.org DOI Database

XML API - www.crossref.org/openurl/?id=doi:{doi}

Crossref.org DOI Database

⇑⇑ DOI - Frequently Asked Questions

2022-10-08, 242👍, 0💬