Quick-Archive API Reference

Documentation of the complete Quick-Archive API.

The first part describes the authorization method that needs to be used to communicate with this API.

Then some other requests are specified that do not use GraphQL.

And finally all the GraphQL queries, mutations and types are defined which form the biggest part of the API.

Contact

AB-Tools GmbH

info@quick-archive.com

API Endpoints
# GraphQL Request:
https://api.quick-archive.com/query
# Document Upload:
https://api.quick-archive.com/upload
# Document Download:
https://api.quick-archive.com/download
# Admin Methods:
https://api.quick-archive.com/admin
# Document Share Link:
https://download.quick-archive.com

Authorization

This API requires authorization to use.

To be able to use this API you must have obtained following credentials:

  • API_KEY: An API key which will be transferred in plain text during each API request.
  • API_SECRET: An API secret used to sign each API request. This needs to be kept strictly confidential.

Additionally, many API methods require an authenticated user which is mentioned as a note on corresponding methods accordingly. In that case following additional parameters need to be known as well:

  • CUSTOMER_ID: The Quick-Archive customer ID the user is part of.
  • USER_LOGIN_NAME: The login name of the user that should be authenticated against the API.
  • USER_PASSWORD_SHA1: The SHA1 hash of the password of the user that should be authenticated against the API.

All these constants will be used in the following explanations.

Signing the Request

As part of the request signing process two HTTP headers will be added to the request:

  • Authorization: Contains the information about the API signature and, when needed, the user authentication. The composition of this header will be discussed further down in detail.
  • X-QA-Date: A custom header that contains the timestamp in UTC time when the request is sent in the format YYYYMMDD[T]HHmmss[Z], e. g. 20211113T173840Z. The value of this header will be referenced in the following explanations as the variable RequestDate.
Authorization Header

Depending on if the API methods requires an authenticated user there are two flavors of the Authorization header:

  • Without authenticated user:
    QA-HMAC-SHA256 API_KEY/ApiSignature
  • With authenticated user:
    QA-HMAC-SHA256 API_KEY/ApiSignature/CUSTOMER_ID/USER_LOGIN_NAME/UserPasswordSignature

The calculation of the two variables ApiSignature and UserPasswordSignature is explained in the following in pseudo code.

Calculating API Signature

First, we calculate a hash of the API secret:

ApiSecretHash = HmacSha256( ToUtf8( RequestDate ), ToUtf8( "QA" + API_SECRET ) )

Now we can calculate our signing key:

SigningKey = HmacSha256( ToUtf8( "QA-QUERY" ), ApiSecretHash )

We will use a hash of the whole request body for signing:

ContentHash = ToUpperCase( ToHex( Sha256( RequestBody ) ) )

Now we can compose the string to sign:

StringToSign = "QA-HMAC-SHA256" + RequestDate + RequestMethod + RequestPathWithQuery + ContentHash

The RequestMethod is the HTTP method (either GET or POST for this API) and the RequestPathWithQuery is the full query string starting with the / and including all query parameters.

Finally, we can calculate the API signature as following:

ApiSignature = ToUpperCase( ToHex( HmacSha256( ToUtf8( StringToSign ), ToUtf8( SigningKey ) ) ) )
Calculating User Password Signature

For the API methods that require an authenticated user the user password signature is calculated as following:

UserPasswordSignature = ToUpperCase( ToHex( HmacSha256( ToUtf8( RequestDate ), ToUtf8( "QA" + USER_PASSWORD_SHA1 ) ) ) )

Other Requests

Most part of this API uses GraphQL, but there are some other API requests which are documented in the following.

Note: Different API endpoints need to be used for each of these - see list of API endpoints above.

Document Upload

A document can be uploaded using a HTTP POST request with the document binary content being the request body to following path:

/upload?dbId=DbId&documentRevisionId=DocumentRevisionId&fileName=FileName&created=Created&lastChanged=LastChanged

URL parameters:

  • DbId: The ID of the database.
  • DocumentRevisionId: The ID of the previously created (by createDocument GraphQL request) document revision.
  • FileName: The URL-encoded file name of the document uploaded.
  • Created (optional): The timestamp in UTC time when the document was created in the format YYYYMMDD[T]HHmmss[Z], e. g. 20211113T173840Z. If omitted current time will be used.
  • LastChanged (optional): The timestamp in UTC time when the document was last changed in same format as Created. If omitted current time will be used.

Note: Requires authenticated user.

Document Download

A document can be downloaded using a HTTP GET request to following path:

/download?dbId=DbId&documentId=DocumentId&documentRevisionId=DocumentRevisionId

URL parameters:

  • DbId: The ID of the database.
  • DocumentId (optional): The ID of the document to download the latest document revision from.
  • DocumentRevisionId (optional): The ID of the document revision to download.

Note: Requires authenticated user. Either DocumentId or DocumentRevisionId (never both) must be provided.

After a document share link has been created (by createShare GraphQL request) the corresponding document can be downloaded using a HTTP GET request to following path:

/CustomerId/DbId/ShareId/share/FileName

URL parameters:

  • CustomerId: The ID of the customer.
  • DbId: The ID of the database.
  • ShareId: The ID of the document share.
  • FileName: The URL-encoded file name of the document.

Note: Information about document share links composition is provided for information only as the links are provided ready-to-use by the GraphQL API. No API authorization required to use as document share links are freely usable once created.

Admin Methods

Admin methods of the API can be called using a HTTP GET request to following path:

/admin?method=Method

Supported values for URL parameter Method:

  • clear-cache: Clears the server-side database cache.

Note: Requires global admin API key.

Queries

findDocuments

Description

Finds documents.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • SEARCH_QUERY_TOO_SHORT: The search query is too short.

Note: Requires authenticated user. Currently only returns the first 10 documents found.

Response

Returns [Document]

Arguments
Name Description
dbId - ID! The id of the database.
searchQuery - String! The search query (at least 3 characters).
searchOptions - [SearchOptionKind!]! The search option flags.
onlyBelowFolderId - Guid If this folder ID is provided, search will only be performed below and including this folder.

Example

Query
query findDocuments(
  $dbId: ID!,
  $searchQuery: String!,
  $searchOptions: [SearchOptionKind!]!,
  $onlyBelowFolderId: Guid
) {
  findDocuments(
    dbId: $dbId,
    searchQuery: $searchQuery,
    searchOptions: $searchOptions,
    onlyBelowFolderId: $onlyBelowFolderId
  ) {
    id
    name
    color
    created
    lastChanged
    createdUser {
      ...UserFragment
    }
    lastChangedUser {
      ...UserFragment
    }
    parent {
      ...ItemFragment
    }
    parentsPath
    linkedItems {
      ...ItemFragment
    }
    userCanEdit
    userCanDelete
    fileExtension
    ocrUsed
    contentText
    hasContentText
    pageCount
    documentRevisions {
      ...DocumentRevisionFragment
    }
    documentRevisionLatest {
      ...DocumentRevisionFragment
    }
    metaDatas {
      ...MetaDataFragment
    }
    comments {
      ...CommentFragment
    }
    reminders {
      ...ReminderFragment
    }
    shares {
      ...ShareFragment
    }
    keywords {
      ...KeywordFragment
    }
    documentType {
      ...DocumentTypeFragment
    }
    expiration {
      ...ExpirationFragment
    }
  }
}
Variables
{
  "dbId": "af5ee064d87e",
  "searchQuery": "xyz789",
  "searchOptions": ["DOCUMENT_TITLE"],
  "onlyBelowFolderId": "142ada05-4e0f-44c4-bca0-d22b460645fd"
}
Response
{
  "data": {
    "findDocuments": [
      {
        "id": "8d7a84c3-3964-4bbe-a968-af1236736144",
        "name": "xyz789",
        "color": -1693793,
        "created": "2012-10-20T21:50:46",
        "lastChanged": "2021-02-07T16:50:09",
        "createdUser": User,
        "lastChangedUser": User,
        "parent": Item,
        "parentsPath": "abc123/xyz789",
        "linkedItems": [Item],
        "userCanEdit": false,
        "userCanDelete": true,
        "fileExtension": "pdf",
        "ocrUsed": false,
        "contentText": "xyz789",
        "hasContentText": true,
        "pageCount": 30,
        "documentRevisions": [DocumentRevision],
        "documentRevisionLatest": DocumentRevision,
        "metaDatas": [MetaData],
        "comments": [Comment],
        "reminders": [Reminder],
        "shares": [Share],
        "keywords": [Keyword],
        "documentType": DocumentType,
        "expiration": Expiration
      }
    ]
  }
}

getClientStartInfo

Description

Gets client start information.

Response

Returns a ClientStartInfo

Example

Query
query getClientStartInfo {
  getClientStartInfo {
    dbServerHostName
    cloudStorageRegion
  }
}
Response
{
  "data": {
    "getClientStartInfo": {
      "dbServerHostName": "server-host.name",
      "cloudStorageRegion": "eu-north-1"
    }
  }
}

getCurrentUser

Description

Gets authenticated user details.

Note: Requires authenticated user.

Response

Returns a User

Example

Query
query getCurrentUser {
  getCurrentUser {
    id
    loginName
    fullName
    eMail
    description
    admin
    created
    lastLogin
  }
}
Response
{
  "data": {
    "getCurrentUser": {
      "id": "7c6e41cd-d0a1-4945-a278-af70d5b8b040",
      "loginName": "xyz789",
      "fullName": "abc123",
      "eMail": "mail@domain.com",
      "description": "abc123",
      "admin": true,
      "created": "2009-06-15T05:52:02",
      "lastLogin": "2021-06-14T13:39:23"
    }
  }
}

getDb

Description

Get database details.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.

Note: Requires authenticated user.

Response

Returns a Db

Arguments
Name Description
dbId - ID! The id of the database.

Example

Query
query getDb($dbId: ID!) {
  getDb(dbId: $dbId) {
    id
    title
    description
    created
    createdUser {
      ...UserFragment
    }
    userCanEdit
    userCanDelete
  }
}
Variables
{"dbId": "d2c8d5c4edce"}
Response
{
  "data": {
    "getDb": {
      "id": "d2c81b7b8d6a",
      "title": "xyz789",
      "description": "xyz789",
      "created": "2006-10-22T20:06:14",
      "createdUser": User,
      "userCanEdit": true,
      "userCanDelete": false
    }
  }
}

getDbs

Description

Gets all databases the authenticated user has access to.

Note: Requires authenticated user.

Response

Returns [Db]

Example

Query
query getDbs {
  getDbs {
    id
    title
    description
    created
    createdUser {
      ...UserFragment
    }
    userCanEdit
    userCanDelete
  }
}
Response
{
  "data": {
    "getDbs": [
      {
        "id": "d2c81b7b8d6a",
        "title": "abc123",
        "description": "abc123",
        "created": "2006-10-22T20:06:14",
        "createdUser": User,
        "userCanEdit": true,
        "userCanDelete": false
      }
    ]
  }
}

getDocument

Description

Gets document details.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • DOCUMENT_NOT_FOUND: The document with the specified ID could not be found.
  • DOCUMENT_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to read the document.

Note: Requires authenticated user.

Response

Returns a Document

Arguments
Name Description
dbId - ID! The id of the database.
documentId - Guid! The id of the document.

Example

