Difference between revisions of "DOxI Documentation"

From MPDLMediaWiki
Jump to navigation Jump to search
Line 2: Line 2:
== Short introduction into the service called DOxI ==
== Short introduction into the service called DOxI ==


DOxI is a [https://en.wikipedia.org/wiki/Representational_state_transfer REST API] to the [http://doi.mpdl.mpg.de/ MPDL DOI service] which can be used to assign DataCite DOI names to research data and grey literature. Access to DOxI is restricted to services registered at MPDL.  
DOxI is a [https://en.wikipedia.org/wiki/Representational_state_transfer REST API] to the [http://doi.mpdl.mpg.de/ MPDL DOI service] assigning DataCite DOI names to research data and grey literature.  


[http://doi.mpdl.mpg.de/contact/ Contact us] to learn more...
Access to DOxI is restricted to services registered at MPDL. Please [http://doi.mpdl.mpg.de/contact/ contact us] for any further detail.


==REST API==
==REST API==

Revision as of 12:03, 19 August 2015

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 services registered at MPDL. Please contact us for any further detail.

REST API[edit]

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 (optional): Target URL for this DOI, if it should be updated
  • 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

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.