Overview

AtomPub Binding
KomXwork Backend https://partner.digitalfabrix.de/komxwork_balvi

Connected

Required: 24.2.872.0

Current:

KomX Identity Endpoint https://partner.digitalfabrix.de/komxwork_balvi/identity

Usage

You have to use a CMIS client to use this application. An example for such a client is the CMIS Workbench.

You should use an OAuth 2 Bearer token.

If your client does not support OAuth 2, you can still use client_id and client_secret with basic auth.

Search

Search currently revolves around the basic concept of chained AND based equal, substring and date (range) filtering of properties.

Example:

SELECT * FROM komx:folder where cmis:name = '1111' and cmis:objectId = 'komx:folder-1635' and cmis:lastModificationDate >= '2022-01-18T13:31:44' and cmis:lastModificationDate < '2024-01-18T13:31:44'

SELECT cmis:name, cmis:lastModificationDate FROM komx:document where cmis:lastModificationDate >= '2022-01-18T13:31:44' order by cmis:lastModificationDate asc

SELECT * FROM komx:document WHERE IN_FOLDER('komx:project-2347') and cmis:name='abc.txt'

SELECT * FROM komx:project WHERE IN_TREE('komx:folder-1') and cmis:name='abc'

The search functionality is based on komXwork. The comparison operators <, <=, >=, and > are only supported for Timestamp, Detail-Timestamp, and Detail-Number properties. We do not yet support JOIN, OR, or the <> (not equal) operator. Additionally, each query is required to include a WHERE clause.

If the index server is enabled, the search results are limited. The index server processes requests asynchronously, meaning that creating or updating an object and immediately searching for it will not work. It takes some time until the indexing process is completed.

MIME type

The MIME type is automatically determined, based on the file extension and cannot be changed.

Bindings

We generally support several bindings:
AtomPub
WS (SOAP)
Browser

However, WS (SOAP) and Browser should only be used for testing purposes.

The authentication is done via OAuth or alternatively through Basic Auth, but in that case, it is OAuth-like, using client-id and client-secret.

Methods

The following methods are supported:

GetRepositoryInfo
GetTypeChildren
GetTypeDescendants
GetTypeDefinition
GetDescendants
GetFolderTree
GetContentStream
SetContentStream(create a new version)
GetObject
GetChildren
CreateFolder
CreateDocument
GetLatestDocumentVersion

Documents

All Documents are versionable. Therefore, the VersioningState can only be MAJOR or MINOR. Using NONE is not allowed and will result in an error.

Detailfields

Detailfields can only be of type string, datetime, or decimal.