...
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) |
|
| ||
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="7d6878040d350fe0-0795cf88-4ed147ca-b64face5-387cc47facb0f3702e5c53b3"><ac:plain-text-body><![CDATA[ | 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) |
|
| ||
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="93726cbf9b9be0cf-ac2a2731-4772457b-a790972d-6d2a280710ff3d3ff840099c"><ac:plain-text-body><![CDATA[ | 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}?versionable={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 | ]]></ac:plain-text-body></ac:structured-macro> | |
(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="865f05f9b82d7a75-096034d1-490f4482-a54994c5-a110282ebe0ac0fcf5318b85"><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 |
|
|
|
...
(1) Present in current REST API but not in proposed REST API - leave current REST API version as-is, syntax conforms to proposed REST API
(2) Present in current REST API but not in proposed REST API - implementation and URL syntax needs defining to conform to proposed REST API
(3) Present in both current REST API and proposed REST API but URL syntax differs - proposal: change to use proposed REST API syntax
(4) Present in both current REST API and proposed REST API but definition differs - resolution needed
(5) Current REST API lists both properties and values; proposed REST API has separate methods for getting a list of properties and getting a property value; to replace current API method both proposed methods need implementing
(6) Current REST API includes setting datastream properties as well as updating content; proposed version has different methods for content and properties - to replace current API method both proposed methods need implementing
(7) see notes on versions below
(8) Difference between "export" and "getObjectXML" needs clarifying in proposed REST API
...