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] |