Introduction
The search context and Document Taggers REST API (which is part of the "Auto Tagging and Classification" feature) is used by our Viewer to determine tags for a document which is currently being viewed.
IMPORTANT: This REST API is designed primarily for our Viewer. If your application needs to perform document tagging without a viewer involved, we recommend you use PrizmDoc Server’s search context and document taggers REST APIs directly.
IMPORTANT: This API will continue to evolve as we refine these features and extend our cloud service offerings.
Available URLs
URL | Description |
---|---|
POST /v2/viewingSessions/{viewingSessionId}/documentTaggers | Creates a new document tagger for a viewing session’s source document, starting the process of document tagging. |
GET /v2/documentTaggers/{processId} | Gets available document tagging. |
POST /v2/viewingSessions/{viewingSessionId}/documentTaggers
Creates a new document tagger for a viewing session’s source document, starting the process of document tagging.
After a successful POST to create the document tagger, we immediately begin a background process to start a document tagging for you to GET. Once the full text of the document has been searched and tagged, the document tagger state
will change from "processing"
to "complete"
.
Request
Request Headers
Name | Description |
---|---|
Content-Type |
Must be application/json |
Request Body
minSecondsAvailable
(Integer) The minimum number of seconds this document tagger will remain available. The actual lifetime may be longer. The default lifetime is defined by theprocessIds.lifetime
central configuration parameter.
Successful Response
Response Body
JSON with metadata about the created document tagger.
processId
(String) Unique id for this document tagger.affinityToken
(String) Affinity token for this document tagger. Present when clustering is enabled.state
(String) State of document tagging."processing"
- The tagging is still being executed."complete"
- The tagging is complete."error"
- There was a problem performing the tagging.
percentComplete
(Integer) Percentage of document tagging which has completed (from0
to100
).expirationDateTime
(String) Currently planned date and time when the document tagger resource will expire and no longer be available for use. Format is RFC 3339 Internet Date/Time profile of ISO 8601, e.g."2024-11-05T08:15:30.494Z"
.
Error Responses
Status Code | JSON errorCode |
Description |
---|---|---|
404 |
- | No viewing session with the provided {viewingSessionId} could be found. |
480 |
"DocumentNotProvidedYet" |
The viewing session does not yet have a source document attached. |
480 |
"ServerContentDisabled" |
The source document satisfies the client-side viewing formats configured for the viewing session and the server content is disabled. |
480 |
"InvalidInput" |
An invalid input value was used. See errorDetails in the response body. |
480 |
"FeatureDisabled" |
The viewing session was created with "serverSideSearch" disabled. |
480 |
"FeatureNotLicensed" |
You are not licensed to use the document tagging feature. |
580 |
"InternalError" |
The server encountered an internal error when handling the request. |
Example
Request
This POST begins document tagging:
POST pas_base_url/v2/viewingSessions/XYZ.../documentTaggers
Content-Type: application/json
{
"minSecondsAvailable": 600
}
NOTE: See the Base URL for PAS topic for more information.
Response
HTTP/1.1 200 OK
Content-Type: application/json
{
"processId": "pR5X6nPDgMwat6cxlmn0Q3",
"state": "processing",
"percentComplete": 0,
"expirationDateTime": "2024-12-17T20:38:39.796Z"
}
GET /v2/documentTaggers/{processId}
Gets tags for the document.
This URL is designed to give you the document tags when they become available.
Request
URL Parameters
Parameter | Description |
---|---|
{processId} |
The processId which identifies the document tagger. |
Successful Response
Response Body
JSON with the available document tags.
tags
(Array of strings) Always present. String containing the document tags. If no tags are available, this array will be empty.
Error Responses
Status Code | JSON errorCode |
Description |
---|---|---|
404 |
- | No document tagger with the provided {processId} could be found. |
400 |
"MissingInput" |
Can occur when clustering is enabled and an Accusoft-Affinity-Token request header was not provided. |
480 |
"InvalidInput" |
An invalid input value was used. See errorDetails in the response body. |
480 |
"ResourceNotUsable" |
Can occur when the document tagger is in a state of "error" . |
580 |
"InternalError" |
The server encountered an internal error when handling the request. |
Example
Here is an example request and response illustrating how you would acquire the tags from the document tagger.
You would GET like so:
GET pas_base_url/v2/documentTaggers/pR5X6nPDgMwat6cxlmn0Q3
NOTE: See the Base URL for PAS topic for more information.
HTTP/1.1 200 OK
Content-Type: application/json
{
"tags": ["Achieving Cloud Security", "Cloud-Hosted World", "Commercial Cloud Storage", "Encryption Keys", "Security Failures"]
}