Services overview
In the table below, the header columns indicate to which service type (SOAP or REST) the description applies. There are cases for each combination (description is valid only for SOAP, only for REST or for both).
The overview below is only meant to summarize the most essential operations. For further details see the web service references and the tutorials:
-
REST Integration Service reference – [WS IS REST]
-
Tutorial – Java client for REST web service [Tutorial REST Java Client]
-
Tutorial – Multipart requests for REST web service [Tutorial REST Multipart Requests]
-
Deprecated: SOAP Integration Service [WS IS] (rather use REST instead)1
SOAP Service |
REST Service |
Use Case |
---|---|---|
ImaDocumentService |
|
Create |
createDocument |
POST /documents |
|
This operation creates a new document with the given initial revision. A revision definition (which is required as input parameter) consists of attributes and content with possible references to binary attachments. The Integration Service supports a variety of content checks depending on the combination of supplied content parameters (see chapter Library functionality). The Integration Service will perform an attribute type check if attributes are supplied. |
||
createMultipleDocuments |
POST /documentLists |
|
This operation creates multiple documents each with an initial revision within a single transaction. In comparison to multiple calls of the operation “createDocument” this operation is optimized for performance by reducing commit frequency and the number of open connections and parallel requests to the Integration Service. It is used by FIS and appropriate for any kind of mass import scenarios. If at least one of the documents fails to be created, none of the revisions will be stored in the archive. This error behavior is opposed to the ‘batch operations’ (see corresponding section beneath). |
||
|
POST /smartUpdate |
|
|
This operation can also create a document. See the description in the versioning service section: POST /smartUpdate |
|
|
|
Retrieve |
getContent |
GET /revisions/{revisionUuid}/contents/{contentKey} |
|
This operation retrieves a certain content object from a revision identified by the revision ID and content key. |
||
|
GET /documents/{documentUuid} |
|
This operation returns a document object based on a document ID. |
||
getLatestRevision |
GET /documents/{documentUuid}/revisions/latest |
|
This operation retrieves the latest revision of a document identified by its document ID. Every document has exactly one latest |
||
getRevision |
GET /revisions/{revisionUuid} |
|
This operation returns a certain revision identified by its revision ID. The result includes all binary objects contained in the revision. |
||
|
|
Delete and restore |
deleteDocument |
DELETE /documents/{documentUuid} |
|
This operation deletes a document, which can be restored if the recycle bin is enabled (also see Logical deletion (recycle bin)). |
||
eraseDocument |
DELETE /documents/{documentUuid} |
|
|
In case of REST use the parameter “erase”. |
|
This operation irreversibly erases a document with all its revisions. |
||
restoreDocument |
POST /documents/{documentUuid}/restore |
|
This operation restores a document from the recycle bin. |
||
deleteRevision |
DELETE /revisions/{revisionUuid} |
|
This operation deletes a revision from a document. |
||
|
DELETE /revisions/{revisionUuid}/contents/{contentKey} |
|
|
This operation deletes content in the revision of a document. |
|
ImaVersioningService |
|
Update |
cancelDocumentCheckout |
POST /documents/{documentUuid}/cancelcheckout |
|
This operation cancels a checkout operation for a document and removes the current working copy. |
||
|
POST /revisions/{revisionUuid}/cancelcheckout |
|
This operation cancels a checkout operation for a revision and removes the current working copy. |
||
checkinRevision |
POST /revisions/{revisionUuid}/checkin |
|
This operation turns the working copy revision into a regular and permanent revision which becomes the new latest revision. The exact behavior can be controlled with a parameter that decides whether to replace the checked out revision (so the former revision gets lost) or whether to create a new revision (so the former revision is kept in the document history). |
||
checkoutLatestRevision |
POST /documents/{documentUuid}/revisions/latest/checkout |
|
This operation locks the document and creates a working copy of the document's latest revision for editing. |
||
checkoutRevision |
POST /revisions/{revisionUuid}/checkout |
|
This operation locks the revision's document and creates a working copy of the specified revision for editing. The revision does not need to be the latest revision of its document. |
||
createContent |
|
|
This operation adds a new content object to a working copy revision. The new content object must have a content key that is not already used in the working copy revision. |
||
deleteContent |
|
|
This operation removes a content object from a working copy revision. |
||
updateAttributes |
POST /revisions/{revisionUuid}/attributes/update |
|
This operation modifies the metadata set of the working copy revision. The provided attribute values replace the attribute values for the corresponding attributes in the working copy revision. Only the attributes provided with a non-empty value will alter the working copy. Unmentioned attributes also remain untouched. |
||
updateContent |
PUT /revisions/{revisionUuid}/contents/{contentKey} |
|
This operation replaces an existing content object in a working copy revision. |
||
updateMetadata |
PUT /revisions/{revisionUuid}/attributes |
|
This operation replaces the set of metadata values of a working copy revision with a new one. |
||
|
POST /documentLists/update |
|
This operation modifies attributes of multiple documents identified by UUIDs in a single transaction. |
||
|
POST /documents/{documentUuid}/revisions/latest/attributes/update |
|
This operation modifies attributes of a document identified by a UUID. |
||
|
||
This operation updates attributes and contents of an existing revision or creates a new document.
|
||
ImaBatchService |
|
Batch operations |
Helpers for batch or bulk operations e.g. used by FIS [SM FIS]. Also see topic Batch operations. |
||
cancelBatch |
|
|
This operation cancels an open batch. It deletes all provisional documents associated with the batch ID from the system. |
||
closeBatch |
|
|
This operation closes an open batch. It turns all provisional documents associated with the batch ID into regular documents. |
||
registerBlob |
POST /blobs |
|
This operation creates a new BLOB. |
||
unregisterBlob |
DELETE /blobs/{blobUuid} |
|
This operation deletes an existing BLOB. |
||
ImaSearchService |
|
Search |
query |
|
|
This service contains operations to search efficiently using structured queries. This operation executes a query to search for documents, revisions or other entities of the Integration Service. A query must be formulated based on RAQL (see chapter Query support). |
||
Any update operation requires a checkout / update / check-in cycle.
A distinction is drawn between the delete and the erase operation. With an enabled recycle bin, the delete operation moves a document to the recycle bin from where it can be restored, whereas the erase operation irreversibly removes a document (also see topic Logical deletion (recycle bin)).