DOxI Documentation

From MPDLMediaWiki
Revision as of 14:51, 16 November 2016 by Przibylla (talk | contribs)
Jump to navigation Jump to search

A short introduction into the service called DOxI[edit]

DOxI is a REST API to the MPDL DOI service assigning DataCite DOI names to research data and grey literature.

Access to DOxI is restricted to users and services registered at MPDL. Please contact us for any further detail!

REST API[edit]

The MPDL-DOxI REST service can be reached under https://doxi.mpdl.mpg.de/doxi/rest
Below all possible functions are listed. (PATH needs to be appended to the base URL)

Function HTTP method Path Body URL Parameter Success return value
Create DOI PUT /doi/{doi} Metadata in XML format. DOI in XML will be replaced.
  • url (required): Target URL for this DOI
  • HTTP Status: 201 - CREATED
  • Body: created DOI in text/plain format
Generate DOI PUT /doi Metadata in XML format. DOI in XML will be replaced.
  • url (required): Target URL for this DOI
  • suffix (optional): Desired suffix for this DOI
  • HTTP Status: 201 - CREATED
  • Body: created DOI in text/plain format
Update DOI POST /doi/{doi} Metadata in XML format (optional), if it should be updated. DOI in XML will be replaced.
  • url (required): Target URL for this DOI (please repeat the URL, even if you want to update metadata only)
  • HTTP Status: 201 - CREATED
  • Body: Metadata in application/xml format
  • Header 'Location': Target URL of DOI
Get DOI GET /doi/{doi}

-

-

  • HTTP Status: 200 - OK
  • Body: Metadata in application/xml format
  • Header 'Location': Target URL of DOI
Get DOI List GET /doi

-

-

  • HTTP Status: 200 - OK
  • Body: DOIs in text/plain format
Inactivate DOI DELETE /doi/{doi}

-

-

  • HTTP Status: 200 - OK

Authentication[edit]

Authentication is handled by basic http authentication

Exceptions[edit]

  • DoxiException as super class
    • DoiAlreadyExistsException
      • StatusCode: 409
      • Message: This DOI already exists. You can either choose another DOI for creating a new DOI or update the existing one by using the update methode.
    • DoiInvalidException
      • StatusCode: 400
      • Message: This DOI already exists. You can either choose another DOI for creating a new DOI or update the existing one by using the update methode.
    • UrlInvalidException
      • StatusCode: 400
      • Message: The transfered URL is invalid. This can for example be caused by a syntax error.
    • MetadataInvalidException
      • StatusCode: 400
      • Message: Datacite response message if available
      • Alternative Message: The transfered metadata xml is invalid. Please refer to the datacite xml schema (https://schema.datacite.org/).
      • MetadataXml included
    • DoiRegisterException
      • StatusCode: 400
      • Message: Datacite response message if available
      • Alternative Message: The DOI could not be registered at the datacite service.