S3 RESTful Methods
Table of Contents
This page describes the standard (built-in) CRUD methods of the Eden RESTful API.
- see also: URL Format
Note: CRUD methods may (and in most setups do) require access authorization.
Note: the RESTful API is extensible, therefore other methods may also be supported (e.g. /report, /summary, /profile). These methods are described in the documentation of the respective method handlers.
Note: Developers should not alter or override standard methods for any resources (although this is not strictly forbidden).
Interactive Methods
Interactive formats include: html, iframe
Method | GET | POST | PUT | DELETE |
---|---|---|---|---|
resource | return a view of all available records in the resource (Standard: data table) | submission of a form to create a new record | see POST | - |
resource/<ID> | return a view of a single record (update form if permitted, otherwise read-only) | submission of a form to update a record | see POST | delete the specified record |
resource/create | return a form to create a new record | submission of a form to create a new record | see POST | - |
resource/<ID>/read | return a view of a single record (read-only) | - | - | - |
resource/<ID>/update | return a form to update the specified record | submission of a form to update a record | see POST | - |
resource/delete | get a form to confirm the deletion of records | delete all records | - | see POST |
resource/<ID>/delete | delete the specified record | see GET | - | see GET |
Transformable Formats
Transformable formats include: xml, json, s3csv
Method | GET | POST | PUT | DELETE |
---|---|---|---|---|
resource | export all (accessible) records in the specified resource | see PUT | import records from the request body | - |
resource/<ID> | export the specified record | see PUT | import (update) the specified record from the request body | - |
resource/create | return a resource structure description of the specified resource | see PUT | import records from the request body | - |
resource/create?filename=xyz.xml | import new records from the specified file | see PUT | import records from the request body | - |
resource/create?fetchurl=http://site/xyz.xml | import new records from the specified URL | see PUT | import records from the request body | - |
resource/update | return a resource structure description of the specified resource | see PUT | import records from the request body | - |
resource/update?filename=xyz.xml | import new records from the specified file | see PUT | import records from the request body | - |
resource/update?fetchurl=http://site/xyz.xml | import new records from the specified URL | see PUT | import records from the request body | - |
resource/<ID>/update?filename=xyz.xml | import a record update from the specified file | see PUT | import a record update from the request body | - |
resource/<ID>/update?fetchurl=http://site/xyz.xml | import a record update from the specified URL | see PUT | import a record update from the request body | - |
resource/read | export all (accessible) records in the specified resource | see PUT | import records from the request body | - |
resource/<ID>/read | export the specified record | see PUT | import a record update from the request body | - |
resource/delete | - | - | - | Delete all accessible records in the resource |
resource/<ID>/delete | - | - | - | Delete the specified record |
Note: in XML and JSON, data resources are always exported/imported in compound with all their subresources and referenced resources.
Example
See Example for Creating / Updating Records using PUT of an S3JSON record format: wiki:S3/S3XML#JSONFormat