Request URI: /path/to/some/resource/fcr:versions
Methods: GET, POST, PATCH
GET Get a list of the available versions of an object
Request Headers:
ACCEPT application/ld+json, application/n-triples, application/rdf+xml, application/x-turtle, application/xhtml+xml, application/xml, text/html, text/n3, text/plain, text/rdf+n3, text/turtle
Example:
curl -H "Accept: text/turtle" http://localhost:8080/rest/path/to/resource/fcr:versions
Response:
Status: 200 OK Headers: Content-Type: text/turtle Body: <http://localhost:8080/rest/path/to/resource> fedora:hasVersion <http://localhost:8080/rest/path/to/resource/fcr:versions/87a0a8c317f1e749515d33-cb73-4fd7-9d1d-c715eb6947e0> . <http://localhost:8080/rest/path/to/resource/fcr:versions/87a0a8c317f1e749515d33-cb73-4fd7-9d1d-c715eb6947e0> fedora:hasVersionLabel "v0"^^<http://www.w3.org/2001/XMLSchema#string> ; fedora:created "2014-12-03T23:55:38.47Z"^^<http://www.w3.org/2001/XMLSchema#dateTime> . <http://localhost:8080/rest/path/to/resource> fedora:hasVersion <http://localhost:8080/rest/path/to/resource/fcr:versions/87a0a8c317f1e7dae533ec-b1b6-4da1-8bb9-f1964e253572> . <http://localhost:8080/rest/path/to/resource/fcr:versions/87a0a8c317f1e7dae533ec-b1b6-4da1-8bb9-f1964e253572> fedora:hasVersionLabel "v1"^^<http://www.w3.org/2001/XMLSchema#string> ; fedora:created "2014-12-03T23:56:12.863Z"^^<http://www.w3.org/2001/XMLSchema#dateTime> .
Status:
200 OK
404 Not Found: This resource is not versioned or this resource is not exist.
Response: The requested resource is not available.
GET Get a previous version of an object
Request Headers:
ACCEPT application/ld+json, application/n-triples, application/rdf+xml, application/x-turtle, application/xhtml+xml, application/xml, text/html, text/n3, text/plain, text/rdf+n3, text/turtle
Example:
curl http://localhost:8080/rest/resource/fcr:versions/<version-label>
Response:
Status: 200 OK Response Headers: ETag: "39f0d8a01a066771e56f70be892a39a7b505843c" Last-Modified: Tue, 20 May 2014 19:29:10 GMT Content-Type: text/turtle Body: <http://localhost:8080/rest/resource/fcr:versions/87a0a8c317f1e72c658170-624d-40f9-96cb-21ede3392155> <http://fedora.info/definitions/v4/repository#primaryType> "nt:frozenNode"^^<http://www.w3.org/2001/XMLSchema#string> ; <http://fedora.info/definitions/v4/repository#frozenPrimaryType> "nt:folder"^^<http://www.w3.org/2001/XMLSchema#string> ; <http://fedora.info/definitions/v4/repository#created> "2014-05-20T19:29:00.192Z"^^<http://www.w3.org/2001/XMLSchema#string> ; <http://fedora.info/definitions/v4/repository#frozenMixinTypes> "fedora:resource"^^<http://www.w3.org/2001/XMLSchema#string> , "mix:versionable"^^<http://www.w3.org/2001/XMLSchema#string> , "fedora:object"^^<http://www.w3.org/2001/XMLSchema#string> ; <http://fedora.info/definitions/v4/repository#lastModified> "2014-05-20T19:29:10.555Z"^^<http://www.w3.org/2001/XMLSchema#string> ; <http://fedora.info/definitions/v4/repository#frozenUuid> "fed529c6-2121-4b1d-83fc-cc4274563612"^^<http://www.w3.org/2001/XMLSchema#string> ; <http://fedora.info/definitions/v4/repository#lastModifiedBy> "bypassAdmin"^^<http://www.w3.org/2001/XMLSchema#string> ; <http://fedora.info/definitions/v4/repository#uuid> "87a0a8c317f1e72c658170-624d-40f9-96cb-21ede3392155"^^<http://www.w3.org/2001/XMLSchema#string> ; <http://fedora.info/definitions/v4/repository#createdBy> "bypassAdmin"^^<http://www.w3.org/2001/XMLSchema#string> ; a <http://www.jcp.org/jcr/nt/1.0frozenNode> , <http://www.jcp.org/jcr/nt/1.0base> , <http://www.jcp.org/jcr/mix/1.0referenceable> .
Status:
200 OK
404 Not Found: if the version or the resource does not exist
Response: The requested resource is not available.
POST Create a new version of an object
Request Headers
SLUG (Required) A suggested name for the new child resource, which the repository may ignore.
Example:
curl -X POST -H "Slug: newVersionName" http://localhost:8080/rest/path/to/resource/fcr:versions
Response:
Status: 201 Created
Status:
201 Created: if a new version is created successfully
404 Not Found: if the resource does not exist
409 Conflict: if the version label is already in use for another version of this rexource
Response: The requested resource is not available.
PATCH Revert to a previous version of an object
Example:
curl -X PATCH http://localhost:8080/rest/path/to/resource/fcr:versions/existingVersionName
Response:
Status: 204 No Content
Status:
204 No Content: if the version is reverted successfully
404 Not Found: if the version does not exist
Response: The requested resource is not available.
Request URI: /path/to/some/resource/fcr:versions/versionName
Methods: DELETE
DELETE Remove a previous version of an object
Example:
curl -X DELETE http://localhost:8080/rest/path/to/resource/fcr:versions/versionName
Response:
Status: 204 No Content
Trying to delete the current version of a resource will result in an error. To revert to an old version of a resource, first revert to the old version using the PATCH method, and then delete the newer version.
Status:
204 No Content: if the version is reverted successfully
400 Bad Request: if trying to delete the most recent version
Response: Cannot remove current version
404 Not Found: if the version does not exist
Response: The requested resource is not available.