Crossref

App · Research & Academia · 19 actions

Search and read Crossref's catalogue of over 170 million registered works: look up any DOI's full metadata, find the DOI for a citation, browse a journal's, publisher's or funder's output, and turn a DOI into a formatted citation, BibTeX or RIS.

Actions

ActionWhat it does
Check which agency owns a DOIFind out which registration agency a DOI belongs to.
Format a citationTurn a DOI into a ready-to-paste citation.
Get DOI prefix ownerFind out which Crossref member owns a DOI prefix: the 10.1038 in 10.1038/nature12373.
Get funderGet one funder's record: its official and alternative names, country, how many works credit it directly, how many credit it or anything beneath it, and the whole tree of its sub-organisations (the directorates, institutes and programmes that fund in its name).
Get journal by ISSNGet one journal's record: its title, publisher, both ISSNs, how many DOIs it has registered per year, and a breakdown of how much of its metadata carries abstracts, ORCID iDs, licences, funding and references.
Get publisherGet one publisher's record: its names, location, every DOI prefix it owns, how many DOIs it has registered by year, and the metadata-quality scores that say how often it deposits abstracts, ORCID iDs, licences, funding and reference lists.
Get work by DOILook up one DOI and get everything the publisher deposited for it: title, authors with their ORCID iDs and affiliations, journal, volume, issue, pages, every publication date, the licence, full-text links, funding, the abstract where there is one, and the whole reference list.
Get work typeGet one work type's ID and display label: the pair to show someone, or to check a type ID before filtering a search on it.
List a DOI prefix's worksList everything registered under one DOI prefix, with the same search, filter and sort options as the main search.
List a funder's worksList everything that credits one funder, with the same search, filter and sort options as the main search.
List a journal's worksList everything published in one journal, with the same search, filter and sort options as the main search.
List a publisher's worksList everything one publisher has registered, with the same search, filter and sort options as the main search.
List licencesList every licence URL publishers have attached to their work, with the number of works using each one.
List work typesList every kind of work Crossref registers: journal article, book chapter, posted content (preprints), dataset, dissertation, peer review, standard, grant and the rest, with the ID each one is filtered by.
List works of one typeList every work of one type, with the same search, filter and sort options as the main search.
Search fundersSearch the Funder Registry (the standard list of research funding bodies worldwide, with their alternative names and the sub-organisations beneath them).
Search journalsFind journals by title or publisher, and get each one's ISSNs, how many DOIs it has registered, and how complete its metadata is: whether it deposits abstracts, ORCID iDs, licences, funding and reference lists.
Search publishersSearch Crossref's member publishers.
Search worksSearch everything registered with Crossref (around 170 million journal articles, book chapters, preprints, conference papers, datasets, dissertations and standards) and narrow it by type, date, journal, publisher, funder, grant, author ORCID iD, or what the record contains.

Check which agency owns a DOI

Find out which registration agency a DOI belongs to. Not every DOI is a Crossref DOI (datasets are usually DataCite, and there are agencies for medical, Japanese and Korean content), and only Crossref DOIs have metadata in this API. Use it before a lookup so a workflow can route a non-Crossref DOI elsewhere instead of failing on it.

Inputs

DOIdoitextRequired
The DOI to check.

Outputs

agencyobject
agency_idtext
agency_labeltext
doitext
Example output
{
  "agency": {
    "id": "crossref",
    "label": "Crossref"
  },
  "agency_id": "crossref",
  "agency_label": "Crossref",
  "doi": "10.1038/nature12373"
}

Format a citation

Turn a DOI into a ready-to-paste citation. Pick a style (APA, MLA, Chicago, Harvard, IEEE, Nature and others) and get the reference back as text, or choose BibTeX, RIS, CSL JSON or Crossref XML to hand to a reference manager or a typesetting pipeline. Crossref renders the citation itself, so nothing has to be assembled from the raw metadata.

Inputs

DOIdoitextRequired
The DOI to render.
Formatoutput_formattext
What to get back. 'Formatted citation' is a finished reference in the style chosen below; the others are machine-readable formats for reference managers and publishing tools.One of: text/x-bibliography (Formatted citation (pick a style below)), application/x-bibtex (BibTeX), application/x-research-info-systems (RIS (EndNote, Zotero, Mendeley)), application/vnd.citationstyles.csl+json (CSL JSON), application/vnd.crossref.unixref+xml (Crossref UNIXREF XML), application/vnd.crossref.unixsd+xml (Crossref UNIXSD XML), application/rdf+xml (RDF/XML), text/turtle (RDF Turtle). Default: text/x-bibliography.
Citation stylecitation_styletext
Which style to write the reference in. Only used when the format above is 'Formatted citation'. Defaults to APA.One of: apa (APA (7th edition)), apa-6th-edition (APA (6th edition)), modern-language-association (MLA), chicago-author-date (Chicago (author–date)), harvard-cite-them-right (Harvard (Cite Them Right)), elsevier-harvard (Elsevier Harvard), ieee, american-medical-association (AMA (American Medical Association)), american-chemical-society (ACS (American Chemical Society)), american-institute-of-physics (AIP (American Institute of Physics)), and 12 more. Default: apa.

Outputs

citationtext
content_typetext
doitext
output_formattext
styletext
Example output
{
  "citation": "Kucsko, G., Maurer, P. C., Yao, N. Y., Kubo, M., Noh, H. J., Lo, P. K., Park, H., & Lukin, M. D. (2013). Nanometre-scale thermometry in a living cell. Nature, 500(7460), 54\u201358. https://doi.org/10.1038/nature12373",
  "content_type": "text/x-bibliography",
  "doi": "10.1038/nature12373",
  "output_format": "text/x-bibliography",
  "style": "apa"
}

Get DOI prefix owner

Find out which Crossref member owns a DOI prefix: the 10.1038 in 10.1038/nature12373. Prefixes outlive imprints and acquisitions, so this is how you tell who actually registered a DOI, and it works from a whole DOI as well as from the prefix on its own.

Inputs

DOI prefixprefixtextRequired
The part of a DOI before the slash. A whole DOI works here too; only the prefix is used.

Outputs

prefixobject
Example output
{
  "prefix": {
    "member": "https://id.crossref.org/member/297",
    "name": "Springer Science and Business Media LLC",
    "prefix": "https://id.crossref.org/prefix/10.1038"
  }
}

Get funder

Get one funder's record: its official and alternative names, country, how many works credit it directly, how many credit it or anything beneath it, and the whole tree of its sub-organisations (the directorates, institutes and programmes that fund in its name).

Inputs

Funder IDfunder_idtextRequired
The funder's Funder Registry ID. Find one with 'Search funders'; the funder's full DOI works here too.

Outputs

funderobject
Example output
{
  "funder": {
    "alt-names": [
      "EC",
      "European Union"
    ],
    "descendant-work-count": 1044123,
    "id": "501100000780",
    "location": "European Union",
    "name": "European Commission",
    "uri": "http://dx.doi.org/10.13039/501100000780",
    "work-count": 138992
  }
}

Get journal by ISSN

Get one journal's record: its title, publisher, both ISSNs, how many DOIs it has registered per year, and a breakdown of how much of its metadata carries abstracts, ORCID iDs, licences, funding and references. Handy for judging how trustworthy a search over that journal will be.

Inputs

ISSNissntextRequired
The journal's ISSN. Either the print or the electronic one works, and the hyphen is optional.

Outputs

journalobject
Example output
{
  "journal": {
    "ISSN": [
      "0028-0836",
      "1476-4687"
    ],
    "counts": {
      "backfile-dois": 405916,
      "current-dois": 12704,
      "total-dois": 418620
    },
    "flags": {
      "deposits-abstracts-current": false,
      "deposits-orcids-current": true
    },
    "publisher": "Springer Science and Business Media LLC",
    "title": "Nature"
  }
}

Get publisher

Get one publisher's record: its names, location, every DOI prefix it owns, how many DOIs it has registered by year, and the metadata-quality scores that say how often it deposits abstracts, ORCID iDs, licences, funding and reference lists.

Inputs

Publisher (Crossref member ID)member_idtextRequired
The publisher's Crossref member ID. Find one with 'Search publishers'.

Outputs

memberobject
Example output
{
  "member": {
    "counts": {
      "backfile-dois": 11034335,
      "current-dois": 1109031,
      "total-dois": 12143366
    },
    "id": 311,
    "location": "111 River Street, Hoboken, NJ 07030, United States",
    "names": [
      "Wiley",
      "John Wiley & Sons, Inc."
    ],
    "prefixes": [
      "10.1002",
      "10.1111"
    ],
    "primary-name": "Wiley"
  }
}

Get work by DOI

Look up one DOI and get everything the publisher deposited for it: title, authors with their ORCID iDs and affiliations, journal, volume, issue, pages, every publication date, the licence, full-text links, funding, the abstract where there is one, and the whole reference list. Accepts a bare DOI, a doi.org link, or a DOI copied out of a citation.

Inputs