Query
query getDocument(
  $dbId: ID!,
  $documentId: Guid!
) {
  getDocument(
    dbId: $dbId,
    documentId: $documentId
  ) {
    id
    name
    color
    created
    lastChanged
    createdUser {
      ...UserFragment
    }
    lastChangedUser {
      ...UserFragment
    }
    parent {
      ...ItemFragment
    }
    parentsPath
    linkedItems {
      ...ItemFragment
    }
    userCanEdit
    userCanDelete
    fileExtension
    ocrUsed
    contentText
    hasContentText
    pageCount
    documentRevisions {
      ...DocumentRevisionFragment
    }
    documentRevisionLatest {
      ...DocumentRevisionFragment
    }
    metaDatas {
      ...MetaDataFragment
    }
    comments {
      ...CommentFragment
    }
    reminders {
      ...ReminderFragment
    }
    shares {
      ...ShareFragment
    }
    keywords {
      ...KeywordFragment
    }
    documentType {
      ...DocumentTypeFragment
    }
    expiration {
      ...ExpirationFragment
    }
  }
}
Variables
{"dbId": "7d1323ea71bb", "documentId": "390cc1f3-7030-4d33-8748-c1529d82c7c7"}
Response
{
  "data": {
    "getDocument": {
      "id": "8d7a84c3-3964-4bbe-a968-af1236736144",
      "name": "abc123",
      "color": -1693793,
      "created": "2012-10-20T21:50:46",
      "lastChanged": "2021-02-07T16:50:09",
      "createdUser": User,
      "lastChangedUser": User,
      "parent": Item,
      "parentsPath": "abc123/xyz789",
      "linkedItems": [Item],
      "userCanEdit": true,
      "userCanDelete": false,
      "fileExtension": "pdf",
      "ocrUsed": false,
      "contentText": "abc123",
      "hasContentText": false,
      "pageCount": 30,
      "documentRevisions": [DocumentRevision],
      "documentRevisionLatest": DocumentRevision,
      "metaDatas": [MetaData],
      "comments": [Comment],
      "reminders": [Reminder],
      "shares": [Share],
      "keywords": [Keyword],
      "documentType": DocumentType,
      "expiration": Expiration
    }
  }
}

getDocumentType

Description

Gets document type details.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • DOCUMENT_TYPE_NOT_FOUND: The document type with the specified ID could not be found.

Note: Requires authenticated user.

Response

Returns a DocumentType

Arguments
Name Description
dbId - ID! The id of the database.
documentTypeId - Guid! The id of the document type.

Example

Query
query getDocumentType(
  $dbId: ID!,
  $documentTypeId: Guid!
) {
  getDocumentType(
    dbId: $dbId,
    documentTypeId: $documentTypeId
  ) {
    id
    name
    metaFields {
      ...MetaFieldFragment
    }
    expirationTemplate {
      ...ExpirationTemplateFragment
    }
    documents {
      ...DocumentFragment
    }
    folders {
      ...FolderFragment
    }
  }
}
Variables
{
  "dbId": "aa500ef46525",
  "documentTypeId": "20ce870d-b61a-41b6-8e80-df3677b14aaf"
}
Response
{
  "data": {
    "getDocumentType": {
      "id": "6f1caccb-b91d-4cef-9ca0-41efcd9455fa",
      "name": "abc123",
      "metaFields": [MetaField],
      "expirationTemplate": ExpirationTemplate,
      "documents": [Document],
      "folders": [Folder]
    }
  }
}

getDocumentTypes

Description

Gets document types.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.

Note: Requires authenticated user.

Response

Returns [DocumentType]

Arguments
Name Description
dbId - ID! The id of the database.

Example

Query
query getDocumentTypes($dbId: ID!) {
  getDocumentTypes(dbId: $dbId) {
    id
    name
    metaFields {
      ...MetaFieldFragment
    }
    expirationTemplate {
      ...ExpirationTemplateFragment
    }
    documents {
      ...DocumentFragment
    }
    folders {
      ...FolderFragment
    }
  }
}
Variables
{"dbId": "0e82d92dbd2a"}
Response
{
  "data": {
    "getDocumentTypes": [
      {
        "id": "6f1caccb-b91d-4cef-9ca0-41efcd9455fa",
        "name": "abc123",
        "metaFields": [MetaField],
        "expirationTemplate": ExpirationTemplate,
        "documents": [Document],
        "folders": [Folder]
      }
    ]
  }
}

getDocuments

Description

Gets documents.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.

Note: Requires authenticated user.

Response

Returns [Document]

Arguments
Name Description
dbId - ID! The id of the database.
parentId - Guid The id of the parent item. If omitted documents below the document root are returned.

Example

Query
query getDocuments(
  $dbId: ID!,
  $parentId: Guid
) {
  getDocuments(
    dbId: $dbId,
    parentId: $parentId
  ) {
    id
    name
    color
    created
    lastChanged
    createdUser {
      ...UserFragment
    }
    lastChangedUser {
      ...UserFragment
    }
    parent {
      ...ItemFragment
    }
    parentsPath
    linkedItems {
      ...ItemFragment
    }
    userCanEdit
    userCanDelete
    fileExtension
    ocrUsed
    contentText
    hasContentText
    pageCount
    documentRevisions {
      ...DocumentRevisionFragment
    }
    documentRevisionLatest {
      ...DocumentRevisionFragment
    }
    metaDatas {
      ...MetaDataFragment
    }
    comments {
      ...CommentFragment
    }
    reminders {
      ...ReminderFragment
    }
    shares {
      ...ShareFragment
    }
    keywords {
      ...KeywordFragment
    }
    documentType {
      ...DocumentTypeFragment
    }
    expiration {
      ...ExpirationFragment
    }
  }
}
Variables
{"dbId": "08567b688e54", "parentId": "8bec8f6c-a2a9-485c-a2dc-b2fbc9c4c52a"}
Response
{
  "data": {
    "getDocuments": [
      {
        "id": "8d7a84c3-3964-4bbe-a968-af1236736144",
        "name": "xyz789",
        "color": -1693793,
        "created": "2012-10-20T21:50:46",
        "lastChanged": "2021-02-07T16:50:09",
        "createdUser": User,
        "lastChangedUser": User,
        "parent": Item,
        "parentsPath": "abc123/xyz789",
        "linkedItems": [Item],
        "userCanEdit": false,
        "userCanDelete": true,
        "fileExtension": "pdf",
        "ocrUsed": false,
        "contentText": "xyz789",
        "hasContentText": false,
        "pageCount": 30,
        "documentRevisions": [DocumentRevision],
        "documentRevisionLatest": DocumentRevision,
        "metaDatas": [MetaData],
        "comments": [Comment],
        "reminders": [Reminder],
        "shares": [Share],
        "keywords": [Keyword],
        "documentType": DocumentType,
        "expiration": Expiration
      }
    ]
  }
}

getFolder

Description

Gets folder details.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • FOLDER_NOT_FOUND: The folder with the specified ID could not be found.
  • FOLDER_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to read the folder.

Note: Requires authenticated user.

Response

Returns a Folder

Arguments
Name Description
dbId - ID! The id of the database.
folderId - Guid! The id of the folder.

Example

Query
query getFolder(
  $dbId: ID!,
  $folderId: Guid!
) {
  getFolder(
    dbId: $dbId,
    folderId: $folderId
  ) {
    id
    name
    color
    created
    lastChanged
    createdUser {
      ...UserFragment
    }
    lastChangedUser {
      ...UserFragment
    }
    parent {
      ...ItemFragment
    }
    parentsPath
    linkedItems {
      ...ItemFragment
    }
    userCanEdit
    userCanDelete
    description
  }
}
Variables
{"dbId": "225eba1e64ac", "folderId": "50a659d1-f52c-4167-8499-03ef67eb31b4"}
Response
{
  "data": {
    "getFolder": {
      "id": "baa47655-ab04-4a0c-8ab7-7f25dcec827c",
      "name": "abc123",
      "color": -11846459,
      "created": "2021-11-06T23:04:37",
      "lastChanged": "2012-08-30T04:31:12",
      "createdUser": User,
      "lastChangedUser": User,
      "parent": Item,
      "parentsPath": "xyz789/xyz789",
      "linkedItems": [Item],
      "userCanEdit": true,
      "userCanDelete": true,
      "description": "abc123"
    }
  }
}

getFolders

Description

Gets folders.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.

Note: Requires authenticated user.

Response

Returns [Folder]

Arguments
Name Description
dbId - ID! The id of the database.
parentId - Guid The id of the parent item. If omitted folders below the document root are returned.

Example

Query
query getFolders(
  $dbId: ID!,
  $parentId: Guid
) {
  getFolders(
    dbId: $dbId,
    parentId: $parentId
  ) {
    id
    name
    color
    created
    lastChanged
    createdUser {
      ...UserFragment
    }
    lastChangedUser {
      ...UserFragment
    }
    parent {
      ...ItemFragment
    }
    parentsPath
    linkedItems {
      ...ItemFragment
    }
    userCanEdit
    userCanDelete
    description
  }
}
Variables
{"dbId": "e9270ff73f33", "parentId": "1c652371-b75b-4c2b-a42e-58fec9c0a6b3"}
Response
{
  "data": {
    "getFolders": [
      {
        "id": "baa47655-ab04-4a0c-8ab7-7f25dcec827c",
        "name": "xyz789",
        "color": -11846459,
        "created": "2021-11-06T23:04:37",
        "lastChanged": "2012-08-30T04:31:12",
        "createdUser": User,
        "lastChangedUser": User,
        "parent": Item,
        "parentsPath": "xyz789/xyz789",
        "linkedItems": [Item],
        "userCanEdit": true,
        "userCanDelete": false,
        "description": "xyz789"
      }
    ]
  }
}

getItem

Description

Gets item details.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • ITEM_NOT_FOUND: The item with the specified ID could not be found.
  • ITEM_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to read the item.

Note: Requires authenticated user.

Response

Returns an Item

Arguments
Name Description
dbId - ID! The id of the database.
itemId - Guid! The id of the item.

Example

Query
query getItem(
  $dbId: ID!,
  $itemId: Guid!
) {
  getItem(
    dbId: $dbId,
    itemId: $itemId
  ) {
    id
    name
    color
    created
    lastChanged
    createdUser {
      ...UserFragment
    }
    lastChangedUser {
      ...UserFragment
    }
    parent {
      ...ItemFragment
    }
    parentsPath
    linkedItems {
      ...ItemFragment
    }
    userCanEdit
    userCanDelete
  }
}
Variables
{"dbId": "a39491c46357", "itemId": "5d70a7de-73bf-412b-939e-b60ed2101b79"}
Response
{
  "data": {
    "getItem": {
      "id": "06247524-fb3f-427a-8fe3-87c2ecaa1c22",
      "name": "xyz789",
      "color": -12515575,
      "created": "2018-07-27T11:03:35",
      "lastChanged": "2020-11-07T01:22:47",
      "createdUser": User,
      "lastChangedUser": User,
      "parent": Item,
      "parentsPath": "abc123/abc123",
      "linkedItems": [Item],
      "userCanEdit": false,
      "userCanDelete": true
    }
  }
}

getItems

Description

Gets items.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.

Note: Requires authenticated user.

Response

Returns [Item]

Arguments
Name Description
dbId - ID! The id of the database.
parentId - Guid The id of the parent item. If omitted items below the document root are returned.

Example

Query
query getItems(
  $dbId: ID!,
  $parentId: Guid
) {
  getItems(
    dbId: $dbId,
    parentId: $parentId
  ) {
    id
    name
    color
    created
    lastChanged
    createdUser {
      ...UserFragment
    }
    lastChangedUser {
      ...UserFragment
    }
    parent {
      ...ItemFragment
    }
    parentsPath
    linkedItems {
      ...ItemFragment
    }
    userCanEdit
    userCanDelete
  }
}
Variables
{"dbId": "9fe18ba8b954", "parentId": "91d47d5b-3d0e-497a-b8c8-1b25b1fb47c2"}
Response
{
  "data": {
    "getItems": [
      {
        "id": "06247524-fb3f-427a-8fe3-87c2ecaa1c22",
        "name": "xyz789",
        "color": -12515575,
        "created": "2018-07-27T11:03:35",
        "lastChanged": "2020-11-07T01:22:47",
        "createdUser": User,
        "lastChangedUser": User,
        "parent": Item,
        "parentsPath": "abc123/abc123",
        "linkedItems": [Item],
        "userCanEdit": true,
        "userCanDelete": false
      }
    ]
  }
}

getKeyword

Description

Gets keyword details.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • KEYWORD_NOT_FOUND: The keyword with the specified ID could not be found.

Note: Requires authenticated user.

Response

Returns a Keyword

Arguments
Name Description
dbId - ID! The id of the database.
keywordId - Guid! The id of the keyword.

Example

