Documents (DMS)
The Document Management System (DMS) REST API lets external systems upload, search, list, and
retrieve documents through a versioned, resource-oriented surface. All endpoints live under
/api/dms/public/v1/ and are protected by OAuth bearer tokens.
/api/dms/public/v1/
Authentication
Every /dms/public/ endpoint requires a valid bearer token. The controller validates the
token's jpt (principal-type) claim and the caller's API license on every request. See
Authentication to obtain a token, then send it as:
Authorization: Bearer <access_token>Upload a document
/api/dms/public/v1/documents
Upload a new document. On success the endpoint returns 201 Created with a
Location header that points at the newly created document, and a body containing the
generated document ID.
HTTP/1.1 201 Created
Location: /api/dms/public/v1/documents/123456{
"documentId": 123456
}Search documents
/api/dms/public/v1/documents/search
Search accepts its filter criteria as a JSON body rather than query parameters. Index attribute
filters can exceed safe URL length limits (~2000 characters) and cannot be passed reliably as query
parameters, so a POST body is used. Pagination remains in the query string.
POST /api/dms/public/v1/documents/search?page=1&pageSize=50{
"category": "Invoices",
"type": "AP",
"includeRelated": false,
"attributes": {
"VendorCode": "ACME",
"JobNumber": "J-1001"
}
}| Field | Description |
|---|---|
category | Document category to filter by. |
type | Document type within the category. |
includeRelated | Boolean. When true, includes related documents. Defaults to false. |
attributes | Object of index-attribute filters (attribute name → value). |
| Query parameter | Description |
|---|---|
page | 1-based page number. Defaults to 1. |
pageSize | Number of documents per page. |
List documents
/api/dms/public/v1/documents
A plain GET on the collection returns an unfiltered listing of documents, paged with
the same page and pageSize query parameters. Use
search when you need to filter.
GET /api/dms/public/v1/documents?page=1&pageSize=50Retrieve a document
/api/dms/public/v1/documents/{documentId}
Retrieve a single document by its ID. Returns 200 OK with the document, or
404 Not Found when the document does not exist or is not visible to the caller.
Errors
Errors are returned as RFC 7807 problem detail documents. See REST API Overview → Error responses for the common status codes and shape.