DOIdoitextRequired
The DOI to look up. A doi.org link or a 'doi:' prefix is fine; only the DOI itself is used.

Outputs

workobject
Example output
{
  "work": {
    "DOI": "10.1038/nature12373",
    "ISSN": [
      "0028-0836",
      "1476-4687"
    ],
    "URL": "http://dx.doi.org/10.1038/nature12373",
    "author": [
      {
        "family": "Kucsko",
        "given": "G.",
        "sequence": "first"
      },
      {
        "family": "Maurer",
        "given": "P. C.",
        "sequence": "additional"
      }
    ],
    "container-title": [
      "Nature"
    ],
    "created": {
      "date-parts": [
        [
          2013,
          7,
          31
        ]
      ],
      "date-time": "2013-07-31T17:03:41Z",
      "timestamp": 1375290221000
    },
    "is-referenced-by-count": 1807,
    "issue": "7460",
    "issued": {
      "date-parts": [
        [
          2013,
          7,
          31
        ]
      ]
    },
    "language": "en",
    "license": [
      {
        "URL": "https://www.springernature.com/gp/researchers/text-and-data-mining",
        "content-version": "tdm"
      }
    ],
    "link": [
      {
        "URL": "http://www.nature.com/articles/nature12373.pdf",
        "content-type": "application/pdf",
        "intended-application": "text-mining"
      }
    ],
    "member": "297",
    "page": "54-58",
    "prefix": "10.1038",
    "published": {
      "date-parts": [
        [
          2013,
          7,
          31
        ]
      ]
    },
    "publisher": "Springer Science and Business Media LLC",
    "references-count": 30,
    "score": 24.5,
    "short-container-title": [
      "Nature"
    ],
    "subject": [
      "Multidisciplinary"
    ],
    "title": [
      "Nanometre-scale thermometry in a living cell"
    ],
    "type": "journal-article",
    "volume": "500"
  }
}

Get work type

Get one work type's ID and display label: the pair to show someone, or to check a type ID before filtering a search on it.

Inputs

Work typetype_idtextRequired
Which kind of work. The list comes from Crossref's own /types endpoint, so it is always current.

Outputs

typeobject
Example output
{
  "type": {
    "id": "journal-article",
    "label": "Journal Article"
  }
}

List a DOI prefix's works

List everything registered under one DOI prefix, with the same search, filter and sort options as the main search. A publisher usually owns several prefixes, so this is narrower than listing a publisher's works; it is the right one when you care about a specific imprint.

Inputs