Query
query getKeyword(
  $dbId: ID!,
  $keywordId: Guid!
) {
  getKeyword(
    dbId: $dbId,
    keywordId: $keywordId
  ) {
    id
    name
    documents {
      ...DocumentFragment
    }
  }
}
Variables
{"dbId": "68343b9530d9", "keywordId": "1fbee099-8e39-4e10-b6dc-6773103a5fac"}
Response
{
  "data": {
    "getKeyword": {
      "id": "cf37acfe-e679-40f8-a4b0-2f298e511d63",
      "name": "abc123",
      "documents": [Document]
    }
  }
}

getKeywords

Description

Gets all keywords.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.

Note: Requires authenticated user.

Response

Returns [Keyword]

Arguments
Name Description
dbId - ID! The id of the database.
startsWith - String If provided only keywords starting with this text are returned, otherwise all.

Example

Query
query getKeywords(
  $dbId: ID!,
  $startsWith: String
) {
  getKeywords(
    dbId: $dbId,
    startsWith: $startsWith
  ) {
    id
    name
    documents {
      ...DocumentFragment
    }
  }
}
Variables
{
  "dbId": "9737cba3a264",
  "startsWith": "xyz789"
}
Response
{
  "data": {
    "getKeywords": [
      {
        "id": "cf37acfe-e679-40f8-a4b0-2f298e511d63",
        "name": "xyz789",
        "documents": [Document]
      }
    ]
  }
}

getMetaField

Description

Gets meta field details.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • META_FIELD_NOT_FOUND: The meta field with the specified ID could not be found.

Note: Requires authenticated user.

Response

Returns a MetaField

Arguments
Name Description
dbId - ID! The id of the database.
metaFieldId - Guid! The id of the meta field.

Example

Query
query getMetaField(
  $dbId: ID!,
  $metaFieldId: Guid!
) {
  getMetaField(
    dbId: $dbId,
    metaFieldId: $metaFieldId
  ) {
    id
    name
    kind
    mask
    lineCount
    selectionOptions
    created
    lastChanged
    createdUser {
      ...UserFragment
    }
    lastChangedUser {
      ...UserFragment
    }
    metaDatas {
      ...MetaDataFragment
    }
    documentTypes {
      ...DocumentTypeFragment
    }
    expirationTemplates {
      ...ExpirationTemplateFragment
    }
  }
}
Variables
{"dbId": "f3c0694fca44", "metaFieldId": "fe0be772-99d2-44ba-9a3a-7d51b299c6b2"}
Response
{
  "data": {
    "getMetaField": {
      "id": "d03b3b42-aab6-4ccb-bdb6-2327073e76db",
      "name": "abc123",
      "kind": "TEXT_SHORT",
      "mask": "abc123",
      "lineCount": 3,
      "selectionOptions": ["abc123"],
      "created": "2003-09-06T12:50:53",
      "lastChanged": "2020-04-21T23:43:06",
      "createdUser": User,
      "lastChangedUser": User,
      "metaDatas": [MetaData],
      "documentTypes": [DocumentType],
      "expirationTemplates": [ExpirationTemplate]
    }
  }
}

getMetaFieldValues

Description

Get all possible values of a SelectionList meta field.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • META_FIELD_NOT_FOUND: The meta field with the specified ID could not be found.
  • INVALID_META_FIELD_KIND: Invalid meta field kind. It has to be a SelectionList.

Note: Requires authenticated user.

Response

Returns [String]

Arguments
Name Description
dbId - ID! The id of the database.
metaFieldId - Guid! The id of the meta field to get meta field values from. It has to be a SelectionList meta field.

Example

Query
query getMetaFieldValues(
  $dbId: ID!,
  $metaFieldId: Guid!
) {
  getMetaFieldValues(
    dbId: $dbId,
    metaFieldId: $metaFieldId
  )
}
Variables
{"dbId": "4050950f6098", "metaFieldId": "c325cc82-94d9-4a15-9665-5f11b6b7e79a"}
Response
{"data": {"getMetaFieldValues": ["abc123"]}}

getMetaFields

Description

Gets meta fields.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • DOCUMENT_TYPE_NOT_FOUND: The document type with the specified ID could not be found.

Note: Requires authenticated user.

Response

Returns [MetaField]

Arguments
Name Description
dbId - ID! The id of the database.
documentTypeId - Guid The id of the document type to get meta fields from. If omitted all meta fields are returned.

Example

Query
query getMetaFields(
  $dbId: ID!,
  $documentTypeId: Guid
) {
  getMetaFields(
    dbId: $dbId,
    documentTypeId: $documentTypeId
  ) {
    id
    name
    kind
    mask
    lineCount
    selectionOptions
    created
    lastChanged
    createdUser {
      ...UserFragment
    }
    lastChangedUser {
      ...UserFragment
    }
    metaDatas {
      ...MetaDataFragment
    }
    documentTypes {
      ...DocumentTypeFragment
    }
    expirationTemplates {
      ...ExpirationTemplateFragment
    }
  }
}
Variables
{
  "dbId": "ab442d1db9f6",
  "documentTypeId": "5d2e4e3b-bb07-46b6-97e6-38f36c7c7221"
}
Response
{
  "data": {
    "getMetaFields": [
      {
        "id": "d03b3b42-aab6-4ccb-bdb6-2327073e76db",
        "name": "abc123",
        "kind": "TEXT_SHORT",
        "mask": "xyz789",
        "lineCount": 3,
        "selectionOptions": ["xyz789"],
        "created": "2003-09-06T12:50:53",
        "lastChanged": "2020-04-21T23:43:06",
        "createdUser": User,
        "lastChangedUser": User,
        "metaDatas": [MetaData],
        "documentTypes": [DocumentType],
        "expirationTemplates": [ExpirationTemplate]
      }
    ]
  }
}

getWindowsClientUpdates

Description

Gets all Windows client updates in specified language.

Response

Returns a ClientUpdates

Arguments
Name Description
languageCode - String! The LCID string of the requested language (currently only en-US supported).
version - String Changes starting from this Version should be returned. If Omitted changes from all versions are returned.
betaVersion - Boolean Indicates if starting version is a beta version.

Example

Query
query getWindowsClientUpdates(
  $languageCode: String!,
  $version: String,
  $betaVersion: Boolean
) {
  getWindowsClientUpdates(
    languageCode: $languageCode,
    version: $version,
    betaVersion: $betaVersion
  ) {
    updates {
      ...ClientUpdateFragment
    }
    downloadUrl
    downloadUrlBeta
  }
}
Variables
{"languageCode": "en-US", "version": "1.8.9", "betaVersion": false}
Response
{
  "data": {
    "getWindowsClientUpdates": {
      "updates": [ClientUpdate],
      "downloadUrl": "https://www.quick-archive.com/download/Quick-Archive.exe",
      "downloadUrlBeta": "https://www.quick-archive.com/download/Quick-Archive-Beta.exe"
    }
  }
}

Mutations

addDocumentKeyword

Description

Adds a keyword to a document.
Returns true on success, false otherwise.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • DOCUMENT_NOT_FOUND: The document with the specified ID could not be found.
  • DOCUMENT_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to edit the document.
  • KEYWORD_NOT_FOUND: The keyword with the specified ID could not be found.
  • KEYWORD_ALREADY_ASSIGNED: The keyword with the specified ID is already assigned to the document.

Note: Requires authenticated user.

Response

Returns a Boolean

Arguments
Name Description
dbId - ID! The id of the database.
documentId - Guid! The id of the document.
keywordId - Guid! The id of the keyboard to be added.

Example

Query
mutation addDocumentKeyword(
  $dbId: ID!,
  $documentId: Guid!,
  $keywordId: Guid!
) {
  addDocumentKeyword(
    dbId: $dbId,
    documentId: $documentId,
    keywordId: $keywordId
  )
}
Variables
{
  "dbId": "bb3af18a21e3",
  "documentId": "e9e59e9e-dfc7-40c8-92e4-4f202b5540e2",
  "keywordId": "a38f5cb3-249a-45f7-a9d9-ccdd0e2e6dae"
}
Response
{"data": {"addDocumentKeyword": true}}

addDocumentTypeMetaField

Description

Adds a meta field to a document type.
Returns true on success, false otherwise.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • ADMIN_REQUIRED: The user is not an admin, but this is required to add a meta field to a document type.
  • DOCUMENT_TYPE_NOT_FOUND: The document type with the specified ID could not be found.
  • META_FIELD_NOT_FOUND: The meta field with the specified ID could not be found.
  • META_FIELD_ALREADY_ASSIGNED: The meta field with the specified ID is already assigned to the document type.

Note: Requires authenticated user. Requires user admin rights.

Response

Returns a Boolean

Arguments
Name Description
dbId - ID! The id of the database.
documentTypeId - Guid! The id of the document type.
metaFieldId - Guid! The id of the meta field to be added.

Example

Query
mutation addDocumentTypeMetaField(
  $dbId: ID!,
  $documentTypeId: Guid!,
  $metaFieldId: Guid!
) {
  addDocumentTypeMetaField(
    dbId: $dbId,
    documentTypeId: $documentTypeId,
    metaFieldId: $metaFieldId
  )
}
Variables
{
  "dbId": "4d04bb8502c4",
  "documentTypeId": "d237488b-b79b-411b-a076-71af76a60952",
  "metaFieldId": "e587e419-37bd-4d86-a50c-0790bbd972e4"
}
Response
{"data": {"addDocumentTypeMetaField": true}}

createClientVersion

Description

Creates a new client version.
Returns true on success, false otherwise.

Possible execution exceptions:

  • INVALID_API_KEY: The API key used is not allowed for this API method.

Note: Requires global admin API key.

Response

Returns a Boolean

Arguments
Name Description
clientVersion - ClientVersionInput! The data of the new client version.

Example

Query
mutation createClientVersion($clientVersion: ClientVersionInput!) {
  createClientVersion(clientVersion: $clientVersion)
}
Variables
{"clientVersion": ClientVersionInput}
Response
{"data": {"createClientVersion": true}}

createComment

Description

Creates a new comment.
Returns the created comment on success, otherwise null.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • DOCUMENT_NOT_FOUND: The document with the specified ID could not be found.
  • DOCUMENT_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to edit the document.

Note: Requires authenticated user.

Response

Returns a Comment

Arguments
Name Description
dbId - ID! The id of the database.
documentId - Guid! The id of the document the comment is added to.
content - String! The content of the new comment.

Example

Query
mutation createComment(
  $dbId: ID!,
  $documentId: Guid!,
  $content: String!
) {
  createComment(
    dbId: $dbId,
    documentId: $documentId,
    content: $content
  ) {
    id
    content
    created
    lastChanged
    createdUser {
      ...UserFragment
    }
    document {
      ...DocumentFragment
    }
  }
}
Variables
{
  "dbId": "4cf9cf7c0cf8",
  "documentId": "3af0177c-ec33-46ed-bb0f-5d79733c41fc",
  "content": "abc123"
}
Response
{
  "data": {
    "createComment": {
      "id": "410d8054-72e0-422a-a6a6-5d027effd76f",
      "content": "abc123",
      "created": "2016-09-30T12:48:04",
      "lastChanged": "2010-06-14T04:30:05",
      "createdUser": User,
      "document": Document
    }
  }
}

createDocument

Description

Creates a new document.
Returns the created document revision on success, otherwise null.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • PARENT_FOLDER_NOT_FOUND: The parent folder with the specified ID could not be found.
  • PARENT_FOLDER_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to edit the parent folder.

Note: Requires authenticated user.

Response

Returns a DocumentRevision

Arguments
Name Description
dbId - ID! The id of the database.
parentId - Guid! The id of the parent folder the new document should be placed below.
fileName - String! The file name of the new document.
ocrUsed - Boolean Defines whether OCR has been used to detect the document contentText.
contentText - String The content text of the new document.
pageCount - Int The page count of the new document.

Example

