DataCite REST API

About the DataCite REST API

The DataCite REST API enables creation and update of DataCite DOI metadata records and account information.

The API is generally RESTful and returns results in JSON (following the JSON:API specification).

REST API Guide

These guides will walk you through the basic operations of the DataCite REST API for creating and updating DOIs and metadata:

REST API Reference

📘

Access the REST API Reference to explore all REST API functions and parameters.

Additional resources

Member vs. Public API

The REST API is split into two versions: a Public API and a Member API. Traffic is directed to a different set of servers if users authenticate:

  • Member API: Accessed with authentication: used for creating and updating metadata
  • Public API: Accessed without authentication: used for retrieving metadata

These two APIs use the same URL (starting with https://api.datacite.org) and run the same code. When users authenticate to access the Member API, they have access to additional functionality, depending on their account type.

Member API (Requires authentication)

Authentication provides access to additional functionality to create and update DOIs, view draft records and Registered DOIs, and view contact information.

Users must authenticate with a Repository account to create and update DOIs.

Account TypeCreate and update DOIsView draft records and Registered (non-Findable) state DOIsView organization contact information
Repositoryxx
Member (Direct Member or Consortium Lead)xx
Consortium Organizationxx

Test vs. Production

The REST API is available in both test and production. Many examples in this guide use the test endpoint.

Learn more about the differences between Test and Production in our Testing Guide.

API Versions

The current version of the REST API is version 2. If you are using the endpoints /works, /members, or /data-centers, you are using version 1.

🚧

When making frequent requests to DataCite APIs using a script or integration, include a User-Agent header with 1) an identification of your script or integration and 2) contact information in a mailto: . For example:

 MyCustomScript/1.0 (https://mycustomscript.org; mailto:[email protected])

This information helps DataCite communicate about issues and changes and troubleshoot problems.

📘

Would you like to know more?

If you have any questions, requests or ideas please contact us!


Did this page help you?