| 17 | | '''Important to know:''' |
| 18 | | |
| 19 | | * In '''XML and JSON''', data resources are always exported/imported in compound with all their subresources and referenced resources. |
| 20 | | * In '''all other formats''', main resources and subresources are addressed separately |
| 21 | | |
| 22 | | === GET === |
| 23 | | |
| 24 | | ==== Interactive Formats ==== |
| 25 | | |
| 26 | | * without method: |
| 27 | | - if no record ID/UID in the URL: '''list''' view of the resource |
| 28 | | - with a record ID/UID in the URL: '''read''' view of the specified record (if the user is permitted to update the record, an '''update''' form returned instead) |
| 29 | | |
| 30 | | * with '''method''' in the URL: |
| 31 | | - method '''create''' returns a create-form |
| 32 | | - method '''read''' returns a view of the specified record (other than with blank method, no update form is returned in this case) |
| 33 | | - method '''update''' returns an update form for the specified record |
| 34 | | - method '''delete''' returns a delete form for the specified records |
| 35 | | |
| 36 | | * some resources support other (custom) methods, e.g. |
| 37 | | - '''search_simple''' returns a form for simple string search in the resource |
| 38 | | |
| 39 | | ==== Non-interactive formats ==== |
| 40 | | |
| 41 | | * without '''method''': |
| 42 | | - returns a list of all matching records in the specified format |
| 43 | | |
| 44 | | * with '''method''' in the URL: |
| 45 | | - method '''create''' or '''update''' imports data into the resource from the specified data source: |
| 46 | | * ''?filename='' variable to specify a local file (on the server) |
| 47 | | * ''?fetchurl='' variable to specify a source URL |
| 48 | | * with format extension ''.url'' data are imported directly from the URL |
| 49 | | * if none of the above is specified, data are imported from the request body |
| 50 | | - method '''read''' returns a the specified records in the requested format |
| 51 | | - method '''delete''' deletes the specified records |
| 52 | | |
| 53 | | * XLS and PDF format work read-only (create/update/delete being ignored) |
| 54 | | |
| 55 | | === POST === |
| 56 | | |
| 57 | | ==== Interactive Formats ==== |
| 58 | | |
| 59 | | * performs the respective '''method''' (if specified in the request) |
| 60 | | - method '''create''' creates a new record |
| 61 | | - method '''update''' updates the specified record |
| 62 | | - method '''delete''' deletes the specified record |
| 63 | | * expects the form data as multi-part request body |
| 64 | | |
| 65 | | ==== Non-interactive Formats ==== |
| 66 | | |
| 67 | | * see PUT |
| 68 | | |
| 69 | | === PUT === |
| 70 | | |
| 71 | | ==== Interactive formats ==== |
| 72 | | |
| 73 | | * see POST |
| 74 | | |
| 75 | | ==== Non-interactive formats ==== |
| 76 | | |
| 77 | | * import data from the request body (which must be in the specified format) into the resource |
| 78 | | * records being matched by the UIDs specified in the data, while any record IDs in the URL restrict the selection |
| 79 | | |
| 80 | | === DELETE === |
| 81 | | |
| 82 | | * deletes those of the addressed records which are deletable by the current user |
| | 17 | * see [wiki:S3XRC/RESTfulAPI/Methods RESTful Methods] |