Query
mutation createDocument(
  $dbId: ID!,
  $parentId: Guid!,
  $fileName: String!,
  $ocrUsed: Boolean,
  $contentText: String,
  $pageCount: Int
) {
  createDocument(
    dbId: $dbId,
    parentId: $parentId,
    fileName: $fileName,
    ocrUsed: $ocrUsed,
    contentText: $contentText,
    pageCount: $pageCount
  ) {
    id
    fileSize
    fileHash
    originalFileCreated
    originalFileLastChanged
    originalFileSize
    created
    createdUser {
      ...UserFragment
    }
    hasAnnotation
    document {
      ...DocumentFragment
    }
  }
}
Variables
{
  "dbId": "277a8dbe146d",
  "parentId": "b7fc0474-34fe-448c-9fdb-c30762db1428",
  "fileName": "abc123",
  "ocrUsed": false,
  "contentText": "xyz789",
  "pageCount": 38
}
Response
{
  "data": {
    "createDocument": {
      "id": "f4c00174-da11-46f7-80b9-127021867357",
      "fileSize": 9138529,
      "fileHash": "C68A4C6D6454AFFFAFDFBE4DDA883ED7C4244AF86A545712B0F4F1B2A3BE8A79",
      "originalFileCreated": "2005-06-24T07:46:41",
      "originalFileLastChanged": "2002-08-29T20:36:05",
      "originalFileSize": 10411862,
      "created": "2020-09-08T03:37:56",
      "createdUser": User,
      "hasAnnotation": false,
      "document": Document
    }
  }
}

createDocumentType

Description

Creates a new document type.
Returns the created document type on success, otherwise null.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • ADMIN_REQUIRED: The user is not an admin, but this is required to create a document type.

Note: Requires authenticated user. Requires user admin rights.

Response

Returns a DocumentType

Arguments
Name Description
dbId - ID! The id of the database.
name - String! The name of the new document type.

Example

Query
mutation createDocumentType(
  $dbId: ID!,
  $name: String!
) {
  createDocumentType(
    dbId: $dbId,
    name: $name
  ) {
    id
    name
    metaFields {
      ...MetaFieldFragment
    }
    expirationTemplate {
      ...ExpirationTemplateFragment
    }
    documents {
      ...DocumentFragment
    }
    folders {
      ...FolderFragment
    }
  }
}
Variables
{"dbId": "39529811dcf9", "name": "abc123"}
Response
{
  "data": {
    "createDocumentType": {
      "id": "6f1caccb-b91d-4cef-9ca0-41efcd9455fa",
      "name": "abc123",
      "metaFields": [MetaField],
      "expirationTemplate": ExpirationTemplate,
      "documents": [Document],
      "folders": [Folder]
    }
  }
}

createFolder

Description

Creates a new folder.
Returns the created folder on success, otherwise null.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • PARENT_FOLDER_NOT_FOUND: The parent folder with the specified ID could not be found.
  • PARENT_FOLDER_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to edit the parent folder.

Note: Requires authenticated user.

Response

Returns a Folder

Arguments
Name Description
dbId - ID! The id of the database.
parentId - Guid! The id of the parent folder the new folder should be placed below.
name - String! The name of the new folder.
description - String! The description of the new folder.

Example

Query
mutation createFolder(
  $dbId: ID!,
  $parentId: Guid!,
  $name: String!,
  $description: String!
) {
  createFolder(
    dbId: $dbId,
    parentId: $parentId,
    name: $name,
    description: $description
  ) {
    id
    name
    color
    created
    lastChanged
    createdUser {
      ...UserFragment
    }
    lastChangedUser {
      ...UserFragment
    }
    parent {
      ...ItemFragment
    }
    parentsPath
    linkedItems {
      ...ItemFragment
    }
    userCanEdit
    userCanDelete
    description
  }
}
Variables
{
  "dbId": "a330adcfd14a",
  "parentId": "ecb0116f-deef-477a-b7d1-c578bcb879dc",
  "name": "xyz789",
  "description": "xyz789"
}
Response
{
  "data": {
    "createFolder": {
      "id": "baa47655-ab04-4a0c-8ab7-7f25dcec827c",
      "name": "abc123",
      "color": -11846459,
      "created": "2021-11-06T23:04:37",
      "lastChanged": "2012-08-30T04:31:12",
      "createdUser": User,
      "lastChangedUser": User,
      "parent": Item,
      "parentsPath": "xyz789/xyz789",
      "linkedItems": [Item],
      "userCanEdit": true,
      "userCanDelete": false,
      "description": "abc123"
    }
  }
}

createKeyword

Description

Creates a new keyword.
Returns the created keyword on success, otherwise null.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • KEYWORD_ALREADY_EXISTS: A keyword with the same name already exists.

Note: Requires authenticated user.

Response

Returns a Keyword

Arguments
Name Description
dbId - ID! The id of the database.
name - String! The name of the new keyword.

Example

Query
mutation createKeyword(
  $dbId: ID!,
  $name: String!
) {
  createKeyword(
    dbId: $dbId,
    name: $name
  ) {
    id
    name
    documents {
      ...DocumentFragment
    }
  }
}
Variables
{"dbId": "c104290fd780", "name": "xyz789"}
Response
{
  "data": {
    "createKeyword": {
      "id": "cf37acfe-e679-40f8-a4b0-2f298e511d63",
      "name": "abc123",
      "documents": [Document]
    }
  }
}

createMetaField

Description

Creates a new meta field.
Returns the created meta field on success, otherwise null.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • ADMIN_REQUIRED: The user is not an admin, but this is required to create a meta field.
  • MASK_CANNOT_BE_USED: The mask can only be used for TextShort meta fields.
  • LINE_COUNT_REQUIRED: A line count is required for TextLong meta fields.
  • LINE_COUNT_CANNOT_BE_USED: A line count can only be used for TextLong meta fields.
  • LINE_COUNT_INVALID: The line count is invalid (must be between 2 and 9 lines).

Note: Requires authenticated user. Requires user admin rights.

Response

Returns a MetaField

Arguments
Name Description
dbId - ID! The id of the database.
name - String! The name of the new meta field.
kind - MetaFieldKind! The kind of the new meta field.
mask - String The text mask of the new meta field (optional for TextShort meta fields only).
lineCount - Short The line count of the new meta field (between 2 and 9 lines, required for TextLong meta fields).

Example

Query
mutation createMetaField(
  $dbId: ID!,
  $name: String!,
  $kind: MetaFieldKind!,
  $mask: String,
  $lineCount: Short
) {
  createMetaField(
    dbId: $dbId,
    name: $name,
    kind: $kind,
    mask: $mask,
    lineCount: $lineCount
  ) {
    id
    name
    kind
    mask
    lineCount
    selectionOptions
    created
    lastChanged
    createdUser {
      ...UserFragment
    }
    lastChangedUser {
      ...UserFragment
    }
    metaDatas {
      ...MetaDataFragment
    }
    documentTypes {
      ...DocumentTypeFragment
    }
    expirationTemplates {
      ...ExpirationTemplateFragment
    }
  }
}
Variables
{
  "dbId": "eb0223239058",
  "name": "xyz789",
  "kind": "TEXT_SHORT",
  "mask": "abc123",
  "lineCount": 7
}
Response
{
  "data": {
    "createMetaField": {
      "id": "d03b3b42-aab6-4ccb-bdb6-2327073e76db",
      "name": "abc123",
      "kind": "TEXT_SHORT",
      "mask": "xyz789",
      "lineCount": 3,
      "selectionOptions": ["xyz789"],
      "created": "2003-09-06T12:50:53",
      "lastChanged": "2020-04-21T23:43:06",
      "createdUser": User,
      "lastChangedUser": User,
      "metaDatas": [MetaData],
      "documentTypes": [DocumentType],
      "expirationTemplates": [ExpirationTemplate]
    }
  }
}

createShare

Description

Creates a new share.
Returns the created share on success, otherwise null.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • DOCUMENT_NOT_FOUND: The document with the specified ID could not be found.
  • DOCUMENT_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to edit the document.
  • SHARE_ALREADY_EXISTS: A share for the same document and user already exists.

Note: Requires authenticated user.

Response

Returns a Share

Arguments
Name Description
dbId - ID! The id of the database.
documentId - Guid! The id of the document.
expire - DateTime The date when the share link expires. Omit if it should not expire.

Example

Query
mutation createShare(
  $dbId: ID!,
  $documentId: Guid!,
  $expire: DateTime
) {
  createShare(
    dbId: $dbId,
    documentId: $documentId,
    expire: $expire
  ) {
    id
    expire
    created
    createdUser {
      ...UserFragment
    }
    document {
      ...DocumentFragment
    }
    link
  }
}
Variables
{
  "dbId": "858b608d7555",
  "documentId": "41c22dca-c694-4b44-ac4f-d2807281caa4",
  "expire": "2008-11-09T04:05:19"
}
Response
{
  "data": {
    "createShare": {
      "id": "014b6d53-70b2-4052-a7ac-60b5715a131c",
      "expire": "2012-08-03T07:55:37",
      "created": "2020-09-04T20:26:15",
      "createdUser": User,
      "document": Document,
      "link": "https://download.quick-archive.com/cb260b43e359/0839a29b354d/37cac4d5-d776-4629-aeeb-833a6688f316/share/xyz789.pdf"
    }
  }
}

deleteComment

Description

Deletes a comment.
Returns the deleted comment on success, otherwise null.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • COMMENT_NOT_FOUND: The comment with the specified ID could not be found.
  • ADMIN_REQUIRED: The user is not an admin, but this is required to delete a comment that was not created by the same user.

Note: Requires authenticated user. Requires user admin rights to delete a comment of a different user.

Response

Returns a Comment

Arguments
Name Description
dbId - ID! The id of the database.
commentId - Guid! The id of the comment that should be deleted.

Example

Query
mutation deleteComment(
  $dbId: ID!,
  $commentId: Guid!
) {
  deleteComment(
    dbId: $dbId,
    commentId: $commentId
  ) {
    id
    content
    created
    lastChanged
    createdUser {
      ...UserFragment
    }
    document {
      ...DocumentFragment
    }
  }
}
Variables
{"dbId": "6913304cd5a6", "commentId": "3695b4df-aff0-4af3-ac72-8f76a8bf4f0d"}
Response
{
  "data": {
    "deleteComment": {
      "id": "410d8054-72e0-422a-a6a6-5d027effd76f",
      "content": "xyz789",
      "created": "2016-09-30T12:48:04",
      "lastChanged": "2010-06-14T04:30:05",
      "createdUser": User,
      "document": Document
    }
  }
}

deleteDocumentType

Description

Deletes a document type.
Returns the deleted document type on success, otherwise null.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • ADMIN_REQUIRED: The user is not an admin, but this is required to rename a document type.
  • DOCUMENT_TYPE_NOT_FOUND: The document type with the specified ID could not be found.

Note: Requires authenticated user. Requires user admin rights.
Warning: The document type is deleted from all associated documents including all of its meta data.

Response

Returns a DocumentType

Arguments
Name Description
dbId - ID! The id of the database.
documentTypeId - Guid! The id of the document type that should be deleted.

Example

Query
mutation deleteDocumentType(
  $dbId: ID!,
  $documentTypeId: Guid!
) {
  deleteDocumentType(
    dbId: $dbId,
    documentTypeId: $documentTypeId
  ) {
    id
    name
    metaFields {
      ...MetaFieldFragment
    }
    expirationTemplate {
      ...ExpirationTemplateFragment
    }
    documents {
      ...DocumentFragment
    }
    folders {
      ...FolderFragment
    }
  }
}
Variables
{
  "dbId": "adaef464acf3",
  "documentTypeId": "2920174f-d8d0-46b5-ba9b-8a8cafd021c6"
}
Response
{
  "data": {
    "deleteDocumentType": {
      "id": "6f1caccb-b91d-4cef-9ca0-41efcd9455fa",
      "name": "abc123",
      "metaFields": [MetaField],
      "expirationTemplate": ExpirationTemplate,
      "documents": [Document],
      "folders": [Folder]
    }
  }
}

deleteItem

Description

Deletes an item.
Returns the deleted item on success, otherwise null.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • ITEM_NOT_FOUND: The item with the specified ID could not be found.
  • ITEM_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to delete the item.

Note: Requires authenticated user.

Response

Returns an Item

Arguments
Name Description
dbId - ID! The id of the database.
itemId - Guid! The id of the item to be deleted.
forceDelete - Boolean Determines if the item is permanently deleted if it is outside of the recycle bin (otherwise it is moved to the recycle bin in this case). In case the item is below the recycle bin already, it is always deleted permanently.

