This service provides the conversion between two types of identifiers; the PubMed Identifier (PMID) which is a unique number assigned to PubMed citations of life science journal articles that are indexed by PubMed and the Digital Object Identifier (DOI) which is for identifying content in the digital environment. DOIs are used to provide current information, including where the entities (or information about them) can be found on the Internet.

Given a PMID you can use this converter to obtain the corresponding DOI, if it exists.

The tool is able to process maximum 2000 IDs in a single retrieval. If you have a larger number of IDs, split your list into smaller subsets for consecutive retrievals.

REST

To use the REST APIs, append the PMID to the url:
/rest/json/doi/18507872
To do batch querying (up to 2000 PMIDs in a batch), encode the collection of PMIDs in a json array: /rest/json/batch/doi?pmids=[1,2,3] This will work the other way around as well: /rest/json/batch/pmid?dois=["10.1016/0006-2944(75)90147-7"]

SOAP

To use the SOAP APIs, take a look at the WSDL: /soap/mappingService?wsdl

SPARQL

A sparql endpoint is available for mapping pubmed resources to the CrossRef DOI proxy. The endpoint is available at:
/sparql
An example query for mapping a PMID to a DOI:
PREFIX pubmed: <http://www.ncbi.nlm.nih.gov/pubmed/>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
SELECT ?doi WHERE { pubmed:18507872 owl:sameAs ?doi }
Another example query for doing to opposite:
PREFIX owl: <http://www.w3.org/2002/07/owl#>
SELECT ?pmid WHERE { ?pmid owl:sameAs <http://dx.doi.org/10.1186/gb-2008-9-5-r89> }

Related services

Michael Palmer created a script that enriches the experience on Pubmed pages.

This is a Greasemonkey user script for Firefox that inserts links to DOI identifiers into Pubmed pages. This provides direct access to full text for many papers, particularly older ones, for which Pubmed itself does not link to the full text versions.

The script can be found at http://www.science.uwaterloo.ca/~mpalmer/pmid2doi.html