Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This is a comparison of the current REST API and the proposed Alternative REST API.  Included in the current REST API are methods newly-implemented for version 3.2 (but not yet documented) as listed in JIRA issues for 3.2.  Only those methods in the proposed REST API are included where there is either a correspondence with the current REST API or where the URL syntax is similar (ie may conflict with the current REST API).  The corresponding SOAP API and LITE API methods are also included for reference.

E&OE - this is a work in progress and would benefit from another pair of eyes to cross-check...

SOAP API

Current REST API

verb

Proposed REST API

verb

Notes

LITE API

verb

findObjects

/objects

GET

 

 

(1)

/search

GET

resumeFindObjects

/objects

GET

 

 

(1)

/search?sessionToken={sessionid}

GET

ingest

/objects/{pid}

POST

 

 

(2)

 

 

(create empty object)

 

 

/objects

POST

 

 

 

(create empty object with given pid)

 

 

/objects/{pid}

PUT

 

 

 

purgeObject

/objects/{pid}

DELETE

/objects/{pid}

DELETE

 

 

 

getObjectProfile

/objects/{pid}

GET

/objects/{pid}/properties

GET

(4)'(5)

/get/PID

GET

modifyObject

/objects/{pid}?{properties to modify}

PUT

/objects/{pid}/properties/property

PUT

(3)

 

 

listDatastreams

/objects/{pid}/datastreams

GET

 

 

(1)

/listDatastreams/{pid}/\{dateTime}

GET

purgeDatastream

/objects/{pid}/datastreams/{dsid}

DELETE

/objects/{pid}/datastreams/{dsid}

DELETE

 

 

 

getDatastream

/objects/{pid}/datastreams/{dsid}

GET

/objects/{pid}/datastreams/{dsid}/properties

GET

(4)'(5)

 

 

addDatastream

/objects/{pid}/datastreams/{dsid}

POST

/objects/{pid{/datastreams/{dsid}/withControlGroup/\{cg}

PUT

(4)

 

 

modifyDatastreamByReference

/objects/{pid}/datastreams/{dsid}

PUT

/objects/{pid}/datastreams/{dsid}/properties/contentLocation

PUT

(4)'(6)

 

 

setDatastreamState

/objects/{pid}/datastreams/{dsid}?dsState={state}

PUT

/objects/{pid}/datastreams/{dsid}/properties/{property}

PUT

(3)

 

 

setDatastreamVersionable

/objects/{pid}/datastreams/{dsid}?dversionable={true

false}

PUT

/objects/{pid}/datastreams/{dsid}/properties/{property}

PUT

(3)

 

 

getDatastreamDissemination

/objects/{pid}/datastreams/{dsid}/content

GET

/objects/{pid}/datastreams/{dsid}

GET

(3)

/get/{pid}/{dsid}

GET

getDatastreamDissemination

/objects/{pid}/datastreams/{dsid}/content?asOfDateTime

GET

/objects/{pid}/datastreams/{dsid}/versions/timestamp/contents

GET

(3)'(7)

/get/{pid}/{dsid}/\{dateTime}

GET

compareDatastreamChecksum

/objects/{pid}/datastreams/{dsid}?validateChecksum=true

GET

 

 

(2)

 

 

export

/objects/{pid}/export

GET

 

 

(2)'(8)

 

 

listMethods

/objects/{pid}/methods

GET

/objects/{pid}/methods

GET

 

/listMethods/{pid}/\{dateTime}

GET

(list methods in sdef)

/objects/{pid}/methods/{sdef}

GET

 

 

(1)

 

 

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="1794d31b-020b-4779-a9c7-881cb5d4a502"><ac:plain-text-body><![CDATA[

getDissemination

/objects/{pid}/methods/{sdef}/{method}

GET/POST

/objects/{pid}/methods/{sdef}/{method}

GET/POST

 

/get/{pid}/{sdef}/{method}[/{dateTime}

GET

]]></ac:plain-text-body></ac:structured-macro>

getObjectXML

/objects/{pid}/objectXML

GET

/objects/{pid}

GET

(3)'(8)

 

 

getObjectHistory

/objects/{pid}/versions

GET

 

 

(2)'(7)

/getObjectHistory/{pid}

GET

getNextPID

/objects/nextPID

POST

 

 

(2)

/management/getNextPID

GET

describeRepository

 

 

 

 

 

/describe

GET

upload

 

 

 

 

 

/management/upload

POST

getDatastreamHistory

 

 

/objects/{pid}/datastreams/{dsid}/versions

GET

(7)

 

 

getDatastreams

 

 

 

 

 

 

 

modifyDatastreamByValue

 

 

/objects/{pid}/datastreams/{dsid}/contents

PUT