Example

Query
mutation deleteItem(
  $dbId: ID!,
  $itemId: Guid!,
  $forceDelete: Boolean
) {
  deleteItem(
    dbId: $dbId,
    itemId: $itemId,
    forceDelete: $forceDelete
  ) {
    id
    name
    color
    created
    lastChanged
    createdUser {
      ...UserFragment
    }
    lastChangedUser {
      ...UserFragment
    }
    parent {
      ...ItemFragment
    }
    parentsPath
    linkedItems {
      ...ItemFragment
    }
    userCanEdit
    userCanDelete
  }
}
Variables
{
  "dbId": "6951ce0e5a74",
  "itemId": "70867c10-f2e4-4901-a6e2-176178132f78",
  "forceDelete": true
}
Response
{
  "data": {
    "deleteItem": {
      "id": "06247524-fb3f-427a-8fe3-87c2ecaa1c22",
      "name": "abc123",
      "color": -12515575,
      "created": "2018-07-27T11:03:35",
      "lastChanged": "2020-11-07T01:22:47",
      "createdUser": User,
      "lastChangedUser": User,
      "parent": Item,
      "parentsPath": "abc123/abc123",
      "linkedItems": [Item],
      "userCanEdit": false,
      "userCanDelete": true
    }
  }
}

deleteKeyword

Description

Deletes a keyword.
Returns the deleted keyword on success, otherwise null.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • ADMIN_REQUIRED: The user is not an admin, but this is required to delete a keyword.
  • KEYWORD_NOT_FOUND: The keyword with the specified ID could not be found.

Note: Requires authenticated user. Requires user admin rights.
Warning: The keyword is deleted from all associated documents.

Response

Returns a Keyword

Arguments
Name Description
dbId - ID! The id of the database.
keywordId - Guid! The id of the keyword that should be deleted.

Example

Query
mutation deleteKeyword(
  $dbId: ID!,
  $keywordId: Guid!
) {
  deleteKeyword(
    dbId: $dbId,
    keywordId: $keywordId
  ) {
    id
    name
    documents {
      ...DocumentFragment
    }
  }
}
Variables
{"dbId": "5af0e6787894", "keywordId": "f0a04d81-47c3-4279-bb44-70624d0d1a5a"}
Response
{
  "data": {
    "deleteKeyword": {
      "id": "cf37acfe-e679-40f8-a4b0-2f298e511d63",
      "name": "xyz789",
      "documents": [Document]
    }
  }
}

deleteMetaField

Description

Deletes a meta field.
Returns the deleted meta field on success, otherwise null.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • ADMIN_REQUIRED: The user is not an admin, but this is required to create a meta field.
  • META_FIELD_NOT_FOUND: The meta field with the specified ID could not be found.

Note: Requires authenticated user. Requires user admin rights.
Warning: The meta field is deleted from all associated document types and documents including all of its meta data.

Response

Returns a MetaField

Arguments
Name Description
dbId - ID! The id of the database.
metaFieldId - Guid! The id of the meta field that should be deleted.

Example

Query
mutation deleteMetaField(
  $dbId: ID!,
  $metaFieldId: Guid!
) {
  deleteMetaField(
    dbId: $dbId,
    metaFieldId: $metaFieldId
  ) {
    id
    name
    kind
    mask
    lineCount
    selectionOptions
    created
    lastChanged
    createdUser {
      ...UserFragment
    }
    lastChangedUser {
      ...UserFragment
    }
    metaDatas {
      ...MetaDataFragment
    }
    documentTypes {
      ...DocumentTypeFragment
    }
    expirationTemplates {
      ...ExpirationTemplateFragment
    }
  }
}
Variables
{"dbId": "a6f6df7b406f", "metaFieldId": "988ecdf5-a1ff-42dd-bb15-262f211873e0"}
Response
{
  "data": {
    "deleteMetaField": {
      "id": "d03b3b42-aab6-4ccb-bdb6-2327073e76db",
      "name": "abc123",
      "kind": "TEXT_SHORT",
      "mask": "abc123",
      "lineCount": 3,
      "selectionOptions": ["xyz789"],
      "created": "2003-09-06T12:50:53",
      "lastChanged": "2020-04-21T23:43:06",
      "createdUser": User,
      "lastChangedUser": User,
      "metaDatas": [MetaData],
      "documentTypes": [DocumentType],
      "expirationTemplates": [ExpirationTemplate]
    }
  }
}

deleteShare

Description

Deletes a share.
Returns the deleted share on success, otherwise null.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • SHARE_NOT_FOUND: The share with the specified ID could not be found.
  • ADMIN_REQUIRED: The user is not an admin, but this is required to delete a share that was not created by the same user.

Note: Requires authenticated user. Requires user admin rights to delete a share of a different user.

Response

Returns a Share

Arguments
Name Description
dbId - ID! The id of the database.
shareId - Guid! The id of the share.

Example

Query
mutation deleteShare(
  $dbId: ID!,
  $shareId: Guid!
) {
  deleteShare(
    dbId: $dbId,
    shareId: $shareId
  ) {
    id
    expire
    created
    createdUser {
      ...UserFragment
    }
    document {
      ...DocumentFragment
    }
    link
  }
}
Variables
{"dbId": "c0010f4e27fa", "shareId": "713b1cb6-5dda-4c8f-88c7-2c58ae673578"}
Response
{
  "data": {
    "deleteShare": {
      "id": "014b6d53-70b2-4052-a7ac-60b5715a131c",
      "expire": "2012-08-03T07:55:37",
      "created": "2020-09-04T20:26:15",
      "createdUser": User,
      "document": Document,
      "link": "https://download.quick-archive.com/cb260b43e359/0839a29b354d/37cac4d5-d776-4629-aeeb-833a6688f316/share/xyz789.pdf"
    }
  }
}

editComment

Description

Edits a comment.
Returns the edited comment on success, otherwise null.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • COMMENT_NOT_FOUND: The comment with the specified ID could not be found.
  • ADMIN_REQUIRED: The user is not an admin, but this is required to edit a comment that was not created by the same user.

Note: Requires authenticated user. Requires user admin rights to edit a comment of a different user.

Response

Returns a Comment

Arguments
Name Description
dbId - ID! The id of the database.
commentId - Guid! The id of the comment that should be changed.
newContent - String! The new content of the comment.

Example

Query
mutation editComment(
  $dbId: ID!,
  $commentId: Guid!,
  $newContent: String!
) {
  editComment(
    dbId: $dbId,
    commentId: $commentId,
    newContent: $newContent
  ) {
    id
    content
    created
    lastChanged
    createdUser {
      ...UserFragment
    }
    document {
      ...DocumentFragment
    }
  }
}
Variables
{
  "dbId": "39bbdec0a035",
  "commentId": "e4ece64a-4f76-48cf-9b95-9604cef63b9d",
  "newContent": "abc123"
}
Response
{
  "data": {
    "editComment": {
      "id": "410d8054-72e0-422a-a6a6-5d027effd76f",
      "content": "abc123",
      "created": "2016-09-30T12:48:04",
      "lastChanged": "2010-06-14T04:30:05",
      "createdUser": User,
      "document": Document
    }
  }
}

editFolder

Description

Edits a folder.
Returns the edited folder on success, otherwise null.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • FOLDER_NOT_FOUND: The folder with the specified ID could not be found.
  • FOLDER_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to edit the folder.

Note: Requires authenticated user.

Response

Returns a Folder

Arguments
Name Description
dbId - ID! The id of the database.
folderId - Guid! The id of the folder.
newDescription - String! The new description of the folder.

Example

Query
mutation editFolder(
  $dbId: ID!,
  $folderId: Guid!,
  $newDescription: String!
) {
  editFolder(
    dbId: $dbId,
    folderId: $folderId,
    newDescription: $newDescription
  ) {
    id
    name
    color
    created
    lastChanged
    createdUser {
      ...UserFragment
    }
    lastChangedUser {
      ...UserFragment
    }
    parent {
      ...ItemFragment
    }
    parentsPath
    linkedItems {
      ...ItemFragment
    }
    userCanEdit
    userCanDelete
    description
  }
}
Variables
{
  "dbId": "b76fa64a9f71",
  "folderId": "afba5d11-45cf-4f5c-9f7b-116d70aff306",
  "newDescription": "abc123"
}
Response
{
  "data": {
    "editFolder": {
      "id": "baa47655-ab04-4a0c-8ab7-7f25dcec827c",
      "name": "xyz789",
      "color": -11846459,
      "created": "2021-11-06T23:04:37",
      "lastChanged": "2012-08-30T04:31:12",
      "createdUser": User,
      "lastChangedUser": User,
      "parent": Item,
      "parentsPath": "xyz789/xyz789",
      "linkedItems": [Item],
      "userCanEdit": true,
      "userCanDelete": false,
      "description": "xyz789"
    }
  }
}

editShare

Description

Edits a share.
Returns the edited share on success, otherwise null.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • SHARE_NOT_FOUND: The share with the specified ID could not be found.
  • ADMIN_REQUIRED: The user is not an admin, but this is required to edit a share that was not created by the same user.

Note: Requires authenticated user. Requires user admin rights to edit a share of a different user.

Response

Returns a Share

Arguments
Name Description
dbId - ID! The id of the database.
shareId - Guid! The id of the share.
newExpire - DateTime The date when the share link expires. Omit if it should not expire.

Example

Query
mutation editShare(
  $dbId: ID!,
  $shareId: Guid!,
  $newExpire: DateTime
) {
  editShare(
    dbId: $dbId,
    shareId: $shareId,
    newExpire: $newExpire
  ) {
    id
    expire
    created
    createdUser {
      ...UserFragment
    }
    document {
      ...DocumentFragment
    }
    link
  }
}
Variables
{
  "dbId": "0c517637222a",
  "shareId": "c94ed1d3-845c-4754-88a4-ce7bfb8ee629",
  "newExpire": "2008-01-21T08:58:47"
}
Response
{
  "data": {
    "editShare": {
      "id": "014b6d53-70b2-4052-a7ac-60b5715a131c",
      "expire": "2012-08-03T07:55:37",
      "created": "2020-09-04T20:26:15",
      "createdUser": User,
      "document": Document,
      "link": "https://download.quick-archive.com/cb260b43e359/0839a29b354d/37cac4d5-d776-4629-aeeb-833a6688f316/share/xyz789.pdf"
    }
  }
}

linkDocuments

Description

Links two documents.
Returns true on success, false otherwise.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • DOCUMENTS_IDENTICAL: The document 1 and 2 is the same. Documents cannot be linked with itself.
  • DOCUMENT1_NOT_FOUND: The document 1 with the specified ID could not be found.
  • DOCUMENT2_NOT_FOUND: The document 2 with the specified ID could not be found.
  • DOCUMENT1_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to edit the document 1.
  • DOCUMENT2_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to edit the document 2.
  • ALREADY_LINKED: Document 1 and document 2 are already linked.

Note: Requires authenticated user.

Response

Returns a Boolean

Arguments
Name Description
dbId - ID! The id of the database.
document1Id - Guid! The id of first document.
document2Id - Guid! The id of second document.

Example

Query
mutation linkDocuments(
  $dbId: ID!,
  $document1Id: Guid!,
  $document2Id: Guid!
) {
  linkDocuments(
    dbId: $dbId,
    document1Id: $document1Id,
    document2Id: $document2Id
  )
}
Variables
{
  "dbId": "ab701bfbe18c",
  "document1Id": "93b127b2-fa48-45a7-92b9-6fb9f4d6566e",
  "document2Id": "eef814c0-9a41-4d91-9204-7471845af3a7"
}
Response
{"data": {"linkDocuments": false}}

moveItem

Description

Moves an item.
Returns the moved item on success, otherwise null.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • ITEM_NOT_FOUND: The item with the specified ID could not be found.
  • ITEM_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to edit the item.
  • NEW_PARENT_FOLDER_NOT_FOUND: The new parent folder with the specified ID could not be found.
  • NEW_PARENT_FOLDER_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to edit the new parent folder.

Note: Requires authenticated user.

Response

Returns an Item

