Versions Compared

Key

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

/rest/fcr:sitemap
/rest/fcr:search
/rest/fcr:namespaces

/rest/fcr:nextPID
- POST mints an ID

Nodes

/rest/{path}
- GET lists children, with optional filter by mixin
- POST create a new node of QueryParam "mixin" at {path}
- PUT mutate the object at {path}
- DELETE remove the object at {path}

Code Block
GET /rest/
  list the top-level objects in the repository
 
GET /rest/sufia:123456789
  list the children under sufia:123456789, which may include properties(?), datastreams or additional fedora objects/collections
 
GET /rest/sufia:123456789?mixin=fedora:datastreams
  only list the `fedora:datastreams` that are children of sufia:123456789
 
POST /rest/islandora:xyzasdf with request body
  (I seem to remember something about a JSON/XML serialization of "profile" properties...)
 
POST /rest/islandora:xyzasdf?mixin=fedora:object
  create a new fedora object at islandora:xyzasdf
 
POST /rest/islandora:xyzasdf/an/arbitrary/hierarchy/to/an/islandora:datastream?mixin=fedora:datastream
  create a new datastream at islandora:xyzasdf/an/arbitrary/hierarchy/to/an/islandora:datastream in the JCR tree. (Will this create all the intermediate nodes? do I need to do this manually?)
 
PUT /rest/sufia:123456789
  (not sure what this implies.. manipulating properties of the node?)
 
DELETE /rest/sufia:123456789
  Delete the node at sufia:123456789

 

Describe

/rest/{path}/fcr:describe
- GET profile or description [repo describe at root, profiles by type]
- POST unsupported?
- PUT unsupported?
- DELETE unsupported?

Code Block
GET /rest/fcr:describe
  describe the fcrepo4 repository

GET /rest/sufia:123456789/fcr:describe
  describe the object sufia:123456789 (equivalent to the fcrepo 3.x "object profile") 

GET /rest/sufia:123456789/content/fcr:describe
  describe the datastream sufia:123456789/content (equivalent to the fcrepo 3.x "datastream profile")

GET /rest/some/arbitrary/jcr\:path/to/sufia:123456789/the/tree/continues/fcr:describe
  describe the node at /rest/some/arbitrary/jcr\:path/to/sufia:123456789/the/tree/continues (equivalent to the fcrepo3.x "datastream profile"). 
  If the node resolves to a JCR "nt:file", we treat it as a datastream. Else, an object (or collection)

 


Other stuff

/rest/fcr:nextPID
- POST mints an ID

/rest/{path}
- GET lists children, with optional filter by mixin
- POST create a new node of QueryParam "mixin" at {path}
- PUT mutate the object at {path}
- DELETE remove the object at {path} 

/rest/{path}/fcr:new
- POST create a new child of QueryParam "mixin" under {path}

...