DOI prefixprefixtextRequired
The part of a DOI before the slash. A whole DOI works here too; only the prefix is used.
Search termsquerytext
Words to look for anywhere in the record: title, authors, journal, abstract and the rest. Leave it empty to list everything the filters below match.
Bibliographic referencequery_bibliographictext
A whole citation, pasted in as one string: title, authors, journal, volume and year together. This is the field to use when you are trying to find the DOI for a reference you already have.
Title containsquery_titletext
Words that must appear in the work's title.
Authorquery_authortext
An author's name. Names are not unique in Crossref, so pair this with an ORCID iD or a journal when you need one specific researcher.
Journal or book titlequery_container_titletext
The name of the journal, book or proceedings the work appeared in. Use the ISSN filter instead when you know it (it is exact, and this is a text match).
Search another fieldsearch_fieldtext
Search one specific field instead of the whole record. Pick the field here and put the words in 'Terms for that field' below. The four fields above are the common ones and already have boxes of their own.One of: affiliation (Author affiliation), author (Author name), bibliographic (Bibliographic reference (title, authors, journal, year…)), chair (Chair name), container-title (Journal or book title), contributor (Any contributor's name), degree (Degree (for dissertations)), description, editor (Editor name), event-acronym (Conference acronym), and 11 more.
Terms for that fieldsearch_field_termstext
What to look for in the field chosen above. Only used when a field is chosen.
Work typestypeslist
Keep only these kinds of work: journal articles, book chapters, preprints ('posted content'), datasets, dissertations and the rest. Choosing several keeps works of any of them. The list comes from Crossref, so it is always current.
Record must havemust_havelist
Keep only records that carry all of these. Crossref metadata is deposited by publishers and is uneven, so this is how you get, say, only works that came with an abstract and a licence.One or more of: has-abstract (An abstract), has-affiliation (Author affiliations), has-affiliation-ror-id (A ROR ID on an affiliation), has-alias (An alias DOI), has-archive (A digital-preservation archive), has-assertion (A publisher assertion), has-authenticated-orcid (An author ORCID iD the author signed in to confirm), has-award (A grant award), has-clinical-trial-number (A clinical trial number), has-content-domain (A content domain (where the full text may be shown)), and 14 more.
Date to filter ondate_fieldtext
Which date the window below applies to. Defaults to the publication date. 'Metadata last deposited' and 'Last indexed by Crossref' are the ones to use for a workflow that watches for new records, since a work can be published long before its metadata arrives.One of: published (Published (whichever date came first)), issued, published-online (Published online), published-print (Published in print), posted (Posted (preprints)), accepted, approved, awarded (Awarded (grants)), created (First registered with Crossref), deposited (Metadata last deposited), and 4 more. Default: published.
From datefrom_datedate
Keep only records on or after this date.
Until dateuntil_datedate
Keep only records on or before this date.
ISSNissntext
Keep only works published in the journal with this ISSN. The hyphen is optional.
ISBNisbntext
Keep only works published in the book with this ISBN.
Author ORCID iDorcidtext
Keep only works with this ORCID iD among the authors (the reliable way to follow one researcher, since names repeat). An orcid.org link works here too.
Publisher (Crossref member ID)member_idtext
Keep only works registered by this Crossref member. Find the ID with 'Search publishers'.
Funder IDfunder_idtext
Keep only works crediting this funder. Find the ID with 'Search funders'; the funder's full DOI works here too.
Grant award numberaward_numbertext
Keep only works crediting this grant number. Pair it with a funder ID: award numbers are only unique within a funder.
Preserved in archivearchivetext
Keep only works the publisher has deposited into this digital-preservation archive.One of: ADS (ADS (Astrophysics Data System)), BL (British Library), Cariniana Network, CINES, CLOCKSS, DWT (Deutsche Nationalbibliothek (DWT)), HathiTrust, Internet Archive, KB (Koninklijke Bibliotheek), LOC (Library of Congress), and 7 more.
Other Crossref filtersextra_filterstext
Any of Crossref's remaining filters, written as name:value and separated by commas: the escape hatch for the ones without a field above (license.url, relation.type, update-type, container-title, clinical-trial-number, gte-award-amount and so on). Filter names are checked before the request is sent, so a typo is reported here. Full list: https://www.crossref.org/documentation/retrieve-metadata/rest-api/rest-api-filters/
Fields to returnselect_fieldslist
Return only these fields from each record instead of the whole thing. A full Crossref record includes the entire reference list and can run to hundreds of kilobytes, so narrowing this makes a large search far faster and the result far easier to read. Leave it empty for everything.One or more of: DOI, ISBN (ISBNs), ISSN (ISSNs), URL (DOI link), abstract, accepted (Accepted date), alternative-id (Publisher's own IDs), approved (Approved date), archive (Preservation archives), article-number (Article number), and 49 more.
Sort bysorttext
How to order the results. Defaults to relevance when you searched for something, and to no particular order when you only filtered.One of: relevance (Relevance to the search terms), score (Search score), published (Publication date), published-print (Print publication date), published-online (Online publication date), issued (Issued date), created (Date first registered with Crossref), deposited (Date metadata was last deposited), indexed (Date last indexed by Crossref), updated (Date the record was last updated), is-referenced-by-count (Number of times cited), references-count (Number of references).
Sort directionordertext
Which end of the sort to start from. Defaults to highest or newest.One of: desc (Highest or newest first), asc (Lowest or oldest first). Default: desc.
Number of resultsrowsnumber
How many records to return, up to 1000. Set it to 0 to get only the total count and any facet counts.From 0 to 1000. Default: 20.
Skip this manyoffsetnumber
Skip this many records before returning any: page two of 20 results is an offset of 20. Offset paging stops at 10,000 records; use the cursor below to walk a larger set.From 0 to 10000.
Cursorcursortext
Walks a whole result set of any size, a page at a time. Send * to start, then feed each result's 'next_cursor' back in here for the next page, and stop when 'has_more' is false. Cannot be combined with 'Skip this many'. A cursor expires after five minutes unused.
Random sample sizesamplenumber
Return this many records picked at random from everything that matches, up to 100. Useful for spot-checking a large set. It replaces normal paging, so it cannot be combined with 'Number of results', 'Skip this many' or 'Cursor'.From 1 to 100.
Count results byfacetslist
Also return counts of the matching works broken down by these fields: how many by publisher, by type, by year. Pair it with 0 results to get the counts on their own.One or more of: affiliation (Author affiliation), archive (Preservation archive), assertion (Publisher assertion), assertion-group (Publisher assertion group), category-name (Subject category), container-title (Journal or book title), funder-doi (Funder DOI), funder-name (Funder name), issn, journal-issue (Journal issue), and 11 more.

Outputs

facetsobject
has_moretrue/false
next_cursortext
result_countnumber
resultslist
total_resultsnumber
Example output
{
  "facets": {},
  "has_more": true,
  "next_cursor": "DnF1ZXJ5VGhlbkZldGNoBQAAAAAA",
  "result_count": 1,
  "results": [
    {
      "DOI": "10.1038/nature12373",
      "ISSN": [
        "0028-0836",
        "1476-4687"
      ],
      "URL": "http://dx.doi.org/10.1038/nature12373",
      "author": [
        {
          "family": "Kucsko",
          "given": "G.",
          "sequence": "first"
        },
        {
          "family": "Maurer",
          "given": "P. C.",
          "sequence": "additional"
        }
      ],
      "container-title": [
        "Nature"
      ],
      "created": {
        "date-parts": [
          [
            2013,
            7,
            31
          ]
        ],
        "date-time": "2013-07-31T17:03:41Z",
        "timestamp": 1375290221000
      },
      "is-referenced-by-count": 1807,
      "issue": "7460",
      "issued": {
        "date-parts": [
          [
            2013,
            7,
            31
          ]
        ]
      },
      "language": "en",
      "license": [
        {
          "URL": "https://www.springernature.com/gp/researchers/text-and-data-mining",
          "content-version": "tdm"
        }
      ],
      "link": [
        {
          "URL": "http://www.nature.com/articles/nature12373.pdf",
          "content-type": "application/pdf",
          "intended-application": "text-mining"
        }
      ],
      "member": "297",
      "page": "54-58",
      "prefix": "10.1038",
      "published": {
        "date-parts": [
          [
            2013,
            7,
            31
          ]
        ]
      },
      "publisher": "Springer Science and Business Media LLC",
      "references-count": 30,
      "score": 24.5,
      "short-container-title": [
        "Nature"
      ],
      "subject": [
        "Multidisciplinary"
      ],
      "title": [
        "Nanometre-scale thermometry in a living cell"
      ],
      "type": "journal-article",
      "volume": "500"
    }
  ],
  "total_results": 4128
}

List a funder's works

List everything that credits one funder, with the same search, filter and sort options as the main search. This is how a funder or an institution reports on the output of its grants; add a grant number to narrow it to a single award.

Inputs

Funder IDfunder_idtextRequired
The funder's Funder Registry ID. Find one with 'Search funders'; the funder's full DOI works here too.
Search termsquerytext
Words to look for anywhere in the record: title, authors, journal, abstract and the rest. Leave it empty to list everything the filters below match.
Bibliographic referencequery_bibliographictext
A whole citation, pasted in as one string: title, authors, journal, volume and year together. This is the field to use when you are trying to find the DOI for a reference you already have.
Title containsquery_titletext
Words that must appear in the work's title.
Authorquery_authortext
An author's name. Names are not unique in Crossref, so pair this with an ORCID iD or a journal when you need one specific researcher.
Journal or book titlequery_container_titletext
The name of the journal, book or proceedings the work appeared in. Use the ISSN filter instead when you know it (it is exact, and this is a text match).
Search another fieldsearch_fieldtext
Search one specific field instead of the whole record. Pick the field here and put the words in 'Terms for that field' below. The four fields above are the common ones and already have boxes of their own.One of: affiliation (Author affiliation), author (Author name), bibliographic (Bibliographic reference (title, authors, journal, year…)), chair (Chair name), container-title (Journal or book title), contributor (Any contributor's name), degree (Degree (for dissertations)), description, editor (Editor name), event-acronym (Conference acronym), and 11 more.
Terms for that fieldsearch_field_termstext
What to look for in the field chosen above. Only used when a field is chosen.
Work typestypeslist
Keep only these kinds of work: journal articles, book chapters, preprints ('posted content'), datasets, dissertations and the rest. Choosing several keeps works of any of them. The list comes from Crossref, so it is always current.
Record must havemust_havelist
Keep only records that carry all of these. Crossref metadata is deposited by publishers and is uneven, so this is how you get, say, only works that came with an abstract and a licence.One or more of: has-abstract (An abstract), has-affiliation (Author affiliations), has-affiliation-ror-id (A ROR ID on an affiliation), has-alias (An alias DOI), has-archive (A digital-preservation archive), has-assertion (A publisher assertion), has-authenticated-orcid (An author ORCID iD the author signed in to confirm), has-award (A grant award), has-clinical-trial-number (A clinical trial number), has-content-domain (A content domain (where the full text may be shown)), and 14 more.
Date to filter ondate_fieldtext
Which date the window below applies to. Defaults to the publication date. 'Metadata last deposited' and 'Last indexed by Crossref' are the ones to use for a workflow that watches for new records, since a work can be published long before its metadata arrives.One of: published (Published (whichever date came first)), issued, published-online (Published online), published-print (Published in print), posted (Posted (preprints)), accepted, approved, awarded (Awarded (grants)), created (First registered with Crossref), deposited (Metadata last deposited), and 4 more. Default: published.
From datefrom_datedate
Keep only records on or after this date.
Until dateuntil_datedate
Keep only records on or before this date.
ISSNissntext
Keep only works published in the journal with this ISSN. The hyphen is optional.
ISBNisbntext
Keep only works published in the book with this ISBN.
Author ORCID iDorcidtext
Keep only works with this ORCID iD among the authors (the reliable way to follow one researcher, since names repeat). An orcid.org link works here too.
Publisher (Crossref member ID)member_idtext
Keep only works registered by this Crossref member. Find the ID with 'Search publishers'.
DOI prefixprefixtext
Keep only works whose DOI starts with this prefix. A whole DOI works here too; only the prefix is used.
Grant award numberaward_numbertext
Keep only works crediting this grant number. Pair it with a funder ID: award numbers are only unique within a funder.
Preserved in archivearchivetext
Keep only works the publisher has deposited into this digital-preservation archive.One of: ADS (ADS (Astrophysics Data System)), BL (British Library), Cariniana Network, CINES, CLOCKSS, DWT (Deutsche Nationalbibliothek (DWT)), HathiTrust, Internet Archive, KB (Koninklijke Bibliotheek), LOC (Library of Congress), and 7 more.
Other Crossref filtersextra_filterstext
Any of Crossref's remaining filters, written as name:value and separated by commas: the escape hatch for the ones without a field above (license.url, relation.type, update-type, container-title, clinical-trial-number, gte-award-amount and so on). Filter names are checked before the request is sent, so a typo is reported here. Full list: https://www.crossref.org/documentation/retrieve-metadata/rest-api/rest-api-filters/
Fields to returnselect_fieldslist
Return only these fields from each record instead of the whole thing. A full Crossref record includes the entire reference list and can run to hundreds of kilobytes, so narrowing this makes a large search far faster and the result far easier to read. Leave it empty for everything.One or more of: DOI, ISBN (ISBNs), ISSN (ISSNs), URL (DOI link), abstract, accepted (Accepted date), alternative-id (Publisher's own IDs), approved (Approved date), archive (Preservation archives), article-number (Article number), and 49 more.
Sort bysorttext
How to order the results. Defaults to relevance when you searched for something, and to no particular order when you only filtered.One of: relevance (Relevance to the search terms), score (Search score), published (Publication date), published-print (Print publication date), published-online (Online publication date), issued (Issued date), created (Date first registered with Crossref), deposited (Date metadata was last deposited), indexed (Date last indexed by Crossref), updated (Date the record was last updated), is-referenced-by-count (Number of times cited), references-count (Number of references).
Sort directionordertext
Which end of the sort to start from. Defaults to highest or newest.One of: desc (Highest or newest first), asc (Lowest or oldest first). Default: desc.
Number of resultsrowsnumber
How many records to return, up to 1000. Set it to 0 to get only the total count and any facet counts.From 0 to 1000. Default: 20.
Skip this manyoffsetnumber
Skip this many records before returning any: page two of 20 results is an offset of 20. Offset paging stops at 10,000 records; use the cursor below to walk a larger set.From 0 to 10000.
Cursorcursortext
Walks a whole result set of any size, a page at a time. Send * to start, then feed each result's 'next_cursor' back in here for the next page, and stop when 'has_more' is false. Cannot be combined with 'Skip this many'. A cursor expires after five minutes unused.
Random sample sizesamplenumber
Return this many records picked at random from everything that matches, up to 100. Useful for spot-checking a large set. It replaces normal paging, so it cannot be combined with 'Number of results', 'Skip this many' or 'Cursor'.From 1 to 100.
Count results byfacetslist
Also return counts of the matching works broken down by these fields: how many by publisher, by type, by year. Pair it with 0 results to get the counts on their own.One or more of: affiliation (Author affiliation), archive (Preservation archive), assertion (Publisher assertion), assertion-group (Publisher assertion group), category-name (Subject category), container-title (Journal or book title), funder-doi (Funder DOI), funder-name (Funder name), issn, journal-issue (Journal issue), and 11 more.

Outputs

facetsobject
has_moretrue/false
next_cursortext
result_countnumber
resultslist
total_resultsnumber
Example output
{
  "facets": {},
  "has_more": true,
  "next_cursor": "DnF1ZXJ5VGhlbkZldGNoBQAAAAAA",
  "result_count": 1,
  "results": [
    {
      "DOI": "10.1038/nature12373",
      "ISSN": [
        "0028-0836",
        "1476-4687"
      ],
      "URL": "http://dx.doi.org/10.1038/nature12373",
      "author": [
        {
          "family": "Kucsko",
          "given": "G.",
          "sequence": "first"
        },
        {
          "family": "Maurer",
          "given": "P. C.",
          "sequence": "additional"
        }
      ],
      "container-title": [
        "Nature"
      ],
      "created": {
        "date-parts": [
          [
            2013,
            7,
            31
          ]
        ],
        "date-time": "2013-07-31T17:03:41Z",
        "timestamp": 1375290221000
      },
      "is-referenced-by-count": 1807,
      "issue": "7460",
      "issued": {
        "date-parts": [
          [
            2013,
            7,
            31
          ]
        ]
      },
      "language": "en",
      "license": [
        {
          "URL": "https://www.springernature.com/gp/researchers/text-and-data-mining",
          "content-version": "tdm"
        }
      ],
      "link": [
        {
          "URL": "http://www.nature.com/articles/nature12373.pdf",
          "content-type": "application/pdf",
          "intended-application": "text-mining"
        }
      ],
      "member": "297",
      "page": "54-58",
      "prefix": "10.1038",
      "published": {
        "date-parts": [
          [
            2013,
            7,
            31
          ]
        ]
      },
      "publisher": "Springer Science and Business Media LLC",
      "references-count": 30,
      "score": 24.5,
      "short-container-title": [
        "Nature"
      ],
      "subject": [
        "Multidisciplinary"
      ],
      "title": [
        "Nanometre-scale thermometry in a living cell"
      ],
      "type": "journal-article",
      "volume": "500"
    }
  ],
  "total_results": 4128
}

List a journal's works

List everything published in one journal, with the same search, filter and sort options as the main search. Sort by publication date for a table of contents, or filter on the deposited date to catch what the journal has registered since you last looked.

Inputs

ISSNissntextRequired
The journal's ISSN. Either the print or the electronic one works, and the hyphen is optional.
Search termsquerytext
Words to look for anywhere in the record: title, authors, journal, abstract and the rest. Leave it empty to list everything the filters below match.
Bibliographic referencequery_bibliographictext
A whole citation, pasted in as one string: title, authors, journal, volume and year together. This is the field to use when you are trying to find the DOI for a reference you already have.
Title containsquery_titletext
Words that must appear in the work's title.
Authorquery_authortext
An author's name. Names are not unique in Crossref, so pair this with an ORCID iD or a journal when you need one specific researcher.
Journal or book titlequery_container_titletext
The name of the journal, book or proceedings the work appeared in. Use the ISSN filter instead when you know it (it is exact, and this is a text match).
Search another fieldsearch_fieldtext
Search one specific field instead of the whole record. Pick the field here and put the words in 'Terms for that field' below. The four fields above are the common ones and already have boxes of their own.One of: affiliation (Author affiliation), author (Author name), bibliographic (Bibliographic reference (title, authors, journal, year…)), chair (Chair name), container-title (Journal or book title), contributor (Any contributor's name), degree (Degree (for dissertations)), description, editor (Editor name), event-acronym (Conference acronym), and 11 more.
Terms for that fieldsearch_field_termstext
What to look for in the field chosen above. Only used when a field is chosen.
Work typestypeslist
Keep only these kinds of work: journal articles, book chapters, preprints ('posted content'), datasets, dissertations and the rest. Choosing several keeps works of any of them. The list comes from Crossref, so it is always current.
Record must havemust_havelist
Keep only records that carry all of these. Crossref metadata is deposited by publishers and is uneven, so this is how you get, say, only works that came with an abstract and a licence.One or more of: has-abstract (An abstract), has-affiliation (Author affiliations), has-affiliation-ror-id (A ROR ID on an affiliation), has-alias (An alias DOI), has-archive (A digital-preservation archive), has-assertion (A publisher assertion), has-authenticated-orcid (An author ORCID iD the author signed in to confirm), has-award (A grant award), has-clinical-trial-number (A clinical trial number), has-content-domain (A content domain (where the full text may be shown)), and 14 more.
Date to filter ondate_fieldtext
Which date the window below applies to. Defaults to the publication date. 'Metadata last deposited' and 'Last indexed by Crossref' are the ones to use for a workflow that watches for new records, since a work can be published long before its metadata arrives.One of: published (Published (whichever date came first)), issued, published-online (Published online), published-print (Published in print), posted (Posted (preprints)), accepted, approved, awarded (Awarded (grants)), created (First registered with Crossref), deposited (Metadata last deposited), and 4 more. Default: published.
From datefrom_datedate
Keep only records on or after this date.
Until dateuntil_datedate
Keep only records on or before this date.
ISBNisbntext
Keep only works published in the book with this ISBN.
Author ORCID iDorcidtext
Keep only works with this ORCID iD among the authors (the reliable way to follow one researcher, since names repeat). An orcid.org link works here too.
Publisher (Crossref member ID)member_idtext
Keep only works registered by this Crossref member. Find the ID with 'Search publishers'.
DOI prefixprefixtext
Keep only works whose DOI starts with this prefix. A whole DOI works here too; only the prefix is used.
Funder IDfunder_idtext
Keep only works crediting this funder. Find the ID with 'Search funders'; the funder's full DOI works here too.
Grant award numberaward_numbertext
Keep only works crediting this grant number. Pair it with a funder ID: award numbers are only unique within a funder.
Preserved in archivearchivetext
Keep only works the publisher has deposited into this digital-preservation archive.One of: ADS (ADS (Astrophysics Data System)), BL (British Library), Cariniana Network, CINES, CLOCKSS, DWT (Deutsche Nationalbibliothek (DWT)), HathiTrust, Internet Archive, KB (Koninklijke Bibliotheek), LOC (Library of Congress), and 7 more.
Other Crossref filtersextra_filterstext
Any of Crossref's remaining filters, written as name:value and separated by commas: the escape hatch for the ones without a field above (license.url, relation.type, update-type, container-title, clinical-trial-number, gte-award-amount and so on). Filter names are checked before the request is sent, so a typo is reported here. Full list: https://www.crossref.org/documentation/retrieve-metadata/rest-api/rest-api-filters/
Fields to returnselect_fieldslist
Return only these fields from each record instead of the whole thing. A full Crossref record includes the entire reference list and can run to hundreds of kilobytes, so narrowing this makes a large search far faster and the result far easier to read. Leave it empty for everything.One or more of: DOI, ISBN (ISBNs), ISSN (ISSNs), URL (DOI link), abstract, accepted (Accepted date), alternative-id (Publisher's own IDs), approved (Approved date), archive (Preservation archives), article-number (Article number), and 49 more.
Sort bysorttext
How to order the results. Defaults to relevance when you searched for something, and to no particular order when you only filtered.One of: relevance (Relevance to the search terms), score (Search score), published (Publication date), published-print (Print publication date), published-online (Online publication date), issued (Issued date), created (Date first registered with Crossref), deposited (Date metadata was last deposited), indexed (Date last indexed by Crossref), updated (Date the record was last updated), is-referenced-by-count (Number of times cited), references-count (Number of references).
Sort directionordertext
Which end of the sort to start from. Defaults to highest or newest.One of: desc (Highest or newest first), asc (Lowest or oldest first). Default: desc.
Number of resultsrowsnumber
How many records to return, up to 1000. Set it to 0 to get only the total count and any facet counts.From 0 to 1000. Default: 20.
Skip this manyoffsetnumber
Skip this many records before returning any: page two of 20 results is an offset of 20. Offset paging stops at 10,000 records; use the cursor below to walk a larger set.From 0 to 10000.
Cursorcursortext
Walks a whole result set of any size, a page at a time. Send * to start, then feed each result's 'next_cursor' back in here for the next page, and stop when 'has_more' is false. Cannot be combined with 'Skip this many'. A cursor expires after five minutes unused.
Random sample sizesamplenumber
Return this many records picked at random from everything that matches, up to 100. Useful for spot-checking a large set. It replaces normal paging, so it cannot be combined with 'Number of results', 'Skip this many' or 'Cursor'.From 1 to 100.
Count results byfacetslist
Also return counts of the matching works broken down by these fields: how many by publisher, by type, by year. Pair it with 0 results to get the counts on their own.One or more of: affiliation (Author affiliation), archive (Preservation archive), assertion (Publisher assertion), assertion-group (Publisher assertion group), category-name (Subject category), container-title (Journal or book title), funder-doi (Funder DOI), funder-name (Funder name), issn, journal-issue (Journal issue), and 11 more.

Outputs

facetsobject
has_moretrue/false
next_cursortext
result_countnumber
resultslist
total_resultsnumber
Example output
{
  "facets": {},
  "has_more": true,
  "next_cursor": "DnF1ZXJ5VGhlbkZldGNoBQAAAAAA",
  "result_count": 1,
  "results": [
    {
      "DOI": "10.1038/nature12373",
      "ISSN": [
        "0028-0836",
        "1476-4687"
      ],
      "URL": "http://dx.doi.org/10.1038/nature12373",
      "author": [
        {
          "family": "Kucsko",
          "given": "G.",
          "sequence": "first"
        },
        {
          "family": "Maurer",
          "given": "P. C.",
          "sequence": "additional"
        }
      ],
      "container-title": [
        "Nature"
      ],
      "created": {
        "date-parts": [
          [
            2013,
            7,
            31
          ]
        ],
        "date-time": "2013-07-31T17:03:41Z",
        "timestamp": 1375290221000
      },
      "is-referenced-by-count": 1807,
      "issue": "7460",
      "issued": {
        "date-parts": [
          [
            2013,
            7,
            31
          ]
        ]
      },
      "language": "en",
      "license": [
        {
          "URL": "https://www.springernature.com/gp/researchers/text-and-data-mining",
          "content-version": "tdm"
        }
      ],
      "link": [
        {
          "URL": "http://www.nature.com/articles/nature12373.pdf",
          "content-type": "application/pdf",
          "intended-application": "text-mining"
        }
      ],
      "member": "297",
      "page": "54-58",
      "prefix": "10.1038",
      "published": {
        "date-parts": [
          [
            2013,
            7,
            31
          ]
        ]
      },
      "publisher": "Springer Science and Business Media LLC",
      "references-count": 30,
      "score": 24.5,
      "short-container-title": [
        "Nature"
      ],
      "subject": [
        "Multidisciplinary"
      ],
      "title": [
        "Nanometre-scale thermometry in a living cell"
      ],
      "type": "journal-article",
      "volume": "500"
    }
  ],
  "total_results": 4128
}

List a publisher's works

List everything one publisher has registered, with the same search, filter and sort options as the main search. Filter on the deposited date to see what a publisher has added lately, or on a work type to see only its books or only its preprints.

Inputs

Publisher (Crossref member ID)member_idtextRequired
The publisher's Crossref member ID. Find one with 'Search publishers'.
Search termsquerytext
Words to look for anywhere in the record: title, authors, journal, abstract and the rest. Leave it empty to list everything the filters below match.
Bibliographic referencequery_bibliographictext
A whole citation, pasted in as one string: title, authors, journal, volume and year together. This is the field to use when you are trying to find the DOI for a reference you already have.
Title containsquery_titletext
Words that must appear in the work's title.
Authorquery_authortext
An author's name. Names are not unique in Crossref, so pair this with an ORCID iD or a journal when you need one specific researcher.
Journal or book titlequery_container_titletext
The name of the journal, book or proceedings the work appeared in. Use the ISSN filter instead when you know it (it is exact, and this is a text match).
Search another fieldsearch_fieldtext
Search one specific field instead of the whole record. Pick the field here and put the words in 'Terms for that field' below. The four fields above are the common ones and already have boxes of their own.One of: affiliation (Author affiliation), author (Author name), bibliographic (Bibliographic reference (title, authors, journal, year…)), chair (Chair name), container-title (Journal or book title), contributor (Any contributor's name), degree (Degree (for dissertations)), description, editor (Editor name), event-acronym (Conference acronym), and 11 more.
Terms for that fieldsearch_field_termstext
What to look for in the field chosen above. Only used when a field is chosen.
Work typestypeslist
Keep only these kinds of work: journal articles, book chapters, preprints ('posted content'), datasets, dissertations and the rest. Choosing several keeps works of any of them. The list comes from Crossref, so it is always current.
Record must havemust_havelist
Keep only records that carry all of these. Crossref metadata is deposited by publishers and is uneven, so this is how you get, say, only works that came with an abstract and a licence.One or more of: has-abstract (An abstract), has-affiliation (Author affiliations), has-affiliation-ror-id (A ROR ID on an affiliation), has-alias (An alias DOI), has-archive (A digital-preservation archive), has-assertion (A publisher assertion), has-authenticated-orcid (An author ORCID iD the author signed in to confirm), has-award (A grant award), has-clinical-trial-number (A clinical trial number), has-content-domain (A content domain (where the full text may be shown)), and 14 more.
Date to filter ondate_fieldtext
Which date the window below applies to. Defaults to the publication date. 'Metadata last deposited' and 'Last indexed by Crossref' are the ones to use for a workflow that watches for new records, since a work can be published long before its metadata arrives.One of: published (Published (whichever date came first)), issued, published-online (Published online), published-print (Published in print), posted (Posted (preprints)), accepted, approved, awarded (Awarded (grants)), created (First registered with Crossref), deposited (Metadata last deposited), and 4 more. Default: published.
From datefrom_datedate
Keep only records on or after this date.
Until dateuntil_datedate
Keep only records on or before this date.
ISSNissntext
Keep only works published in the journal with this ISSN. The hyphen is optional.
ISBNisbntext
Keep only works published in the book with this ISBN.
Author ORCID iDorcidtext
Keep only works with this ORCID iD among the authors (the reliable way to follow one researcher, since names repeat). An orcid.org link works here too.
DOI prefixprefixtext
Keep only works whose DOI starts with this prefix. A whole DOI works here too; only the prefix is used.
Funder IDfunder_idtext
Keep only works crediting this funder. Find the ID with 'Search funders'; the funder's full DOI works here too.
Grant award numberaward_numbertext
Keep only works crediting this grant number. Pair it with a funder ID: award numbers are only unique within a funder.
Preserved in archivearchivetext
Keep only works the publisher has deposited into this digital-preservation archive.One of: ADS (ADS (Astrophysics Data System)), BL (British Library), Cariniana Network, CINES, CLOCKSS, DWT (Deutsche Nationalbibliothek (DWT)), HathiTrust, Internet Archive, KB (Koninklijke Bibliotheek), LOC (Library of Congress), and 7 more.
Other Crossref filtersextra_filterstext
Any of Crossref's remaining filters, written as name:value and separated by commas: the escape hatch for the ones without a field above (license.url, relation.type, update-type, container-title, clinical-trial-number, gte-award-amount and so on). Filter names are checked before the request is sent, so a typo is reported here. Full list: https://www.crossref.org/documentation/retrieve-metadata/rest-api/rest-api-filters/
Fields to returnselect_fieldslist
Return only these fields from each record instead of the whole thing. A full Crossref record includes the entire reference list and can run to hundreds of kilobytes, so narrowing this makes a large search far faster and the result far easier to read. Leave it empty for everything.One or more of: DOI, ISBN (ISBNs), ISSN (ISSNs), URL (DOI link), abstract, accepted (Accepted date), alternative-id (Publisher's own IDs), approved (Approved date), archive (Preservation archives), article-number (Article number), and 49 more.
Sort bysorttext
How to order the results. Defaults to relevance when you searched for something, and to no particular order when you only filtered.One of: relevance (Relevance to the search terms), score (Search score), published (Publication date), published-print (Print publication date), published-online (Online publication date), issued (Issued date), created (Date first registered with Crossref), deposited (Date metadata was last deposited), indexed (Date last indexed by Crossref), updated (Date the record was last updated), is-referenced-by-count (Number of times cited), references-count (Number of references).
Sort directionordertext
Which end of the sort to start from. Defaults to highest or newest.One of: desc (Highest or newest first), asc (Lowest or oldest first). Default: desc.
Number of resultsrowsnumber
How many records to return, up to 1000. Set it to 0 to get only the total count and any facet counts.From 0 to 1000. Default: 20.
Skip this manyoffsetnumber
Skip this many records before returning any: page two of 20 results is an offset of 20. Offset paging stops at 10,000 records; use the cursor below to walk a larger set.From 0 to 10000.
Cursorcursortext
Walks a whole result set of any size, a page at a time. Send * to start, then feed each result's 'next_cursor' back in here for the next page, and stop when 'has_more' is false. Cannot be combined with 'Skip this many'. A cursor expires after five minutes unused.
Random sample sizesamplenumber
Return this many records picked at random from everything that matches, up to 100. Useful for spot-checking a large set. It replaces normal paging, so it cannot be combined with 'Number of results', 'Skip this many' or 'Cursor'.From 1 to 100.
Count results byfacetslist
Also return counts of the matching works broken down by these fields: how many by publisher, by type, by year. Pair it with 0 results to get the counts on their own.One or more of: affiliation (Author affiliation), archive (Preservation archive), assertion (Publisher assertion), assertion-group (Publisher assertion group), category-name (Subject category), container-title (Journal or book title), funder-doi (Funder DOI), funder-name (Funder name), issn, journal-issue (Journal issue), and 11 more.

Outputs

facetsobject
has_moretrue/false
next_cursortext
result_countnumber
resultslist
total_resultsnumber
Example output
{
  "facets": {},
  "has_more": true,
  "next_cursor": "DnF1ZXJ5VGhlbkZldGNoBQAAAAAA",
  "result_count": 1,
  "results": [
    {
      "DOI": "10.1038/nature12373",
      "ISSN": [
        "0028-0836",
        "1476-4687"
      ],
      "URL": "http://dx.doi.org/10.1038/nature12373",
      "author": [
        {
          "family": "Kucsko",
          "given": "G.",
          "sequence": "first"
        },
        {
          "family": "Maurer",
          "given": "P. C.",
          "sequence": "additional"
        }
      ],
      "container-title": [
        "Nature"
      ],
      "created": {
        "date-parts": [
          [
            2013,
            7,
            31
          ]
        ],
        "date-time": "2013-07-31T17:03:41Z",
        "timestamp": 1375290221000
      },
      "is-referenced-by-count": 1807,
      "issue": "7460",
      "issued": {
        "date-parts": [
          [
            2013,
            7,
            31
          ]
        ]
      },
      "language": "en",
      "license": [
        {
          "URL": "https://www.springernature.com/gp/researchers/text-and-data-mining",
          "content-version": "tdm"
        }
      ],
      "link": [
        {
          "URL": "http://www.nature.com/articles/nature12373.pdf",
          "content-type": "application/pdf",
          "intended-application": "text-mining"
        }
      ],
      "member": "297",
      "page": "54-58",
      "prefix": "10.1038",
      "published": {
        "date-parts": [
          [
            2013,
            7,
            31
          ]
        ]
      },
      "publisher": "Springer Science and Business Media LLC",
      "references-count": 30,
      "score": 24.5,
      "short-container-title": [
        "Nature"
      ],
      "subject": [
        "Multidisciplinary"
      ],
      "title": [
        "Nanometre-scale thermometry in a living cell"
      ],
      "type": "journal-article",
      "volume": "500"
    }
  ],
  "total_results": 4128
}

List licences

List every licence URL publishers have attached to their work, with the number of works using each one. Use it to find the exact licence URL to filter a search on: publishers spell the same Creative Commons licence several different ways, and a filter has to match exactly.

Inputs

Search termsquerytext
Words to match against the licence URLs. Leave it empty to list the most used licences first.
Number of resultsrowsnumber
How many records to return, up to 1000. Set it to 0 to get only the total count and any facet counts.From 0 to 1000. Default: 20.
Skip this manyoffsetnumber
Skip this many records before returning any: page two of 20 results is an offset of 20. Offset paging stops at 10,000 records; use the cursor below to walk a larger set.From 0 to 10000.
Cursorcursortext
Walks a whole result set of any size, a page at a time. Send * to start, then feed each result's 'next_cursor' back in here for the next page, and stop when 'has_more' is false. Cannot be combined with 'Skip this many'. A cursor expires after five minutes unused.

Outputs

facetsobject
has_moretrue/false
next_cursortext
result_countnumber
resultslist
total_resultsnumber
Example output
{
  "facets": {},
  "has_more": true,
  "next_cursor": "DnF1ZXJ5VGhlbkZldGNoBQAAAAAA",
  "result_count": 1,
  "results": [
    {
      "URL": "http://creativecommons.org/licenses/by/4.0/",
      "work-count": 6421553
    }
  ],
  "total_results": 4128
}

List work types

List every kind of work Crossref registers: journal article, book chapter, posted content (preprints), dataset, dissertation, peer review, standard, grant and the rest, with the ID each one is filtered by.

Inputs

None.

Outputs

result_countnumber
resultslist
total_resultsnumber
Example output
{
  "result_count": 1,
  "results": [
    {
      "id": "journal-article",
      "label": "Journal Article"
    }
  ],
  "total_results": 30
}

List works of one type

List every work of one type, with the same search, filter and sort options as the main search. Point it at posted content for preprints, at dataset for research data, or at peer-review for published review reports.

Inputs

Work typetype_idtextRequired
Which kind of work. The list comes from Crossref's own /types endpoint, so it is always current.
Search termsquerytext
Words to look for anywhere in the record: title, authors, journal, abstract and the rest. Leave it empty to list everything the filters below match.
Bibliographic referencequery_bibliographictext
A whole citation, pasted in as one string: title, authors, journal, volume and year together. This is the field to use when you are trying to find the DOI for a reference you already have.
Title containsquery_titletext
Words that must appear in the work's title.
Authorquery_authortext
An author's name. Names are not unique in Crossref, so pair this with an ORCID iD or a journal when you need one specific researcher.
Journal or book titlequery_container_titletext
The name of the journal, book or proceedings the work appeared in. Use the ISSN filter instead when you know it (it is exact, and this is a text match).
Search another fieldsearch_fieldtext
Search one specific field instead of the whole record. Pick the field here and put the words in 'Terms for that field' below. The four fields above are the common ones and already have boxes of their own.One of: affiliation (Author affiliation), author (Author name), bibliographic (Bibliographic reference (title, authors, journal, year…)), chair (Chair name), container-title (Journal or book title), contributor (Any contributor's name), degree (Degree (for dissertations)), description, editor (Editor name), event-acronym (Conference acronym), and 11 more.
Terms for that fieldsearch_field_termstext
What to look for in the field chosen above. Only used when a field is chosen.
Record must havemust_havelist
Keep only records that carry all of these. Crossref metadata is deposited by publishers and is uneven, so this is how you get, say, only works that came with an abstract and a licence.One or more of: has-abstract (An abstract), has-affiliation (Author affiliations), has-affiliation-ror-id (A ROR ID on an affiliation), has-alias (An alias DOI), has-archive (A digital-preservation archive), has-assertion (A publisher assertion), has-authenticated-orcid (An author ORCID iD the author signed in to confirm), has-award (A grant award), has-clinical-trial-number (A clinical trial number), has-content-domain (A content domain (where the full text may be shown)), and 14 more.
Date to filter ondate_fieldtext
Which date the window below applies to. Defaults to the publication date. 'Metadata last deposited' and 'Last indexed by Crossref' are the ones to use for a workflow that watches for new records, since a work can be published long before its metadata arrives.One of: published (Published (whichever date came first)), issued, published-online (Published online), published-print (Published in print), posted (Posted (preprints)), accepted, approved, awarded (Awarded (grants)), created (First registered with Crossref), deposited (Metadata last deposited), and 4 more. Default: published.
From datefrom_datedate
Keep only records on or after this date.
Until dateuntil_datedate
Keep only records on or before this date.
ISSNissntext
Keep only works published in the journal with this ISSN. The hyphen is optional.
ISBNisbntext
Keep only works published in the book with this ISBN.
Author ORCID iDorcidtext
Keep only works with this ORCID iD among the authors (the reliable way to follow one researcher, since names repeat). An orcid.org link works here too.
Publisher (Crossref member ID)member_idtext
Keep only works registered by this Crossref member. Find the ID with 'Search publishers'.
DOI prefixprefixtext
Keep only works whose DOI starts with this prefix. A whole DOI works here too; only the prefix is used.
Funder IDfunder_idtext
Keep only works crediting this funder. Find the ID with 'Search funders'; the funder's full DOI works here too.
Grant award numberaward_numbertext
Keep only works crediting this grant number. Pair it with a funder ID: award numbers are only unique within a funder.
Preserved in archivearchivetext
Keep only works the publisher has deposited into this digital-preservation archive.One of: ADS (ADS (Astrophysics Data System)), BL (British Library), Cariniana Network, CINES, CLOCKSS, DWT (Deutsche Nationalbibliothek (DWT)), HathiTrust, Internet Archive, KB (Koninklijke Bibliotheek), LOC (Library of Congress), and 7 more.
Other Crossref filtersextra_filterstext
Any of Crossref's remaining filters, written as name:value and separated by commas: the escape hatch for the ones without a field above (license.url, relation.type, update-type, container-title, clinical-trial-number, gte-award-amount and so on). Filter names are checked before the request is sent, so a typo is reported here. Full list: https://www.crossref.org/documentation/retrieve-metadata/rest-api/rest-api-filters/
Fields to returnselect_fieldslist
Return only these fields from each record instead of the whole thing. A full Crossref record includes the entire reference list and can run to hundreds of kilobytes, so narrowing this makes a large search far faster and the result far easier to read. Leave it empty for everything.One or more of: DOI, ISBN (ISBNs), ISSN (ISSNs), URL (DOI link), abstract, accepted (Accepted date), alternative-id (Publisher's own IDs), approved (Approved date), archive (Preservation archives), article-number (Article number), and 49 more.
Sort bysorttext
How to order the results. Defaults to relevance when you searched for something, and to no particular order when you only filtered.One of: relevance (Relevance to the search terms), score (Search score), published (Publication date), published-print (Print publication date), published-online (Online publication date), issued (Issued date), created (Date first registered with Crossref), deposited (Date metadata was last deposited), indexed (Date last indexed by Crossref), updated (Date the record was last updated), is-referenced-by-count (Number of times cited), references-count (Number of references).
Sort directionordertext
Which end of the sort to start from. Defaults to highest or newest.One of: desc (Highest or newest first), asc (Lowest or oldest first). Default: desc.
Number of resultsrowsnumber
How many records to return, up to 1000. Set it to 0 to get only the total count and any facet counts.From 0 to 1000. Default: 20.
Skip this manyoffsetnumber
Skip this many records before returning any: page two of 20 results is an offset of 20. Offset paging stops at 10,000 records; use the cursor below to walk a larger set.From 0 to 10000.
Cursorcursortext
Walks a whole result set of any size, a page at a time. Send * to start, then feed each result's 'next_cursor' back in here for the next page, and stop when 'has_more' is false. Cannot be combined with 'Skip this many'. A cursor expires after five minutes unused.
Random sample sizesamplenumber
Return this many records picked at random from everything that matches, up to 100. Useful for spot-checking a large set. It replaces normal paging, so it cannot be combined with 'Number of results', 'Skip this many' or 'Cursor'.From 1 to 100.
Count results byfacetslist
Also return counts of the matching works broken down by these fields: how many by publisher, by type, by year. Pair it with 0 results to get the counts on their own.One or more of: affiliation (Author affiliation), archive (Preservation archive), assertion (Publisher assertion), assertion-group (Publisher assertion group), category-name (Subject category), container-title (Journal or book title), funder-doi (Funder DOI), funder-name (Funder name), issn, journal-issue (Journal issue), and 11 more.

Outputs

facetsobject
has_moretrue/false
next_cursortext
result_countnumber
resultslist
total_resultsnumber
Example output
{
  "facets": {},
  "has_more": true,
  "next_cursor": "DnF1ZXJ5VGhlbkZldGNoBQAAAAAA",
  "result_count": 1,
  "results": [
    {
      "DOI": "10.1038/nature12373",
      "ISSN": [
        "0028-0836",
        "1476-4687"
      ],
      "URL": "http://dx.doi.org/10.1038/nature12373",
      "author": [
        {
          "family": "Kucsko",
          "given": "G.",
          "sequence": "first"
        },
        {
          "family": "Maurer",
          "given": "P. C.",
          "sequence": "additional"
        }
      ],
      "container-title": [
        "Nature"
      ],
      "created": {
        "date-parts": [
          [
            2013,
            7,
            31
          ]
        ],
        "date-time": "2013-07-31T17:03:41Z",
        "timestamp": 1375290221000
      },
      "is-referenced-by-count": 1807,
      "issue": "7460",
      "issued": {
        "date-parts": [
          [
            2013,
            7,
            31
          ]
        ]
      },
      "language": "en",
      "license": [
        {
          "URL": "https://www.springernature.com/gp/researchers/text-and-data-mining",
          "content-version": "tdm"
        }
      ],
      "link": [
        {
          "URL": "http://www.nature.com/articles/nature12373.pdf",
          "content-type": "application/pdf",
          "intended-application": "text-mining"
        }
      ],
      "member": "297",
      "page": "54-58",
      "prefix": "10.1038",
      "published": {
        "date-parts": [
          [
            2013,
            7,
            31
          ]
        ]
      },
      "publisher": "Springer Science and Business Media LLC",
      "references-count": 30,
      "score": 24.5,
      "short-container-title": [
        "Nature"
      ],
      "subject": [
        "Multidisciplinary"
      ],
      "title": [
        "Nanometre-scale thermometry in a living cell"
      ],
      "type": "journal-article",
      "volume": "500"
    }
  ],
  "total_results": 4128
}

Search funders

Search the Funder Registry (the standard list of research funding bodies worldwide, with their alternative names and the sub-organisations beneath them). Use it to turn a funder's name into the ID the works actions filter on.

Inputs

Search termsquerytext
Words from the funder's name. Alternative names and acronyms are matched too.
Countrylocationtext
Keep only funders based in this country, spelled as the Funder Registry spells it.
Number of resultsrowsnumber
How many records to return, up to 1000. Set it to 0 to get only the total count and any facet counts.From 0 to 1000. Default: 20.
Skip this manyoffsetnumber
Skip this many records before returning any: page two of 20 results is an offset of 20. Offset paging stops at 10,000 records; use the cursor below to walk a larger set.From 0 to 10000.
Cursorcursortext
Walks a whole result set of any size, a page at a time. Send * to start, then feed each result's 'next_cursor' back in here for the next page, and stop when 'has_more' is false. Cannot be combined with 'Skip this many'. A cursor expires after five minutes unused.

Outputs

facetsobject
has_moretrue/false
next_cursortext
result_countnumber
resultslist
total_resultsnumber
Example output
{
  "facets": {},
  "has_more": true,
  "next_cursor": "DnF1ZXJ5VGhlbkZldGNoBQAAAAAA",
  "result_count": 1,
  "results": [
    {
      "alt-names": [
        "EC",
        "European Union"
      ],
      "descendant-work-count": 1044123,
      "id": "501100000780",
      "location": "European Union",
      "name": "European Commission",
      "uri": "http://dx.doi.org/10.13039/501100000780",
      "work-count": 138992
    }
  ],
  "total_results": 4128
}

Search journals

Find journals by title or publisher, and get each one's ISSNs, how many DOIs it has registered, and how complete its metadata is: whether it deposits abstracts, ORCID iDs, licences, funding and reference lists. Use it to turn a journal name into the ISSN the other actions take.

Inputs

Search termsquerytext
Words from the journal's title or its publisher's name. Leave it empty to list every journal.
Number of resultsrowsnumber
How many records to return, up to 1000. Set it to 0 to get only the total count and any facet counts.From 0 to 1000. Default: 20.
Skip this manyoffsetnumber
Skip this many records before returning any: page two of 20 results is an offset of 20. Offset paging stops at 10,000 records; use the cursor below to walk a larger set.From 0 to 10000.
Cursorcursortext
Walks a whole result set of any size, a page at a time. Send * to start, then feed each result's 'next_cursor' back in here for the next page, and stop when 'has_more' is false. Cannot be combined with 'Skip this many'. A cursor expires after five minutes unused.

Outputs

facetsobject
has_moretrue/false
next_cursortext
result_countnumber
resultslist
total_resultsnumber
Example output
{
  "facets": {},
  "has_more": true,
  "next_cursor": "DnF1ZXJ5VGhlbkZldGNoBQAAAAAA",
  "result_count": 1,
  "results": [
    {
      "ISSN": [
        "0028-0836",
        "1476-4687"
      ],
      "counts": {
        "backfile-dois": 405916,
        "current-dois": 12704,
        "total-dois": 418620
      },
      "flags": {
        "deposits-abstracts-current": false,
        "deposits-orcids-current": true
      },
      "publisher": "Springer Science and Business Media LLC",
      "title": "Nature"
    }
  ],
  "total_results": 4128
}

Search publishers

Search Crossref's member publishers. Each record carries the DOI prefixes the publisher owns, how many DOIs it has registered, and how much of its metadata includes abstracts, ORCID iDs, licences, funding and references. Search by name, or give a DOI prefix to find out who owns it.

Inputs

Search termsquerytext
Words from the publisher's name. Former names are matched too.
DOI prefixprefixtext
Keep only the publisher that owns this DOI prefix. A whole DOI works here too; only the prefix is used.
Other Crossref filtersextra_filterstext
The two remaining filters this route accepts, written as name:value and separated by commas: current-doi-count and backfile-doi-count, each matching a publisher's DOI total exactly. Filter names are checked before the request is sent.
Number of resultsrowsnumber
How many records to return, up to 1000. Set it to 0 to get only the total count and any facet counts.From 0 to 1000. Default: 20.
Skip this manyoffsetnumber
Skip this many records before returning any: page two of 20 results is an offset of 20. Offset paging stops at 10,000 records; use the cursor below to walk a larger set.From 0 to 10000.
Cursorcursortext
Walks a whole result set of any size, a page at a time. Send * to start, then feed each result's 'next_cursor' back in here for the next page, and stop when 'has_more' is false. Cannot be combined with 'Skip this many'. A cursor expires after five minutes unused.

Outputs

facetsobject
has_moretrue/false
next_cursortext
result_countnumber
resultslist
total_resultsnumber
Example output
{
  "facets": {},
  "has_more": true,
  "next_cursor": "DnF1ZXJ5VGhlbkZldGNoBQAAAAAA",
  "result_count": 1,
  "results": [
    {
      "counts": {
        "backfile-dois": 11034335,
        "current-dois": 1109031,
        "total-dois": 12143366
      },
      "id": 311,
      "location": "111 River Street, Hoboken, NJ 07030, United States",
      "names": [
        "Wiley",
        "John Wiley & Sons, Inc."
      ],
      "prefixes": [
        "10.1002",
        "10.1111"
      ],
      "primary-name": "Wiley"
    }
  ],
  "total_results": 4128
}

Search works

Search everything registered with Crossref (around 170 million journal articles, book chapters, preprints, conference papers, datasets, dissertations and standards) and narrow it by type, date, journal, publisher, funder, grant, author ORCID iD, or what the record contains. This is the everyday search, and the one to reach for to find a DOI from a citation, to build a reading list on a topic, or to watch for newly deposited work in a field.

Inputs

Search termsquerytext
Words to look for anywhere in the record: title, authors, journal, abstract and the rest. Leave it empty to list everything the filters below match.
Bibliographic referencequery_bibliographictext
A whole citation, pasted in as one string: title, authors, journal, volume and year together. This is the field to use when you are trying to find the DOI for a reference you already have.
Title containsquery_titletext
Words that must appear in the work's title.
Authorquery_authortext
An author's name. Names are not unique in Crossref, so pair this with an ORCID iD or a journal when you need one specific researcher.
Journal or book titlequery_container_titletext
The name of the journal, book or proceedings the work appeared in. Use the ISSN filter instead when you know it (it is exact, and this is a text match).
Search another fieldsearch_fieldtext
Search one specific field instead of the whole record. Pick the field here and put the words in 'Terms for that field' below. The four fields above are the common ones and already have boxes of their own.One of: affiliation (Author affiliation), author (Author name), bibliographic (Bibliographic reference (title, authors, journal, year…)), chair (Chair name), container-title (Journal or book title), contributor (Any contributor's name), degree (Degree (for dissertations)), description, editor (Editor name), event-acronym (Conference acronym), and 11 more.
Terms for that fieldsearch_field_termstext
What to look for in the field chosen above. Only used when a field is chosen.
Work typestypeslist
Keep only these kinds of work: journal articles, book chapters, preprints ('posted content'), datasets, dissertations and the rest. Choosing several keeps works of any of them. The list comes from Crossref, so it is always current.
Record must havemust_havelist
Keep only records that carry all of these. Crossref metadata is deposited by publishers and is uneven, so this is how you get, say, only works that came with an abstract and a licence.One or more of: has-abstract (An abstract), has-affiliation (Author affiliations), has-affiliation-ror-id (A ROR ID on an affiliation), has-alias (An alias DOI), has-archive (A digital-preservation archive), has-assertion (A publisher assertion), has-authenticated-orcid (An author ORCID iD the author signed in to confirm), has-award (A grant award), has-clinical-trial-number (A clinical trial number), has-content-domain (A content domain (where the full text may be shown)), and 14 more.
Date to filter ondate_fieldtext
Which date the window below applies to. Defaults to the publication date. 'Metadata last deposited' and 'Last indexed by Crossref' are the ones to use for a workflow that watches for new records, since a work can be published long before its metadata arrives.One of: published (Published (whichever date came first)), issued, published-online (Published online), published-print (Published in print), posted (Posted (preprints)), accepted, approved, awarded (Awarded (grants)), created (First registered with Crossref), deposited (Metadata last deposited), and 4 more. Default: published.
From datefrom_datedate
Keep only records on or after this date.
Until dateuntil_datedate
Keep only records on or before this date.
ISSNissntext
Keep only works published in the journal with this ISSN. The hyphen is optional.
ISBNisbntext
Keep only works published in the book with this ISBN.
Author ORCID iDorcidtext
Keep only works with this ORCID iD among the authors (the reliable way to follow one researcher, since names repeat). An orcid.org link works here too.
Publisher (Crossref member ID)member_idtext
Keep only works registered by this Crossref member. Find the ID with 'Search publishers'.
DOI prefixprefixtext
Keep only works whose DOI starts with this prefix. A whole DOI works here too; only the prefix is used.
Funder IDfunder_idtext
Keep only works crediting this funder. Find the ID with 'Search funders'; the funder's full DOI works here too.
Grant award numberaward_numbertext
Keep only works crediting this grant number. Pair it with a funder ID: award numbers are only unique within a funder.
Preserved in archivearchivetext
Keep only works the publisher has deposited into this digital-preservation archive.One of: ADS (ADS (Astrophysics Data System)), BL (British Library), Cariniana Network, CINES, CLOCKSS, DWT (Deutsche Nationalbibliothek (DWT)), HathiTrust, Internet Archive, KB (Koninklijke Bibliotheek), LOC (Library of Congress), and 7 more.
Other Crossref filtersextra_filterstext
Any of Crossref's remaining filters, written as name:value and separated by commas: the escape hatch for the ones without a field above (license.url, relation.type, update-type, container-title, clinical-trial-number, gte-award-amount and so on). Filter names are checked before the request is sent, so a typo is reported here. Full list: https://www.crossref.org/documentation/retrieve-metadata/rest-api/rest-api-filters/
Fields to returnselect_fieldslist
Return only these fields from each record instead of the whole thing. A full Crossref record includes the entire reference list and can run to hundreds of kilobytes, so narrowing this makes a large search far faster and the result far easier to read. Leave it empty for everything.One or more of: DOI, ISBN (ISBNs), ISSN (ISSNs), URL (DOI link), abstract, accepted (Accepted date), alternative-id (Publisher's own IDs), approved (Approved date), archive (Preservation archives), article-number (Article number), and 49 more.
Sort bysorttext
How to order the results. Defaults to relevance when you searched for something, and to no particular order when you only filtered.One of: relevance (Relevance to the search terms), score (Search score), published (Publication date), published-print (Print publication date), published-online (Online publication date), issued (Issued date), created (Date first registered with Crossref), deposited (Date metadata was last deposited), indexed (Date last indexed by Crossref), updated (Date the record was last updated), is-referenced-by-count (Number of times cited), references-count (Number of references).
Sort directionordertext
Which end of the sort to start from. Defaults to highest or newest.One of: desc (Highest or newest first), asc (Lowest or oldest first). Default: desc.
Number of resultsrowsnumber
How many records to return, up to 1000. Set it to 0 to get only the total count and any facet counts.From 0 to 1000. Default: 20.
Skip this manyoffsetnumber
Skip this many records before returning any: page two of 20 results is an offset of 20. Offset paging stops at 10,000 records; use the cursor below to walk a larger set.From 0 to 10000.
Cursorcursortext
Walks a whole result set of any size, a page at a time. Send * to start, then feed each result's 'next_cursor' back in here for the next page, and stop when 'has_more' is false. Cannot be combined with 'Skip this many'. A cursor expires after five minutes unused.
Random sample sizesamplenumber
Return this many records picked at random from everything that matches, up to 100. Useful for spot-checking a large set. It replaces normal paging, so it cannot be combined with 'Number of results', 'Skip this many' or 'Cursor'.From 1 to 100.
Count results byfacetslist
Also return counts of the matching works broken down by these fields: how many by publisher, by type, by year. Pair it with 0 results to get the counts on their own.One or more of: affiliation (Author affiliation), archive (Preservation archive), assertion (Publisher assertion), assertion-group (Publisher assertion group), category-name (Subject category), container-title (Journal or book title), funder-doi (Funder DOI), funder-name (Funder name), issn, journal-issue (Journal issue), and 11 more.

Outputs

facetsobject
has_moretrue/false
next_cursortext
result_countnumber
resultslist
total_resultsnumber
Example output
{
  "facets": {},
  "has_more": true,
  "next_cursor": "DnF1ZXJ5VGhlbkZldGNoBQAAAAAA",
  "result_count": 1,
  "results": [
    {
      "DOI": "10.1038/nature12373",
      "ISSN": [
        "0028-0836",
        "1476-4687"
      ],
      "URL": "http://dx.doi.org/10.1038/nature12373",
      "author": [
        {
          "family": "Kucsko",
          "given": "G.",
          "sequence": "first"
        },
        {
          "family": "Maurer",
          "given": "P. C.",
          "sequence": "additional"
        }
      ],
      "container-title": [
        "Nature"
      ],
      "created": {
        "date-parts": [
          [
            2013,
            7,
            31
          ]
        ],
        "date-time": "2013-07-31T17:03:41Z",
        "timestamp": 1375290221000
      },
      "is-referenced-by-count": 1807,
      "issue": "7460",
      "issued": {
        "date-parts": [
          [
            2013,
            7,
            31
          ]
        ]
      },
      "language": "en",
      "license": [
        {
          "URL": "https://www.springernature.com/gp/researchers/text-and-data-mining",
          "content-version": "tdm"
        }
      ],
      "link": [
        {
          "URL": "http://www.nature.com/articles/nature12373.pdf",
          "content-type": "application/pdf",
          "intended-application": "text-mining"
        }
      ],
      "member": "297",
      "page": "54-58",
      "prefix": "10.1038",
      "published": {
        "date-parts": [
          [
            2013,
            7,
            31
          ]
        ]
      },
      "publisher": "Springer Science and Business Media LLC",
      "references-count": 30,
      "score": 24.5,
      "short-container-title": [
        "Nature"
      ],
      "subject": [
        "Multidisciplinary"
      ],
      "title": [
        "Nanometre-scale thermometry in a living cell"
      ],
      "type": "journal-article",
      "volume": "500"
    }
  ],
  "total_results": 4128
}

On this page