Arguments
Name Description
dbId - ID! The id of the database.
itemId - Guid! The id of the item to be moved.
newParentId - Guid! The id of the new parent folder of the item.

Example

Query
mutation moveItem(
  $dbId: ID!,
  $itemId: Guid!,
  $newParentId: Guid!
) {
  moveItem(
    dbId: $dbId,
    itemId: $itemId,
    newParentId: $newParentId
  ) {
    id
    name
    color
    created
    lastChanged
    createdUser {
      ...UserFragment
    }
    lastChangedUser {
      ...UserFragment
    }
    parent {
      ...ItemFragment
    }
    parentsPath
    linkedItems {
      ...ItemFragment
    }
    userCanEdit
    userCanDelete
  }
}
Variables
{
  "dbId": "3de7c86e67ea",
  "itemId": "c8dfd927-8b3a-4efa-ad0f-dae244c721cf",
  "newParentId": "cb375a81-f730-45ec-a6a4-4c65aa41b978"
}
Response
{
  "data": {
    "moveItem": {
      "id": "06247524-fb3f-427a-8fe3-87c2ecaa1c22",
      "name": "xyz789",
      "color": -12515575,
      "created": "2018-07-27T11:03:35",
      "lastChanged": "2020-11-07T01:22:47",
      "createdUser": User,
      "lastChangedUser": User,
      "parent": Item,
      "parentsPath": "abc123/abc123",
      "linkedItems": [Item],
      "userCanEdit": true,
      "userCanDelete": true
    }
  }
}

removeDocumentKeyword

Description

Removes a keyword from a document.
Returns true on success, false otherwise.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • DOCUMENT_NOT_FOUND: The document with the specified ID could not be found.
  • DOCUMENT_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to edit the document.
  • KEYWORD_NOT_ASSIGNED: The keyword with the specified ID is not assigned to the document.

Note: Requires authenticated user.

Response

Returns a Boolean

Arguments
Name Description
dbId - ID! The id of the database.
documentId - Guid! The id of the document.
keywordId - Guid! The id of the keyboard to be removed.

Example

Query
mutation removeDocumentKeyword(
  $dbId: ID!,
  $documentId: Guid!,
  $keywordId: Guid!
) {
  removeDocumentKeyword(
    dbId: $dbId,
    documentId: $documentId,
    keywordId: $keywordId
  )
}
Variables
{
  "dbId": "b09bf34b6ada",
  "documentId": "6d6d8586-3b3d-4496-9748-d9d25429c546",
  "keywordId": "b8f8103f-b3f4-4826-ab5b-b7fb75f74505"
}
Response
{"data": {"removeDocumentKeyword": false}}

removeDocumentTypeMetaField

Description

Removes a meta field from a document type.
Returns true on success, false otherwise.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • ADMIN_REQUIRED: The user is not an admin, but this is required to add a meta field to a document type.
  • DOCUMENT_TYPE_NOT_FOUND: The document type with the specified ID could not be found.
  • META_FIELD_NOT_ASSIGNED: The meta field with the specified ID is not assigned to the document type.

Note: Requires authenticated user. Requires user admin rights.
Warning: The meta field is removed from all associated documents including all of its meta data.

Response

Returns a Boolean

Arguments
Name Description
dbId - ID! The id of the database.
documentTypeId - Guid! The id of the document type.
metaFieldId - Guid! The id of the meta field to be removed.

Example

Query
mutation removeDocumentTypeMetaField(
  $dbId: ID!,
  $documentTypeId: Guid!,
  $metaFieldId: Guid!
) {
  removeDocumentTypeMetaField(
    dbId: $dbId,
    documentTypeId: $documentTypeId,
    metaFieldId: $metaFieldId
  )
}
Variables
{
  "dbId": "96eacfad7196",
  "documentTypeId": "a7994e44-2245-4732-9fa1-c30f62b49c04",
  "metaFieldId": "cc43cf32-33a2-4be7-80ed-9fc358161859"
}
Response
{"data": {"removeDocumentTypeMetaField": true}}

renameDocumentType

Description

Renames a document type.
Returns the renamed document type on success, otherwise null.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • ADMIN_REQUIRED: The user is not an admin, but this is required to rename a document type.
  • DOCUMENT_TYPE_NOT_FOUND: The document type with the specified ID could not be found.

Note: Requires authenticated user. Requires user admin rights.
Warning: The document type is renamed in all associated documents.

Response

Returns a DocumentType

Arguments
Name Description
dbId - ID! The id of the database.
documentTypeId - Guid! The id of the document type that should be renamed.
newName - String! The new name of the document type.

Example

Query
mutation renameDocumentType(
  $dbId: ID!,
  $documentTypeId: Guid!,
  $newName: String!
) {
  renameDocumentType(
    dbId: $dbId,
    documentTypeId: $documentTypeId,
    newName: $newName
  ) {
    id
    name
    metaFields {
      ...MetaFieldFragment
    }
    expirationTemplate {
      ...ExpirationTemplateFragment
    }
    documents {
      ...DocumentFragment
    }
    folders {
      ...FolderFragment
    }
  }
}
Variables
{
  "dbId": "3c9c65529aa9",
  "documentTypeId": "4c3bc526-c275-4a44-b613-665bb03709a3",
  "newName": "abc123"
}
Response
{
  "data": {
    "renameDocumentType": {
      "id": "6f1caccb-b91d-4cef-9ca0-41efcd9455fa",
      "name": "xyz789",
      "metaFields": [MetaField],
      "expirationTemplate": ExpirationTemplate,
      "documents": [Document],
      "folders": [Folder]
    }
  }
}

renameItem

Description

Renames an item.
Returns the renamed item on success, otherwise null.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • ITEM_NOT_FOUND: The item with the specified ID could not be found.
  • ITEM_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to edit the item.

Note: Requires authenticated user.

Response

Returns an Item

Arguments
Name Description
dbId - ID! The id of the database.
itemId - Guid! The id of the item to be renamed.
newName - String! The new name of the folder.

Example

Query
mutation renameItem(
  $dbId: ID!,
  $itemId: Guid!,
  $newName: String!
) {
  renameItem(
    dbId: $dbId,
    itemId: $itemId,
    newName: $newName
  ) {
    id
    name
    color
    created
    lastChanged
    createdUser {
      ...UserFragment
    }
    lastChangedUser {
      ...UserFragment
    }
    parent {
      ...ItemFragment
    }
    parentsPath
    linkedItems {
      ...ItemFragment
    }
    userCanEdit
    userCanDelete
  }
}
Variables
{
  "dbId": "3303ba17ca0f",
  "itemId": "c8a0b0a4-a334-4ec7-a8c2-fef81930b33b",
  "newName": "abc123"
}
Response
{
  "data": {
    "renameItem": {
      "id": "06247524-fb3f-427a-8fe3-87c2ecaa1c22",
      "name": "xyz789",
      "color": -12515575,
      "created": "2018-07-27T11:03:35",
      "lastChanged": "2020-11-07T01:22:47",
      "createdUser": User,
      "lastChangedUser": User,
      "parent": Item,
      "parentsPath": "abc123/abc123",
      "linkedItems": [Item],
      "userCanEdit": false,
      "userCanDelete": true
    }
  }
}

renameKeyword

Description

Renames a keyword.
Returns the renamed keyword on success, otherwise null.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • ADMIN_REQUIRED: The user is not an admin, but this is required to rename a keyword.
  • KEYWORD_NOT_FOUND: The keyword with the specified ID could not be found.

Note: Requires authenticated user. Requires user admin rights.
Warning: The keyword is renamed in all associated documents.

Response

Returns a Keyword

Arguments
Name Description
dbId - ID! The id of the database.
keywordId - Guid! The id of the keyword that should be renamed.
newName - String! The new name of the keyword.

Example

Query
mutation renameKeyword(
  $dbId: ID!,
  $keywordId: Guid!,
  $newName: String!
) {
  renameKeyword(
    dbId: $dbId,
    keywordId: $keywordId,
    newName: $newName
  ) {
    id
    name
    documents {
      ...DocumentFragment
    }
  }
}
Variables
{
  "dbId": "0bb47ce6721e",
  "keywordId": "6322079c-39ce-4e3e-a7e0-4676359890bd",
  "newName": "xyz789"
}
Response
{
  "data": {
    "renameKeyword": {
      "id": "cf37acfe-e679-40f8-a4b0-2f298e511d63",
      "name": "xyz789",
      "documents": [Document]
    }
  }
}

renameMetaField

Description

Renames a meta field.
Returns the renamed meta field on success, otherwise null.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • ADMIN_REQUIRED: The user is not an admin, but this is required to create a meta field.
  • META_FIELD_NOT_FOUND: The meta field with the specified ID could not be found.

Note: Requires authenticated user. Requires user admin rights.
Warning: The meta field is renamed in all associated document types and documents.

Response

Returns a MetaField

Arguments
Name Description
dbId - ID! The id of the database.
metaFieldId - Guid! The id of the meta field that should be renamed.
newName - String! The new name of the meta field.

Example

Query
mutation renameMetaField(
  $dbId: ID!,
  $metaFieldId: Guid!,
  $newName: String!
) {
  renameMetaField(
    dbId: $dbId,
    metaFieldId: $metaFieldId,
    newName: $newName
  ) {
    id
    name
    kind
    mask
    lineCount
    selectionOptions
    created
    lastChanged
    createdUser {
      ...UserFragment
    }
    lastChangedUser {
      ...UserFragment
    }
    metaDatas {
      ...MetaDataFragment
    }
    documentTypes {
      ...DocumentTypeFragment
    }
    expirationTemplates {
      ...ExpirationTemplateFragment
    }
  }
}
Variables
{
  "dbId": "249e7fea6da7",
  "metaFieldId": "79c1b059-71bf-453e-ba1e-ff3dd3b187b3",
  "newName": "abc123"
}
Response
{
  "data": {
    "renameMetaField": {
      "id": "d03b3b42-aab6-4ccb-bdb6-2327073e76db",
      "name": "abc123",
      "kind": "TEXT_SHORT",
      "mask": "abc123",
      "lineCount": 3,
      "selectionOptions": ["abc123"],
      "created": "2003-09-06T12:50:53",
      "lastChanged": "2020-04-21T23:43:06",
      "createdUser": User,
      "lastChangedUser": User,
      "metaDatas": [MetaData],
      "documentTypes": [DocumentType],
      "expirationTemplates": [ExpirationTemplate]
    }
  }
}

resetUserPassword

Description

Resets a user password.
Returns true on success, false otherwise.

Possible execution exceptions:

  • NO_LOGIN_NAME_OR_MAIL_ADDRESS: Either login name or e-mail address needs to be provided.
  • USER_NOT_FOUND: The user with the specified ID could not be found.
  • NO_MAIL_ADDRESS: The user has no e-mail address defined, sending password reset e-mail is therefore not possible.

Note: Either login name or e-mail (at least one of both) needs to be provided.

Response

Returns a Boolean

Arguments
Name Description
customerId - ID! The id of the customer.
loginName - String The login name of the user.
eMail - String The e-mail of the user.

Example

Query
mutation resetUserPassword(
  $customerId: ID!,
  $loginName: String,
  $eMail: String
) {
  resetUserPassword(
    customerId: $customerId,
    loginName: $loginName,
    eMail: $eMail
  )
}
Variables
{
  "customerId": "f72f38ec11f2",
  "loginName": "abc123",
  "eMail": "mail@domain.com"
}
Response
{"data": {"resetUserPassword": false}}

signUp

Description

Signs up a new customer.
Returns true on success, false otherwise.

Response

Returns a Boolean

Arguments
Name Description
signUp - SignUpInput! The data of the customer signed up.

Example

Query
mutation signUp($signUp: SignUpInput!) {
  signUp(signUp: $signUp)
}
Variables
{"signUp": SignUpInput}
Response
{"data": {"signUp": true}}

unlinkDocuments

Description

Unlinks two documents.
Returns true on success, false otherwise.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • DOCUMENT1_NOT_FOUND: The document 1 with the specified ID could not be found.
  • DOCUMENT2_NOT_FOUND: The document 2 with the specified ID could not be found.
  • DOCUMENT1_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to edit the document 1.
  • DOCUMENT2_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to edit the document 2.
  • NOT_LINKED: Document 1 and document 2 are not linked at the moment.

