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:

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.

 

POST /smartUpdate

This operation updates attributes and contents of an existing revision or creates a new document.

  • If the given query results in exactly one revision, this revision is updated.

  • If the given query is empty or results in no revision, a new document is created.

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).

Table 350: Document management services overview

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)).