...
Returns:
List of uuid's uuid’s – uuids of the ingested documents
...
- Expose directory structure-like URIs.
- Transfer XML, JavaScript Object Notation (JSON), or both.
- Use HTTP methods explicitly.
- Be stateless.
DocStore API as per design principles of REST
6.1 Create
Create one or more documents with text content:
URL |
| |
Request Method | POST | |
Returns | 201 Created & Location | |
| 401 Unauthorized | |
| 415 Unsupported Media Type | |
|
|
Modify a document:
If the specified document does not exist, it is not created by this command.
URL |
| |
Method | PUT |
|
Request | XML | Request XML |
Returns | 200 OK |
|
| 401 Unauthorized |
|
| 404 Not Found |
|
| ||
Content Type | multipart/form-data |
|
Content Disposition | text/xml |
|
Content | Request XML | |
Returns | 201 Created & Location | Response XML |
| 401 Unauthorized |
|
| 415 Unsupported Media Type |
|
Create one or more documents with binary content (PDF, DOC etc)
URL |
| |
Method | POST |
|
Content Type | multipart/form-data |
|
Content Disposition | application/octet-stream |
|
Content | Bag content | |
Returns | 201 Created & Location | Response XML |
| 401 Unauthorized |
|
| 415 Unsupported Media Type |
|
Modify one or more documents:
If the specified document does not exist, it is not created by this command.
6.2 Retrieve
Retrieve a document (Checkout)
URL |
| |
Method PUT | GET |
|
Returns | 200 OK & XML or other content | XML or binary content of the document |
| 401 Unauthorized |
|
| ||
Request Body | XML | Request XML |
Returns | 200 OK |
|
| 401 Unauthorized |
|
| 404 Not Found 404 Not Found |
|
Q: Do we need to identify the user who initiated this request?
Retrieve (references to) one or more documents: (like getUUIDs function in docstore)
URL |
| |
Method | GET |
|
Query string | category= |
|
Returns | 200 OK and XML | Response xml with start, end, and next(url) fields |
| 401 Unauthorized |
|
| 404 Not Found |
|
Retrieve one or more documents with binary content (PDF, DOC etc)
URL |
| |
Method | GET |
|
Query string | requestContent= | Request XML |
Returns | 201 Created & Location | Response content type: text/xml |
| 401 Unauthorized |
|
| 415 Unsupported Media Type |
|
6.3
...
Retrieve a documentUpdate
If the specified document does not exist, it is not created by this command.
Modify one or more documents:
URL |
| |
Method GET | PUT |
|
Request Body | Request XML |
|
Returns | 200 OK & and response | Response XML |
| 401 Unauthorized |
|
| 404 Not Found |
...
| ||
| 415 Unsupported Media Type |
|
Modify one or more documents with binary content (PDF, DOC etc):
URL |
| ||||
Method | GET | Query string | Category= | POST (PUT does not support multi-part request) |
|
Request Body | Bag content | ||||
Returns | 200 OK and response | Response XML | |||
| 401 Unauthorized |
| |||
| Returns | 200 OK and XML 404 Not Found |
| ||
401 Unauthorized | 415 Unsupported Media Type | 404 Not Found |
6.4 Delete
Delete a document:
URL |
| |
Method | DELETE |
|
Returns 204 | No Content | Response XML |
| 401 Unauthorized |
|
| 404 Not Found |
|
| 415 Unsupported Media Type |
|
Delete one or more documents
URL |
| |
Method | DELETE |
|
Request Body | Request XML Request XML |
|
Returns | 200 OK and response | Response XML |
| 401 Unauthorized |
|
| 404 Not Found |
|
| 415 Unsupported Media Type |
|
...