Note: Requires authenticated user.

Response

Returns a Boolean

Arguments
Name Description
dbId - ID! The id of the database.
document1Id - Guid! The id of first document.
document2Id - Guid! The id of second document.

Example

Query
mutation unlinkDocuments(
  $dbId: ID!,
  $document1Id: Guid!,
  $document2Id: Guid!
) {
  unlinkDocuments(
    dbId: $dbId,
    document1Id: $document1Id,
    document2Id: $document2Id
  )
}
Variables
{
  "dbId": "e7de444727ca",
  "document1Id": "060b0b76-55c3-4e43-8431-e1c0032f069d",
  "document2Id": "c4612978-918e-4174-b6ab-e539ae9d613a"
}
Response
{"data": {"unlinkDocuments": false}}

updateCurrentUserData

Description

Updates data of authenticated user.
Returns true on success, false otherwise.

Possible execution exceptions:

  • NOTHING_TO_UPDATE: No data was provided to update.
  • NEW_LOGIN_NAME_INVALID: The new login name does not match the validation RegEx.

Note: Requires authenticated user. All arguments optional, only specify what should be updated (at least one argument required).

Response

Returns a Boolean

Arguments
Name Description
loginName - String The new login name of the user. RegEx: ^([a-zA-Z0-9]([\w-]*[a-zA-Z0-9])?){3,}$
fullName - String The new full name of the user.
eMail - String The new e-mail of the user.
passwordHash - String The new password hash (SHA1, upper case) of the user.

Example

Query
mutation updateCurrentUserData(
  $loginName: String,
  $fullName: String,
  $eMail: String,
  $passwordHash: String
) {
  updateCurrentUserData(
    loginName: $loginName,
    fullName: $fullName,
    eMail: $eMail,
    passwordHash: $passwordHash
  )
}
Variables
{
  "loginName": "abc123",
  "fullName": "abc123",
  "eMail": "mail@domain.com",
  "passwordHash": "668D783CC5B33598FEB372DB0DEDA4C5E3013FEF"
}
Response
{"data": {"updateCurrentUserData": false}}

updateDocumentDocumentType

Description

Updates document type of document.
Returns true on success, false otherwise.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • DOCUMENT_NOT_FOUND: The document with the specified ID could not be found.
  • DOCUMENT_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to edit the document.
  • DOCUMENT_TYPE_NOT_FOUND: The document type with the specified ID could not be found.
  • DOCUMENT_TYPE_UNCHANGED: The new document type is the same as the existent one of the document.

Note: Requires authenticated user.
Warning: All existent meta data which refers meta fields not present in the new document type will be deleted.

Response

Returns a Boolean

Arguments
Name Description
dbId - ID! The id of the database.
documentId - Guid! The id of the document.
newDocumentTypeId - Guid! The id of the new document type of the document.

Example

Query
mutation updateDocumentDocumentType(
  $dbId: ID!,
  $documentId: Guid!,
  $newDocumentTypeId: Guid!
) {
  updateDocumentDocumentType(
    dbId: $dbId,
    documentId: $documentId,
    newDocumentTypeId: $newDocumentTypeId
  )
}
Variables
{
  "dbId": "855dd58bf195",
  "documentId": "b594c404-637b-4a3a-a6f2-f57b802add6e",
  "newDocumentTypeId": "c8d347a1-6180-4d92-ac4b-e1b74810bfe0"
}
Response
{"data": {"updateDocumentDocumentType": false}}

updateDocumentMetaData

Description

Updates meta data of document.
Returns true on success, false otherwise.

Possible execution exceptions:

  • DB_NOT_FOUND: The DB with the specified ID could not be found.
  • DB_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to access the DB.
  • DOCUMENT_NOT_FOUND: The document with the specified ID could not be found.
  • DOCUMENT_NOT_ENOUGH_PERMISSIONS: The user does not have enough permissions to edit the document.
  • META_FIELD_NOT_FOUND: The meta field with the specified ID could not be found.
  • INVALID_CONTENT: The content does not fit to the meta field input mask.
  • SELECTED_VALUE_NOT_FOUND: The selected meta field value could not be found.
  • ERROR_PARSING_CONTENT: An error occurred while trying to parse the meta data content.

Note: Requires authenticated user.

Response

Returns a Boolean

Arguments
Name Description
dbId - ID! The id of the database.
documentId - Guid! The id of the document.
metaDatas - [DocumentMetaDataInput] List of meta data elements to update.

Example

Query
mutation updateDocumentMetaData(
  $dbId: ID!,
  $documentId: Guid!,
  $metaDatas: [DocumentMetaDataInput]
) {
  updateDocumentMetaData(
    dbId: $dbId,
    documentId: $documentId,
    metaDatas: $metaDatas
  )
}
Variables
{
  "dbId": "7c4e4454d16b",
  "documentId": "cdefc074-5b91-489a-aac6-197ddfad9e92",
  "metaDatas": [DocumentMetaDataInput]
}
Response
{"data": {"updateDocumentMetaData": false}}

Types

Boolean

ClientChangesInput

Description

Contains information about client changes in the corresponding client version.

Fields
Input Field Description
languageCode - String!

The LCID string of the requested language (currently only en-US supported).

changes - String!

The changes text, one line per change.

Example
{
  "languageCode": "en-US",
  "changes": "xyz789"
}

ClientStartInfo

Description

Contains the information required upon client start.

Fields
Field Name Description
dbServerHostName - String! The host address of the database server.
cloudStorageRegion - String! The region of the cloud storage.
Example
{"dbServerHostName": "server-host.name", "cloudStorageRegion": "eu-north-1"}

ClientUpdate

Description

Contains information about a client update.

Fields
Field Name Description
version - String! The client version.
changes - String! The changes in this version.
releaseDate - DateTime! The release date in this version.
betaVersion - Boolean! Indicates if this version is a beta version.
Example
{
  "version": "3.8.5",
  "changes": "xyz789",
  "releaseDate": "2019-09-08T04:33:09",
  "betaVersion": true
}

ClientUpdates

Description

Contains information about client updates.

Fields
Field Name Description
updates - [ClientUpdate] The list of client updates.
downloadUrl - String! The download URL of the current release version.
downloadUrlBeta - String! The download URL of the latest beta version.
Example
{
  "updates": [ClientUpdate],
  "downloadUrl": "https://www.quick-archive.com/download/Quick-Archive.exe",
  "downloadUrlBeta": "https://www.quick-archive.com/download/Quick-Archive-Beta.exe"
}

ClientVersionInput

Description

Contains information about a client version.

Fields
Input Field Description
major - Int!

The major version number.

minor - Int!

The minor version number.

revision - Int!

The revision number.

releaseDate - DateTime!

The release date of this version.

betaVersion - Boolean!

Determines if this is a beta version.

clientChanges - [ClientChangesInput]

The changes made in this version.

Example
{
  "major": 6,
  "minor": 2,
  "revision": 5,
  "releaseDate": "2011-10-04T05:02:14",
  "betaVersion": false,
  "clientChanges": [ClientChangesInput]
}

Comment

Description

Represents a Comment entity object.

Fields
Field Name Description
id - Guid! The id of the comment.
content - String! The content of the comment.
created - DateTime! The created date of the comment.
lastChanged - DateTime The date when the related comment was last changed.
createdUser - User The user who created the related comment.
document - Document The document this comment is associated to.
Example
{
  "id": "410d8054-72e0-422a-a6a6-5d027effd76f",
  "content": "abc123",
  "created": "2016-09-30T12:48:04",
  "lastChanged": "2010-06-14T04:30:05",
  "createdUser": User,
  "document": Document
}

DateTime

Description

The DateTime scalar type represents a date and time. DateTime expects timestamps to be formatted in accordance with the ISO-8601 standard.

Example
"2003-09-10T05:27:55"

Db

Description

Represents a Db entity object.

Fields
Field Name Description
id - ID The id of the database.
title - String! The title of the database.
description - String The description of the database.
created - DateTime! The created date of the database.
createdUser - User The user who created the database.
userCanEdit - Boolean Defines whether the authenticated user can edit the database.
userCanDelete - Boolean Defines whether the authenticated user can delete the database.
Example
{
  "id": "d2c81b7b8d6a",
  "title": "xyz789",
  "description": "abc123",
  "created": "2006-10-22T20:06:14",
  "createdUser": User,
  "userCanEdit": false,
  "userCanDelete": false
}

Document

Description

Represents a Document entity object.

Fields
Field Name Description
id - Guid! The id of the related document.
name - String The name of the related document.
color - Int The color of the related document as ARGB integer value.
created - DateTime! The created date of the related document.
lastChanged - DateTime! The date when the related document was last changed.
createdUser - User The user who created the related document.
lastChangedUser - User The user who changed the related document the last time.
parent - Item The parent item of the related document.
parentsPath - String The parents as path string.
linkedItems - [Item] The linked items of the related document.
userCanEdit - Boolean Defines whether the authenticated user can edit the document.
userCanDelete - Boolean Defines whether the authenticated user can delete the document.
fileExtension - String The file extension of the document.
ocrUsed - Boolean! Defines whether OCR regonition was used for the document.
contentText - String The content text of the document.
hasContentText - Boolean Returns true if document has content text.
pageCount - Int The page count of the document.
documentRevisions - [DocumentRevision] The document revisions associated with the document.
documentRevisionLatest - DocumentRevision The latest document revision associated with the document.
metaDatas - [MetaData] The meta datas associated with the document.
comments - [Comment] The comments associated with the document.
reminders - [Reminder] The reminders associated with the document.
shares - [Share] The shares associated with the document and created by authenticated user.
keywords - [Keyword] The keywords associated with the document.
documentType - DocumentType The document type associated with the document.
expiration - Expiration The expiration associated with the document.
Example
{
  "id": "8d7a84c3-3964-4bbe-a968-af1236736144",
  "name": "xyz789",
  "color": -1693793,
  "created": "2012-10-20T21:50:46",
  "lastChanged": "2021-02-07T16:50:09",
  "createdUser": User,
  "lastChangedUser": User,
  "parent": Item,
  "parentsPath": "abc123/xyz789",
  "linkedItems": [Item],
  "userCanEdit": false,
  "userCanDelete": false,
  "fileExtension": "pdf",
  "ocrUsed": true,
  "contentText": "abc123",
  "hasContentText": false,
  "pageCount": 30,
  "documentRevisions": [DocumentRevision],
  "documentRevisionLatest": DocumentRevision,
  "metaDatas": [MetaData],
  "comments": [Comment],
  "reminders": [Reminder],
  "shares": [Share],
  "keywords": [Keyword],
  "documentType": DocumentType,
  "expiration": Expiration
}

DocumentMetaDataInput

Description

Meta data of a document.

Fields
Input Field Description
metaFieldId - Guid!

The ID of the related meta field.

content - String

The content of the meta data. If no content is provided existent meta data for the meta field will be deleted.

Example
{
  "metaFieldId": "07175de3-7b78-4513-b465-893380345305",
  "content": "abc123"
}

DocumentRevision

Description

Represents a DocumentRevision entity object.

Fields
Field Name Description
id - Guid! The id of the document revision.
fileSize - Long The file size of the document revision.
fileHash - String The file hash of the document revision.
originalFileCreated - DateTime The created date of the original file of the document revision.
originalFileLastChanged - DateTime The last changed date of the original file of the document revision.
originalFileSize - Long The file size of the original file of the document revision.
created - DateTime! The created date of the document revision.
createdUser - User The user who created the related document revision.
hasAnnotation - Boolean! Defines whether the document revision has annotations.
document - Document The associated document.
Example
{
  "id": "f4c00174-da11-46f7-80b9-127021867357",
  "fileSize": 9138529,
  "fileHash": "C68A4C6D6454AFFFAFDFBE4DDA883ED7C4244AF86A545712B0F4F1B2A3BE8A79",
  "originalFileCreated": "2005-06-24T07:46:41",
  "originalFileLastChanged": "2002-08-29T20:36:05",
  "originalFileSize": 10411862,
  "created": "2020-09-08T03:37:56",
  "createdUser": User,
  "hasAnnotation": false,
  "document": Document
}

DocumentType

Description

Represents a DocumentType entity object.

Fields
Field Name Description
id - Guid! The id of the document type.
name - String! The content of the document type.
metaFields - [MetaField] The meta fields associated with the document type.
expirationTemplate - ExpirationTemplate The expiration template associated with the document type.
documents - [Document] The documents associated with the document type.
folders - [Folder] The folders associated with the document type.
Example
{
  "id": "6f1caccb-b91d-4cef-9ca0-41efcd9455fa",
  "name": "xyz789",
  "metaFields": [MetaField],
  "expirationTemplate": ExpirationTemplate,
  "documents": [Document],
  "folders": [Folder]
}

Expiration

Description

Represents a Expiration entity object.

Fields
Field Name Description
id - Guid! The id of the expiration.
expire - DateTime! The point in time of expiration.
preventChange - Boolean! Defines whether a change is possible before expiration (warning: this cannot be undone).
actionKind - ExpirationActionKind The kind of action to be applied after expiration.
created - DateTime! The created date of the expiration.
createdUser - User The user who created the expiration.
document - Document The document associated with the expiration.
Example
{
  "id": "b5ae0952-0d8e-4ba6-9eb8-8d8b61cf0fa7",
  "expire": "2001-08-16T22:41:00",
  "preventChange": true,
  "actionKind": "NO_ACTION",
  "created": "2011-06-06T10:41:05",
  "createdUser": User,
  "document": Document
}

ExpirationActionKind

Values
Enum Value Description

NO_ACTION

No action performed after expiration.

MOVE_TO_RECYCLE_BIN

Document moved to recycle bin after expiration.

DELETE_PERMANENTLY

Document permanently deleted after expiration.
Example
"NO_ACTION"

ExpirationPeriodKind

Values
Enum Value Description

DAY

Expiration period kind is a day.

WEEK

Expiration period kind is a week.

MONTH

Expiration period kind is a month.

YEAR

Expiration period kind is a year.
Example
"DAY"

ExpirationTemplate

Description

Represents a ExpirationTemplate entity object.

Fields
Field Name Description
id - Guid! The id of the expiration template.
periodCount - Int! The number of periods before expiration.
periodKind - ExpirationPeriodKind The kind of expiration period.
preventChange - Boolean! Defines whether a change is possible before expiration (warning: this cannot be undone).
actionKind - ExpirationActionKind The kind of action to be applied after expiration.
created - DateTime! The created date of the expiration template.
createdUser - User The user who created the expiration template.
metaField - MetaField If meta field (needs to be a date field) is associated with the expiration template this date will be used as basis for expiration, otherwise the document created date.
documentType - DocumentType The document type associated with the expiration template.
Example
{
  "id": "4173c60a-3d05-45d0-a63d-a001182afb70",
  "periodCount": 186,
  "periodKind": "DAY",
  "preventChange": false,
  "actionKind": "NO_ACTION",
  "created": "2004-05-10T02:53:06",
  "createdUser": User,
  "metaField": MetaField,
  "documentType": DocumentType
}

Folder

Description

Represents a Folder entity object.

Fields
Field Name Description
id - Guid! The id of the related folder.
name - String The name of the related folder.
color - Int The color of the related folder as ARGB integer value.
created - DateTime! The created date of the related folder.
lastChanged - DateTime! The date when the related folder was last changed.
createdUser - User The user who created the related folder.
lastChangedUser - User The user who changed the related folder the last time.
parent - Item The parent item of the related folder.
parentsPath - String The parents as path string.
linkedItems - [Item] The linked items of the related folder.
userCanEdit - Boolean Defines whether the authenticated user can edit the folder.
userCanDelete - Boolean Defines whether the authenticated user can delete the folder.
description - String The description of the folder.
Example
{
  "id": "baa47655-ab04-4a0c-8ab7-7f25dcec827c",
  "name": "abc123",
  "color": -11846459,
  "created": "2021-11-06T23:04:37",
  "lastChanged": "2012-08-30T04:31:12",
  "createdUser": User,
  "lastChangedUser": User,
  "parent": Item,
  "parentsPath": "xyz789/xyz789",
  "linkedItems": [Item],
  "userCanEdit": true,
  "userCanDelete": true,
  "description": "xyz789"
}

GenderKind

Values
Enum Value Description

MALE

The gender is male.

FEMALE

The gender is female.
Example
"MALE"

Guid

Example
"be17b507-2835-486e-a7bf-edb9c1ceafd7"

ID

Example
"d2c81b7b8d6a"

Int

Example
-1371147255

Item

Description

Interface implemented by Document and Folder entity objects.

Fields
Field Name Description
id - Guid! The id of the item.
name - String The name of the item.
color - Int The color of the item as ARGB integer value.
created - DateTime! The created date of the item.
lastChanged - DateTime! The date when the item was last changed.
createdUser - User The user who created the related item.
lastChangedUser - User The user who changed the related item the last time.
parent - Item The parent item.
parentsPath - String The parents as path string.
linkedItems - [Item] The linked items.
userCanEdit - Boolean Defines whether the authenticated user can edit the item.
userCanDelete - Boolean Defines whether the authenticated user can delete the item.
Possible Types
Item Types

Folder

Document

Example
{
  "id": "06247524-fb3f-427a-8fe3-87c2ecaa1c22",
  "name": "abc123",
  "color": -12515575,
  "created": "2018-07-27T11:03:35",
  "lastChanged": "2020-11-07T01:22:47",
  "createdUser": User,
  "lastChangedUser": User,
  "parent": Item,
  "parentsPath": "abc123/abc123",
  "linkedItems": [Item],
  "userCanEdit": true,
  "userCanDelete": false
}

Keyword

Description

Represents a Keyword entity object.

Fields
Field Name Description
id - Guid! The id of the keyword.
name - String! The name of the keyword.
documents - [Document] The documents this keyword is associated to.
Example
{
  "id": "cf37acfe-e679-40f8-a4b0-2f298e511d63",
  "name": "abc123",
  "documents": [Document]
}

Long

Example
-2233514715580735500

MetaData

Description

Represents a MetaData entity object.

Fields
Field Name Description
id - Guid! The id of the meta data.
content - String The content of the meta data.
document - Document The document associated with the meta data.
metaField - MetaField The meta field associated with the meta data.
Example
{
  "id": "48d8c654-1df5-4aff-839b-48cc3e7856d3",
  "content": "abc123",
  "document": Document,
  "metaField": MetaField
}

MetaField

Description

Represents a MetaField entity object.

Fields
Field Name Description
id - Guid! The id of the meta field.
name - String! The content of the meta field.
kind - MetaFieldKind The kind of the meta field.
mask - String The mask of the meta field (can only be used for short text fields).
lineCount - Short The line count of the meta field (can only be used for long text fields).
selectionOptions - [String] The selection options of the meta field (can only be used for selection list fields).
created - DateTime! The created date of the meta field.
lastChanged - DateTime! The date when the meta field was last changed.
createdUser - User The user who created the meta field.
lastChangedUser - User The user who changed the meta field the last time.
metaDatas - [MetaData] The meta datas associated with the meta field.
documentTypes - [DocumentType] The document types associated with the meta field.
expirationTemplates - [ExpirationTemplate] The expiration templates associated with the meta field.
Example
{
  "id": "d03b3b42-aab6-4ccb-bdb6-2327073e76db",
  "name": "abc123",
  "kind": "TEXT_SHORT",
  "mask": "abc123",
  "lineCount": 3,
  "selectionOptions": ["xyz789"],
  "created": "2003-09-06T12:50:53",
  "lastChanged": "2020-04-21T23:43:06",
  "createdUser": User,
  "lastChangedUser": User,
  "metaDatas": [MetaData],
  "documentTypes": [DocumentType],
  "expirationTemplates": [ExpirationTemplate]
}

MetaFieldKind

Values
Enum Value Description

TEXT_SHORT

Meta field is a short text field (only one line).

TEXT_LONG

Meta field is a long text field (with specified line count).

NUMBER_INTEGER

Meta field is an integer number field.

NUMBER_DECIMAL

Meta field is a decimal number field.

NUMBER_CURRENCY

Meta field is a currency number field.

CHECK_BOX

Meta field is a check box.

DATE

Meta field is a date field.

TIME

Meta field is a time field.

SELECTION_LIST

Meta field is a selection list.
Example
"TEXT_SHORT"

Reminder

Description

Represents a Reminder entity object.

Fields
Field Name Description
id - Guid! The id of the reminder.
preRemind - DateTime The point in time of an optional pre-reminder.
remind - DateTime! The point in time of reminder.
description - String The description of the reminder.
done - Boolean! Defines whether a reminder is done.
created - DateTime! The created date of the reminder.
createdUser - User The user who created the reminder.
document - Document The document associated with the reminder.
Example
{
  "id": "226a94fd-c689-4cc7-9ace-9a40514b37a4",
  "preRemind": "2013-06-24T14:05:14",
  "remind": "2005-09-29T00:43:19",
  "description": "xyz789",
  "done": true,
  "created": "2000-04-13T09:30:23",
  "createdUser": User,
  "document": Document
}

SearchOptionKind

Values
Enum Value Description

DOCUMENT_TITLE

Search is performed within the document title.

DOCUMENT_CONTENT

Search is performed within the document content.
Example
"DOCUMENT_TITLE"

Share

Description

Represents a Share entity object.

Fields
Field Name Description
id - Guid! The id of the share.
expire - DateTime The date when the share link expires.
created - DateTime! The created date of the share.
createdUser - User The user who created the share.
document - Document The document associated with the share.
link - String The share link to get the latest document revision.
Example
{
  "id": "014b6d53-70b2-4052-a7ac-60b5715a131c",
  "expire": "2012-08-03T07:55:37",
  "created": "2020-09-04T20:26:15",
  "createdUser": User,
  "document": Document,
  "link": "https://download.quick-archive.com/cb260b43e359/0839a29b354d/37cac4d5-d776-4629-aeeb-833a6688f316/share/xyz789.pdf"
}

Short

Example
9658

SignUpInput

Description

Contains information about customer that signed up.

Fields
Input Field Description
gender - GenderKind!

The gender of the main contact of the customer.

firstName - String!

The first name of the main contact of the customer.

lastName - String!

The last name of the main contact of the customer.

eMail - String!

The e-mail of the main contact of the customer.

loginName - String!

The login name of the admin user.

passwordHash - String!

The password hash (SHA1, upper case) of the admin user.

countryCode - String!

The country code (ISO 3166-1 alpha-2, lower case) of the customer.

languageCode - String!

The LCID string of the requested language (currently only en-US supported).

company - String

The company name of the customer.

city - String

The city of the customer.

zipCode - String

The ZIP code of the customer.

state - String

The state of the customer.

address1 - String

The first address line of the customer.

address2 - String

The second address line of the customer.

Example
{
  "gender": "MALE",
  "firstName": "abc123",
  "lastName": "abc123",
  "eMail": "mail@domain.com",
  "loginName": "xyz789",
  "passwordHash": "6778F057129DA886BC999DBFACF93F67D5F86932",
  "countryCode": "us",
  "languageCode": "en-US",
  "company": "xyz789",
  "city": "abc123",
  "zipCode": "xyz789",
  "state": "xyz789",
  "address1": "xyz789",
  "address2": "xyz789"
}

String

Example
"abc123"

User

Description

Represents a User entity object.

Fields
Field Name Description
id - Guid! The id of the user.
loginName - String! The login name of the user.
fullName - String! The full name of the user.
eMail - String The e-mail of the user.
description - String The description of the user.
admin - Boolean! Defines whether the user is admin.
created - DateTime! The created date of the user.
lastLogin - DateTime The last login date of the user.
Example
{
  "id": "7c6e41cd-d0a1-4945-a278-af70d5b8b040",
  "loginName": "abc123",
  "fullName": "abc123",
  "eMail": "mail@domain.com",
  "description": "abc123",
  "admin": false,
  "created": "2009-06-15T05:52:02",
  "lastLogin": "2021-06-14T13:39:23"
}